.matrix.inv td.first,.matrix.inv td.total,.matrix.inv tfoot td{padding:0 10px}.matrix.inv .first .sub.pos{color:var(--data-ink)}.matrix.inv .first .sub.neg{color:var(--neg-ink,#831c1e)}.close-why{color:var(--muted);font-size:var(--fs-small);text-align:right;max-width:38ch}.detail-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:16px;display:flex}.detail-bar .actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.detail-bar .why{color:var(--muted);font-size:var(--fs-small)}.tbl tr.picked td{background:var(--raised)}.inv-bar{background:var(--data);border-radius:2px;height:3px;margin-top:6px}.checklist{margin:0 0 var(--gap);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);font-size:var(--fs-small);padding:12px 16px}.checklist ul{margin:6px 0 0;padding-left:18px}.paper.statement .parties{grid-template-columns:auto 1fr;gap:3px 12px;margin-bottom:14px;display:grid}.paper.statement .tw{overflow-x:auto}.paper.statement .tax{color:var(--muted);margin-top:6px;font-size:12px}.stmt-list{margin-bottom:var(--gap);gap:8px;display:grid}.stmt-list button{all:unset;box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:14px 16px;display:flex}.stmt-list button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--primary)}.stmt-list .amt{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.answer{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.bell{position:relative}.bell .count{background:var(--neg,#c4242a);color:#fff;text-align:center;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;line-height:18px;position:absolute;top:-2px;right:-2px}.notice-list{min-width:min(420px,86vw);max-height:60vh;margin:0;padding:0;list-style:none;overflow:auto}.notice-list li+li{border-top:1px solid var(--rule)}.notice-list a{color:inherit;padding:10px 4px;text-decoration:none;display:block}.notice-list a:hover{background:var(--raised)}.notice-list .unread b{font-weight:650}.notice-list .unread:before{content:"";float:left;background:var(--data);border-radius:50%;width:8px;height:8px;margin:16px 8px 0 0}.notice-list small{color:var(--muted);display:block}.notice-list li{align-items:flex-start;gap:8px;display:flex}.notice-list li>a{flex:1;min-width:0}.notice-list li>.btn{flex:none;margin-top:8px}.notice-body{margin-top:4px;display:block}.notice-body small{color:var(--text)}@media (max-width:1100px){.close-why{text-align:left}}@media (max-width:640px){.matrix.inv .first{min-width:132px;max-width:150px}.paper.statement .hide-sm,.tbl .hide-sm{display:none}.detail-bar .actions{margin-left:0}}@media print{.no-print{display:none!important}}.auto-confirm{color:var(--muted);font-size:var(--fs-small);margin:4px 0 10px;display:block}.sub .auto-confirm{margin:0;display:inline}.proposal{color:var(--muted);font-size:var(--fs-small);margin:2px 0 6px}:root{--frame:#e9eee8;--frame-active:#dbe3d9;--sheet:#fafbf9;--surface:#fff;--raised:#f3f5f1;--border:#e2e6df;--rule:#edf0ea;--control:#c6ccc4;--text:#141614;--muted:#535953;--primary:#26313b;--primary-hover:#1a232b;--primary-ink:#fff;--data:#1f6b45;--data-pale:#e2f0e7;--data-ink:#0f3b24;--negative:#b4232a;--neg-pale:#fdecea;--neg-ink:#7f1d1d;--warn-pale:#fdf3e2;--warn-ink:#8a3b0b;--warn-line:#f0d6a8;--neutral-pale:#eceeea;--neutral-ink:#343834;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--fs-title:24px;--fs-section:17px;--fs-body:15px;--fs-small:13px;--fs-lead:30px;--fs-kpi:22px;--radius-sheet:16px;--radius-card:16px;--radius-well:8px;--pill:999px;--side:252px;--topbar:48px;--inset:8px;--pad:28px;--gap:16px;--card-pad:20px;--control-h:40px;--row:46px;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--frame);color:var(--text);font:var(--fs-body)/1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}svg{display:block}:focus-visible{outline:2px solid var(--data);outline-offset:2px}.num,table,input[inputmode=decimal]{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{grid-template-columns:var(--side) minmax(0, 1fr);grid-template-rows:var(--topbar) minmax(0, 1fr);min-height:100vh;display:grid}.side{flex-direction:column;grid-row:1/-1;height:100vh;padding:12px 12px 16px;display:flex;position:sticky;top:0;overflow:auto}.brand{align-items:center;gap:10px;height:40px;margin-bottom:4px;padding:0 8px;display:flex}.brand img{flex:none;width:28px;height:28px}.brand b{letter-spacing:-.01em;font-size:17px;font-weight:650}.scope{color:var(--muted);font-size:var(--fs-small);margin:0 8px 14px;line-height:1.35}.nav{gap:2px;display:grid}.nav-label{font-size:var(--fs-small);color:var(--muted);margin:18px 8px 6px}.nav a{white-space:nowrap;border-radius:var(--pill);min-height:36px;color:var(--text);align-items:center;gap:10px;padding:0 12px;transition:background-color .15s;display:flex}.nav a svg{stroke:currentColor;fill:none;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;color:var(--muted);flex:none}.nav a:hover{background:var(--frame-active)}.nav a[aria-current=page]{background:var(--frame-active);font-weight:600}.nav a .count{border-radius:var(--pill);background:var(--surface);text-align:center;min-width:22px;height:20px;margin-left:auto;padding:0 7px;font-size:12px;font-weight:600;line-height:20px}.side-foot{gap:12px;margin-top:auto;padding-top:16px;display:grid}.proto{background:var(--frame-active);border-radius:12px;gap:8px;padding:12px;display:grid}.proto-title{font-size:var(--fs-small);font-weight:600}.proto label{color:var(--muted);font-size:12px}.proto .seg{background:var(--surface);width:100%}.proto .seg a,.proto .seg button{flex:1}.proto select{border:1px solid var(--control);border-radius:var(--pill);background:var(--surface);height:32px;font-size:var(--fs-small);padding:0 10px}.user{align-items:center;gap:10px;padding:4px 8px;display:flex}.avatar{background:var(--surface);border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:12px;font-weight:600;display:grid}.user small{color:var(--muted);font-size:12px;display:block}.topbar{padding:0 20px 0 var(--pad);align-items:center;gap:16px;min-width:0;display:flex}.topbar .crumb{color:var(--muted);font-size:var(--fs-small);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.topbar .crumb b{color:var(--text);font-weight:600}.topbar .spacer{flex:1}.cutoff{border-radius:var(--pill);background:var(--surface);height:30px;font-size:var(--fs-small);white-space:nowrap;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.cutoff svg{width:15px;height:15px;stroke:var(--muted);fill:none;stroke-width:1.6px}.topbar .menu-btn{display:none}.sheet{margin:0 var(--inset) var(--inset) 0;padding:24px var(--pad) 40px;background:var(--sheet);border:1px solid var(--border);border-radius:var(--radius-sheet);min-width:0}.bottombar{display:none}.head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin-bottom:20px;display:flex}.head h1{font-size:var(--fs-title);letter-spacing:-.015em;font-weight:650;line-height:1.2}.head .sub{color:var(--muted);max-width:70ch;margin-top:6px}.head .sub strong{color:var(--text);font-weight:600}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grid{gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.span-12{grid-column:span 12}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--card-pad);min-width:0}.card+.card{margin-top:var(--gap)}.grid>.card+.card{margin-top:0}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:14px;display:flex}.card-head h2{font-size:var(--fs-section);letter-spacing:-.01em;font-weight:650;line-height:1.3}.card-head .meta{color:var(--muted);font-size:var(--fs-small)}.card-foot{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:14px;display:flex}.btn{height:var(--control-h);border-radius:var(--pill);border:1px solid var(--control);background:var(--surface);white-space:nowrap;cursor:pointer;transition:background-color .15s ease, transform .12s var(--ease), border-color .15s ease;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:550;display:inline-flex}.btn:hover{background:var(--raised)}.btn:active{transform:translateY(1px)}.btn svg{stroke:currentColor;fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.btn.primary:hover{background:var(--primary-hover)}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--raised)}.btn.small{height:32px;font-size:var(--fs-small);padding:0 12px}.btn.danger{color:var(--negative)}.btn[disabled]{cursor:not-allowed;background:var(--raised);color:var(--muted);border-color:var(--border);transform:none}.btn.primary[disabled]{color:#2c312c;background:#c9cfc8;border-color:#c9cfc8}.link{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--control);text-decoration-color:var(--control);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:550}.link:hover{text-decoration-color:currentColor}.field{gap:8px;display:grid}.field>label{font-weight:550}.field .hint{color:var(--muted);font-size:var(--fs-small)}.input{height:var(--control-h);border:1px solid var(--control);border-radius:var(--pill);background:var(--surface);min-width:0;padding:0 16px}.input::placeholder{color:var(--muted)}.input:focus{border-color:var(--text);box-shadow:0 0 0 1px var(--text);outline:none}.input[aria-invalid=true]{border-color:var(--negative);box-shadow:0 0 0 1px var(--negative)}select.input{appearance:none;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5 6 7.5l3-3' fill='none' stroke='%23535953' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E") right 14px center / 12px no-repeat;padding-right:36px}textarea.input{resize:vertical;border-radius:20px;height:auto;min-height:80px;padding:10px 16px}.seg{border-radius:var(--pill);background:var(--raised);border:1px solid var(--border);width:max-content;max-width:100%;padding:3px;display:inline-flex}.seg button,.seg a{border-radius:var(--pill);height:32px;color:var(--muted);font-size:var(--fs-small);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 14px;font-weight:550;display:inline-flex}.seg [aria-pressed=true],.seg [aria-current=page]{background:var(--surface);color:var(--text);border-color:var(--border)}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:24px;margin-bottom:16px;display:flex;overflow-x:auto}.tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;padding:10px 0;font-weight:550;position:relative}.tabs button[aria-selected=true]{color:var(--text)}.tabs button[aria-selected=true]:after{content:"";background:var(--text);height:2px;position:absolute;bottom:-1px;left:0;right:0}.tabs .count{color:var(--muted);margin-left:6px;font-weight:400}.pill{border-radius:var(--pill);height:24px;font-size:var(--fs-small);white-space:nowrap;background:var(--neutral-pale);color:var(--neutral-ink);flex:none;align-items:center;gap:6px;padding:0 10px;font-weight:550;display:inline-flex}.pill svg{stroke:currentColor;fill:none;stroke-width:2px;width:13px;height:13px}.pill.pos{background:var(--data-pale);color:var(--data-ink)}.pill.neg{background:var(--neg-pale);color:var(--neg-ink)}.pill.warn{background:var(--warn-pale);color:var(--warn-ink)}.pill.none{color:var(--muted);box-shadow:inset 0 0 0 1px var(--control);background:0 0}.tbl{border-collapse:collapse;width:100%}.tbl th{text-align:left;height:38px;font-weight:400;font-size:var(--fs-small);color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:0 12px}.tbl td{height:var(--row);border-bottom:1px solid var(--rule);vertical-align:middle;padding:8px 12px}.tbl tr:last-child td{border-bottom:0}.tbl th:first-child,.tbl td:first-child{padding-left:0}.tbl th:last-child,.tbl td:last-child{padding-right:0}.tbl .n{text-align:right;white-space:nowrap}.tbl tfoot td{border-top:1px solid var(--border);border-bottom:0;font-weight:650}.tbl td .sub{font-size:var(--fs-small);color:var(--muted);display:block}.unit{color:var(--muted);margin-left:3px;font-size:.86em}.dash{color:var(--muted)}tr.group-row td{border-bottom:1px solid var(--border);height:40px;padding-top:18px;font-weight:650}.strip-wrap{gap:12px;display:grid}.strip-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;display:flex}.strip-figure{font-size:var(--fs-lead);letter-spacing:-.02em;font-weight:600;line-height:1.1}.strip-figure small{color:var(--muted);letter-spacing:0;margin-left:6px;font-size:15px;font-weight:400}.strip{grid-template-columns:repeat(var(--n,17), minmax(0, 1fr));gap:4px;display:grid}.strip .cell{text-align:left;cursor:pointer;min-height:64px;transition:transform .12s var(--ease);border:1px solid #0000;border-radius:10px;align-content:space-between;gap:6px;padding:8px 8px 7px;font-size:12px;line-height:1.25;display:grid;position:relative}.strip .cell:hover{outline:2px solid var(--text);outline-offset:-2px}.strip .cell .t{font-variant-numeric:tabular-nums;font-weight:600}.strip .cell .nm{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.strip .cell.confirmed{background:var(--data);color:#fff}.strip .cell.sent{background:var(--data-pale);color:var(--data-ink);border-color:#9cc7ad}.strip .cell.none{background:var(--surface);color:var(--muted);border:1px dashed var(--muted)}.strip .cell[aria-pressed=true]{outline:2px solid var(--text);outline-offset:-2px}.legend{color:var(--muted);font-size:var(--fs-small);flex-wrap:wrap;gap:6px 18px;display:flex}.legend span{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.legend i{border-radius:4px;flex:none;width:14px;height:14px}.legend i.confirmed{background:var(--data)}.legend i.sent{background:var(--data-pale);box-shadow:inset 0 0 0 1px #9cc7ad}.legend i.none{background:var(--surface);outline:1px dashed var(--muted);outline-offset:-1px}.legend b{color:var(--text);font-weight:600}.dv{white-space:nowrap;font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;display:inline-flex}.dv .arrow{color:var(--muted)}.dv .d{font-size:var(--fs-small);border-radius:var(--pill);background:var(--neutral-pale);color:var(--neutral-ink);padding:1px 7px;font-weight:600}.dv .d.up{background:var(--warn-pale);color:var(--warn-ink)}.dv .d.down{background:var(--neg-pale);color:var(--neg-ink)}.dv .d.eq{color:var(--muted);background:0 0;padding:0;font-weight:400}.matrix-frame{border:1px solid var(--border);background:var(--surface);overscroll-behavior-x:contain;border-radius:12px;max-height:640px;position:relative;overflow:auto}.matrix{border-collapse:separate;border-spacing:0;min-width:100%;font-size:14px}.matrix th,.matrix td{border-bottom:1px solid var(--rule);white-space:nowrap;text-align:right;height:40px;padding:0 10px}.matrix thead th{z-index:2;background:var(--surface);height:64px;color:var(--muted);vertical-align:bottom;border-bottom:1px solid var(--border);white-space:normal;min-width:68px;max-width:84px;padding-bottom:8px;font-size:12px;font-weight:400;line-height:1.25;position:sticky;top:0}.matrix thead th .st{border-radius:50%;width:8px;height:8px;margin:0 0 4px auto;display:block}.matrix thead th .st.confirmed{background:var(--data)}.matrix thead th .st.sent{background:var(--data-pale);box-shadow:inset 0 0 0 1px #6fa786}.matrix thead th .st.none{box-shadow:inset 0 0 0 1px var(--muted)}.matrix .first{z-index:1;text-align:left;background:var(--surface);min-width:220px;max-width:240px;box-shadow:1px 0 0 var(--border);white-space:normal;line-height:1.25;position:sticky;left:0}.matrix thead .first{z-index:3}.matrix td.zero{color:#9aa09a}.matrix td.total,.matrix th.total{background:var(--raised);color:var(--text);font-weight:600}.matrix tfoot td{background:var(--surface);border-top:1px solid var(--border);z-index:1;border-bottom:0;font-weight:600;position:sticky;bottom:0}.matrix tfoot td.first{z-index:2}.matrix tr.grp td{background:var(--raised);text-align:right;font-weight:650}.matrix tr.grp td.first{background:var(--raised)}.matrix td.changed{box-shadow:inset 2px 0 0 var(--data)}.matrix .nhap-ho{margin-top:4px}.matrix td.na{color:var(--muted)}.list{display:grid}.item{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;width:100%;padding:12px;display:grid}.item+.item{margin-top:2px}.item:hover{background:var(--raised)}.item[aria-selected=true]{background:var(--frame-active)}.item .l1{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.item .l2{color:var(--muted);font-size:var(--fs-small);grid-column:1}.item .r1{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.item .r2{text-align:right}.kv{grid-template-columns:auto 1fr;gap:6px 16px;display:grid}.kv dt{color:var(--muted)}.kv dd{text-align:right;font-variant-numeric:tabular-nums}.well{background:var(--raised);border-radius:var(--radius-well);padding:14px 16px}.menu{gap:12px;display:grid}.meal{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;display:grid}.meal h3{font-size:var(--fs-body);font-weight:600}.meal .portions{text-align:right;font-variant-numeric:tabular-nums}.meal ul{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.meal li{border-radius:var(--pill);background:var(--raised);font-size:var(--fs-small);padding:4px 12px}.qty{border:1px solid var(--control);border-radius:var(--pill);background:var(--surface);align-items:center;height:40px;display:inline-flex;overflow:hidden}.qty input{text-align:right;background:0 0;border:0;width:76px;height:100%;padding:0 4px 0 14px}.qty input:focus{outline:none}.qty:focus-within{border-color:var(--text);box-shadow:0 0 0 1px var(--text)}.qty span{color:var(--muted);font-size:var(--fs-small);min-width:40px;padding:0 14px 0 6px}.qty.filled{background:#f6fbf7;border-color:#8fb79e}.qty.edited{border-color:var(--data);box-shadow:0 0 0 1px var(--data)}.sk{vertical-align:middle;background:#e6eae4;border-radius:6px;width:6em;height:1em;display:inline-block}.sk.block{display:block}.empty{border:1px dashed var(--control);color:var(--muted);border-radius:12px;justify-items:start;gap:10px;padding:20px;display:grid}.empty strong{color:var(--text);font-weight:600}.error{background:var(--neg-pale);color:var(--neg-ink);border-radius:12px;align-items:flex-start;gap:12px;padding:16px;display:flex}.error svg{stroke:currentColor;fill:none;stroke-width:1.8px;flex:none;width:18px;height:18px;margin-top:2px}.error p{color:var(--text)}.error .link{color:var(--neg-ink)}.notice{background:var(--warn-pale);color:var(--warn-ink);box-shadow:inset 0 0 0 1px var(--warn-line);font-size:var(--fs-small);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 16px;display:flex}.toast{z-index:50;opacity:0;border-radius:var(--pill);background:var(--primary);color:#fff;transition:opacity .2s ease, transform .2s var(--ease);pointer-events:none;padding:12px 18px;position:fixed;bottom:24px;left:50%;transform:translate(-50%,16px);box-shadow:0 8px 24px #0000002e}.toast.show{opacity:1;transform:translate(-50%)}dialog{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);width:min(520px,100vw - 32px);color:var(--text);padding:24px;box-shadow:0 20px 48px #0000002e}dialog::backdrop{background:#14181459}dialog h2{margin-bottom:8px;font-size:19px;font-weight:650}dialog form{gap:16px;display:grid}dialog .actions{justify-content:flex-end}.paper{border:1px solid var(--border);color:#111;background:#fff;border-radius:4px;padding:36px 40px;font-size:14px}.paper .co{grid-template-columns:1fr auto;gap:4px 24px;font-size:13px;display:grid}.paper .co b{font-weight:700}.paper h2{text-align:center;letter-spacing:0;margin:22px 0 4px;font-size:18px;font-weight:700}.paper .date{text-align:center;margin-bottom:16px;font-style:italic}.paper .parties{grid-template-columns:auto 1fr;gap:3px 12px;margin-bottom:14px;display:grid}.paper table{border-collapse:collapse;width:100%;font-size:13px}.paper th,.paper td{border:1px solid #444;padding:5px 7px}.paper th{text-align:center;background:0 0;font-weight:700}.paper td.n{text-align:right;white-space:nowrap}.paper td.c{text-align:center}.paper tfoot td{font-weight:700}.paper .words{margin-top:8px;font-style:italic}.paper .sign{text-align:center;grid-template-columns:1fr 1fr;margin-top:22px;display:grid}.paper .sign b{display:block}.paper .sign i{margin-bottom:64px;font-size:12px;display:block}@media print{@page{size:A4;margin:14mm}body{background:#fff}.side,.topbar,.bottombar,.no-print,.head,.menu-sheet{display:none!important}.app{display:block}.sheet{background:#fff;border:0;margin:0;padding:0}.print-only{display:block!important}.paper{border:0;padding:0}.paper+.paper{break-before:page}}.print-only{display:none}.menu-sheet{z-index:40;background:var(--frame);opacity:0;visibility:hidden;transition:opacity .18s ease, transform .18s var(--ease), visibility 0s linear .18s;flex-direction:column;padding:8px 16px 24px;display:flex;position:fixed;inset:0;overflow:auto;transform:translateY(-8px)}.menu-sheet.open{opacity:1;visibility:visible;transition:opacity .18s ease, transform .18s var(--ease);transform:none}.menu-sheet .menu-top{justify-content:space-between;align-items:center;height:48px;margin-bottom:8px;display:flex}.menu-sheet .nav a{min-height:48px;font-size:16px}.icon-btn{border-radius:var(--pill);cursor:pointer;background:0 0;border:0;place-items:center;width:40px;height:40px;display:inline-grid}.icon-btn:hover{background:var(--frame-active)}.icon-btn svg{stroke:currentColor;fill:none;stroke-width:1.7px;stroke-linecap:round;width:20px;height:20px}@media (max-width:1100px){.app{display:block}.side{display:none}.topbar{z-index:10;height:var(--topbar);background:var(--frame);gap:4px;padding:0 8px 0 4px;position:sticky;top:0}.topbar .crumb{font-size:15px}.topbar .crumb .scope-part{display:none}.topbar .menu-btn{display:inline-grid}.sheet{min-height:calc(100vh - var(--topbar));border-width:1px 0 0;border-radius:0;margin:0;padding:20px 24px 40px}.span-8,.span-7,.span-6,.span-5,.span-4{grid-column:span 12}.grid.keep-2>.span-6{grid-column:span 6}}@media (max-width:640px){:root{--fs-body:16px;--fs-title:22px;--fs-lead:26px;--pad:16px;--card-pad:16px;--control-h:44px}.sheet{padding:16px 16px 32px}.topbar .cutoff{display:none}.head{margin-bottom:16px}.head .actions{width:100%}.grid.keep-2>.span-6{grid-column:span 12}.seg{width:100%;display:flex}.seg button,.seg a{flex:1;height:38px}.btn.small{height:40px}.strip{grid-template-columns:repeat(5,minmax(0,1fr))}.strip .cell{min-height:54px}.tbl.stack thead{display:none}.tbl.stack tr{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:12px 0;display:grid}.tbl.stack td{border:0;height:auto;padding:0;display:block}.tbl.stack td.l2{color:var(--muted);grid-column:1/-1;font-size:14px}.tbl.stack td.hide-sm{display:none}.tbl.stack tfoot tr{border-bottom:0;border-top:1px solid var(--border)}.paper{padding:20px 16px;font-size:13px}.paper .co{grid-template-columns:1fr}body.role-truong .bottombar{z-index:20;height:64px;padding:4px 8px calc(4px + env(safe-area-inset-bottom));background:var(--frame);border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}body.role-truong .sheet{padding-bottom:96px}body.role-truong .topbar .menu-btn{display:none}body.role-truong .topbar{padding-left:16px}.bottombar a{color:var(--muted);border-radius:12px;align-content:center;justify-items:center;gap:2px;font-size:12px;display:grid}.bottombar a svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.bottombar a[aria-current=page]{color:var(--text);background:var(--frame-active);font-weight:600}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}}.login-page{grid-template-rows:1fr auto;min-height:100vh;display:grid}.login{place-items:center;padding:32px 16px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);width:min(440px,100%);padding:32px}.login-card .brand{height:auto;margin-bottom:24px;padding:0}.login-card .brand img{width:36px;height:36px}.login-card .brand b{font-size:20px}.login-card h1{font-size:var(--fs-title);letter-spacing:-.015em;font-weight:650;line-height:1.2}.login-card .lede{color:var(--muted);margin:8px 0 24px}.login-card form{gap:16px;display:grid}.pw{display:grid;position:relative}.pw .input{padding-right:72px}.pw button{border-radius:var(--pill);background:var(--raised);cursor:pointer;border:0;height:30px;padding:0 12px;font-size:13px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.login-card .btn.primary{width:100%;height:46px;margin-top:4px}.help{color:var(--muted);margin-top:18px;font-size:14px}.proto-bar{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;padding:16px;font-size:13px;display:flex}.proto-bar .seg{background:var(--surface)}@media (max-width:640px){.login{place-items:start center;padding-top:24px}.login-card{padding:24px 20px}}.order-bar{margin-bottom:var(--gap);flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.order-bar .field{min-width:260px}.order-bar .site-field{min-width:360px}.lbl{font-weight:550}.picker{position:relative}.picker-btn{border:1px solid var(--control);background:var(--surface);text-align:left;cursor:pointer;border-radius:26px;align-items:center;gap:12px;width:100%;min-height:52px;padding:6px 16px 6px 20px;transition:border-color .15s,background-color .15s;display:flex}.picker-btn:hover{border-color:var(--text)}.picker-btn[aria-expanded=true]{border-color:var(--text);outline:1px solid var(--text);outline-offset:-2px}.pk-main{flex:1;min-width:0;line-height:1.3;display:grid}.pk-main b{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.pk-main small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.picker-btn svg{width:18px;height:18px;stroke:var(--muted);fill:none;stroke-width:1.8px;transition:transform .2s var(--ease);flex:none}.picker-btn[aria-expanded=true] svg{transform:rotate(180deg)}.picker-list{z-index:16;border:1px solid var(--border);background:var(--surface);opacity:0;visibility:hidden;transform-origin:top;min-width:320px;transition:opacity .15s ease, transform .18s var(--ease), visibility 0s linear .18s;border-radius:18px;margin:0;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;transform:translateY(-6px)scale(.98);box-shadow:0 14px 36px #141e1429}.picker.open .picker-list{opacity:1;visibility:visible;transition:opacity .15s ease, transform .18s var(--ease);transform:none}.picker-list li{cursor:pointer;border-radius:12px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:2px 10px;padding:10px 12px;transition:background-color .12s;display:grid}.picker-list li:hover,.picker-list li.active{background:var(--raised)}.picker-list li[aria-selected=true]{background:var(--frame-active)}.picker-list li .ck{visibility:hidden;color:var(--data)}.picker-list li[aria-selected=true] .ck{visibility:visible}.picker-list li .ck svg{stroke:currentColor;fill:none;stroke-width:2.2px;width:18px;height:18px}.picker-list li b{font-weight:600}.picker-list li small{color:var(--muted);grid-column:2;font-size:13px}.picker-list li .pill{grid-area:1/3/span 2}.food-tools{z-index:5;margin:0 calc(-1 * var(--card-pad));padding:4px var(--card-pad) 12px;background:var(--surface);border-bottom:1px solid var(--rule);gap:12px;display:grid;position:sticky;top:0}.search{position:relative}.search svg{width:18px;height:18px;stroke:var(--muted);fill:none;stroke-width:1.8px;pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.search .input{width:100%;padding-left:44px;padding-right:44px}.search .input::-webkit-search-cancel-button{display:none}.search .clear{background:var(--raised);cursor:pointer;border:0;border-radius:50%;width:32px;height:32px;font-size:18px;line-height:1;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.chips{scrollbar-width:none;margin:0 calc(-1 * var(--card-pad));padding:0 var(--card-pad);gap:8px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--control);border-radius:var(--pill);background:var(--surface);white-space:nowrap;cursor:pointer;flex:none;height:34px;padding:0 14px;font-size:13px;font-weight:550;transition:background-color .15s,border-color .15s}.chip:hover{border-color:var(--text)}.chip span{color:var(--muted);margin-left:5px;font-weight:400}.chip[aria-pressed=true]{background:var(--frame-active);border-color:var(--text)}.chip[disabled]{opacity:.55;cursor:default}.food mark{background:var(--data-pale);color:inherit;border-radius:3px;padding:0 1px}.copy-wrap{position:relative}.copy-menu{z-index:15;border:1px solid var(--border);background:var(--surface);border-radius:14px;min-width:280px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 12px 32px #00000024}.copy-menu[hidden]{display:none}.copy-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;width:100%;padding:10px 12px;display:grid}.copy-menu button:hover{background:var(--raised)}.copy-menu small{color:var(--muted);font-size:13px}.food{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto 112px;align-items:center;gap:4px 16px;min-height:60px;padding:8px 0;display:grid}.food:last-child{border-bottom:0}.food .nm{font-weight:550}.food .pr{color:var(--muted);font-size:13px}.food .amt{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.food .amt.zero{color:var(--muted)}.cat-h{justify-content:space-between;align-items:baseline;margin:22px 0 2px;font-size:15px;font-weight:650;display:flex}.cat-h:first-child{margin-top:4px}.cat-h span{color:var(--muted);font-size:13px;font-weight:400}.summary{position:sticky;top:16px}.send-desktop{gap:10px;margin-top:16px;display:grid}.total-lead{font-size:var(--fs-lead);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:600;line-height:1.1}.send-state{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mobile-send{display:none}@media (max-width:1100px){.summary{position:static}.side-col{order:-1}.food-tools{top:var(--topbar)}}@media (max-width:640px){.order-bar .field,.order-bar .site-field{flex:100%;min-width:0}.picker-list{min-width:0}.order-bar .copy-wrap,.order-bar .copy-wrap .btn{width:100%}.food{grid-template-columns:minmax(0,1fr) auto}.food .amt{text-align:left;grid-area:2/1;font-size:14px}.food .qty{grid-area:1/2/span 2}.summary,.food .amt.zero{display:none}.mobile-send{z-index:19;background:var(--surface);border-top:1px solid var(--border);align-items:center;gap:12px;padding:10px 16px;display:flex;position:fixed;bottom:64px;left:0;right:0}.mobile-send .t{flex:1;min-width:0}.mobile-send .t b{font-variant-numeric:tabular-nums;font-size:18px;display:block}.mobile-send .t small{color:var(--muted);font-size:13px}body.role-truong .sheet{padding-bottom:170px}}.day-h{color:var(--muted);margin:18px 12px 6px;font-size:13px}.day-h:first-child{margin-top:0}.lines-dv .row{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px 20px;min-height:52px;padding:8px 0;display:grid}.lines-dv .row:last-child{border-bottom:0}.lines-dv .amt{text-align:right;font-variant-numeric:tabular-nums;min-width:110px}.totals{border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:4px 0 16px;display:grid}.totals>div{padding:12px 16px}.totals>div+div{border-left:1px solid var(--border)}.totals span{color:var(--muted);font-size:13px}.totals b{font-variant-numeric:tabular-nums;margin-top:2px;font-size:20px;font-weight:600;display:block}.view-toggle{margin-bottom:14px}@media (max-width:1100px){.split[data-view=detail] .list-col,.split[data-view=list] .detail-col{display:none}.back{margin-bottom:12px;display:inline-flex}}@media (max-width:640px){.lines-dv .row{grid-template-columns:minmax(0,1fr) auto}.lines-dv .row .dv{grid-area:2/1/auto/-1}.totals{grid-template-columns:1fr}.totals>div+div{border-left:0;border-top:1px solid var(--border)}.totals>div{justify-content:space-between;align-items:baseline;display:flex}.totals b{font-size:17px}.split[data-view=detail] .list-col,.split[data-view=list] .detail-col{display:none}.back{margin-bottom:12px;display:inline-flex}.detail-actions{z-index:2;background:var(--surface);border-top:1px solid var(--border);border-radius:0 0 16px 16px;padding:12px 16px;position:sticky;bottom:64px;margin:0 -16px -16px!important}.detail-actions .btn{flex:1}}.ol{border-collapse:collapse;width:100%}.ol th{height:38px;color:var(--muted);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:0 10px;font-size:13px;font-weight:400}.ol td{border-bottom:1px solid var(--rule);vertical-align:middle;padding:8px 10px}.ol th:first-child,.ol td:first-child{padding-left:0}.ol th:last-child,.ol td:last-child{text-align:right;padding-right:0}.ol .n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.ol th.c,.ol td.c{text-align:center}.ol tr.rejected td:not(:last-child){color:var(--muted)}.ol tr.rejected .pname{text-decoration:line-through}.ol tr.added td{background:#f6fbf7}.ol tfoot td{border-bottom:0;border-top:1px solid var(--border);font-weight:650}.reason{color:var(--neg-ink);margin-top:2px;font-size:13px;text-decoration:none;display:block}.add-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.add-row select{flex:260px}@media (max-width:1100px){.split[data-view=detail] .list-col,.split[data-view=list] .detail-col{display:none}.back{margin-bottom:12px;display:inline-flex}}@media (max-width:640px){.split[data-view=detail] .list-col,.split[data-view=list] .detail-col{display:none}.back{margin-bottom:12px;display:inline-flex}.ol thead{display:none}.ol tr{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:12px 0;display:grid}.ol td{border:0;padding:0}.ol td.c{grid-area:1/2/span 2}.ol td.amt{grid-column:1}.ol td.act{grid-column:1/-1;text-align:left!important}.ol td.ord{display:none}.ol tfoot tr{border-bottom:0}.ol tfoot td:empty{display:none}.confirm-bar .btn{flex:1}}.sup-totals{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);margin-bottom:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.sup-totals>div{padding:16px 20px}.sup-totals>div+div{border-left:1px solid var(--border)}.sup-totals span{color:var(--muted);font-size:13px}.sup-totals b{font-size:var(--fs-kpi);font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-top:4px;font-weight:500;display:block}.sup-totals .lead b{font-size:var(--fs-lead);font-weight:600}.split-line{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 6px;margin-top:6px;font-size:13px;display:flex}.split-line .eq{color:var(--text);font-weight:600}.split-line span{white-space:nowrap}.tbl td.p{min-width:260px}.ncc tr.prod td{border-bottom:0;height:auto;padding-top:18px;font-weight:650}.ncc tbody:first-of-type tr.prod:first-child td{padding-top:8px}.ncc tr.ord td{border-bottom:1px solid var(--rule);height:38px;padding-top:4px;padding-bottom:4px}.ncc tr.ord td:first-child{padding-left:20px}.ncc tr.ord .when{color:var(--muted);margin-left:8px;font-size:13px}.ncc tr.sum td{border-bottom:1px solid var(--border);background:var(--raised);font-weight:650}.ncc tr.sum td:first-child{border-radius:8px 0 0 8px;padding-left:20px}.ncc tr.sum td:last-child{border-radius:0 8px 8px 0;padding-right:12px}.ncc tr.sum .split-line{font-weight:400}@media (max-width:1100px){.sup-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.sup-totals>div:nth-child(3){border-left:0}.sup-totals>div:nth-child(n+3){border-top:1px solid var(--border)}}@media (max-width:640px){.sup-totals .lead{grid-column:1/-1}.sup-totals>div:nth-child(2){border-left:0;border-top:1px solid var(--border)}.sup-totals>div:nth-child(3){border-left:1px solid var(--border)}.sup-totals>div:nth-child(4){border-left:0;grid-column:1/-1}.tbl td.p{min-width:0}.ncc thead{display:none}.ncc tr{grid-template-columns:minmax(0,1fr) auto auto;gap:2px 12px;display:grid}.ncc td{display:block;border:0!important;height:auto!important;padding:0!important}.ncc tr.prod{padding:18px 0 6px}.ncc tr.prod td:not(:first-child){display:none}.ncc tr.ord{border-bottom:1px solid var(--rule);padding:9px 0 9px 12px}.ncc tr.sum{background:var(--raised);border-radius:8px;padding:10px 12px}.ncc tr.sum td{background:0 0}.ncc td.price{display:none!important}.ncc td .split-line{grid-column:1/-1}.ncc tfoot tr{border-top:1px solid var(--border);padding:12px 0 0}}.grp-h{color:var(--muted);margin:16px 12px 6px;font-size:13px}.grp-h:first-child{margin-top:0}.wt{border-collapse:collapse;width:100%}.wt th{height:38px;color:var(--muted);text-align:right;border-bottom:1px solid var(--border);white-space:nowrap;padding:0 10px;font-size:13px;font-weight:400}.wt th:first-child{text-align:left;padding-left:0}.wt td{border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;padding:8px 10px}.wt td:first-child{text-align:left;white-space:normal;padding-left:0}.wt th:last-child,.wt td:last-child{padding-right:0}.wt tfoot td{border-bottom:0;border-top:1px solid var(--border);font-weight:650}.wt .qty input{width:64px}.back{display:none}@media (max-width:1100px){.split[data-view=detail] .list-col,.split[data-view=list] .detail-col{display:none}.back{margin-bottom:12px;display:inline-flex}}@media (max-width:640px){.split[data-view=detail] .list-col,.split[data-view=list] .detail-col{display:none}.back{margin-bottom:12px;display:inline-flex}.wt thead{display:none}.wt tr{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:12px 0;display:grid}.wt td{text-align:left;border:0;padding:0}.wt td.in{grid-area:1/2/span 2}.wt td.dvc{grid-column:1}.wt td.ord,.wt td.price{display:none}.wt td.amt{color:var(--muted);grid-column:1/-1}.wt tfoot tr{border-bottom:0}.wt tfoot td:empty{display:none}}.org td{cursor:pointer}.org .nm{align-items:center;gap:8px;font-weight:600;display:flex}.org .nm svg{width:16px;height:16px;stroke:var(--muted);fill:none;stroke-width:1.8px;transition:transform .15s var(--ease);flex:none}.org[aria-expanded=true] .nm svg{transform:rotate(90deg)}.bar{background:var(--data);border-radius:2px;height:3px;margin:6px 0 0 24px}.org.zero td{color:var(--muted)}.site-row td{background:var(--raised)}.site-row td:first-child{padding-left:24px!important}.line-row td{background:var(--raised);font-size:14px}.line-row td:first-child{padding-left:40px!important}.tbl.acc td:first-child,.tbl.acc th:first-child{padding-left:12px}.tbl.acc td:last-child,.tbl.acc th:last-child{padding-right:12px}@media (max-width:1100px){.lead-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-row>div:nth-child(3){border-left:0}.lead-row>div:nth-child(n+3){border-top:1px solid var(--border)}}@media (max-width:640px){.lead-row .lead{grid-column:1/-1}.lead-row>div:nth-child(2){border-left:0;border-top:1px solid var(--border)}.lead-row>div:nth-child(3){border-left:1px solid var(--border)}.lead-row>div:nth-child(4){border-left:0;grid-column:1/-1}.tbl.acc .hide-sm{display:none}.tbl.acc td,.tbl.acc th{padding-left:6px;padding-right:6px}.site-row td:first-child{padding-left:16px!important}.line-row td:first-child{padding-left:24px!important}}.lead-row{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);margin-bottom:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.lead-row>div{padding:16px 20px}.lead-row>div+div{border-left:1px solid var(--border)}.lead-row span{color:var(--muted);font-size:13px}.lead-row b{font-size:var(--fs-kpi);font-variant-numeric:tabular-nums;margin-top:4px;font-weight:500;display:block}.lead-row .lead b{font-size:var(--fs-lead);letter-spacing:-.02em;font-weight:600}.notice{margin-bottom:var(--gap)}.notice svg{stroke:currentColor;fill:none;stroke-width:1.8px;flex:none;width:18px;height:18px;margin-top:1px}.notice p{color:var(--text);font-size:var(--fs-small)}.notice p+p{margin-top:4px}.actions .reason{color:var(--muted);font-size:var(--fs-small);text-align:right;max-width:34ch}.matrix.inv thead th{min-width:96px;max-width:none;height:52px}.matrix.inv thead th.we{color:var(--text)}.matrix.inv td{padding:0}.matrix.inv td.first,.matrix.inv td.total{padding:0 10px}.matrix.inv .first button{all:unset;cursor:pointer;font-weight:600;display:block}.matrix.inv .first button:hover{text-decoration:underline}.matrix.inv .first .sub{color:var(--muted);font-size:12px;font-weight:400;display:block}.matrix.inv td button.c{all:unset;box-sizing:border-box;text-align:right;cursor:pointer;font-variant-numeric:tabular-nums;width:100%;height:40px;padding:0 10px;display:block}.matrix.inv td button.c:hover{background:var(--raised)}.matrix.inv td button.c:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.matrix.inv td button.c.draft{background:var(--warn-pale);color:var(--warn-ink)}.matrix.inv td button.c.flag{box-shadow:inset 0 -2px 0 var(--warn-ink)}.matrix.inv td button.c[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--primary)}.matrix.inv tr[aria-current=true] td.first{background:var(--frame-active)}.matrix.inv td.zero{text-align:right;padding:0 10px}.matrix.inv tfoot td{padding:0 10px}.legend i{vertical-align:-1px;border-radius:3px;width:12px;height:12px;margin-right:6px;display:inline-block}.legend i.issued{box-shadow:inset 0 0 0 1px var(--control)}.legend i.draft{background:var(--warn-pale);box-shadow:inset 0 0 0 1px var(--warn-line)}.legend i.flag{box-shadow:inset 0 -2px 0 var(--warn-ink), inset 0 0 0 1px var(--control)}.card-head .back{margin-right:4px}.day-row{cursor:pointer}.day-row:hover td{background:var(--raised)}.tbl tr.flag td{background:var(--warn-pale)}.bar{background:var(--data);border-radius:2px;height:3px;margin-top:6px}@media (max-width:1100px){.lead-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-row>div:nth-child(3){border-left:0}.lead-row>div:nth-child(n+3){border-top:1px solid var(--border)}.actions .reason{text-align:left}}@media (max-width:640px){.lead-row .lead{grid-column:1/-1}.lead-row>div:nth-child(2){border-left:0;border-top:1px solid var(--border)}.lead-row>div:nth-child(3){border-left:1px solid var(--border)}.lead-row>div:nth-child(4){border-left:0;grid-column:1/-1}.matrix.inv .first{min-width:132px;max-width:150px}.tbl .hide-sm{display:none}}.datenav{height:var(--control-h);border:1px solid var(--control);border-radius:var(--pill);background:var(--surface);align-items:center;padding:0 2px;display:inline-flex}.datenav .icon-btn{width:34px;height:34px}.datenav label{white-space:nowrap;font-variant-numeric:tabular-nums;cursor:pointer;padding:0 6px;font-weight:550;position:relative}.datenav input[type=date],.datenav input[type=month]{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.datenav input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.datenav input[type=month]::-webkit-calendar-picker-indicator{cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.datenav:focus-within{border-color:var(--text)}.booting{min-height:100vh;color:var(--muted);place-content:center;justify-items:center;gap:10px;display:grid}.booting img{width:40px;height:40px}.copy-menu{opacity:0;visibility:hidden;transform-origin:0 0;transition:opacity .15s ease, transform .18s var(--ease), visibility 0s linear .18s;display:block;transform:translateY(-6px)scale(.98)}.copy-menu.open{opacity:1;visibility:visible;transition:opacity .15s ease, transform .18s var(--ease);transform:none}.copy-custom{border-top:1px solid var(--rule);grid-template-columns:1fr auto;align-items:center;gap:6px 8px;margin-top:4px;padding:10px 12px 6px;display:grid}.copy-custom label{color:var(--muted);grid-column:1/-1;font-size:13px}.copy-custom .input{height:36px}.menu-edit{gap:14px;display:grid}.menu-edit fieldset{border:1px solid var(--border);border-radius:12px;gap:10px;margin:0;padding:12px 14px 14px;display:grid}.menu-edit legend{padding:0 6px;font-weight:600}.menu-edit .field label{color:var(--muted);font-size:13px;font-weight:400}.ol .why{width:100%;max-width:320px;height:34px;margin-top:6px;font-size:14px;display:block}.sheet a.btn{text-decoration:none}.picker-btn:disabled{cursor:default;opacity:1;border-style:dashed}@media (max-width:640px){.head .actions .datenav{flex:100%;justify-content:space-between}.ol .why{max-width:none}}@media print{.print-only{display:block!important}}.picker-btn:disabled{background:var(--raised);border-style:solid}@media (max-width:640px){.lines-dv .row>:first-child{grid-area:1/1}.lines-dv .row>.amt{grid-area:1/2}.lines-dv .row>:nth-child(2){grid-area:2/1/auto/-1}.sup-totals{grid-template-columns:1fr!important}.sup-totals>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex;border-left:0!important;grid-column:auto!important}.sup-totals>div+div{border-top:1px solid var(--border)}.sup-totals>div b{margin-top:0;font-size:18px}.sup-totals .lead b{font-size:24px}}@media (min-width:641px) and (max-width:1100px){.strip{grid-template-columns:repeat(9,minmax(0,1fr))}}.note-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:14px;display:flex}.note-tools .view-toggle{margin-bottom:0}.day-chips{margin-bottom:8px;padding-bottom:4px}.datenav .icon-btn:disabled{opacity:.35;cursor:default}.users-tools{grid-template-columns:minmax(220px,360px) minmax(0,1fr) auto;align-items:center;gap:12px 16px;margin-bottom:8px;display:grid}.users-tools .chips{margin:0;padding:0}.check{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;font-size:14px;display:inline-flex}.check input{width:18px;height:18px;accent-color:var(--text)}.users-tbl td{vertical-align:top}.users-tbl .role{line-height:1.5;display:block}.users-tbl tr.inactive td{color:var(--muted)}.users-tbl td.act{text-align:right;width:1%}.user-form{gap:14px;display:grid}.user-form .roles{border:0;gap:10px;margin:0;padding:0;display:grid}.user-form .roles legend{margin-bottom:4px;padding:0;font-weight:550}.role-row{grid-template-columns:minmax(0,1.15fr) minmax(0,1.25fr) auto;align-items:center;gap:8px;display:grid}.input[readonly]{background:var(--raised);border-color:var(--border);color:var(--muted)}.role-row select:only-of-type{grid-column:span 2}.field-err{color:var(--neg-ink);font-size:14px}.danger-zone{border-top:1px solid var(--rule);gap:8px;padding-top:14px;display:grid}.btn.primary.danger-fill{background:var(--negative);border-color:var(--negative)}.temp-pw{background:var(--raised);border-radius:12px;margin:4px 0 10px;padding:12px 16px}.temp-pw code{letter-spacing:.04em;font:600 20px/1.3 ui-monospace,Cascadia Mono,Consolas,monospace}.login-card .check{margin-top:-4px}dialog:has(.user-form){width:min(640px,100vw - 32px)}@media (max-width:900px){.users-tools{grid-template-columns:1fr}.users-tools .chips{margin:0 calc(-1 * var(--card-pad));padding:0 var(--card-pad)}}@media (max-width:640px){.role-row{grid-template-columns:minmax(0,1fr) auto}.role-row select+select,.role-row label+select~select,.users-tbl td.st{grid-column:1}.users-tbl td.act{grid-area:1/2}}.datepick{height:var(--control-h);border:1px solid var(--control);border-radius:var(--pill);background:var(--surface);white-space:nowrap;cursor:pointer;align-items:center;padding:0 16px;font-weight:550;display:inline-flex;position:relative}.datepick input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.datepick input::-webkit-calendar-picker-indicator{cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.datepick:focus-within{border-color:var(--text)}.timeline-box{background:var(--raised);border-radius:12px;margin:0 0 16px;padding:14px 16px}.timeline-box h3{margin-bottom:10px;font-size:15px;font-weight:650}.timeline{gap:0;margin:0;display:grid}.timeline li{grid-template-columns:22px minmax(0,1fr);gap:10px;padding-bottom:12px;display:grid;position:relative}.timeline li:last-child{padding-bottom:0}.timeline li:before{content:"";background:var(--border);width:2px;position:absolute;top:22px;bottom:0;left:10px}.timeline li:last-child:before{content:none}.timeline li.done:before{background:#9cc7ad}.timeline .dot{z-index:1;background:var(--surface);border:1.5px dashed var(--muted);border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:relative}.timeline li.done .dot{background:var(--data);color:#fff;border:0}.timeline .dot svg{stroke:currentColor;fill:none;stroke-width:2.4px;width:13px;height:13px}.timeline b{font-weight:600}.timeline li:not(.done) b{color:var(--muted);font-weight:550}.timeline .at{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.timeline .tx{color:var(--muted);font-size:13px;display:block}.changed{border-top:1px solid var(--border);gap:2px;margin-top:12px;padding-top:10px;display:grid}.changed .row{justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}.changed .reason{color:var(--muted);font-size:13px;display:block}.changed p{margin-top:6px;font-size:13px}@media (max-width:640px){.head .actions .datepick{flex:auto;justify-content:center}}.food .note-link{color:var(--muted);margin-top:4px;font-size:13px;font-weight:500;text-decoration:none;display:inline-block}.food .note-link:hover{color:var(--text)}.food .qty-msg,.food .line-note{grid-column:1/-1}.qty-msg{color:var(--muted);font-size:13px}.qty-msg.bad{color:var(--neg-ink)}.line-note .input{width:100%;height:36px;font-size:14px}.head .stamp{color:var(--muted);white-space:nowrap;font-size:13px}.submit-sum{background:var(--raised);border-radius:12px;margin-bottom:8px;padding:12px 16px}.send-desktop .btn.danger{justify-self:start}.wt tr.flag td{background:var(--warn-pale)}.flag-pill,.ol .np{height:20px;margin-left:8px;font-size:12px}.ol tr.school-edited td{background:var(--warn-pale)}.ol .edited-by-school{color:var(--warn-ink)}.reopen-row{background:var(--raised);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:14px;padding:10px 14px;display:flex}.add-row .sub-for{flex:0 240px}.dispute-tbl{border-collapse:collapse;width:100%;font-size:14px}.dispute-tbl th{color:var(--muted);text-align:left;border-bottom:1px solid var(--border);padding:6px 0;font-size:13px;font-weight:400}.dispute-tbl td{border-bottom:1px solid var(--rule);padding:6px 0}.dispute-tbl .n{text-align:right;padding-left:12px}.dispute-tbl tr.diff td{background:var(--warn-pale)}.dispute-tbl .qty input{width:64px}dialog:has(.dispute-tbl){width:min(620px,100vw - 32px)}.user .account-link{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--control);text-decoration-color:var(--control);text-underline-offset:2px;margin-top:2px;font-size:12px;display:inline-block}.user .account-link:hover{color:var(--text)}.offline-bar{background:var(--warn-pale);color:var(--warn-ink);box-shadow:inset 0 0 0 1px var(--warn-line);border-radius:12px;margin:-8px 0 16px;padding:10px 14px;font-size:14px}.consent-card{width:min(560px,100%)}.consent-text{border:1px solid var(--border);background:var(--raised);border-radius:12px;max-height:46vh;margin-bottom:14px;padding:14px 16px;font-size:14px;overflow:auto}.consent-text h2{margin:12px 0 4px;font-size:15px;font-weight:650}.consent-text h2:first-child{margin-top:0}.consent-check{white-space:normal;align-items:flex-start;margin-bottom:14px}.login-card .btn.primary{width:100%}.hist{gap:0;display:grid}.hist>li{border-bottom:1px solid var(--rule);padding:12px 0}.hist>li:last-child{border-bottom:0}.hist-head{flex-wrap:wrap;justify-content:space-between;gap:8px 16px;display:flex}.hist p{margin-top:2px;font-size:14px}.hist-changes{font-variant-numeric:tabular-nums;margin-top:4px;padding-left:18px;font-size:14px;list-style:outside}.ncc tr.ncc-order td{border-bottom:1px solid var(--border);font-size:14px}.ncc tr.ncc-order td:first-child{color:var(--muted);padding-left:20px}.ncc tr.ncc-order .qty input{width:72px}.ncc-diff{height:20px;margin-left:8px;font-size:12px}.md-form{gap:14px;display:grid}.md-form .two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.md-actions{justify-content:flex-end}:is(dialog:has(.md-form),dialog:has(.site-dlg)){width:min(680px,100vw - 32px)}.site-dlg .tabs{margin-bottom:14px}.sites-tbl tr.md-org td{border-bottom:1px solid var(--border);padding-top:16px}.sites-tbl tr.md-site td:first-child{padding-left:20px}.sites-tbl .ord-no{min-width:28px;color:var(--muted);font-size:13px;display:inline-block}.sites-tbl tr.inactive td,.prod-tbl tr.inactive td,.pl-tbl tr.inactive td,.contacts li.inactive{color:var(--muted)}.sites-tbl td.act,.prod-tbl td.act{text-align:right;width:1%}.contacts-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.contacts{display:grid}.contacts li{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:10px 0;display:flex}.contacts li .pill{height:20px;margin-left:8px;font-size:12px}.contacts .sub,.memberships .sub{color:var(--muted);font-size:13px;display:block}.contact-add{border-top:1px solid var(--border);grid-template-columns:1.2fr 1fr auto auto;align-items:end;gap:10px;padding-top:10px;display:grid}.memberships{gap:8px;display:grid}.memberships li{background:var(--raised);border-radius:10px;padding:8px 12px}.memberships li.now{background:var(--data-pale)}.move-row{grid-template-columns:1.4fr 1fr auto;align-items:end;gap:10px;display:grid}.pl-dates{grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;margin-bottom:14px;display:grid}.pl-missing{background:var(--warn-pale);border-radius:12px;margin-bottom:16px;padding:12px 14px}.pl-missing h3{color:var(--warn-ink);margin-bottom:6px;font-size:14px;font-weight:650}.pl-tbl .qty input,.pl-missing .qty input{width:96px}.log-tools{grid-template-columns:1.4fr 1fr 1fr;gap:12px;margin-bottom:8px;display:grid}.log{display:grid}.log>li{border-bottom:1px solid var(--rule);padding:10px 0}.log-main{grid-template-columns:140px minmax(0,1fr) auto;align-items:baseline;gap:4px 16px;display:grid}.log .at{color:var(--muted);font-size:13px}.log .who{color:var(--muted);font-size:14px}.log details summary{cursor:pointer;color:var(--muted);margin-top:4px;font-size:13px}.log-json{grid-template-columns:1fr 1fr;gap:4px 16px;margin-top:6px;display:grid}.log-json b{grid-row:1;font-size:13px}.log-json pre{background:var(--raised);border-radius:8px;max-height:260px;margin:0;padding:8px 10px;font-size:12px;line-height:1.45;overflow:auto}@media (max-width:640px){.md-form .two,.contact-add,.move-row,.pl-dates,.log-tools,.log-json,.log-main{grid-template-columns:1fr}.log-json b{grid-row:auto}.sites-tbl tr.md-org td,.sites-tbl tr.md-site td{border-bottom:0;padding-top:0;padding-left:0!important}.sites-tbl tr.md-org{padding-top:18px}.sites-tbl tr.md-site{padding-left:14px}.sites-tbl td.l2{grid-column:1/-1}.sites-tbl td.st{grid-column:1}.sites-tbl td.act{grid-area:1/2}}
