:root{--ink:#1f2933;--muted:#627080;--line:#d5dbe1;--surface:#fff;--background:#f3f5f7;--accent:#0b6e69;--accent-soft:#e2f1ef;--danger:#b42318;color:var(--ink);background:var(--background);font:14px/1.4 system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}button,input,select{font:inherit;color:inherit}button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:4px;padding:4px 10px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{cursor:default;opacity:.6}button.primary{border-color:var(--accent);background:var(--accent);color:#fff}button.danger{border-color:var(--danger);background:var(--danger);color:#fff}input,select{border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:4px 6px}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}h1{margin:0;font-size:18px}h2{margin:12px 0 0;font-size:15px}.app{height:100%;display:flex}nav{border-right:1px solid var(--line);background:var(--surface);flex-direction:column;flex:none;gap:4px;width:150px;padding:12px 8px;display:flex}nav strong{padding:0 8px 8px;font-size:16px}nav button{text-align:left;border-color:#0000}nav button.current{background:var(--accent-soft);color:var(--accent);font-weight:600}main{flex:1;min-width:0}.page{flex-direction:column;gap:8px;height:100%;padding:12px;display:flex}.page.scroll{overflow:auto}.toolbar,.inline,.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar{justify-content:space-between}.path,.count,.empty{color:var(--muted)}.filters{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.filters label,.form label{color:var(--muted);flex-direction:column;gap:2px;font-size:12px;display:flex}.filters input{width:150px;color:var(--ink);font-size:14px}.filters select{color:var(--ink);font-size:14px}.filters input[type=number]{width:110px}.filters input[type=date]{width:140px}.filters .check,.check{color:var(--ink);flex-direction:row;align-items:center;gap:4px;font-size:14px;display:flex}.filters .check input,.check input{width:auto}.count{margin-left:auto}.panel{border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:10px}.form{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.form input{color:var(--ink);font-size:14px}.form .actions{grid-column:1/-1}.checks{flex-wrap:wrap;gap:4px 16px;margin-bottom:8px;display:flex}.error,.notice,.success{border-radius:4px;margin:0;padding:6px 10px}.error{color:var(--danger);background:#fdecea}.notice{color:#7a5b00;background:#fef6e0}.success{background:var(--accent-soft);color:var(--accent)}.totals{margin:0}table{border-collapse:collapse;background:var(--surface);width:100%}th,td{border:1px solid var(--line);text-align:left;white-space:nowrap;padding:3px 8px}th{background:#e9edf0;font-weight:600}.right{text-align:right}.sheet{border:1px solid var(--line);flex:none;max-height:340px;overflow:auto}.sheet.short{max-height:260px}.sheet thead{z-index:1;position:sticky;top:0}.sheet td{text-overflow:ellipsis;max-width:260px;overflow:hidden}tr.muted td{color:#a0a9b3;background:#f7f8f9}.grid{border:1px solid var(--line);background:var(--surface);flex:1;min-height:0;overflow:auto}.grid-header,.grid-row{display:grid}.grid-header{z-index:1;background:#e9edf0;position:sticky;top:0}.grid-header button{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;background:0 0;border-radius:0;font-weight:600}.grid-header button:disabled{opacity:1}.grid-header button.right{text-align:right}.grid-row{border-bottom:1px solid #edf0f2;width:100%;position:absolute;top:0;left:0}.grid-row:hover{background:var(--accent-soft)}.cell{text-overflow:ellipsis;white-space:nowrap;padding:4px 8px;overflow:hidden}.grid-row .cell.right{text-align:right}.grid:focus,.lines:focus{outline:none}.grid:focus .grid-row.selected,.lines:focus tr.selected td{background:var(--accent);color:#fff}.grid-row.selected,tr.selected td{background:#cfe6e3}.grid-heading{min-width:0;display:flex;position:relative}.grid-heading button{flex:1;min-width:0}.resize{z-index:2;cursor:col-resize;width:7px;height:100%;position:absolute;top:0;right:-3px}.hints{color:var(--muted);margin:0;font-size:12px}.overlay{z-index:10;background:#0f172059;justify-content:center;align-items:flex-start;padding-top:10vh;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:6px;flex-direction:column;gap:8px;width:min(760px,90vw);max-height:80vh;padding:16px;display:flex;overflow:auto}.modal h2{margin:0}.details{color:var(--muted);margin:0}.form.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form .wide{grid-column:1/-1}.retail{border:1px solid var(--line);border-radius:4px;gap:16px;margin:0;padding:8px;display:flex}.retail input{width:64px}.split{flex:1;gap:8px;min-height:0;display:flex}.order-list{flex-direction:column;flex:none;gap:4px;width:230px;display:flex;overflow:auto}.order-list button{text-align:left;flex-direction:column;display:flex}.order-list button.current{border-color:var(--accent);background:var(--accent-soft)}.order-list span{color:var(--muted);font-size:12px}.order-body{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.sheet.lines{flex:1;min-height:120px;max-height:none}.totals-grid{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:200px;display:grid;overflow:auto}.days{width:70px}.narrow{width:auto}.export-tree{max-height:45vh;overflow:auto}.form .export-tree label{flex-direction:row;align-items:center;gap:8px;padding:3px 0;display:flex}.form .export-tree input{width:auto}.form .export-tree label.nested{padding-left:24px}.export-tree span{font-variant-numeric:tabular-nums;margin-left:auto;padding-right:8px}nav .org,nav .user{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:0 8px;overflow:hidden}nav select{margin:0 0 8px}nav .spacer{flex:1}.loading{color:var(--muted);padding:24px}.auth{justify-content:center;align-items:flex-start;min-height:100%;padding:48px 16px;display:flex}.auth-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-direction:column;gap:12px;width:100%;max-width:380px;padding:24px;display:flex}.auth-card .brand{color:var(--accent);margin:0;font-weight:700}.auth-card .form{flex-direction:column;gap:10px;display:flex}.auth-card .form label{flex-direction:column;gap:4px;display:flex}.auth-card .form button{padding:8px}.auth-card p{margin:0}.auth-card .links,.auth-card .or{color:var(--muted);text-align:center}a{color:var(--accent)}a.button{border:1px solid var(--line);color:inherit;text-align:center;border-radius:4px;padding:8px;text-decoration:none;display:block}a.button:hover{border-color:var(--accent)}
