*{box-sizing:border-box} :root{--ink:#192c3d;--muted:#536474;--blue:#145a99;--line:#d7e0e7;--surface:#f5f7fa}body{margin:0;font:15px/1.55 system-ui,sans-serif;color:var(--ink);background:var(--surface)}a{color:var(--blue);text-underline-offset:3px}::selection{background:#c6e2ff;color:#132e48}aside{position:fixed;width:235px;inset:0 auto 0 0;background:#132e48;color:#fff;padding:24px 18px;overflow:auto}aside label{font-size:12px;color:#c9dced}aside select{margin:6px 0 18px;width:100%}.brand{display:block;color:white;font-size:28px;font-weight:750;letter-spacing:-.03em;text-decoration:none;margin-bottom:22px}.brand span{display:block;font-size:12px;font-weight:500;letter-spacing:.03em;color:#c9dced}nav a{display:block;padding:7px 11px;color:#dce8f2;text-decoration:none;border-radius:4px;font-size:14px}nav a:hover,nav a[aria-current]{background:#254967;color:#fff}footer{margin-top:24px;font-size:12px;color:#dce8f2}main{margin-left:235px;padding:0 36px 50px;max-width:1700px}main.auth{margin:0 auto;max-width:560px}.topbar{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:20px 0;margin-bottom:32px;font-size:13px;color:var(--muted)}h1{font-size:30px;letter-spacing:-.025em;line-height:1.2;margin:0 0 12px}h2{font-size:20px;margin:32px 0 12px}p{color:var(--muted);max-width:72ch;margin:0 0 22px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.heading h2{margin:0}.actions{display:flex;gap:10px;flex-wrap:wrap}.button,button{display:inline-block;border:0;background:var(--blue);color:white;border-radius:5px;padding:10px 16px;font:600 14px/1.4 system-ui;text-decoration:none;cursor:pointer;white-space:nowrap}button:hover,.button:hover{background:#0d4477}.secondary{background:#e3edf6;color:#164f80}.secondary:hover{background:#cddfed}.quiet{padding:5px 8px;background:transparent;color:var(--blue);border:1px solid var(--line)}footer .quiet{color:white;margin-top:8px}.danger{color:#a72626}.quiet:hover{background:#eef2f6;color:var(--ink)}.table-wrap{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:6px}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;padding:13px 16px;background:#edf2f6;color:#3a4f61;font-size:12px;white-space:nowrap}td{padding:13px 16px;border-top:1px solid var(--line);vertical-align:top}tbody tr:hover{background:#f5f9fc}.numeric,td{font-variant-numeric:tabular-nums}.status{background:#e5f0e8;color:#245239;padding:3px 8px;border-radius:4px;font-size:12px}.alert-row{display:flex;gap:20px;padding:14px 0;border-top:1px solid var(--line)}.alert-row strong{min-width:90px}.empty{padding:24px;color:var(--muted)}section{margin-bottom:30px}.notice{padding:12px 16px;margin-bottom:20px;border:1px solid #99bba7;background:#edf6f0}.notice.error,.errorlist{color:#a12424}.errorlist{list-style:none;padding:0;margin:8px 0}.entry-form{max-width:940px;background:white;padding:28px;border:1px solid var(--line);border-radius:6px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}input,select,textarea{width:100%;padding:10px 12px;border:1px solid #91a3b1;background:white;color:var(--ink);border-radius:4px;font:inherit;caret-color:var(--blue)}textarea{height:110px}input:focus,select:focus,textarea:focus{outline:2px solid #145a99;outline-offset:2px}.form-footer{display:flex;align-items:center;gap:20px;margin-top:30px;padding-top:20px;border-top:1px solid var(--line)}.filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:22px}.filters label{flex:1;min-width:140px;font-size:13px}.filters input,.filters select{margin-top:5px}.business-list a{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);text-decoration:none}.login{margin-top:70px}.login label{display:block}a:focus-visible,button:focus-visible{outline:3px solid #d68b16;outline-offset:3px}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:10px;background:white;padding:12px;z-index:10}button:disabled{opacity:.5;cursor:wait}*{scrollbar-color:#91a3b1 #eaf0f5;scrollbar-width:thin}@media(max-width:900px){aside{width:190px;padding:20px 12px}main{margin-left:190px;padding:0 20px 35px}.heading{align-items:start;flex-direction:column}h1{font-size:26px}.form-grid{grid-template-columns:1fr}}@media(max-width:600px){aside{position:relative;width:100%;padding:16px}.brand{margin-bottom:12px;font-size:24px}nav{display:flex;overflow:auto;gap:4px}nav a{white-space:nowrap}footer{margin-top:12px;display:flex;justify-content:space-between;align-items:center}footer form{margin:0}aside select{margin-bottom:12px}main{margin:0;padding:0 16px 30px}.topbar{margin-bottom:24px;font-size:12px}.entry-form{padding:20px}.actions{width:100%}.alert-row{flex-direction:column;gap:4px}.business-list a{flex-direction:column}.login{margin-top:35px}}
.stock-lines{margin-top:32px;margin-bottom:0}.batch-line{margin:0 0 20px;padding:16px 20px 20px;border:1px solid var(--line);border-radius:4px;min-width:0}.batch-line legend{padding:0 8px;font-weight:600}.exclude-batch{display:flex;align-items:center;gap:8px;margin-top:16px;font-size:14px}.exclude-batch input{width:18px;height:18px;margin:0}.batch-line.excluded{background:var(--surface)}.batch-line.excluded .form-grid{opacity:.65}.batch-status{margin:10px 0 0}.field small{display:block;color:var(--muted);margin-top:6px}[hidden]{display:none!important}@media(max-width:600px){.batch-line{padding:12px 14px 16px}}
.chat-layout{max-width:1000px}.chat-mode{max-width:85ch}.chat-welcome{padding:24px 0;border-top:1px solid var(--line)}.chat-welcome h2{margin-top:0}.chat-suggestions{display:flex;gap:12px;flex-wrap:wrap}.chat-suggestions button{white-space:normal;text-align:left}.chat-turn{margin-bottom:28px;scroll-margin-top:20px}.chat-question{margin-left:auto;max-width:75ch;padding:14px 20px;background:#e3edf6;border-radius:5px;margin-bottom:12px;overflow-wrap:anywhere}.chat-question p{margin:4px 0 0;color:var(--ink);white-space:pre-wrap}.chat-answer{background:white;border:1px solid var(--line);border-radius:6px;padding:22px;overflow-wrap:anywhere}.chat-answer-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.chat-answer-heading span,.chat-answer-footer small,.chat-composer-footer small{color:var(--muted);font-size:12px}.chat-answer p{margin-bottom:16px}.chat-answer-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;font-size:13px}.chat-caption{text-align:left;padding:10px 16px;color:var(--muted);font-size:12px}.chat-composer{background:white;border:1px solid var(--line);padding:22px;border-radius:6px}.chat-composer textarea{height:90px;resize:vertical}.chat-composer-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:18px}.chat-notice{padding:10px;background:var(--surface)}@media(max-width:600px){.chat-answer,.chat-composer{padding:16px}.chat-question{margin-left:20px}.chat-answer-heading,.chat-composer-footer{flex-direction:column;align-items:flex-start}.chat-suggestions,.chat-suggestions form,.chat-suggestions button{width:100%}}

.checkbox-field input{width:20px;height:20px}.invoice-document{max-width:1000px;background:white;padding:28px;border:1px solid var(--line)}.invoice-document h2{margin-top:0}.invoice-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:26px}.invoice-meta dt,.invoice-totals dt{color:var(--muted);font-size:13px}.invoice-meta dd,.invoice-totals dd{margin:4px 0 0}.invoice-totals{display:flex;justify-content:flex-end;gap:36px;margin:24px 0;font-size:20px;font-weight:600}@media(max-width:600px){.invoice-document{padding:16px}.invoice-meta{grid-template-columns:1fr}.invoice-totals{justify-content:flex-start;flex-wrap:wrap}}@media print{aside,.topbar,.skip,.heading .actions,.notice{display:none!important}main{margin:0;padding:0;max-width:none}.invoice-document{border:0;padding:0;max-width:none}body{background:white;font-size:12px}.table-wrap{overflow:visible}th,td{padding:8px}thead{display:table-header-group}tr{break-inside:avoid}.invoice-document noscript{display:none}}
