:root{--bg: #F2F4F8;--bg-sunken: #E8EBF2;--surface: #FFFFFF;--surface-alt: #F8F9FC;--line: #E2E6EF;--line-strong: #C9D0DE;--ink: #0E1020;--ink-soft: #5A6373;--ink-faint: #8B94A5;--ink-invert: #FFFFFF;--accent: #3B4EEA;--accent-press: #2C3BC4;--accent-soft: #EDEFFE;--accent-line: #C3CAFA;--success: #12805C;--success-soft: #E1F6EE;--warn: #A96A05;--warn-soft: #FDF3E2;--error: #B3372A;--error-soft: #FBEBE8;--info: #1B6FA8;--info-soft: #E6F2FA;--money: #0E1020;--money-due: #A96A05;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, monospace;--shadow-sm: 0 1px 2px rgba(14,16,32,.06), 0 1px 1px rgba(14,16,32,.04);--shadow-md: 0 4px 16px rgba(14,16,32,.08);--shadow-lg: 0 16px 48px rgba(14,16,32,.14);--shadow-pop: 0 24px 64px rgba(14,16,32,.22);--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 22px;--r-pill: 999px;--ease: cubic-bezier(.32, .72, 0, 1);--tap: 38px;--step: 1;--pad-page: 24px;--gap: 14px}.surface-counter{--tap: 56px;--step: 1.12;--pad-page: 20px;--gap: 16px}.surface-road{--tap: 52px;--step: 1.06;--pad-page: 14px;--gap: 12px}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:calc(15px * var(--step));line-height:1.45;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;text-size-adjust:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin:0}table{border-collapse:collapse}button,.tappable{-webkit-user-select:none;user-select:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--r-pill);border:3px solid transparent;background-clip:content-box}.t-display{font-family:var(--font-display);font-weight:700;font-size:calc(28px * var(--step));line-height:1.15;letter-spacing:-.02em}.t-title{font-family:var(--font-display);font-weight:700;font-size:calc(21px * var(--step));line-height:1.2;letter-spacing:-.01em}.t-heading{font-weight:700;font-size:calc(16px * var(--step));line-height:1.3}.t-body{font-size:calc(15px * var(--step))}.t-sub{font-size:calc(13.5px * var(--step));color:var(--ink-soft)}.t-fine{font-size:calc(12px * var(--step));color:var(--ink-faint)}.t-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.t-eyebrow{font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint)}.t-money{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:600}.t-num{font-family:var(--font-display);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.u-ink-soft{color:var(--ink-soft)}.u-ink-faint{color:var(--ink-faint)}.u-success{color:var(--success)}.u-warn{color:var(--warn)}.u-error{color:var(--error)}.u-center{text-align:center}.u-right{text-align:right}.u-nowrap{white-space:nowrap}.u-grow{flex:1}.u-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack{display:flex;flex-direction:column;gap:var(--gap)}.stack>.btn-sm,.stack-2>.btn-sm,.stack-4>.btn-sm{align-self:flex-start}.stack-2{display:flex;flex-direction:column;gap:8px}.stack-4{display:flex;flex-direction:column;gap:4px}.row{display:flex;align-items:center;gap:var(--gap)}.row-2{display:flex;align-items:center;gap:8px}.row-tight{display:flex;align-items:center;gap:4px}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--gap)}.row-wrap{flex-wrap:wrap}.spacer{flex:1}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}.grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--gap)}.flow{width:100%;max-width:560px;margin:0 auto}.flow-wide{width:100%;max-width:860px;margin:0 auto}.app-shell{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.topbar{display:flex;align-items:center;gap:16px;padding:0 18px;height:60px;flex:0 0 auto;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.brandmark{font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:-.01em;display:inline-block;white-space:nowrap;background:none;border:none;padding:0;color:var(--ink)}.brandmark em{font-style:normal;color:var(--accent)}.store-chip{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;border-radius:var(--r-pill);background:var(--surface-alt);border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--ink);max-width:240px}.store-chip .dot{width:7px;height:7px;border-radius:50%;background:var(--success);flex:0 0 auto}.store-chip.is-paused .dot{background:var(--warn)}.store-chip select{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:0;outline:0;background:transparent;font:inherit;color:inherit;cursor:pointer;max-width:190px;padding:0 18px 0 0;text-overflow:ellipsis;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:right 7px center,right 2px center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.store-chip:focus-within{outline:2px solid var(--accent);outline-offset:1px}.store-chip select option{color:var(--ink);background:var(--surface)}.main-content{flex:1;min-width:0;padding:var(--pad-page) var(--pad-page) 96px;width:100%;max-width:1360px;margin:0 auto}.surface-counter .main-content{max-width:1100px}.office-body{display:flex;flex:1;min-height:0}.sidenav{flex:0 0 224px;background:var(--surface);border-right:1px solid var(--line);padding:14px 10px;overflow-y:auto}.sidenav-group+.sidenav-group{margin-top:18px}.sidenav-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);padding:0 10px 6px}.sidenav-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;min-height:38px;padding:0 10px;border:none;background:none;border-radius:var(--r-sm);font-size:13.5px;font-weight:600;color:var(--ink-soft)}.sidenav-item:hover{background:var(--surface-alt);color:var(--ink)}.sidenav-item.active{background:var(--accent-soft);color:var(--accent)}.sidenav-item .badge{margin-left:auto}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--surface);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -2px 12px #0e10200d}.tabbar-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:54px;border:none;background:none;border-radius:var(--r-md);font-size:11.5px;font-weight:700;color:var(--ink-faint);letter-spacing:.01em}.tabbar-item .glyph{font-size:20px;line-height:1}.tabbar-item.active{color:var(--accent);background:var(--accent-soft)}.tabbar-item:active{transform:scale(.96)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.page-head>:first-child{flex:1 1 280px;min-width:0}.page-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:1 1 auto;min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:0 18px;border:1.5px solid transparent;border-radius:var(--r-md);font-family:var(--font-body);font-weight:650;font-size:calc(14.5px * var(--step));letter-spacing:-.005em;white-space:nowrap;transition:background .12s var(--ease),transform .08s var(--ease),border-color .12s var(--ease)}.btn:active:not(:disabled){transform:scale(.975)}.btn:disabled{opacity:.42;cursor:not-allowed}.btn:focus-visible{outline:3px solid var(--accent-line);outline-offset:2px}.btn-primary{background:var(--accent);color:var(--ink-invert)}.btn-primary:hover:not(:disabled){background:var(--accent-press)}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.btn-secondary:hover:not(:disabled){background:var(--surface-alt);border-color:var(--ink-faint)}.btn-ghost{background:transparent;color:var(--ink-soft)}.btn-ghost:hover:not(:disabled){background:var(--surface-alt);color:var(--ink)}.btn-danger{background:var(--error-soft);color:var(--error);border-color:transparent}.btn-danger:hover:not(:disabled){background:#f6ded9}.btn-success{background:var(--success);color:var(--ink-invert)}.btn-success:hover:not(:disabled){filter:brightness(.94)}.btn-lg{min-height:calc(var(--tap) + 10px);padding:0 26px;font-size:calc(16px * var(--step));border-radius:var(--r-lg)}.btn-block{width:100%}.btn-commit{width:100%;min-height:calc(var(--tap) + 14px);font-size:calc(17px * var(--step));font-weight:700;border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.btn-icon{min-height:var(--tap);width:var(--tap);padding:0;border-radius:var(--r-md)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px}.card-flush{padding:0;overflow:hidden}.card-quiet{background:var(--surface-alt);border-color:transparent}.card-inset{background:var(--surface-alt);border:1px solid var(--line);border-radius:var(--r-md);padding:14px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}.card-body{padding:18px}.section+.section{margin-top:26px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.divider{height:1px;background:var(--line);border:0;margin:0}.divider-dashed{height:0;border:0;border-top:1px dashed var(--line-strong);margin:0}.field{display:flex;flex-direction:column;gap:6px}.field+.field{margin-top:14px}.field>label,.field-label{font-size:calc(12.5px * var(--step));font-weight:650;color:var(--ink-soft)}.field-hint{font-size:calc(12px * var(--step));color:var(--ink-faint)}.field-error{font-size:calc(12.5px * var(--step));color:var(--error);font-weight:600}.input,.field input,.field select,.field textarea{width:100%;min-height:var(--tap);padding:10px 14px;border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-size:calc(15px * var(--step));outline:none;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.input::placeholder,.field input::placeholder,.field textarea::placeholder{color:var(--ink-faint)}.input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field textarea{resize:vertical;min-height:84px;line-height:1.5}.field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%235A6373' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.input-hero{width:100%;text-align:center;font-family:var(--font-display);font-weight:700;font-size:calc(34px * var(--step));letter-spacing:.01em;padding:18px 16px;border:2px solid var(--line-strong);border-radius:var(--r-xl);background:var(--surface);outline:none;font-variant-numeric:tabular-nums}.input-hero:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.input-affix{position:relative;display:block}.input-affix>.affix{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:calc(14px * var(--step));font-weight:650;color:var(--ink-faint);pointer-events:none}.input-affix>.affix-lead{right:auto;left:16px}.input-affix:has(.affix-lead) .input{padding-left:34px}.tile{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;width:100%;min-height:calc(var(--tap) + 12px);padding:13px 16px;border:1.5px solid var(--line-strong);border-radius:var(--r-lg);background:var(--surface);color:var(--ink);text-align:left;font-weight:650;font-size:calc(14.5px * var(--step));transition:border-color .12s var(--ease),background .12s var(--ease),transform .08s var(--ease)}.tile:active:not(:disabled){transform:scale(.985)}.tile .tile-sub{font-weight:450;font-size:calc(12.5px * var(--step));color:var(--ink-soft)}.tile.selected{border-color:var(--accent);border-width:2px;background:var(--accent-soft);color:var(--accent)}.tile.selected .tile-sub{color:var(--accent)}.tile:disabled{opacity:.45;cursor:not-allowed}.tile-center{align-items:center;justify-content:center;text-align:center;gap:6px;padding:22px 16px}.tile-glyph{font-size:30px;line-height:1}.tile-action{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;min-height:132px;padding:20px;border-radius:var(--r-xl);border:1.5px solid var(--line);background:var(--surface);color:var(--ink);text-align:left;box-shadow:var(--shadow-sm);transition:transform .1s var(--ease),box-shadow .12s var(--ease)}.tile-action:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.tile-action:active{transform:scale(.985)}.tile-action .glyph{font-size:30px;line-height:1}.tile-action .label{font-family:var(--font-display);font-weight:700;font-size:calc(19px * var(--step));letter-spacing:-.01em}.tile-action .sub{font-size:calc(13px * var(--step));color:var(--ink-soft);font-weight:450}.tile-action.is-primary{background:var(--accent);border-color:var(--accent);color:var(--ink-invert);box-shadow:0 6px 20px #3b4eea47}.tile-action.is-primary .sub{color:#ffffffdb}.tile-action .count-chip{align-self:flex-start;background:var(--warn-soft);color:var(--warn);border-radius:var(--r-pill);padding:3px 10px;font-size:12px;font-weight:700}.segmented{display:flex;padding:3px;background:var(--bg-sunken);border-radius:var(--r-md);gap:2px;max-width:100%;overflow-x:auto;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{border:none;background:none;border-radius:calc(var(--r-md) - 3px);min-height:calc(var(--tap) - 10px);padding:0 14px;font-size:calc(13px * var(--step));font-weight:650;color:var(--ink-soft);flex:0 0 auto;white-space:nowrap}.segmented button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.keypad button{min-height:58px;border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface);font-family:var(--font-display);font-size:22px;font-weight:600}.keypad button:active{background:var(--accent-soft);transform:scale(.96)}.keypad button.keypad-util{font-size:16px;font-weight:650;color:var(--ink-soft);background:var(--surface-alt)}.chip-row{display:flex;gap:8px;flex-wrap:wrap}.chip{min-height:40px;padding:0 14px;border:1.5px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);font-weight:650;font-size:calc(13.5px * var(--step))}.chip:active{transform:scale(.96)}.chip.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.switch{position:relative;display:inline-flex;align-items:center;gap:10px}.switch input{position:absolute;opacity:0;width:0;height:0}.switch .track{width:46px;height:28px;border-radius:var(--r-pill);background:var(--line-strong);transition:background .15s var(--ease);flex:0 0 auto}.switch .thumb{position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform .15s var(--ease)}.switch input:checked~.track{background:var(--accent)}.switch input:checked~.thumb{transform:translate(18px)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--r-pill);font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.02em;white-space:nowrap;background:var(--surface-alt);color:var(--ink-soft)}.badge-accent{background:var(--accent-soft);color:var(--accent)}.badge-success{background:var(--success-soft);color:var(--success)}.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-error{background:var(--error-soft);color:var(--error)}.badge-info{background:var(--info-soft);color:var(--info)}.badge-neutral{background:var(--bg-sunken);color:var(--ink-soft)}.badge-lg{padding:5px 12px;font-size:calc(12.5px * var(--step))}.status-dot{display:inline-flex;align-items:center;gap:7px;font-size:calc(13px * var(--step));font-weight:600}.status-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;flex:0 0 auto}.list{display:flex;flex-direction:column}.list-row{display:flex;align-items:center;gap:14px;width:100%;text-align:left;min-height:calc(var(--tap) + 12px);padding:12px 16px;background:var(--surface);border:none;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:none}.list-row.tappable:hover{background:var(--surface-alt)}.list-row.tappable:active{background:var(--accent-soft)}.list-row.selected{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow-x:auto}.table{width:100%;font-size:calc(13px * var(--step))}.table th{text-align:left;padding:11px 16px;white-space:nowrap;border-bottom:1px solid var(--line);font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);background:var(--surface-alt);position:sticky;top:0}.table td{padding:11px 16px;border-bottom:1px solid var(--line);white-space:nowrap}.table tr:last-child td{border-bottom:none}.table tbody tr.tappable:hover{background:var(--surface-alt);cursor:pointer}.table .num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:15px 16px;display:flex;flex-direction:column;gap:4px;text-align:left}.kpi-label{font-size:calc(12px * var(--step));color:var(--ink-soft);font-weight:600}.kpi-foot{font-size:calc(11.5px * var(--step));color:var(--ink-faint);font-family:var(--font-mono)}.kpi.tappable:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.kpi.is-alert{border-color:var(--error);background:var(--error-soft)}.kpi.is-alert .kpi-value{color:var(--error)}.kpi.is-warn{border-color:var(--warn);background:var(--warn-soft)}.meter{height:6px;border-radius:var(--r-pill);background:var(--bg-sunken);overflow:hidden}.meter>span{display:block;height:100%;background:var(--accent);border-radius:var(--r-pill);transition:width .3s var(--ease)}.board{display:flex;gap:12px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x proximity}.board-col{flex:0 0 268px;scroll-snap-align:start;background:var(--bg-sunken);border-radius:var(--r-lg);display:flex;flex-direction:column;max-height:calc(100dvh - 220px)}.board-col-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 13px;flex:0 0 auto;font-size:calc(11.5px * var(--step));font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.board-col-body{padding:0 8px 8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1}.board-col-empty{text-align:center;color:var(--ink-faint);font-size:12.5px;padding:18px 0}.ticket{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 13px;display:flex;flex-direction:column;gap:7px;text-align:left;width:100%;box-shadow:var(--shadow-sm)}.ticket:hover{border-color:var(--line-strong)}.ticket-id{font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:var(--ink-faint);letter-spacing:.02em}.ticket-name{font-weight:700;font-size:calc(14.5px * var(--step));line-height:1.25}.ticket-meta{font-size:calc(12px * var(--step));color:var(--ink-soft)}.ticket-rush{box-shadow:inset 3px 0 0 var(--warn),var(--shadow-sm)}.ticket-alert{box-shadow:inset 3px 0 0 var(--error),var(--shadow-sm)}.badge-commercial{background:#ede6fa;color:#5b3fa8;font-weight:700}.ticket-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.ticket-head-main{display:flex;flex-direction:column;gap:2px;min-width:0}.ticket-head .ticket-id{flex:0 0 auto;white-space:nowrap}.ticket-tags{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 6px;font-family:var(--font-mono);font-size:11.5px}.ticket-tags-label{font-family:inherit;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint);margin-right:1px}.ticket-tag{font-weight:700;color:var(--ink-soft);padding:1px 6px;border-radius:var(--r-sm);background:var(--surface-alt);border:1px solid var(--line)}.ticket-prefs{margin:0;font-size:calc(11.5px * var(--step));line-height:1.5;color:var(--ink-soft)}.ticket-pref-sep{color:var(--ink-faint)}.ticket-pref.is-key{color:var(--ink);font-weight:650}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0e102070;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fade-in .14s var(--ease)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(14px) scale(.99)}to{opacity:1;transform:none}}.dialog{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow-pop);width:100%;max-width:420px;max-height:min(88dvh,900px);display:flex;flex-direction:column;animation:rise .18s var(--ease);overflow:hidden}.dialog-wide{max-width:760px}.dialog-head{padding:20px 22px 0;flex:0 0 auto}.dialog-body{padding:16px 22px;overflow-y:auto;flex:1}.dialog-foot{padding:14px 22px 20px;display:flex;gap:10px;flex:0 0 auto;border-top:1px solid var(--line);background:var(--surface)}.dialog-foot .btn{flex:1}@media (max-width: 640px){.overlay{align-items:flex-end;padding:0}.dialog{max-width:none;border-radius:var(--r-xl) var(--r-xl) 0 0;max-height:92dvh;animation:sheet-up .22s var(--ease)}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}.dialog-foot{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}.banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--r-md);font-size:calc(13.5px * var(--step));font-weight:550;line-height:1.4}.banner-error{background:var(--error-soft);color:var(--error)}.banner-warn{background:var(--warn-soft);color:var(--warn)}.banner-success{background:var(--success-soft);color:var(--success)}.banner-info{background:var(--info-soft);color:var(--info)}.banner .banner-close{margin-left:auto;background:none;border:none;color:inherit;opacity:.6;padding:0 2px;font-size:16px}.empty{text-align:center;padding:56px 20px;color:var(--ink-faint);display:flex;flex-direction:column;align-items:center;gap:10px}.empty .glyph{font-size:34px;opacity:.5}.empty .empty-title{font-weight:650;color:var(--ink-soft);font-size:calc(15px * var(--step))}.skeleton{background:linear-gradient(90deg,var(--bg-sunken) 25%,var(--line) 37%,var(--bg-sunken) 63%);background-size:400% 100%;animation:shimmer 1.3s infinite linear;border-radius:var(--r-sm)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.spinner{width:18px;height:18px;border-radius:50%;border:2.5px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.toast-stack{position:fixed;left:50%;bottom:88px;transform:translate(-50%);z-index:80;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;width:min(440px,calc(100vw - 32px))}.toast{pointer-events:auto;width:100%;display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:var(--r-md);background:var(--ink);color:var(--ink-invert);font-size:14px;font-weight:600;box-shadow:var(--shadow-lg);animation:rise .18s var(--ease)}.toast-success{background:var(--success)}.toast-error{background:var(--error)}.done-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:48px 20px;text-align:center}.done-check{width:68px;height:68px;border-radius:50%;background:var(--success-soft);color:var(--success);display:flex;align-items:center;justify-content:center;font-size:32px;animation:pop .32s var(--ease)}@keyframes pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.06)}to{transform:scale(1);opacity:1}}.login-shell{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.login-card{width:100%;max-width:380px;background:var(--surface);border-radius:var(--r-xl);padding:34px 30px;box-shadow:var(--shadow-lg)}.price-line{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:5px 0;font-size:calc(14px * var(--step))}.price-line>span:first-child{color:var(--ink-soft)}.price-line>span:last-child{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:550;white-space:nowrap}.price-line-total{margin-top:8px;padding-top:12px;border-top:1.5px solid var(--line);font-size:calc(18px * var(--step));font-weight:700}.price-line-total>span:first-child{color:var(--ink)}.price-line-total>span:last-child{font-weight:700}.price-line-credit>span:last-child{color:var(--success)}.total-bar{position:sticky;bottom:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 16px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:10px}.only-wide{display:none}@media (min-width: 900px){.only-wide{display:revert}.only-narrow{display:none!important}}@media (max-width: 899px){.sidenav{display:none}.grid-3{grid-template-columns:1fr 1fr}}@media (max-width: 560px){.grid-2,.grid-3{grid-template-columns:1fr}.topbar{padding:0 12px;gap:10px}.board-col{flex-basis:84vw}}@media print{body>#root{display:none!important}}@media (min-width: 1000px){.retail-layout{grid-template-columns:minmax(0,1fr) 380px!important;align-items:start}.retail-layout>.card{position:sticky;top:84px}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.page-title{font-family:var(--font-display);font-weight:700;font-size:calc(21px * var(--step));line-height:1.2;letter-spacing:-.01em;margin:0}.page-sub{font-size:calc(13.5px * var(--step));color:var(--ink-soft);margin:2px 0 0}.page-header-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.control-input{font-family:var(--font-body);font-size:calc(13.5px * var(--step));padding:8px 12px;border-radius:8px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);min-width:0}.export-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.export-controls .field{flex:1 1 220px;min-width:0}.export-controls select,.export-controls input{width:100%}@media (max-width: 560px){.page-header-controls{width:100%}.page-header-controls .control-input{flex:1 1 100%}.export-controls{flex-direction:column;align-items:stretch}.export-controls .field{flex:0 0 auto;width:100%}.export-controls .btn{width:100%}}.error-banner{background:var(--error-soft);color:var(--error);padding:12px 14px;border-radius:var(--r-md);font-size:calc(13.5px * var(--step));font-weight:550;margin-bottom:14px}.empty-state{text-align:center;padding:56px 20px;color:var(--ink-faint)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0e102070;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow-pop);width:100%;max-width:420px;max-height:min(88dvh,900px);overflow-y:auto;padding:22px}.modal-title{font-weight:700;font-size:calc(16px * var(--step));margin:0 0 14px}.modal-actions{display:flex;gap:10px;margin-top:18px}.modal-actions .btn{flex:1}.content-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;width:100%}.hub-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow-x:auto;margin-bottom:18px}.hub-table{width:100%;font-size:calc(13px * var(--step))}.hub-table th{text-align:left;padding:11px 16px;white-space:nowrap;border-bottom:1px solid var(--line);font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);background:var(--surface-alt)}.hub-table td{padding:11px 16px;border-bottom:1px solid var(--line);white-space:nowrap}.hub-table tr:last-child td{border-bottom:none}.hub-table tbody tr:hover{background:var(--surface-alt)}.hub-table-name{font-weight:650}.kpi-section-label{font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint);margin:24px 0 10px}.kpi-section-label:first-of-type{margin-top:0}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--gap);margin-bottom:10px}.kpi-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:15px 16px;text-align:left}.kpi-card-alert{border-color:var(--error);background:var(--error-soft)}.kpi-card-clickable{cursor:pointer;transition:box-shadow .12s var(--ease)}.kpi-card-clickable:hover{box-shadow:var(--shadow-sm);border-color:var(--line-strong)}.kpi-label{font-size:calc(12px * var(--step));color:var(--ink-soft);font-weight:600;margin-bottom:5px}.kpi-value{font-family:var(--font-display);font-weight:700;font-size:calc(26px * var(--step));letter-spacing:-.02em;font-variant-numeric:tabular-nums}.kpi-sub{font-family:var(--font-mono);font-size:calc(11.5px * var(--step));color:var(--ink-faint);margin-top:4px}.orders-grid{display:flex;flex-direction:column;gap:12px}.order-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;box-shadow:var(--shadow-sm)}.order-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}.order-customer{font-weight:700;font-size:calc(15px * var(--step))}.order-meta{font-size:calc(12.5px * var(--step));color:var(--ink-soft);margin-top:2px}.order-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 18px;font-size:calc(13px * var(--step));margin-bottom:12px}.order-detail-grid .label{color:var(--ink-faint);font-size:calc(11px * var(--step));text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.order-detail-grid .value{font-weight:650}.order-actions{display:flex;gap:8px;flex-wrap:wrap}.status-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--r-pill);font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.02em;white-space:nowrap;background:var(--bg-sunken);color:var(--ink-soft)}.status-scheduled{background:var(--info-soft);color:var(--info)}.status-picked_up{background:var(--warn-soft);color:var(--warn)}.status-processing{background:var(--accent-soft);color:var(--accent)}.status-pickup_failed{background:var(--error-soft);color:var(--error)}.status-awaiting_driver_pickup{background:var(--accent-soft);color:var(--accent)}.status-ready{background:var(--success-soft);color:var(--success)}.status-out_for_delivery{background:var(--accent-soft);color:var(--accent)}.status-delivered{background:var(--bg-sunken);color:var(--ink-soft)}.status-canceled{background:var(--error-soft);color:var(--error)}.route-badge{background:var(--success-soft);color:var(--success);padding:2px 8px;border-radius:var(--r-pill);font-size:10.5px;font-weight:700;text-transform:uppercase}.kanban-board{display:flex;gap:12px;overflow-x:auto;padding-bottom:10px}.kanban-column{flex:0 0 268px;background:var(--bg-sunken);border-radius:var(--r-lg);display:flex;flex-direction:column;min-height:180px}.kanban-column-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 13px;font-size:calc(11.5px * var(--step));font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.kanban-count{background:var(--surface);color:var(--ink-soft);padding:1px 8px;border-radius:var(--r-pill);font-size:11px}.kanban-column-body{padding:0 8px 8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1}.kanban-empty{text-align:center;color:var(--ink-faint);font-size:12.5px;padding:18px 0;margin:0}.kanban-column-body .status-pill{white-space:normal;text-align:right;line-height:1.3}.timeline{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 18px 4px}.timeline-item{display:flex;gap:14px;padding-bottom:18px;position:relative}.timeline-item:not(:last-child):before{content:"";position:absolute;left:5px;top:16px;bottom:-2px;width:2px;background:var(--line)}.timeline-dot{width:12px;height:12px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:3px;z-index:1}.timeline-label{font-weight:650;font-size:calc(14px * var(--step))}.timeline-meta{font-size:calc(12px * var(--step));color:var(--ink-soft);margin-top:2px}.timeline-note{font-size:calc(12.5px * var(--step));color:var(--ink-soft);margin-top:4px;font-style:italic}.timeline-item.is-note{padding-bottom:12px}.timeline-dot.is-hollow{background:var(--surface);border:2px solid var(--line);width:10px;height:10px;margin-top:5px;margin-left:1px}.timeline-note.is-standalone{margin-top:0;font-style:normal;color:var(--ink);font-size:calc(13px * var(--step))}.timeline-item.is-payment .timeline-dot{background:var(--success)}.timeline-item.is-payment .timeline-label{color:var(--success)}.timeline-item.is-refund .timeline-dot{background:var(--error)}.timeline-item.is-refund .timeline-label{color:var(--error)}.timeline-item.is-superseded .timeline-note.is-standalone{color:var(--ink-soft)}.timeline-superseded{margin-top:3px;font-size:calc(11.5px * var(--step));font-weight:600;color:var(--success)}.progress-bar-track{flex:1;height:7px;background:var(--bg-sunken);border-radius:var(--r-pill);overflow:hidden;min-width:60px}.progress-bar-fill{height:100%;background:var(--accent);border-radius:var(--r-pill);transition:width .3s var(--ease)}.order-checklist{max-height:260px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-md);padding:6px}.order-checklist-item{display:flex;align-items:center;gap:10px;padding:10px 8px;font-size:calc(13.5px * var(--step));border-radius:var(--r-sm);cursor:pointer}.order-checklist-item:hover{background:var(--surface-alt)}.order-checklist-item input{width:18px;height:18px}.hub-filter select{font-size:calc(13px * var(--step));padding:8px 12px;border-radius:var(--r-md);border:1.5px solid var(--line-strong);background:var(--surface)}.btn-sm{min-height:34px;padding:0 12px;font-size:calc(13px * var(--step));border-radius:var(--r-sm)}.print-ticket{display:none}.stack-3{display:flex;flex-direction:column;gap:14px}.row-3{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;align-items:start}.logo-setup{display:grid;grid-template-columns:200px 1fr;gap:22px;align-items:start}.logo-preview-col{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center}.logo-preview{width:100%;min-height:132px;display:flex;align-items:center;justify-content:center;padding:14px;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);color:#6b7280}.logo-preview.is-off{background:repeating-linear-gradient(45deg,#fff,#fff 6px,#f4f5f7 6px,#f4f5f7 12px)}.logo-preview img{max-width:100%;max-height:104px;display:block}.logo-preview-name{font-family:var(--font-mono);font-weight:700;font-size:calc(12px * var(--step));letter-spacing:.04em;color:var(--ink)}.logo-controls{display:flex;flex-direction:column;gap:14px}.logo-threshold{padding:12px 14px;background:var(--surface-alt);border-radius:var(--r-sm)}.logo-note{margin-top:18px;padding:14px 16px;border-left:3px solid var(--accent);background:var(--surface-alt);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:calc(12.5px * var(--step));line-height:1.65;color:var(--ink-soft)}.logo-note strong{color:var(--ink)}@media (max-width: 720px){.logo-setup,.row-3{grid-template-columns:1fr}}.modal-card-wide{max-width:680px}.form-section-label{margin:24px 0 12px;padding-bottom:7px;border-bottom:1px solid var(--line);font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.form-section-label:first-child{margin-top:4px}.field-hint{display:block;margin-top:5px;font-size:calc(11.5px * var(--step));color:var(--ink-faint);line-height:1.5}.u-missing{color:var(--ink-faint);font-style:italic}.hub-logo-thumb{height:26px;width:auto;max-width:60px;display:block;background:#fff;border:1px solid var(--line);border-radius:3px;padding:2px}.receipt-header-preview{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 14px;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);text-align:center}.receipt-header-preview img{max-height:46px;width:auto;display:block;margin-bottom:4px}.receipt-header-preview .rhp-name{font-family:var(--font-mono);font-weight:700;font-size:calc(13px * var(--step));letter-spacing:.04em;color:#111}.receipt-header-preview .rhp-line{font-family:var(--font-mono);font-size:calc(11px * var(--step));color:#444}.receipt-header-preview .u-missing{color:#b45309}.mapping-note{margin-bottom:18px;padding:13px 16px;border-left:3px solid var(--accent);background:var(--surface-alt);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:calc(12.5px * var(--step));line-height:1.65;color:var(--ink-soft)}.mapping-note strong{color:var(--ink)}.tile-product{gap:6px}.tile-thumb{width:100%;height:74px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;margin-bottom:2px}.tile-thumb img{max-width:100%;max-height:100%;object-fit:contain;display:block}.tile-thumb-fallback{font-family:var(--font-mono);font-weight:700;font-size:calc(20px * var(--step));color:var(--ink-faint);letter-spacing:.04em}.qty-control{display:flex;align-items:center;gap:4px}.qty-input{width:48px;min-height:34px;text-align:center;font-family:var(--font-mono);font-size:calc(14px * var(--step));font-weight:650;border:1.5px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);padding:0 4px}.qty-input:focus{outline:2px solid var(--accent);outline-offset:1px}.product-photo-preview{width:74px;height:74px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden}.product-photo-preview img{max-width:100%;max-height:100%;object-fit:contain;display:block}.checkbox-row{display:flex;align-items:center;gap:9px;font-size:calc(13.5px * var(--step));color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:0}.u-num{text-align:right;font-variant-numeric:tabular-nums}.commercial-flag{display:flex;align-items:flex-start;gap:10px;background:var(--info-soft);border-left:3px solid var(--info);border-radius:var(--r-sm);padding:10px 12px;margin-bottom:12px}.commercial-flag-body{flex:1;min-width:0}.commercial-flag-title{font-weight:700;font-size:calc(13.5px * var(--step));color:var(--ink)}.commercial-flag-note{font-size:calc(12.5px * var(--step));color:var(--ink-soft);margin-top:3px;white-space:pre-wrap}.tab-row{display:flex;gap:4px;background:var(--bg-sunken);border-radius:var(--r-md);padding:4px;margin-bottom:18px;align-self:flex-start;width:fit-content;max-width:100%;overflow-x:auto}.tab-row .tab{border:none;background:transparent;cursor:pointer;font-family:inherit;font-size:calc(13px * var(--step));font-weight:600;color:var(--ink-soft);padding:7px 14px;border-radius:calc(var(--r-md) - 3px);white-space:nowrap}.tab-row .tab:hover{color:var(--ink)}.tab-row .tab.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.08))}.ic-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;display:flex;flex-direction:column;gap:6px}.rate-cell{display:inline-flex;align-items:center;gap:0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);overflow:hidden;max-width:168px}.rate-cell:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.rate-cell input{border:none;background:none;outline:none;width:74px;padding:8px 4px;text-align:right;font:inherit;font-variant-numeric:tabular-nums;color:var(--ink)}.rate-prefix,.rate-suffix{font-size:calc(12.5px * var(--step));color:var(--ink-faint);padding:0 9px;-webkit-user-select:none;user-select:none;white-space:nowrap}.rate-prefix{padding-right:2px}.ic-period{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.ic-period .field{flex:0 0 auto;margin-top:0}.ic-period input[type=date]{min-width:150px}.ic-net{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:18px;padding:18px 20px;background:var(--bg-sunken);border-radius:var(--r-md)}.ic-net-figure{font-size:calc(30px * var(--step));font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1;margin-top:4px}.ic-net-dir{font-size:calc(13px * var(--step));color:var(--ink-soft);margin-top:2px}.rate-cell input::placeholder,.hub-table input::placeholder{color:var(--ink-faint);font-style:italic}.grid-2>.field+.field,.grid-3>.field+.field,.grid-auto>.field+.field{margin-top:0}.grid-2,.grid-3,.grid-auto{align-items:start}.grid-2+.grid-2,.grid-2+.field,.field+.grid-2,.grid-3+.grid-3,.grid-3+.field,.field+.grid-3,.grid-2+.form-section-label,.grid-3+.form-section-label{margin-top:16px}.agreement-cell{min-width:300px}.agreement-slot{padding:8px 0}.agreement-slot+.agreement-slot{border-top:1px solid var(--line)}.agreement-head{display:flex;flex-direction:column;gap:1px;margin-bottom:5px}.agreement-label{font-size:calc(12.5px * var(--step));font-weight:600;color:var(--ink)}.agreement-dir{font-size:calc(11px * var(--step));color:var(--ink-faint)}.agreement-file{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.agreement-name{background:none;border:none;padding:0;cursor:pointer;font:inherit;font-size:calc(12.5px * var(--step));font-weight:600;color:var(--accent);text-align:left;text-decoration:underline;text-underline-offset:2px;word-break:break-all}.agreement-actions{display:flex;gap:6px;margin-top:4px}.agreement-empty{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.agreement-empty .t-fine{max-width:34ch}p+.field,p+.grid-2,.banner+.field,.banner+.grid-2{margin-top:14px}.draft-block{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:12px 14px;margin-top:14px}.draft-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.draft-head-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.draft-lines{font-size:calc(13px * var(--step))}.draft-total td{border-top:1px solid var(--line)}.invoice-row-actions{display:flex;gap:8px;margin:12px 0 4px}.payment-form{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.kpi-card.aging-late{border-color:var(--warn);background:var(--warn-soft)}.kpi-card.aging-late .kpi-value{color:var(--warn)}.kpi-card.aging-total{border-color:var(--line-strong);background:var(--surface-alt)}.invoice-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0e10208c;overflow-y:auto;padding:24px 16px}.invoice-sheet{max-width:880px;margin:0 auto}.invoice-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;padding:10px 12px;margin-bottom:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 6px 24px #0e102047}.invoice-actions .invoice-actions-title{margin-right:auto;font-weight:600;font-size:13px}.invoice-sheet>.banner,.invoice-sheet>.error-banner{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:12px 14px;margin-bottom:12px;box-shadow:0 6px 24px #0e102047}.invoice-sheet>.banner-warn{background:var(--warn-soft, var(--surface))}@media (max-width: 640px){.invoice-overlay{padding:12px 10px}.invoice-actions{flex-wrap:wrap;justify-content:stretch}.invoice-actions .invoice-actions-title{flex:1 0 100%;margin-right:0;margin-bottom:4px}.invoice-actions .btn{flex:1 1 auto}.invoice-frame{height:70vh;min-height:380px}}.invoice-frame{width:100%;height:78vh;min-height:520px;border:none;border-radius:var(--r-lg);background:#fff;display:block}.invoice-sheet .banner,.invoice-sheet .error-banner{margin-bottom:10px}@media print{body>#root{display:block!important}body *{visibility:hidden}.invoice-overlay,.invoice-overlay *{visibility:visible}.invoice-overlay{position:static;background:none;padding:0;overflow:visible}.invoice-sheet{max-width:none}.invoice-frame{height:1100mm;min-height:0}.no-print{display:none!important}@page{margin:12mm}}.inline-select{margin-left:auto;align-self:center;padding:5px 8px;font-size:12.5px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink)}.detail-panel{margin-top:14px;border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--surface);padding:16px 18px 18px}.detail-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--line)}.hub-table tr.is-selected>td{background:var(--accent-soft)}.draft-lines{width:100%;border-collapse:collapse;font-size:calc(13px * var(--step))}.draft-lines td{padding:5px 8px}.report-status{border:1px solid var(--line);border-left-width:4px;border-radius:var(--r-lg);background:var(--surface);padding:16px 18px;margin-bottom:18px}.report-status-ok{border-left-color:var(--success)}.report-status-bad{border-left-color:var(--warn);background:var(--warn-soft)}.report-status-off{border-left-color:var(--line-strong);background:var(--surface-alt)}.report-status-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.report-status-title{font-weight:700;font-size:calc(15px * var(--step));color:var(--ink)}.report-status-bad .report-status-title{color:var(--warn)}.report-status-sub{font-size:calc(12.5px * var(--step));color:var(--ink-soft);margin-top:3px}.report-error{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.report-error-label{font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:5px}.report-error code{display:block;font-family:var(--font-mono);font-size:calc(12px * var(--step));color:var(--error);background:var(--error-soft);padding:9px 11px;border-radius:var(--r-md);white-space:pre-wrap;word-break:break-word}.report-error-help{margin:8px 0 0;font-size:calc(12.5px * var(--step));color:var(--ink-soft)}.report-send{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:flex-end;margin-top:14px}.report-send .field{flex:0 1 200px;min-width:150px;margin-top:0}.report-send .field-sentence{flex:1 1 260px}.report-send .btn{flex:0 0 auto}.report-send-note{margin:8px 0 0;font-size:calc(12px * var(--step));color:var(--ink-faint);max-width:66ch}@media (max-width: 560px){.report-send{flex-direction:column;align-items:stretch}.report-send .field{flex:0 0 auto;width:100%}.report-send .btn{width:100%}.report-status-head{flex-direction:column}}.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:calc(11.5px * var(--step));font-weight:700;background:var(--surface-alt);color:var(--ink-soft)}.pill-ok{background:var(--success-soft);color:var(--success)}.pill-bad{background:var(--error-soft);color:var(--error)}.filter-bar{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-bottom:14px}.field-inline{margin-top:0;min-width:180px}.field-grow{flex:1 1 220px}.rel-badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:calc(11.5px * var(--step));font-weight:700;white-space:nowrap}.rel-commercial{background:var(--accent-soft);color:var(--accent)}.rel-doorstep{background:var(--info-soft);color:var(--info)}.rel-counter{background:var(--surface-alt);color:var(--ink-soft)}.rel-pd{background:var(--success-soft);color:var(--success)}.rel-both{background:var(--warn-soft);color:var(--warn)}.rel-none{background:var(--surface-alt);color:var(--ink-faint)}.entity-alarm{border:1px solid var(--error);border-left-width:4px;background:var(--error-soft);border-radius:var(--r-lg);padding:14px 16px;margin-bottom:4px}.entity-alarm-title{font-weight:700;color:var(--error);font-size:calc(14.5px * var(--step));margin-bottom:6px}.entity-alarm ul{margin:0;padding-left:20px}.entity-alarm li{font-size:calc(13px * var(--step));color:var(--ink);line-height:1.5;margin-bottom:3px}.entity-alarm li strong{color:var(--error)}.entity-store-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;margin-bottom:4px;border-bottom:1px solid var(--line)}.entity-field-missing input{border-color:var(--error);background:var(--error-soft)}.entity-field-missing>span:after{content:" — required";color:var(--error);font-weight:700}.price-grid-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.price-grid{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.price-grid th,.price-grid td{border-bottom:1px solid var(--line);padding:9px 12px}.price-grid tr:last-child td{border-bottom:none}.price-grid thead th{position:sticky;top:0;z-index:2;background:var(--surface-2, #f6f7f9);text-align:left;font-weight:700;font-size:12px;vertical-align:bottom;white-space:nowrap}.price-grid-corner,.price-grid-line{position:sticky;left:0;z-index:1;background:var(--surface);min-width:210px;border-right:1px solid var(--line)}.price-grid-corner{z-index:3;background:var(--surface-2, #f6f7f9)}.price-grid-line{font-weight:600}.price-grid-col{min-width:132px}.price-grid-grouprow td{background:var(--surface-2, #f6f7f9);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);padding:6px 12px;position:sticky;left:0}.price-grid-cell{white-space:nowrap}.price-grid-cell input{width:78px;text-align:right;font-variant-numeric:tabular-nums;padding:5px 7px;font-size:13px}.price-grid-unit{color:var(--ink-soft);margin-right:3px}.price-grid-cell.is-na{background:var(--surface-2, #f6f7f9)}.price-grid-cell.is-na .price-grid-unit{opacity:.3}.price-grid-cell.is-na input::placeholder{color:var(--ink-soft);opacity:.8}.price-grid-card-tag{display:inline-block;margin-top:3px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:1px 6px;border-radius:999px}.price-grid-card-tag.is-counter{background:#eef1f6;color:#4a5568}.price-grid-card-tag.is-pd{background:#e6efff;color:#2a4c8f}.price-grid-actions{display:flex;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}.save-flash{color:var(--success, #1a7f4b);font-weight:700;font-size:13px}.svc-cell{text-align:center;color:var(--ink-soft);font-weight:600}.svc-cell.is-on{color:var(--success, #1a7f4b)}.price-grid-supercol{text-align:center!important;border-bottom:2px solid var(--line)!important;border-left:1px solid var(--line);padding-bottom:6px!important}.price-grid thead tr:first-child .price-grid-supercol:first-of-type{border-left:none}.third-party-tag{display:inline-block;margin-left:8px;font-family:var(--font-sans);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:999px;background:#fff3e0;color:#8a5300;vertical-align:middle}.third-party-tag.is-return{background:#e6efff;color:#2a4c8f}.row-clickable{cursor:pointer}.row-clickable:hover{background:var(--surface-2, #f6f7f9)}.detail-card{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:18px;display:flex;flex-direction:column;gap:14px}.ticket-id-link{background:none;border:none;padding:0;cursor:pointer;font:inherit;color:inherit;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.ticket-id-link:hover{text-decoration-style:solid}.phone-link{font-size:20px;font-weight:700;text-decoration:none;color:var(--accent, #2a4c8f)}.msg-thread{display:flex;flex-direction:column;gap:10px;margin-top:8px}.msg{max-width:78%;padding:9px 12px;border-radius:12px;font-size:13px}.msg-outbound{align-self:flex-start;background:var(--surface-2, #f1f3f6)}.msg-inbound{align-self:flex-end;background:#e6efff}.msg-attention{border:1px solid #d98324;background:#fff3e0}.msg-body{white-space:pre-wrap}.msg-meta{margin-top:4px;font-size:11px;color:var(--ink-soft)}.msg-note{margin-top:4px;font-size:11px;color:#8a5300}.status-ok{background:#e3f5ea;color:#1a7f4b}.status-info{background:#e6efff;color:#2a4c8f}.status-warn{background:#fff3e0;color:#8a5300}.status-muted{background:#eef1f6;color:#4a5568}.dialog-body .row-2{align-items:start}.day-tile-row{display:flex;gap:10px}.day-tile{flex:1;min-width:92px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 10px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;font:inherit;color:var(--ink)}.day-tile:hover{border-color:var(--ink-faint)}.day-tile.is-selected{border-color:var(--accent, #3b45d6);background:var(--accent-soft, #eef0ff);color:var(--accent, #3b45d6)}.day-tile-label{font-weight:700;font-size:14px;text-transform:capitalize}.day-tile-date{font-size:11px;color:var(--ink-faint)}.day-tile.is-selected .day-tile-date{color:inherit;opacity:.75}.depot-card{border:2px solid var(--accent, #3b45d6);border-radius:14px;background:var(--accent-soft, #eef1fb);padding:16px;margin-top:16px}.depot-card.is-done{border-color:var(--success, #1a7f4b);background:var(--success-soft, #e3f5ea)}.depot-badge{font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--accent, #3b45d6);margin-bottom:6px}.depot-name{font-size:17px;font-weight:700}.depot-address{font-size:13px;color:var(--ink-soft);margin-top:2px}.depot-note{font-size:13px;color:var(--ink-soft);margin:10px 0 12px}.loadout{margin-top:18px;border-top:2px solid var(--line);padding-top:18px}.loadout-title{font-size:17px;font-weight:700;margin:0}.loadout-sub{font-size:13px;color:var(--ink-soft);margin:4px 0 12px}.loadout-progress{display:flex;align-items:center;gap:10px}.loadout-bar{flex:1;height:10px;border-radius:999px;background:var(--line);overflow:hidden}.loadout-bar-fill{height:100%;background:var(--accent, #3b45d6);transition:width .2s ease}.loadout-count{font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.loadout-scan{margin:14px 0}.loadout-scan .input-hero{font-size:22px;padding:14px}.loadout-scan .input-hero::placeholder{font-size:16px;font-weight:600}.loadout-flash{background:var(--success-soft, #e3f5ea);color:var(--success, #1a7f4b);border-radius:10px;padding:10px 12px;font-weight:700;font-size:14px;margin:10px 0}.loadout-cam{display:none;width:100%;border-radius:12px;margin-top:10px;max-height:240px;object-fit:cover}.loadout-cam.is-live{display:block}.loadout-list{display:flex;flex-direction:column;gap:8px;margin:14px 0}.loadout-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface);flex-wrap:wrap}.loadout-row.is-loaded{border-color:var(--success, #1a7f4b);background:var(--success-soft, #e3f5ea)}.loadout-row-main{display:flex;align-items:center;gap:12px;min-width:0}.loadout-tick{width:26px;height:26px;border-radius:50%;flex:none;border:2px solid var(--line);display:grid;place-items:center;font-weight:800;color:var(--success, #1a7f4b)}.loadout-row.is-loaded .loadout-tick{border-color:var(--success, #1a7f4b)}.loadout-ticket{font-family:var(--font-mono);font-weight:700;font-size:14px}.loadout-name{font-size:12.5px;color:var(--ink-soft)}.loadout-go{margin-top:6px;font-size:16px;padding:14px}.bagtag{border:1px solid var(--line, #e3e6ef);border-radius:12px;padding:12px;margin-bottom:14px;background:var(--surface-2, #f7f8fc)}.bagtag-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.bagtag-head label{font-size:13px;font-weight:700;margin:0}.bagtag-count{font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;padding:3px 9px;border-radius:999px;background:var(--line, #e3e6ef);color:var(--ink-soft, #5b6178)}.bagtag-count.is-on{background:var(--accent, #3b41d8);color:#fff}.bagtag-hint{font-size:12px;color:var(--ink-soft, #5b6178);margin:6px 0 10px}.bagtag-entry{display:flex;gap:8px}.bagtag-input{flex:1;min-width:0;font-family:var(--font-mono);font-size:20px;font-weight:700;letter-spacing:.04em;padding:12px;border-radius:10px;border:2px solid var(--line, #e3e6ef);background:#fff}.bagtag-input:focus{outline:none;border-color:var(--accent, #3b41d8);box-shadow:0 0 0 4px var(--accent-soft, #e7e8fb)}.bagtag-input::placeholder{font-size:15px;font-weight:600;letter-spacing:0}.bagtag-entry .btn{flex:0 0 auto;padding-left:18px;padding-right:18px}.bagtag-flash{background:var(--success-soft, #e3f5ea);color:var(--success, #1a7f4b);border-radius:8px;padding:8px 10px;font-weight:700;font-size:13px;margin:8px 0}.bagtag-error{background:var(--danger-soft, #fdeaea);color:var(--danger, #b42318);border-radius:8px;padding:8px 10px;font-weight:600;font-size:13px;margin:8px 0}.bagtag-cam{display:none;width:100%;border-radius:10px;margin-top:8px;max-height:200px;object-fit:cover}.bagtag-cam.is-live{display:block}.bagtag-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.bagtag-item{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line, #e3e6ef);border-radius:8px;padding:8px 10px}.bagtag-idx{font-size:12px;font-weight:700;color:var(--ink-soft, #5b6178);white-space:nowrap}.bagtag-code{font-family:var(--font-mono);font-weight:700;font-size:15px;flex:1;min-width:0;overflow-wrap:anywhere}.bagtag-remove{background:none;border:none;padding:4px 6px;cursor:pointer;font-size:12px;font-weight:700;color:var(--danger, #b42318)}.bagtag-remove:disabled{opacity:.4;cursor:default}.loadout-tag{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:11px;font-weight:700;background:var(--accent-soft, #e7e8fb);color:var(--accent, #3b41d8);font-family:var(--font-mono)}.bagtag-chips{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0 2px}.bagtag-chip{font-family:var(--font-mono);font-size:11px;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--accent-soft, #e7e8fb);color:var(--accent, #3b41d8)}.bagtag-chip-count{font-size:11px;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--line, #e3e6ef);color:var(--ink-soft, #5b6178)}.rack-filter{display:flex;align-items:center;gap:10px}.rack-filter label{margin:0;white-space:nowrap}.rack-filter select{flex:1;min-width:0}.orders-filters,.filter-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.orders-filters select,.orders-filters .input,.filter-row select,.filter-row .input{font-family:var(--font-body);font-size:13.5px;padding:8px 12px;border-radius:8px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink)}.orders-search{flex:1 1 260px;min-width:200px}.kind-badge{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--line, #e3e6ef);color:var(--ink-soft, #5b6178)}.kind-pd{background:var(--accent-soft, #e7e8fb);color:var(--accent, #3b41d8)}.kind-phone{background:#e6f2fb;color:#1c6390}.kind-drop_return{background:#fdf0e2;color:#92600f}.kind-walk_in{background:var(--line, #e3e6ef);color:var(--ink-soft, #5b6178)}.finished-cell{display:flex;flex-direction:column;line-height:1.25}.finished-what{font-size:11.5px;font-weight:700;color:var(--ink, #14161f)}.finished-when{font-size:11.5px;color:var(--ink-soft, #5b6178)}.orders-table td{vertical-align:middle}.rush-flag{margin-left:5px}.msel{position:relative;display:flex;flex-direction:column;gap:6px;min-width:0}.msel-btn{display:inline-flex;align-items:center;gap:8px;min-height:var(--tap);max-width:260px;padding:0 12px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:calc(13px * var(--step));font-weight:600;cursor:pointer;text-align:left;white-space:nowrap;transition:border-color .12s ease,background .12s ease}.msel-btn:hover{border-color:var(--line-strong)}.msel-btn.is-on{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.msel-btn>.msel-value{overflow:hidden;text-overflow:ellipsis}.msel-btn>.msel-caret{margin-left:auto;color:var(--ink-faint);font-size:10px}.msel-btn.is-on>.msel-caret{color:var(--accent)}.msel-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:40;min-width:240px;max-width:340px;max-height:320px;overflow-y:auto;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-md)}.msel-opt{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:var(--r-sm);font-size:calc(13px * var(--step));color:var(--ink);cursor:pointer;white-space:normal}.msel-opt:hover{background:var(--surface-alt)}.msel-opt input{margin:0;accent-color:var(--accent)}.msel-all{width:100%;margin-bottom:4px;padding:7px 9px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;font:inherit;font-size:calc(12.5px * var(--step));font-weight:650;color:var(--ink-soft);text-align:left;cursor:pointer}.msel-all:hover{color:var(--accent)}.orders-filter-bank{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:flex-end;margin-bottom:14px}.orders-filter-bank .orders-search{flex:1 1 220px}.orders-dates{display:flex;align-items:center;gap:6px}.orders-dates input{font-family:var(--font-body);font-size:calc(13px * var(--step));padding:8px 10px;border-radius:var(--r-sm);border:1.5px solid var(--line);background:var(--surface);color:var(--ink);min-height:var(--tap)}.orders-dates span{color:var(--ink-faint);font-size:calc(12.5px * var(--step))}.orders-active{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 14px}.orders-active-clear{border:0;background:none;padding:0;font:inherit;font-size:calc(12.5px * var(--step));font-weight:650;color:var(--accent);cursor:pointer;text-decoration:underline}.orders-table th:nth-child(1),.orders-table td:nth-child(1){position:sticky;left:0;z-index:2;background:var(--surface);box-shadow:1px 0 0 var(--line)}.orders-table th:nth-child(1){background:var(--surface-alt);z-index:3}.orders-table tbody tr:hover td:nth-child(1){background:var(--surface-alt)}@media (max-width: 720px){.orders-table th:nth-child(1),.orders-table td:nth-child(1){position:static;box-shadow:none}}.orders-none{color:var(--ink-faint)}.identity-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}@media (max-width: 900px){.identity-grid{grid-template-columns:1fr}}.sold-doorstep{font-weight:700;color:var(--accent, #3b41d8)}.lookup-alt{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.lookup-alt-label{font-weight:650;font-size:calc(14px * var(--step));margin-bottom:2px}.lookup-alt-row{display:flex;gap:8px;align-items:stretch;margin-top:8px}.lookup-alt-row>*:first-child{flex:1 1 auto;min-width:0}.lookup-results{display:flex;flex-direction:column;gap:8px;margin-top:12px}.lookup-result{display:block;width:100%;text-align:left;cursor:pointer;padding:12px 14px;border-radius:var(--r-md);border:1.5px solid var(--line);background:var(--surface);color:inherit;font:inherit}.lookup-result:hover,.lookup-result:focus-visible{border-color:var(--accent);background:var(--surface-alt)}.lookup-result-name{font-weight:650;font-size:calc(15px * var(--step))}.lookup-result-sub{font-size:calc(12.5px * var(--step));color:var(--ink-soft);margin-top:2px}.fold-head{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:0;border:none;background:none;font:inherit;color:inherit;cursor:pointer;text-align:left}.fold-label{font-weight:650;font-size:calc(15px * var(--step))}.fold-chevron{font-size:20px;line-height:1;color:var(--ink-soft);width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border:1.5px solid var(--line);border-radius:8px}.pay-cell{display:flex;flex-direction:column;gap:2px;align-items:flex-start}.pay-cell .t-fine{white-space:nowrap}.hub-table-dense th,.hub-table-dense td{padding-left:10px;padding-right:10px}.hub-table-dense th:first-child,.hub-table-dense td:first-child{padding-left:16px}.hub-table-dense th:last-child,.hub-table-dense td:last-child{padding-right:16px}.ledger-narrow{display:none;list-style:none;margin:0 0 18px;padding:0}.ledger-wide{display:block}@media (max-width: 720px){.ledger-wide{display:none}.ledger-narrow{display:block}}.ledger-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:12px 14px;margin-bottom:8px}.ledger-card.is-shared{opacity:.78}.ledger-card-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.ledger-card-code{font-family:var(--font-mono);font-weight:700;font-size:calc(13px * var(--step))}.ledger-card-amount{font-family:var(--font-mono);font-weight:700;font-size:calc(14px * var(--step))}.ledger-card-meta{font-family:var(--font-mono);font-size:calc(11px * var(--step));color:var(--ink-faint);margin-top:3px}.ledger-card-what{font-size:calc(12.5px * var(--step));margin-top:6px;line-height:1.45}.ledger-card-shared{font-size:calc(11.5px * var(--step));color:var(--ink-faint);margin-top:6px}.brand-badge{display:inline-flex;align-items:stretch;overflow:hidden;vertical-align:middle;white-space:nowrap;border-radius:var(--r-sm);font-size:calc(11px * var(--step));font-weight:800;line-height:1.6;box-shadow:inset 0 0 0 1.5px var(--brand-accent, var(--accent))}.brand-badge-prefix{background:var(--brand-ink, var(--ink));color:var(--ink-invert);font-family:var(--font-mono);letter-spacing:.09em;padding:1px 7px 1px 8px}.brand-badge-name{background:var(--brand-tint, var(--accent-soft));color:var(--brand-ink, var(--ink));padding:1px 9px 1px 7px}.order-card-branded{border-left:4px solid var(--brand-accent, var(--accent));border-top-left-radius:var(--r-sm);border-bottom-left-radius:var(--r-sm)}.order-card-brand{margin-bottom:6px}.care-chip{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;background:var(--ink);color:var(--ink-invert);font-family:var(--font-mono);font-size:calc(10.5px * var(--step));font-weight:700;letter-spacing:.04em;padding:2px 8px;border-radius:4px;vertical-align:middle}.care-chip-more{opacity:.72;font-weight:600}.care-row{display:inline-flex;flex-wrap:wrap;gap:4px;vertical-align:middle}.care-row-block{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 14px}.order-card-care{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 10px}.row-marks{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px}.row-marks:empty{display:none}.growth{font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.growth-up{color:var(--success)}.growth-down{color:var(--error)}.growth-flat{color:var(--ink-soft)}.row-total td{border-top:2px solid var(--line-strong);font-weight:700;background:var(--surface-alt)}.color-field{display:flex;gap:8px;align-items:center}.color-field input[type=color]{width:44px;min-height:var(--tap);padding:2px;flex:0 0 auto;border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.color-field .input{flex:1 1 auto;min-width:0}.brand-badge-preview{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface-alt)}.identity-grid-wide{grid-column:1 / -1}.ticket-branded{border-left:3px solid var(--brand-accent, var(--accent))}.day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day-cell{padding:10px 0;border:1.5px solid var(--line);border-radius:8px;background:var(--surface);font:inherit;font-size:12.5px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.day-cell:hover{border-color:var(--ink-soft)}.day-cell.on{border-color:var(--accent);background:var(--accent);color:#fff}.accom-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:4px;background:var(--ink);color:var(--bg, #fff);font-family:var(--font-mono, ui-monospace, monospace);font-size:10.5px;font-weight:600;letter-spacing:.08em;white-space:nowrap;cursor:help}.care-instructions{border-left:3px solid var(--ink);background:var(--surface-2, rgba(0, 0, 0, .02));border-radius:0 6px 6px 0;padding:12px 14px;margin:0 0 16px}.care-instructions-head{display:flex;align-items:center;gap:8px;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:10px}.care-instructions-count{font-family:var(--font-mono, ui-monospace, monospace);font-size:10px;padding:1px 6px;border-radius:3px;background:var(--ink);color:var(--bg, #fff);letter-spacing:.06em}.care-instructions ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.care-instructions-what{display:block;font-size:13px;font-weight:600;color:var(--ink)}.care-instructions-do{display:block;font-size:12.5px;line-height:1.5;color:var(--ink-soft);margin-top:2px}.care-instructions-note p{margin:0;font-size:13px;line-height:1.55;color:var(--ink)}.care-staff-row{display:flex;align-items:flex-start;gap:10px;padding:9px 0;cursor:pointer}.care-staff-row input{margin-top:3px;flex:none}.care-staff-label{display:block;font-size:13.5px;font-weight:600;color:var(--ink)}.care-staff-do{display:block;font-size:12px;line-height:1.5;color:var(--ink-soft);margin-top:2px}.care-staff-note{width:100%;margin:0 0 8px 28px}.week-grid .hub-table th,.week-grid .hub-table td{padding-left:5px;padding-right:5px;text-align:center}.week-grid .hub-table th:first-child,.week-grid .hub-table td:first-child{padding-left:12px;text-align:left}.week-grid .chip{width:100%;min-width:0;padding:0}.tomorrow-stop{padding:10px 0;border-top:1px solid var(--line)}.tomorrow-stop:first-child{border-top:0;padding-top:0}.tomorrow-stop:last-child{padding-bottom:0}.depot-card-inline{margin-top:0;padding:13px 16px}.depot-card-inline .depot-name{font-size:calc(15px * var(--step))}.depot-card-inline .depot-address,.depot-card-inline .depot-note{font-size:calc(12.5px * var(--step))}.route-window-tag{display:inline-block;margin-left:8px;font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:999px;background:var(--accent-soft, #eef1fb);color:var(--accent, #3b45d6);vertical-align:middle}.route-window-tag.is-unset{background:var(--bg-sunken);color:var(--ink-faint)}.route-stop-card.is-draggable{cursor:grab;border-left:4px solid var(--line-strong, #d8dae2)}.route-stop-card.is-draggable:hover{border-left-color:var(--accent, #3b45d6)}.route-stop-card.is-dragging{opacity:.5;cursor:grabbing}.route-stop-card.is-drop-target{border-top:3px solid var(--accent, #3b45d6)}.route-stop-card.is-fixed{background:var(--surface-alt, #f7f8fa);box-shadow:none}.route-leg{font-family:var(--font-mono);font-weight:650;color:var(--ink-soft);margin-top:4px}.route-stop-fixed{font-size:calc(12.5px * var(--step));color:var(--ink-soft);margin-bottom:10px;font-weight:600}.route-stop-hint{font-size:calc(12px * var(--step));color:var(--ink-faint);margin-bottom:8px}.roster-editor{padding:18px;background:var(--surface-alt);border-bottom:1px solid var(--line)}.roster-editor:last-child{border-bottom:none}.welcome-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.welcome-editor{display:flex;flex-direction:column;gap:16px;min-width:0}.welcome-preview{position:sticky;top:12px;min-width:0}@media (max-width: 1100px){.welcome-grid{grid-template-columns:1fr}.welcome-preview{position:static}}.wel-card-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}.wel-field{padding-left:10px;border-left:2px solid transparent}.wel-field.is-mine{border-left-color:var(--accent)}.wel-field-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wel-field-head>label{margin:0}.wel-field-head .btn{margin-left:auto}.wel-field-foot{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.wel-field-foot .field-hint{flex:1}.wel-count{font-family:var(--font-mono);font-size:calc(11.5px * var(--step));color:var(--ink-faint);white-space:nowrap}.wel-count.is-over{color:var(--error);font-weight:700}.wel-token{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wel-reads{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:10px 12px;border:1px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface-alt)}.wel-reads>div{display:flex;flex-direction:column;gap:3px;min-width:0}.wel-read{font-size:calc(13px * var(--step));font-weight:600;overflow-wrap:anywhere}.wel-lines{display:flex;flex-direction:column;gap:2px}.wel-line{font-family:var(--font-display);font-weight:700;font-size:calc(15px * var(--step));line-height:1.2;overflow-wrap:anywhere}.wel-line em{font-family:var(--font-body);font-weight:400;color:var(--ink-faint);font-size:12px}.wel-point{display:flex;flex-direction:column;gap:6px;padding:12px;margin-bottom:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-alt)}.wel-point-head{display:flex;align-items:center;gap:4px}.wel-point textarea{resize:vertical;min-height:78px;line-height:1.5}.wel-subject-line{display:flex;flex-direction:column;gap:3px;padding:10px 12px;margin-bottom:10px;border-radius:var(--r-md);background:var(--surface-alt)}.wel-subject-line strong{font-size:calc(13.5px * var(--step));overflow-wrap:anywhere}.wel-stage{display:flex;justify-content:center;padding:12px;border-radius:var(--r-md);background:var(--bg-sunken);transition:opacity .15s var(--ease)}.wel-stage[aria-busy=true]{opacity:.72}.wel-frame{width:100%;height:62vh;min-height:420px;border:none;border-radius:var(--r-sm);background:#fff;display:block}.wel-stage.is-phone .wel-frame{max-width:390px}.wel-stage.is-desktop .wel-frame{max-width:640px}.wel-preview-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:12px}.blk-list{display:flex;flex-direction:column;gap:16px}.blk.is-skipped{border-color:var(--warn);box-shadow:inset 3px 0 0 var(--warn)}.blk-unknown{border-style:dashed}.blk-raw{font-family:var(--font-mono);font-size:calc(11.5px * var(--step));background:var(--bg-sunken);border-radius:var(--r-sm);padding:10px 12px;margin:10px 0 0;overflow-x:auto;white-space:pre}.tag-list{display:flex;flex-direction:column;gap:8px}.tag-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.tag-row .btn{font-family:var(--font-mono);flex:0 0 auto}.tag-row .t-fine{flex:1 1 220px}.asset-picker{display:flex;flex-direction:column;gap:10px}.asset-stage{display:flex;align-items:center;justify-content:center;min-height:96px;padding:14px;border:1px dashed var(--line-strong);border-radius:var(--r-md);background:#fff;transition:opacity .15s var(--ease)}.asset-stage[aria-busy=true]{opacity:.6}.asset-stage-img{display:block;height:auto;max-width:100%}.asset-sizer{display:flex;flex-direction:column;gap:6px}.asset-sizer-row{display:flex;align-items:center;gap:12px}.asset-sizer-row input[type=range]{flex:1;min-width:0;accent-color:var(--accent);height:var(--tap)}.asset-sizer-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:calc(12.5px * var(--step));font-weight:600;white-space:nowrap}.camp-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;align-items:start}.camp-setup{display:flex;flex-direction:column;gap:16px;min-width:0}.camp-send{position:sticky;top:12px;min-width:0;display:flex;flex-direction:column;gap:16px}@media (max-width: 1100px){.camp-grid{grid-template-columns:1fr}.camp-send{position:static}}.aud-box{display:flex;flex-direction:column;gap:10px;margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-alt)}.aud-box.is-stale{border-style:dashed;border-color:var(--warn)}.aud-count{display:flex;align-items:baseline;gap:8px}.aud-number{font-family:var(--font-display);font-weight:700;font-size:calc(34px * var(--step));line-height:1;letter-spacing:-.02em}.aud-unit{font-size:calc(13.5px * var(--step));color:var(--ink-soft)}.aud-sample{list-style:none;margin:0;padding:0}.aud-sample li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--line);min-width:0}.aud-sample li:last-child{border-bottom:none}.aud-sample li>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-grid{display:grid;grid-template-columns:minmax(0,.66fr) repeat(7,minmax(0,1fr));grid-auto-rows:minmax(96px,auto);gap:6px}.cal-weekday{font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);text-align:center;padding-bottom:2px}.cal-weekday.is-week{text-align:left}.cal-cell{display:flex;flex-direction:column;gap:4px;padding:8px 8px 6px;min-width:0;text-align:left;font:inherit;border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface);cursor:pointer;transition:border-color .12s ease,background .12s ease}.cal-cell:hover{border-color:var(--line-strong)}.cal-cell.is-past{background:var(--bg-sunken);border-style:dashed}.cal-cell.is-past .cal-count{color:var(--ink-soft);font-weight:600}.cal-cell.is-outside{background:var(--bg);border-color:transparent}.cal-cell.is-outside .cal-dom{color:var(--ink-faint);font-weight:500}.cal-cell.is-outside .cal-count{color:var(--ink-soft)}.cal-cell.is-today{background:var(--warn-soft);border-color:var(--warn);border-style:solid;border-width:2px;padding:6.5px 6.5px 4.5px}.cal-cell.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.cal-head{display:flex;align-items:baseline;gap:5px;min-width:0}.cal-dom{font-family:var(--font-display);font-size:calc(13px * var(--step));font-weight:700}.cal-mon{font-size:calc(10.5px * var(--step));color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em}.cal-mark{margin-left:auto;font-size:calc(9.5px * var(--step));font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--warn)}.cal-body{display:flex;flex-direction:column;gap:1px;min-height:30px}.cal-count{font-family:var(--font-display);font-size:calc(24px * var(--step));font-weight:700;line-height:1;color:var(--ink)}.cal-count-label{font-size:calc(9.5px * var(--step));font-weight:600;letter-spacing:.04em;color:var(--ink-faint);line-height:1.2}.cal-proj{align-self:flex-start;font-size:calc(10.5px * var(--step));font-weight:600;color:var(--ink-soft)}.cal-flag{font-size:calc(10.5px * var(--step));font-weight:700;color:var(--warn)}.cal-cell .cal-flag{margin-top:auto}.cal-week{display:flex;flex-direction:column;justify-content:center;gap:1px;padding:8px 10px 6px 2px;min-width:0;border-right:1.5px solid var(--line-strong)}.cal-week-range{font-size:calc(9.5px * var(--step));font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint)}.cal-week-count{font-family:var(--font-display);font-size:calc(19px * var(--step));font-weight:700;line-height:1.05;color:var(--ink-soft)}.cal-week-label{font-size:calc(9.5px * var(--step));font-weight:600;letter-spacing:.04em;color:var(--ink-faint);line-height:1.2}.cal-filters{display:flex;flex-wrap:wrap;gap:10px 28px;margin:-6px 0 14px}.cal-filter{display:flex;flex-direction:column;gap:6px;min-width:0}.cal-chips{display:flex;flex-wrap:wrap;gap:6px}.cal-chip{min-height:32px;padding:0 12px;border:1.5px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-soft);font:inherit;font-size:calc(12.5px * var(--step));font-weight:650;cursor:pointer;white-space:nowrap;transition:border-color .12s ease,background .12s ease,color .12s ease}.cal-chip:hover{border-color:var(--line-strong)}.cal-chip.is-on{background:var(--accent);border-color:var(--accent);color:#fff}.cal-nav{display:flex;align-items:center;gap:2px}.cal-nav button{min-width:var(--tap);min-height:var(--tap);border:1.5px solid var(--line);background:var(--surface);border-radius:var(--r-sm);font:inherit;font-size:15px;cursor:pointer}.cal-nav button:hover{border-color:var(--line-strong)}.cal-nav-label{font-family:var(--font-display);font-weight:700;font-size:calc(14px * var(--step));padding:0 10px;white-space:nowrap}.cal-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:calc(11.5px * var(--step));color:var(--ink-faint)}.cal-legend>span{display:inline-flex;align-items:center;gap:5px}.cal-swatch{width:14px;height:14px;border-radius:3px;border:1.5px solid var(--line);background:var(--surface)}.cal-swatch.is-today{background:var(--warn-soft);border-color:var(--warn)}.cal-swatch.is-past{background:var(--bg-sunken);border-style:dashed}.cal-swatch.is-outside{background:var(--bg);border-color:transparent}.cal-day{margin-top:14px;display:flex;flex-direction:column;gap:12px}.cal-day-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.cal-day-label{font-size:calc(11px * var(--step));font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.cal-standing{list-style:none;margin:0;padding:0}.cal-standing li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.cal-standing li:last-child{border-bottom:none}@media (max-width: 780px){.cal-grid{grid-template-columns:minmax(0,.5fr) repeat(7,minmax(0,1fr));grid-auto-rows:minmax(72px,auto);gap:3px}.cal-cell{padding:5px 4px}.cal-flag,.cal-mark,.cal-proj{display:none}.cal-count{font-size:calc(18px * var(--step))}.cal-week{padding:4px 5px 4px 0}.cal-week-range{display:none}.cal-week-count{font-size:calc(15px * var(--step))}}@media print{body:has(.cal-grid)>#root{display:block!important}body:has(.cal-grid) .topbar,body:has(.cal-grid) .sidenav,body:has(.cal-grid) .tabbar,body:has(.cal-grid) .cal-day{display:none!important}body:has(.cal-grid) .page-head-actions .btn,body:has(.cal-grid) .cal-nav button{display:none!important}.cal-chip,.cal-cell,.cal-swatch{-webkit-print-color-adjust:exact;print-color-adjust:exact}.cal-grid{grid-auto-rows:minmax(84px,auto)}}.standing-strip{border:1px dashed var(--line);border-radius:10px;background:var(--bg);margin-bottom:16px;overflow:hidden}.standing-strip-head{display:flex;align-items:baseline;gap:10px;width:100%;padding:11px 14px;background:none;border:0;cursor:pointer;text-align:left;font-family:var(--font-body)}.standing-strip-head:hover{background:var(--surface)}.standing-strip-title{font-size:calc(13px * var(--step));font-weight:600;color:var(--ink)}.standing-strip-sub{font-size:calc(12px * var(--step));color:var(--ink-soft);flex:1}.standing-strip-chevron{font-size:16px;color:var(--ink-soft);font-weight:700;line-height:1}.standing-strip-body{display:flex;gap:12px;overflow-x:auto;padding:4px 14px 14px}.standing-day{min-width:190px;border:1px dashed var(--line);border-radius:8px;padding:10px 12px;background:var(--surface)}.standing-day-date{font-size:calc(12.5px * var(--step));font-weight:700;color:var(--ink)}.standing-day-count{font-size:calc(11.5px * var(--step));color:var(--ink-soft);margin-bottom:6px}.standing-day-booked{color:var(--accent)}.standing-day-list{list-style:none;margin:0;padding:0}.standing-day-list li{font-size:calc(12.5px * var(--step));color:var(--ink);padding:2px 0;border-top:1px solid var(--line)}.standing-day-list li:first-child{border-top:0}.dc-cart{display:flex;flex-direction:column}.dc-cart>.card-head{flex:0 0 auto}.dc-cart-lines{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:40dvh}.dc-cart-total{flex:0 0 auto;padding:12px 18px 14px;border-top:1.5px solid var(--line);background:var(--surface)}.dc-cart-total .price-line-total{margin-top:0;padding-top:0;border-top:none}.dc-cart-total .price-line-total>span{color:var(--accent)}@media (min-width: 1000px){.retail-layout>.card.dc-cart{position:sticky;top:84px;max-height:calc(100dvh - 165px)}.retail-layout>.card.dc-cart .dc-cart-lines{max-height:none}}.tile-art{width:100%;max-width:92px;height:52px;object-fit:contain;display:block;margin-bottom:2px}.pref-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0}.pref-toggle-label{font-weight:650;font-size:calc(14px * var(--step));color:var(--ink)}.toggle-switch{position:relative;flex-shrink:0;cursor:pointer;width:46px;height:26px;border-radius:999px;background:var(--line);border:1px solid var(--line);transition:background .16s ease,border-color .16s ease}.toggle-switch.on{background:var(--accent);border-color:var(--accent)}.toggle-switch-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #10182847;transition:transform .16s ease}.toggle-switch.on .toggle-switch-knob{transform:translate(20px)}.toggle-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toggle-switch[aria-disabled=true]{opacity:.5;cursor:not-allowed}.dc-attest{background:var(--warn-soft);border-color:var(--warn);box-shadow:inset 3px 0 0 var(--warn);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.dc-attest .checkbox-row{cursor:pointer}.dc-attest .checkbox-row input{accent-color:var(--warn)}.dc-attest.is-done{background:var(--success-soft);border-color:var(--success);box-shadow:inset 3px 0 0 var(--success)}.dc-attest.is-done .checkbox-row input{accent-color:var(--success)}@media (prefers-reduced-motion: reduce){.dc-attest{transition:none}}.alt-route{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label go" "sub go";align-items:center;gap:2px 14px;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface-alt);transition:border-color .15s ease,background .15s ease}.alt-route:hover{border-color:var(--accent);background:var(--surface)}.alt-route:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.alt-route-label{grid-area:label;font-weight:650;font-size:calc(14px * var(--step));line-height:1.35}.alt-route-sub{grid-area:sub;font-size:calc(12.5px * var(--step));line-height:1.45;color:var(--ink-soft)}.alt-route-go{grid-area:go;font-size:calc(16px * var(--step));color:var(--ink-faint)}.alt-route:hover .alt-route-go{color:var(--accent)}.stripe-card-field{width:100%;min-height:var(--tap);padding:13px;border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.stripe-card-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.stripe-card-field.is-loading{border-style:dashed;background:var(--surface-alt)}.keyed-card-slot{flex:0 0 auto;min-width:0}.keyed-card-slot.is-open{flex:1 1 100%}
