:root{--paper: #eff1ed;--card: #fbfcfa;--ink: #1a1d1b;--ink-muted: #5a6058;--line: #c7ccc3;--line-soft: #dde0da;--accent: #0068ff;--accent-ink: #0353c4;--stage-draft: #b0b6ac;--stage-requested: #5c6670;--stage-ofq: #8a6d00;--stage-quoted: #7b5cb8;--stage-po-sent: #0a66c2;--stage-ordered: #0e7c86;--stage-received: #2e7d32;--stage-ship: #0f5c4a;--stage-delivered: #255e7a;--stage-cancelled: #9aa097;--flare: #f5a800;--warn: #c2410c;--flare-stripe: repeating-linear-gradient( -45deg, #1a1d1b 0 6px, #f5a800 6px 12px );--font-display: "Libre Franklin", sans-serif;--font-body: "Figtree", sans-serif;--font-data: "Figtree", monospace;--text-display: 22px;--text-section: 15px;--text-body: 13px;--text-data: 12px;--text-micro: 10px;--radius: 2px;--rule: 2px solid var(--ink);--rule-soft: 1.5px solid var(--line);--shadow: 0 1px 3px rgb(26 29 27 / 12%);--move-advance: .22s cubic-bezier(.2, 0, 0, 1);--move-dismiss: .18s ease-in;--move-route: .12s ease-out;--touch-target: 52px}@media (prefers-reduced-motion: reduce){:root{--move-advance: 0ms;--move-dismiss: 0ms;--move-route: 0ms}}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--text-body);line-height:normal;padding-top:var(--shell-h);overflow-x:hidden}:root{--shell-h: 54px;--brand-logo-h: 26px;--app-switcher-logo-h: var(--brand-logo-h);--gruv-app-logo-slot-w: 220px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:#fff}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.shell-head{display:flex;align-items:stretch;gap:0;min-width:0;max-width:100vw;box-sizing:border-box;background:var(--ink);color:var(--paper);border-bottom:2px solid var(--ink);position:fixed;top:0;left:0;right:0;z-index:1200;height:var(--shell-h)}.brand-block{display:flex;align-items:center;box-sizing:border-box;padding:0 18px;text-decoration:none;white-space:nowrap}.brand-block img{height:var(--brand-logo-h);width:auto;display:block}.brand-block:hover{opacity:.85}.app-switcher{position:relative;display:flex;align-items:stretch;flex:0 0 var(--gruv-app-logo-slot-w);width:var(--gruv-app-logo-slot-w);min-width:var(--gruv-app-logo-slot-w)}.app-switcher-trigger{border:0;border-radius:0;background:transparent;color:inherit;height:var(--shell-h);width:100%;justify-content:flex-start;cursor:pointer}.app-switcher-trigger:hover{background:#ffffff0a}.app-switcher-trigger[aria-expanded=true]{background:#ffffff12}.app-switcher-popover{position:absolute;top:var(--shell-h);left:0;width:100%;max-width:calc(100vw - 12px);box-sizing:border-box;background:var(--ink);border:1.5px solid var(--ink);border-top:1px solid var(--ink-muted);border-radius:0 0 var(--radius) var(--radius);box-shadow:0 12px 28px #00000047;z-index:1201;padding:6px 0}.app-switcher-products{display:flex;flex-direction:column;gap:2px}.app-switcher-item{display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:40px;padding:6px;border:0;border-radius:0;background:transparent;cursor:pointer;transition:transform .16s ease,background-color .16s ease}.app-switcher-item img{display:block;margin-left:11px;height:var(--app-switcher-logo-h);width:auto;max-width:calc(100% - 12px);max-height:var(--app-switcher-logo-h);object-fit:contain}.app-switcher-item:hover,.app-switcher-item:focus-visible{background:#ffffff14;transform:translateY(-1px)}.app-switcher-item.disabled{cursor:default;opacity:.78}.app-switcher-item.disabled:hover,.app-switcher-item.disabled:focus-visible{background:transparent;transform:none}.app-switcher-divider{border-top:1px solid var(--ink-muted);margin:6px 12px}@media (max-width: 720px){.app-switcher-item{min-height:38px}}.shell-head .crumb{color:var(--paper)}.shell-head .crumb:hover{color:#fff}.shell-head .crumb-title,.shell-head .crumb-sep,.shell-head .crumb-area{color:var(--line-soft);border-color:var(--line-soft)}.shell-head .jump,.shell-head .shell-menu{border-left-color:var(--ink-muted)}.shell-head .shell-menu>button{background:transparent;color:var(--paper);border-color:var(--ink-muted)}.shell-head .shell-menu>button:hover{border-color:var(--paper)}.shell-nav-link{display:flex;align-items:center;padding:0 14px;color:var(--paper);text-decoration:none;font-family:var(--font-body);font-size:var(--text-data);font-weight:500;border-left:1px solid var(--ink-muted)}.shell-nav-link:hover{color:#fff;background:#ffffff0a}.crumbs{display:flex;align-items:center;gap:8px;padding:0 16px;flex:1;min-width:0;overflow:hidden;font-family:var(--font-data);font-size:var(--text-data)}.crumb{color:var(--ink);text-decoration:none;white-space:nowrap}.crumb:hover{color:var(--accent-ink)}.crumb-title{color:var(--ink-muted);font-family:var(--font-body)}.crumb-sep{color:var(--ink-muted)}.crumb-area{font-family:var(--font-display);letter-spacing:.08em;border:1.5px solid var(--ink);padding:1px 6px;border-radius:var(--radius)}.crumb-order{font-weight:600}.jump{position:relative;display:flex;align-items:center;padding:0 12px;border-left:var(--rule-soft)}.jump input{width:280px;height:34px;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--paper);font-family:var(--font-data);font-size:var(--text-data);padding:0 10px;color:var(--ink)}.jump input:focus{border-color:var(--accent);outline:none}.jump-results{position:absolute;top:48px;right:12px;width:380px;background:var(--card);border:1.5px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);z-index:50}.jump-results button{display:flex;gap:10px;width:100%;align-items:baseline;padding:9px 12px;border:0;border-bottom:1px solid var(--line-soft);background:transparent;cursor:pointer;font-size:var(--text-data);text-align:left}.jump-results button.active{background:var(--accent);color:#fff}.jump-results button.active .jump-title,.jump-results button.active .jump-areas{color:#fffc}.jump-group{font-family:var(--font-display);font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--ink-muted);width:52px;flex-shrink:0}.jump-results button.active .jump-group{color:#ffffffb3}.jump-none{padding:12px;color:var(--ink-muted);font-size:var(--text-data)}.jump-job{font-family:var(--font-data);font-weight:600}.jump-title{flex:1;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jump-areas{font-family:var(--font-display);font-size:var(--text-micro);letter-spacing:.08em;color:var(--ink-muted)}.shell-menu{position:relative;display:flex;min-width:0;align-items:center;padding:0 12px;border-left:var(--rule-soft)}.shell-menu>button{border:1.5px solid var(--line);background:var(--card);border-radius:var(--radius);height:34px;padding:0 12px;font-family:var(--font-body);cursor:pointer}.menu-pop{position:absolute;top:48px;right:12px;min-width:220px;background:var(--card);border:1.5px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);z-index:50;padding:6px 0}.menu-pop a,.menu-pop .menu-row{display:block;padding:8px 14px;color:var(--ink);text-decoration:none;font-size:var(--text-body)}.menu-pop a:hover{background:var(--paper)}.menu-pop .menu-sep{border-top:1px solid var(--line-soft);margin:6px 0}.menu-pop select{width:100%}.area-tag{display:inline-block;box-sizing:border-box;max-width:100%;font-family:var(--font-data);font-weight:700;font-size:10px;letter-spacing:.08em;border:1.5px solid var(--ink);border-radius:var(--radius);padding:1px 7px;color:var(--ink);background:var(--card);white-space:nowrap}.area-tag.small{font-size:10px;padding:0 5px;border-width:1px}.stage-chip{display:inline-block;color:#fff;font-family:var(--font-data);font-weight:700;font-size:var(--text-micro);letter-spacing:.07em;text-transform:uppercase;border-radius:var(--radius);padding:2px 8px;white-space:nowrap}button.ghost{border:1.5px solid var(--line);background:transparent;border-radius:var(--radius);padding:6px 12px;font-family:var(--font-body);cursor:pointer;color:var(--ink)}button.ghost:hover{border-color:var(--ink)}.loading-note,.empty-note{color:var(--ink-muted);font-size:var(--text-body);padding:24px 8px}.travel-card{--card-stage: var(--stage-requested);position:relative;display:block;background:var(--card);border:1.5px solid var(--line);border-left:4px solid var(--card-stage);border-radius:var(--radius);box-shadow:var(--shadow);padding:8px 10px;margin:4px 0;color:var(--ink);text-decoration:none;transition:transform var(--move-advance),border-color .12s ease-out}.travel-card:hover{border-color:var(--ink);transform:translateY(-1px)}.travel-card.late{border-top:7px solid transparent;margin-top:16px}.travel-card.late:before{content:"";position:absolute;top:-7px;left:-1.5px;right:-1.5px;height:7px;background:var(--flare-stripe);border-radius:var(--radius) var(--radius) 0 0}.late-stamp{position:absolute;top:-13px;right:6px;font-family:var(--font-display);font-weight:700;font-size:10px;letter-spacing:.08em;color:var(--ink);background:var(--flare);border:1px solid var(--ink);padding:0 5px;border-radius:var(--radius);z-index:1}.tc-head{display:flex;align-items:center;gap:6px;font-family:var(--font-data);font-size:var(--text-data);min-width:0}.tc-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.tc-identity{min-width:0;display:block}.tc-subname{display:block;color:var(--ink-muted);font-family:var(--font-display);font-size:var(--text-micro);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tc-docs{margin-left:auto;color:var(--ink-muted);font-size:var(--text-micro);white-space:nowrap;flex-shrink:0}.tc-returned{display:inline-block;margin-top:3px;padding:1px 6px;border-radius:var(--radius);background:var(--warn);color:#fff;font-family:var(--font-display);font-weight:600;font-size:10px;letter-spacing:.06em}.tc-title{font-size:var(--text-data);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tc-vendor{color:var(--ink-muted);font-size:var(--text-micro);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tc-foot{display:flex;align-items:center;gap:8px;margin-top:6px;flex-wrap:nowrap}.tc-date{font-family:var(--font-data);font-size:var(--text-micro);color:var(--ink-muted);margin-left:auto;white-space:nowrap}.tc-actor{margin-left:auto;color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-micro);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:52%}.tc-date+.tc-actor{margin-left:0}.tc-date+.tc-date{margin-left:0}.tc-lines{font-family:var(--font-data);font-size:var(--text-micro);color:var(--ink-muted);white-space:nowrap}.travel-card.board{box-sizing:border-box;max-width:100%;min-width:0;overflow:hidden;padding:6px 8px}.travel-card.board .tc-name{font-size:var(--text-data);white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25}.travel-card.board .stage-chip{max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.travel-card.board .tc-vendor{max-width:100%;min-width:0}.travel-card.board .tc-due{max-width:100%;min-width:0;flex-wrap:wrap;gap:3px 8px;white-space:normal}.travel-card.board .tc-due span{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis}.tc-due{display:flex;gap:8px;font-family:var(--font-data);font-size:var(--text-micro);color:var(--ink-muted);margin-top:3px;white-space:nowrap}.tc-due .overdue,.tc-date.overdue{color:var(--warn);font-weight:700}.workspace{padding:18px 22px 60px;max-width:1500px;margin:0 auto}.ws-head{display:flex;align-items:baseline;gap:14px;margin-bottom:14px}.ws-job{font-family:var(--font-data);font-size:var(--text-section);font-weight:600;color:var(--ink-muted)}.ws-title h1{display:inline;font-family:var(--font-display);font-weight:700;font-size:var(--text-display);letter-spacing:0;text-transform:none;margin:0 0 0 10px}.ws-count{color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-data)}.ws-head .ghost{margin-left:auto}.ws-add-area{display:flex;gap:8px;margin-bottom:14px}.ws-add-area input{border:1.5px solid var(--line);border-radius:var(--radius);padding:7px 10px;font-family:var(--font-body);font-size:var(--text-body)}.ws-add-area button.primary{background:var(--accent);color:#fff;border:0;border-radius:var(--radius);padding:7px 14px;cursor:pointer}.ws-add-area button.primary:disabled{opacity:.5}.track{border:var(--rule);border-radius:var(--radius);background:var(--card);overflow-x:auto}.track-rail,.lane{display:grid;grid-template-columns:110px repeat(9,minmax(104px,1fr));min-width:1046px}.track-rail{border-bottom:var(--rule);background:var(--ink);color:var(--paper)}.rail-corner{font-family:var(--font-display);font-size:var(--text-micro);letter-spacing:.14em;display:flex;align-items:center;padding:8px 12px;color:var(--paper)}.rail-stop{display:flex;align-items:center;gap:6px;padding:7px 8px;font-family:var(--font-display);font-weight:600;font-size:11px;line-height:1.15;letter-spacing:.05em;text-transform:uppercase;border-left:1px solid rgb(239 241 237 / 18%)}.rail-tick{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:var(--stop);box-shadow:0 0 0 2px #eff1ed40}.lane{border-bottom:var(--rule-soft);position:relative}.lane:last-child{border-bottom:0}.lane:nth-child(odd){background:#1a1d1b04}.lane-label{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:12px;border-right:var(--rule-soft)}.lane-name{font-size:var(--text-micro);color:var(--ink-muted)}.lane-add{border:1px dashed var(--line);background:transparent;border-radius:var(--radius);font-size:var(--text-micro);color:var(--ink-muted);padding:2px 7px;cursor:pointer}.lane-add:hover{border-color:var(--accent);color:var(--accent-ink)}.lane-cell{padding:8px 6px;border-left:1px dashed var(--line-soft);min-height:68px}.lane-empty{grid-column:2 / -1;align-self:center;color:var(--ink-muted);font-size:var(--text-data);padding:0 14px 10px}.home-grid{display:grid;grid-template-columns:minmax(420px,11fr) minmax(360px,9fr);gap:26px;max-width:1360px;margin:0 auto;padding:22px 20px 60px;align-items:stretch}.home-pane{min-width:0}.home-pane .pane-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:var(--rule);min-height:36px;padding-bottom:8px;margin-bottom:14px;position:sticky;top:54px;z-index:20;background:var(--paper);padding-top:8px}.home-pane h1{font-family:var(--font-display);font-weight:700;font-size:16px;text-transform:none;letter-spacing:0;margin:0}.pane-sub{font-family:var(--font-display);font-weight:600;font-size:var(--text-data);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin:18px 0 8px}.proj-row{display:grid;grid-template-rows:auto auto;gap:6px;width:100%;min-width:0;max-width:100%;text-align:left;background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius);padding:9px 10px;margin-bottom:8px;cursor:pointer;overflow:hidden}.proj-row:hover{border-color:var(--ink)}.project-card-identity{display:grid;grid-template-columns:minmax(3.75rem,max-content) minmax(0,1fr) auto auto;align-items:baseline;gap:7px;min-width:0;max-width:100%}.proj-job{min-width:0;max-width:8.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-data);font-size:var(--text-micro);font-weight:600;color:var(--ink-muted)}.proj-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:var(--text-data);font-weight:700}.proj-count{font-family:var(--font-data);font-size:var(--text-micro);color:var(--ink-muted)}.late-stamp.static{position:static}.project-status-legend{margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid var(--line-soft)}.project-status-grid{display:grid;grid-template-columns:var(--project-status-columns, repeat(9, minmax(0, 1fr)));gap:3px;min-width:0;width:100%}.project-status-legend-item{min-width:0;text-align:center}.project-status-legend-chip{display:flex;align-items:center;justify-content:center;min-width:0;height:17px;border-radius:calc(var(--radius) - 2px);color:#fff;font-family:var(--font-data);font-size:8px;font-weight:800;letter-spacing:0;line-height:1}.project-status-legend-label{display:block;margin-top:3px;min-width:0;color:var(--ink-muted);font-family:var(--font-data);font-size:7px;font-weight:600;line-height:1.05;text-transform:none;overflow-wrap:anywhere}.stage-summary{min-width:0;grid-row:2}.strip-cell{width:100%;height:18px;min-width:0;box-sizing:border-box;border:1px solid transparent;border-radius:calc(var(--radius) - 2px);color:#fff;font-family:var(--font-data);font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;line-height:1}.strip-cell.active{box-shadow:inset 0 0 0 1px #ffffff47}.strip-cell.empty{background:#1a1d1b06;border-color:var(--line-soft);color:transparent}.tc-exceptions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.tc-exception-detail{margin-top:5px;padding:4px 6px;border-left:3px solid var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--card));font-size:var(--text-micro);line-height:1.35}.tc-follow-up{margin-top:3px;color:var(--warn);font-weight:700}.tc-planned{display:inline-block;margin-top:4px;color:var(--ink-muted)}.tc-incomplete-count{margin-top:2px;color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-micro)}.stage-exception-warning{margin-left:8px;padding:1px 5px;border:1px solid var(--warn);color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,transparent);font-family:var(--font-data);font-size:var(--text-data);line-height:1.2}.stage-exception-warning:hover{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 16%,transparent)}.exception-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 5px;border:1px solid currentColor;border-radius:var(--radius);font-family:var(--font-display);font-size:10px;font-weight:600;letter-spacing:.03em;line-height:1.2}.scope-switch select,.wk-sidebar-head select{min-height:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);color:var(--ink);font-family:var(--font-display);font-size:var(--text-micro);font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.exception-badge:before{content:"!";font-family:var(--font-data);font-weight:700}.exception-badge.damaged,.exception-badge.missing{color:var(--warn)}.exception-badge.backordered,.exception-badge.partial{color:#8a6500}.receipt-history-exception td{background:color-mix(in srgb,var(--warn) 7%,var(--card))}.receipt-status{display:inline-flex;align-items:center;gap:4px;font-weight:600}.receipt-status.exception{color:var(--warn)}.receipt-exception-trigger{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:3px 6px;border:1px solid currentColor;color:var(--warn);background:transparent;font-weight:700;text-align:left;white-space:normal}.receipt-exception-trigger.backordered,.receipt-exception-trigger.partial{color:#8a6500}.receipt-exception-trigger:hover{border-color:currentColor;background:color-mix(in srgb,currentColor 8%,transparent)}.receipt-exception-trigger:focus-visible,.receipt-exception-dialog button:focus-visible,.receipt-exception-dialog input:focus-visible,.receipt-exception-dialog select:focus-visible,.receipt-exception-dialog textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}.receipt-warning{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-family:var(--font-data);font-size:11px}.receipt-exception-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:grid;place-items:center;padding:12px;background:#12182052}.receipt-exception-dialog{width:min(560px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:0 16px 44px #00000038}.receipt-exception-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.receipt-exception-dialog-head h2{margin:8px 0 0;font-size:var(--text-heading)}.receipt-exception-dialog .icon-button{padding:2px 8px;font-size:22px;line-height:1}.receipt-exception-dialog-context{display:flex;flex-wrap:wrap;gap:4px 12px;margin:12px 0;color:var(--ink-muted);font-size:var(--text-data)}.receipt-exception-dialog-context strong{flex-basis:100%;color:var(--ink);font-size:var(--text-body)}.receipt-exception-quantities{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.receipt-exception-quantities div{padding:8px 10px;border:1px solid var(--line-soft);background:var(--card)}.receipt-exception-quantities span,.receipt-exception-readonly span{display:block;color:var(--ink-muted);font-size:var(--text-micro)}.receipt-exception-quantities strong{display:block;margin-top:2px;font-family:var(--font-data);font-size:var(--text-heading)}.receipt-exception-form{display:grid;gap:10px}.receipt-exception-form label{display:grid;gap:4px;font-size:var(--text-data);font-weight:600}.receipt-exception-form input,.receipt-exception-form select,.receipt-exception-form textarea{width:100%;box-sizing:border-box}.receipt-exception-readonly{display:grid;grid-template-columns:minmax(100px,.7fr) 1.3fr;gap:8px 12px;padding:10px;border:1px solid var(--line-soft);background:var(--card)}.receipt-exception-readonly strong{overflow-wrap:anywhere}.receipt-exception-helper{margin:12px 0 4px;color:var(--ink-muted);font-size:var(--text-data)}.receipt-exception-resolution-note,.receipt-exception-error{margin:8px 0}.receipt-exception-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}@media (max-width: 560px){.quote-document-meta{flex-wrap:wrap;gap:2px 8px}.quote-document-meta .muted{margin-left:0;white-space:normal}.receipt-exception-dialog{padding:14px}.receipt-exception-quantities{gap:4px}.receipt-exception-quantities div{padding:7px 6px}.receipt-exception-dialog-actions{position:sticky;bottom:-14px;padding:10px 0 0;background:var(--paper)}}.plate{max-width:860px;margin:0 auto;padding:22px 16px 60px}.plate-sub{color:var(--ink-muted);margin:0 0 18px;font-size:var(--text-body)}.plate-item{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:stretch;margin-bottom:10px;animation:plate-in var(--move-route) both}@keyframes plate-in{0%{opacity:0;transform:translateY(4px)}}.plate-item .travel-card{margin:0}.card-inline-action{justify-self:start;margin-top:6px}.home-grid.touch{grid-template-columns:1fr;max-width:780px;gap:18px}.home-pane.touch h1{font-size:22px}.home-pane.touch .pane-head{padding-bottom:12px}.floor-card{display:flex;align-items:stretch;gap:0;border:2px solid var(--line);border-radius:var(--radius);background:var(--card);margin-bottom:12px;overflow:hidden}.floor-open{display:flex;align-items:center;gap:14px;flex:1;min-width:0;border:0;background:transparent;padding:16px;text-align:left;cursor:pointer;min-height:76px}.floor-area{font-family:var(--font-display);font-weight:600;font-size:15px;letter-spacing:.08em;border:2px solid var(--ink);border-radius:var(--radius);padding:3px 10px;flex-shrink:0}.floor-body{display:flex;flex-direction:column;gap:3px;min-width:0}.floor-title{font-family:var(--font-data);font-size:17px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.floor-why{color:var(--ink-muted);font-size:var(--text-body)}.stage-dot{width:16px;height:16px;border-radius:50%;flex-shrink:0;margin-left:auto}.floor-action{border:0;border-left:2px solid var(--line);background:var(--paper);min-width:128px;padding:0 16px;font-family:var(--font-display);font-weight:600;font-size:14px;letter-spacing:.04em;color:var(--accent-ink);cursor:pointer}.floor-action.primary{background:var(--stage-ship);color:#fff;border-left:0}.floor-action:active{filter:brightness(.94)}.home-pane.touch .proj-row{padding:16px 14px;min-height:60px}.plate-empty{border:1.5px dashed var(--line);border-radius:var(--radius);padding:40px 24px;text-align:center;color:var(--ink-muted)}.spine-page{max-width:1280px;margin:0 auto;padding:0;min-height:100%}.spine-mast{background:var(--card);border:var(--rule);border-left:6px solid var(--mast-stage, var(--stage-requested));border-radius:var(--radius);padding:14px 16px;position:sticky;top:var(--workspace-header-height, 0px);z-index:30}.spine-mast.late{border-top:8px solid transparent}.spine-mast.late:before{content:"";position:absolute;top:-8px;left:-6px;right:-2px;height:8px;background:var(--flare-stripe)}.spine-mast .row1{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.spine-id,.spine-job{font-family:var(--font-data);font-size:20px;font-weight:600}.spine-project-name{font-family:var(--font-display);font-size:16px;color:var(--ink-muted)}.spine-title,.spine-list-name{font-family:var(--font-display);font-weight:700;font-size:20px;text-transform:none;letter-spacing:0}.spine-meta{display:flex;gap:16px;margin-top:8px;flex-wrap:wrap;align-items:center;font-family:var(--font-data);font-size:var(--text-data);color:var(--ink-muted)}.spine-mast-actions{margin-top:10px;display:flex;justify-content:flex-end}.mast-needed-by{display:inline-flex;align-items:center;gap:6px}.mast-needed-by input[type=date]{border:1.5px solid var(--line);border-radius:var(--radius);padding:2px 6px;font-family:var(--font-data);font-size:var(--text-data);color:var(--ink);background:var(--card)}.date-conflict{color:var(--warn);font-weight:600}.spine-scroll{min-height:0;overflow:visible;padding:0 16px 80px}.project-information{margin-top:14px;padding-top:12px;border-top:1px solid var(--line-soft)}.project-information h3{margin:0 0 8px;font-family:var(--font-display);font-size:var(--text-section);font-weight:700;text-transform:none;letter-spacing:.1px}.import-counts{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0;font-family:var(--font-data);font-size:var(--text-micro);color:var(--ink-muted)}.import-counts b{color:var(--ink)}.import-error-row td{color:var(--warn)}.spine-layout{display:grid;grid-template-columns:minmax(0,1fr) 236px;gap:18px;align-items:start}.material-section{min-width:0}.material-toolbar{position:sticky;top:calc(var(--workspace-header-height, 0px) + var(--spine-mast-height, 0px) + var(--stage-header-height, 0px));z-index:20;min-height:40px;display:grid;grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:10px;padding:5px 0;background:var(--paper);border-bottom:1px solid var(--line-soft)}.material-toolbar-selection,.material-toolbar-summary,.material-toolbar-assignment,.material-toolbar-actions,.material-vendor-actions{display:flex;align-items:center;gap:6px;min-width:0}.material-toolbar-selection{justify-self:start}.material-toolbar-summary{color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-micro);white-space:nowrap}.material-toolbar-summary strong{color:var(--ink)}.material-toolbar-summary span+span:before{content:"·";margin-right:6px;color:var(--line)}.material-toolbar-assignment{justify-content:center}.material-toolbar-actions{justify-content:flex-end;flex-wrap:wrap}.material-toolbar button,.material-toolbar select{min-height:30px;padding:3px 7px;font-size:var(--text-micro)}.material-vendor-actions{justify-content:center;flex-wrap:wrap}.material-vendor-actions select:first-child{width:min(260px,28vw);min-width:160px}.material-vendor-actions select:nth-child(2){width:64px}.material-vendor-actions .assign-vendor-button{min-width:104px}.material-list-import-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--card)}.material-list-import-panel>div{display:flex;flex-direction:column;gap:2px;min-width:0}.material-list-import-panel span{color:var(--ink-muted);font-size:var(--text-data);overflow-wrap:anywhere}.material-list-import-dialog{max-width:min(760px,calc(100vw - 24px))}.material-list-import-impact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.material-list-import-impact span{padding:8px;border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--paper);color:var(--ink-muted);font-size:var(--text-data)}.material-list-import-impact b{display:block;color:var(--ink);font-size:var(--text-heading)}.material-list-import-confirm{display:flex;gap:8px;align-items:flex-start;margin:10px 0}.material-table-wrap{min-width:0;max-width:100%;overflow-x:auto;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.material-edit-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:var(--text-data)}.material-edit-table col.material-col-select{width:4%}.material-edit-table col.material-col-part{width:10%}.material-edit-table col.material-col-description{width:22%}.material-edit-table col.material-col-category{width:10%}.material-edit-table col.material-col-size,.material-edit-table col.material-col-origin{width:7%}.material-edit-table col.material-col-manufacturer{width:12%}.material-edit-table col.material-col-requested{width:8%}.material-edit-table col.material-col-qty{width:7%}.material-edit-table col.material-col-uom{width:6%}.material-edit-table col.material-col-actions{width:7%}.material-edit-table th,.material-edit-table td{min-width:0;padding:4px 5px;border-bottom:1px solid var(--line-soft);overflow:hidden;text-overflow:ellipsis}.material-edit-table th{height:32px;color:var(--ink-muted);background:var(--paper);font-family:var(--font-data);font-weight:700;font-size:var(--text-micro);letter-spacing:.05em;text-align:left;text-transform:uppercase;border-bottom:var(--rule)}.material-edit-table td{height:40px;font-family:var(--font-data);white-space:nowrap}.material-edit-table td.material-description-cell{position:relative;overflow:visible;font-family:var(--font-body);white-space:nowrap}.material-edit-table th.num,.material-edit-table td.num{text-align:right;font-variant-numeric:tabular-nums}.material-edit-table input,.material-edit-table select{width:100%;min-width:0;height:30px;box-sizing:border-box;padding:3px 5px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);color:var(--ink);font:inherit}.material-edit-table input:focus,.material-edit-table select:focus{border-color:var(--accent);outline:none}.material-edit-table tr:hover td{background:#1a1d1b08}.material-edit-table tr.is-excluded td{color:var(--ink-muted);background:#1a1d1b05}.material-edit-table tr.is-modified td{background:#f5a8000d}.material-edit-table tr.is-added td{background:#2674500f}.material-select-cell{text-align:center!important;white-space:nowrap!important}.material-select-cell input{width:15px;height:15px;vertical-align:middle}.material-row-marker{display:inline-block;width:3px;height:18px;margin-right:3px;vertical-align:middle;background:transparent;border-radius:1px}.material-row-marker.modified{background:var(--warn)}.material-row-marker.added{background:var(--accent)}.material-row-marker.excluded{background:var(--ink-muted)}.material-actions-cell{text-align:center!important}.material-row-actions{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}.material-remove{min-width:24px;min-height:26px;padding:2px 6px}.material-no-longer-needed{min-height:26px;padding:2px 7px;font-size:var(--text-micro)}.material-excluded-label{color:var(--ink-muted);font-size:var(--text-micro)}.material-add-row td{background:var(--card)}.material-catalog-picker{position:relative}.material-catalog-results{--material-catalog-visible-results: 8;--material-catalog-result-row-height: 42px;position:absolute;top:calc(100% + 4px);left:0;z-index:40;width:min(520px,calc(100vw - 32px));max-height:calc(var(--material-catalog-visible-results) * var(--material-catalog-result-row-height));overflow-y:auto;overflow-x:hidden;padding:3px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:0 8px 22px #1a1d1b29;animation:material-catalog-fade-in .12s ease-out}.material-catalog-results button{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:3px;width:100%;min-height:var(--material-catalog-result-row-height);padding:8px 12px;text-align:left}.material-catalog-result-description{display:block;width:100%;min-width:0;overflow:hidden;font-size:var(--text-data);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.material-catalog-result-description mark{padding:0 1px;border-radius:2px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:inherit}.material-catalog-result-meta{display:flex;align-items:baseline;justify-content:space-between;gap:14px;min-width:0;width:100%}.material-catalog-result-manufacturer{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap}.material-catalog-result-part-number{flex:0 0 auto;min-width:0;color:var(--ink-muted);font-size:var(--text-micro);margin-left:auto;max-width:42%;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.material-catalog-status{display:block;padding:17px 12px;text-align:center}.material-catalog-status span{font-size:var(--text-micro)}.material-catalog-results button:hover,.material-catalog-results button.active{background:color-mix(in srgb,var(--accent) 16%,transparent)}@keyframes material-catalog-fade-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.material-catalog-row-trigger{width:100%;min-width:0;overflow:hidden;padding:3px 5px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.material-catalog-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:24px;background:#1217147a}.material-catalog-modal{display:flex;flex-direction:column;width:min(720px,calc(100vw - 32px));max-height:min(720px,calc(100vh - 48px));padding:22px;border:1px solid var(--line);border-radius:calc(var(--radius) * 1.5);background:var(--paper);box-shadow:0 24px 70px #12171447;animation:material-catalog-fade-in .14s ease-out}.material-catalog-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.material-catalog-modal-header h2{margin:2px 0 0}.material-catalog-modal-search{width:100%;min-height:48px;box-sizing:border-box;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);color:var(--ink);font:inherit;font-size:1.05rem}.material-catalog-modal-search:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 24%,transparent);outline-offset:1px}.material-catalog-modal-results{--material-catalog-visible-results: 8;--material-catalog-result-row-height: 60px;min-height:92px;max-height:calc(var(--material-catalog-visible-results) * var(--material-catalog-result-row-height));margin-top:14px;overflow-y:auto;overflow-x:hidden;padding:4px;border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--card)}.material-catalog-modal-results button{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:3px;width:100%;min-height:var(--material-catalog-result-row-height);padding:9px 12px;text-align:left}.material-catalog-modal-results button:hover,.material-catalog-modal-results button.active{background:color-mix(in srgb,var(--accent) 16%,transparent)}.material-catalog-modal-actions{display:flex;justify-content:flex-end;margin-top:14px}.material-import-part-picker{display:flex;align-items:center;gap:4px}.material-import-part-picker input{min-width:0}.import-lines-entry{align-items:stretch;flex-wrap:nowrap;overflow-x:auto}.import-lines-entry>input,.import-lines-entry>select,.import-lines-entry>button,.material-import-part-picker{flex:0 0 auto}.import-lines-entry>input[placeholder=Description]{min-width:220px}.material-add-actions{white-space:normal!important}.material-add-actions button{min-height:27px;padding:3px 5px;font-size:var(--text-micro)}.import-detection-summary{margin-top:10px;padding-top:10px;border-top:1px solid var(--line-soft)}.import-detection-summary h3{margin:0 0 8px}.import-detection-grid{display:grid;grid-template-columns:minmax(120px,max-content) minmax(180px,1fr);gap:5px 12px;font-size:var(--text-data)}.import-detection-grid span{color:var(--ink-muted)}.import-detection-grid b{font-weight:600;overflow-wrap:anywhere}.spine{border-left:3px solid var(--line);margin-left:9px}.spine-stage{position:relative;padding:0 0 18px 22px}.spine-stage-head:before{content:"";width:15px;height:15px;flex:0 0 15px;margin-left:-34px;margin-right:11px;margin-top:2px;border-radius:50%;background:var(--dot, var(--line));border:3px solid var(--paper);box-shadow:0 0 0 1.5px var(--dot, var(--line))}.spine-stage.future .spine-stage-head:before{background:var(--paper)}.spine-stage h3{margin:0;font-family:var(--font-data);font-weight:700;font-size:var(--text-section);letter-spacing:.05em;text-transform:uppercase}.spine-stage-head{position:sticky;top:calc(var(--workspace-header-height, 0px) + var(--spine-mast-height, 0px));z-index:25;display:flex;align-items:flex-start;gap:8px;justify-content:flex-start;background:var(--paper);border-bottom:1px solid var(--line-soft);padding:4px 0}.spine-stage-head h3{margin-right:auto}.spine-stage-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;flex-wrap:wrap}.spine-stage.future h3,.spine-stage.future .stamp{color:var(--ink-muted)}.spine-stage .stamp{font-family:var(--font-data);font-size:var(--text-data);color:var(--ink-muted);margin:1px 0 6px}.doc-chip{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--card);padding:4px 9px;margin:0 6px 6px 0;font-family:var(--font-data);font-size:var(--text-micro);color:var(--ink);text-decoration:none}.doc-chip:hover{border-color:var(--accent);color:var(--accent-ink)}.vo-block{border:1.5px solid var(--line);border-left:4px solid var(--vo-stage, var(--stage-requested));border-radius:var(--radius);background:var(--card);padding:8px 10px;margin-bottom:7px}.vo-block .row{margin-bottom:4px}.vo-head{display:flex;align-items:center;justify-content:flex-start;gap:6px 10px;flex-wrap:wrap}.vo-title,.vo-actions,.vo-advanced{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.vo-title{min-width:220px;flex:1 1 280px}.vo-toggle{padding:3px 7px;font-size:var(--text-micro)}.vo-close-panel{display:flex;align-items:flex-end;gap:6px;padding:6px 8px;border-top:var(--rule-soft);background:var(--wash)}.vo-close-panel label{display:flex;flex-direction:column;gap:3px;font-size:var(--text-micro);font-weight:600}.vo-close-panel select{min-width:190px}.vo-actions{justify-content:flex-start;flex:999 1 520px}.vo-actions input,.vo-advanced input,.vo-advanced select{min-width:0}.vo-actions button,.vo-actions .btn,.vo-actions input,.vo-actions select,.vo-actions input[type=file],.vo-close-panel button,.vo-close-panel select{min-height:30px;box-sizing:border-box;padding:4px 7px;font-size:var(--text-data);line-height:1.2}.vo-actions input[type=file]{width:180px;max-width:min(100%,180px);padding:3px 6px}.file-purpose{display:grid;gap:3px;min-width:min(100%,260px);color:var(--ink);font-size:var(--text-data);font-weight:600}.file-purpose small{color:var(--ink-muted);font-size:var(--text-micro);font-weight:400;line-height:1.3}.delivery-destination-field{display:grid;gap:3px;min-width:min(100%,210px);color:var(--ink);font-size:var(--text-data);font-weight:600}.delivery-destination-field select{width:130px}.delivery-preview,.delivery-warning{white-space:pre-line;max-width:260px;color:var(--ink-muted);font-size:var(--text-micro);font-weight:400;line-height:1.25}.delivery-warning{color:#8a4b00}.vo-actions input[placeholder="PO number"]{width:132px!important}.vo-actions input[placeholder="Request changes note"]{width:180px!important}.vo-unresolved-field{display:grid;grid-template-columns:auto minmax(128px,1fr);align-items:center;gap:4px 6px;flex:0 1 260px;min-width:min(100%,240px);max-width:320px;color:var(--ink-muted);font-size:var(--text-micro);font-weight:600}.vo-unresolved-field span{white-space:nowrap}.vo-unresolved-field input{width:100%;min-width:0}.vo-advanced{margin-top:6px;padding-top:6px;border-top:1px solid var(--line-soft)}.vo-num{font-family:var(--font-data);font-weight:600}.page{width:100%;max-width:1100px;min-width:0;box-sizing:border-box;margin:0 auto;padding:20px 16px 60px}.page h1{font-family:var(--font-display);font-weight:700;font-size:var(--text-display);text-transform:none;letter-spacing:0;margin:6px 0 16px}.page h2{font-family:var(--font-display);font-weight:700;font-size:var(--text-section);letter-spacing:.1px;text-transform:none;margin:20px 0 8px}.card{min-width:0;max-width:100%;box-sizing:border-box;background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;margin-bottom:16px}.grid{display:grid;min-width:0;gap:12px}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}table.data{width:100%;border-collapse:collapse;font-size:var(--text-data)}table.data th,table.data td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line-soft)}table.data th{color:var(--ink-muted);font-family:var(--font-data);font-weight:700;font-size:var(--text-micro);letter-spacing:.05em;text-transform:uppercase;border-bottom:var(--rule)}table.data td{font-family:var(--font-data)}table.data tr:hover td{background:#1a1d1b08}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}table.data tfoot td{border-top:var(--rule);border-bottom:none;font-weight:600}table.data tfoot .tfoot-label{font-family:var(--font-data);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted)}.quote-gate h2{margin-top:0}.quote-gate tr.unmatched td{background:#f5a80014}.delta-up{color:#a12a1a;font-weight:600}.delta-down{color:var(--ink-muted)}.tag-warn{font-family:var(--font-data);font-size:var(--text-micro);letter-spacing:.05em;text-transform:uppercase;color:#8a6d00;margin-left:6px}.gate-actions{align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.gate-actions input[type=text],.gate-actions input:not([type]){flex:1;min-width:220px}.check{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-body)}.check input{width:auto}.settings-check{align-self:end;min-height:39px;color:var(--ink-muted)}.badge{display:inline-block;padding:1px 8px;border-radius:var(--radius);font-family:var(--font-data);font-size:var(--text-micro);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border:1.5px solid var(--badge-c, var(--line));color:var(--badge-c, var(--ink-muted));background:var(--card);white-space:nowrap}button,.btn{border:1.5px solid var(--line);background:var(--card);border-radius:var(--radius);padding:8px 14px;font-size:var(--text-body);font-family:var(--font-body);font-weight:600;cursor:pointer;color:var(--ink);text-decoration:none;display:inline-block}button:hover,.btn:hover{border-color:var(--ink)}button.primary,.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:var(--accent-ink)}button.danger{background:var(--card);border-color:#b42318;color:#b42318}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{max-width:100%;box-sizing:border-box;border:1.5px solid var(--line);border-radius:var(--radius);padding:8px 10px;font-size:var(--text-body);font-family:var(--font-body);background:var(--card);color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none}input[readonly]{background:var(--paper);color:var(--ink-muted)}label.field,.field{display:flex;min-width:0;flex-direction:column;gap:4px;font-size:var(--text-data);color:var(--ink-muted)}.project-combobox-field{min-width:0;width:min(100%,360px)}.project-combobox{position:relative;display:flex;min-width:0;align-items:stretch}.project-combobox input{width:100%;min-width:0;font-family:var(--font-data);padding-right:64px}.project-combobox-clear{position:absolute;top:4px;right:4px;bottom:4px;padding:0 8px;font-size:var(--text-micro)}.project-combobox-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;max-height:260px;overflow:auto;background:var(--card);border:1.5px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow)}.project-combobox-list button{display:grid;grid-template-columns:minmax(82px,auto) minmax(0,1fr);gap:10px;align-items:baseline;width:100%;border:0;border-bottom:1px solid var(--line-soft);border-radius:0;padding:8px 10px;background:transparent;text-align:left}.project-combobox-list button:hover,.project-combobox-list button.active{background:var(--paper)}.project-combobox-list button[aria-selected=true]{border-left:4px solid var(--accent)}.project-option-job{font-family:var(--font-data);font-weight:600;color:var(--ink)}.project-option-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-muted)}.project-combobox-empty{margin:0;padding:12px;color:var(--ink-muted);font-size:var(--text-data)}.project-assignment-grid{display:grid;grid-column:1 / -1;min-width:0;grid-template-columns:repeat(2,minmax(min(100%,220px),1fr));gap:12px;align-items:start}.project-delivery-grid{display:grid;grid-column:1 / -1;min-width:0;grid-template-columns:repeat(3,minmax(min(100%,180px),1fr));gap:12px;align-items:start;padding-top:4px}.form-section-title{grid-column:1 / -1;margin:0;font-size:var(--text-label)}.project-delivery-grid .full{grid-column:1 / -1}.project-delivery-grid textarea{width:100%;min-height:76px;resize:vertical}.people-combobox{position:relative;display:flex;min-width:0;align-items:stretch}.people-combobox input{width:100%;min-width:0;font-family:var(--font-data);padding-right:64px}.people-combobox-clear{position:absolute;top:4px;right:4px;bottom:4px;padding:0 8px;font-size:var(--text-micro)}.people-combobox-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:35;max-height:240px;overflow:auto;background:var(--card);border:1.5px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow)}.people-combobox-list button{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;width:100%;border:0;border-bottom:1px solid var(--line-soft);border-radius:0;padding:8px 10px;background:transparent;text-align:left}.people-combobox-list button:hover,.people-combobox-list button.active{background:var(--paper)}.people-combobox-list button[aria-selected=true]{border-left:4px solid var(--accent)}.people-option-name,.people-option-email{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.people-option-name{color:var(--ink);font-weight:600}.people-option-email{color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-micro)}.people-combobox-empty{margin:0;padding:12px;color:var(--ink-muted);font-size:var(--text-data)}.error{color:#b42318;font-size:var(--text-body);margin:8px 0;white-space:pre-wrap}.notice{color:#8a6d00;font-size:var(--text-body);margin:8px 0}.muted{color:var(--ink-muted);font-size:var(--text-data)}.row{display:flex;min-width:0;gap:10px;align-items:center;flex-wrap:wrap}.row>.field,.row>label.field{flex:1 1 220px}.project-admin-page,.page-head,.filter-row,.form-grid,.project-choice,.directory-card{min-width:0;box-sizing:border-box}.page-head,.filter-row,.project-choice{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page-head>*,.filter-row>*,.project-choice>*{min-width:0}.filter-row input{flex:1 1 260px}.filter-row select{flex:0 1 180px}.responsive-table-wrap,.project-admin-table-wrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:2px}.responsive-table-wrap table.data,.project-admin-table-wrap table.data{min-width:720px}.import-lines-table-wrap table.data{min-width:648px}.responsive-table-wrap:focus-visible,.project-admin-table-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.spacer{flex:1}.settings-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.settings-section-head h2{margin-bottom:4px}.status-pill{flex-shrink:0;border:1px solid var(--line);border-radius:var(--radius);padding:3px 8px;font-family:var(--font-data);font-size:var(--text-micro);font-weight:700;text-transform:uppercase}.status-pill.ok{color:var(--stage-received);border-color:var(--stage-received)}.status-pill.blocked{color:var(--warn);border-color:var(--warn)}.data-reset-card .muted{max-width:780px}.reset-preview{margin-top:14px;border-top:1px solid var(--line-soft);padding-top:12px}.reset-preview h3,.reset-audit-list h3{margin:0 0 8px;font-family:var(--font-display);font-size:var(--text-section);font-weight:700}.reset-count-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:6px;margin:10px 0}.reset-count-grid div{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--line-soft);border-radius:var(--radius);padding:6px 8px;background:var(--paper);font-size:var(--text-data)}.reset-count-grid span{color:var(--ink-muted);text-transform:capitalize}.reset-count-grid b{font-family:var(--font-data)}.reset-second-check{margin-top:10px}.reset-audit-list{margin-top:16px;overflow-x:auto}.receiving .card{padding:20px}.receiving a{text-decoration:none;color:inherit}.receiving a:hover .recv-line{background:#1a1d1b08}.receiving h1{font-size:26px}.recv-area-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.recv-area-head .area-tag{font-size:18px;padding:4px 12px;border-width:2px}.recv-toolbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0;padding:12px 14px;background:var(--paper);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line)}.recv-bulk-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.recv-bulk-actions button,.recv-bulk-actions select{min-height:44px;font-size:16px}.recv-source-warning{margin-top:6px;padding:6px 8px;font-size:var(--text-data)}.recv-docs{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 4px 14px}.recv-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 4px;border-bottom:1px solid var(--line-soft)}.recv-line .desc{flex:1 1 260px}.recv-line .desc .part{color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-data)}.recv-line .desc .part{display:none}.shop-order-identity{display:grid;gap:3px;min-width:0}.shop-order-project{color:var(--ink);font-family:var(--font-data);font-size:18px;font-weight:700;line-height:1.2;overflow-wrap:anywhere}.shop-order-area{color:var(--ink);font-size:var(--text-body);font-weight:600;line-height:1.25;overflow-wrap:anywhere}.shop-order-meta{display:flex;flex-wrap:wrap;gap:6px 12px;color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-data);line-height:1.25}.shop-order-identity-detail .shop-order-project{font-size:26px}.shop-order-identity-detail .shop-order-area{font-size:20px}.recv-meta{color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-data)}.recv-description{font-size:18px;font-weight:650;line-height:1.25}.vo-quote-history{margin-top:8px;border-top:1px solid var(--line-soft);padding-top:6px}.vo-history-toggle{font-size:var(--text-micro);color:var(--ink-muted);padding:2px 6px}.vo-history-toggle:hover{color:var(--ink)}.quote-document-panel{margin-top:10px;border-top:1px solid var(--line-soft);padding-top:8px}.spine-stage table.data th{position:sticky;top:calc(var(--stage-sticky-top, 0px) + 42px);z-index:15;background:var(--paper)}.quote-document-head,.quote-document-row,.doc-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.quote-document-row{justify-content:space-between}.quote-document-meta{display:flex;align-items:baseline;gap:12px;min-width:0;flex:1}.quote-document-meta .doc-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-document-meta .muted{margin-left:auto;white-space:nowrap}.doc-title{font-family:var(--font-data);font-size:var(--text-data)}.file-mini{font-size:var(--text-micro);color:var(--ink-muted)}.file-mini input{display:block;max-width:170px}.link-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--link);padding:0;font:inherit;text-decoration:underline;cursor:pointer}.doc-preview-shell{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.doc-preview-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#12182047}.doc-preview-panel{position:absolute;top:0;right:0;width:min(980px,var(--doc-preview-width, 760px),86vw);height:100%;background:var(--paper);border-left:1px solid var(--line);box-shadow:-12px 0 30px #0000002e;display:flex;flex-direction:column}.doc-preview-resize{position:absolute;top:0;left:-5px;width:10px;height:100%;cursor:ew-resize;z-index:2}.doc-preview-head{padding:14px 16px;border-bottom:1px solid var(--line-soft);display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.doc-preview-head h2{margin:0;font-size:18px}.doc-preview-actions,.pdf-tools,.sheet-tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pdf-tools{padding:8px 16px;border-bottom:1px solid var(--line-soft)}.doc-preview-body{flex:1;min-height:0;overflow:auto;background:var(--wash-1)}.doc-preview-state{margin:24px;padding:18px;border:1px solid var(--line);background:var(--paper)}.pdf-preview{min-height:100%}.pdf-preview .pdf-tools{position:sticky;top:0;z-index:1;background:var(--paper)}.pdf-page-wrap{width:100%;min-height:calc(100vh - 180px);padding:16px;box-sizing:border-box;display:flex;justify-content:center;align-items:flex-start}.pdf-page-wrap canvas{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 1px 5px #00000038}.xlsx-preview{padding:12px}.sheet-tabs{margin-bottom:8px}.sheet-tabs button.active{background:var(--ink);color:var(--paper)}.xlsx-grid-wrap{max-height:calc(100vh - 220px);overflow:auto;border:1px solid var(--line);background:#fff}.xlsx-grid{border-collapse:collapse;font-family:var(--font-data);font-size:var(--text-data)}.xlsx-grid td{border:1px solid var(--line-soft);min-width:90px;max-width:260px;padding:4px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 760px){.doc-preview-panel{width:100vw}.doc-preview-head{flex-direction:column}}.recv-line-done{opacity:.6}.recv-done-tag{font-family:var(--font-data);font-weight:700;font-size:var(--text-data);letter-spacing:.04em;text-transform:uppercase;color:var(--stage-received);white-space:nowrap}.recv-line .qty-info{display:flex;flex-direction:column;gap:2px;font-family:var(--font-data);font-size:17px;color:var(--ink-muted);min-width:150px}.recv-line .qty-info b{color:var(--ink);font-size:20px}.recv-line .qty-info .outstanding b{color:var(--accent)}.receiving .check-row{display:flex;align-items:center;gap:8px;width:fit-content;margin-bottom:10px;font-weight:600}.receiving .check-row input{width:18px;height:18px}.touch-btns{display:flex;gap:8px;flex-wrap:wrap}.touch-btns button{min-height:var(--touch-target);min-width:96px;font-size:16px;font-weight:600;border-radius:var(--radius)}.touch-btns button.selected{background:var(--accent);color:#fff;border-color:var(--accent)}.touch-btns button.selected.warn{background:var(--warn);border-color:var(--warn)}.stepper{display:flex;align-items:center}.stepper button{min-width:var(--touch-target);min-height:var(--touch-target);font-size:24px;font-weight:700}.stepper input{width:84px;height:var(--touch-target);text-align:center;font-family:var(--font-data);font-size:20px;border-left:0;border-right:0;border-radius:0}.recv-submit{position:sticky;bottom:0;background:var(--card);border-top:var(--rule);padding:14px;display:flex;gap:12px;align-items:center}.recv-submit button.primary{min-height:56px;font-size:18px;flex:1}@media (max-width: 760px){.recv-toolbar{align-items:stretch}.recv-bulk-actions{width:100%}.recv-bulk-actions button,.recv-bulk-actions select{flex:1}.recv-line .qty-info{min-width:110px}}.wk-shell{display:grid;grid-template-columns:minmax(260px,310px) minmax(420px,1fr) minmax(280px,320px);align-items:start;gap:16px;max-width:1780px;margin:0 auto;height:calc(100vh - var(--shell-h));min-height:0;overflow:hidden;padding:18px 20px 20px;box-sizing:border-box}.wk-shell.docs-collapsed{grid-template-columns:minmax(260px,310px) minmax(0,1fr) 48px}.wk-sidebar{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--card);padding:12px;height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;z-index:30;min-width:0}.wk-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--font-data);font-weight:700;font-size:var(--text-data);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted);border-bottom:var(--rule);padding-bottom:8px;margin-bottom:10px}.wk-sidebar-empty{color:var(--ink-muted)}.wk-proj-row{gap:6px}.wk-proj-row.selected{border-color:var(--accent)}.wk-proj-row .project-card-identity{grid-template-columns:minmax(2.7rem,max-content) minmax(0,1fr) auto}.wk-proj-row .proj-job{max-width:5.75rem}.wk-sidebar .project-status-legend-label{font-size:6.5px}.wk-proj-row .strip-cell,.wk-sidebar .project-status-legend-chip{height:16px}.wk-area-list{margin:0 0 10px 10px;padding:4px 0 4px 10px;border-left:2px solid var(--line-soft)}.wk-area-row{display:flex;width:100%;align-items:center;gap:8px;padding:4px 2px;font-size:var(--text-data);background:transparent;border:1.5px solid transparent;border-radius:var(--radius);text-align:left;cursor:pointer}.wk-area-row:hover,.wk-area-row.expanded{border-color:var(--line)}.wk-area-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-muted)}.wk-area-count{font-family:var(--font-data);color:var(--ink-muted);font-size:var(--text-micro)}.wk-area-caret{color:var(--ink-muted);font-size:10px;width:10px;text-align:center}.wk-order-list{margin:2px 0 8px 18px;padding:2px 0 2px 10px;border-left:2px solid var(--line-soft);display:flex;flex-direction:column;gap:2px}.wk-order-row{display:flex;width:100%;align-items:center;gap:6px;padding:4px 6px;font-size:var(--text-micro);background:transparent;border:1.5px solid transparent;border-radius:var(--radius);text-align:left;cursor:pointer}.wk-order-row:hover{border-color:var(--line)}.wk-order-row.selected{border-color:var(--accent)}.wk-order-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wk-order-stage{display:inline-flex;align-items:center;justify-content:center;width:20px;height:18px;flex-shrink:0;border-radius:calc(var(--radius) - 1px);color:#fff;font-family:var(--font-data);font-size:11px;font-weight:600;line-height:1}.wk-field-label{display:block;font-size:var(--text-micro);color:var(--ink-muted);margin-bottom:3px}.spine-action-field{display:flex;flex-direction:column}.spine-action-field .row{flex-wrap:nowrap}.wk-middle{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr)}.wk-tabs{display:flex;border-bottom:var(--rule);z-index:32;background:var(--paper)}.wk-tab{border:none;border-bottom:3px solid transparent;border-radius:0;background:transparent;padding:8px 4px;margin-right:22px;font-family:var(--font-body);font-weight:600;font-size:12px;letter-spacing:0;text-transform:none;color:var(--ink-muted);cursor:pointer}.wk-tab:hover{color:var(--ink)}.wk-tab.active{color:var(--ink);border-bottom-color:var(--accent)}.wk-middle-content .workspace,.wk-middle-content .spine-page{padding:0;max-width:none;margin:0}.wk-middle-content{min-height:0;overflow:auto}.wk-middle-content .workspace{min-height:100%;overflow:visible;box-sizing:border-box;padding:14px 0 80px}.wk-empty{color:var(--ink-muted);padding:40px 10px;text-align:center}.wk-docs-region{min-width:0;min-height:0;height:100%;overflow:hidden}.wk-docs-panel{height:100%;min-height:0;display:flex;flex-direction:column;border-left:1px solid var(--line);padding-left:14px;box-sizing:border-box;overflow:hidden}.wk-docs-head{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:2px 0 10px;border-bottom:1px solid var(--line)}.wk-docs-head h2{margin:0;font-family:var(--font-display);font-size:var(--text-section);font-weight:700;text-transform:none;letter-spacing:.1px}.wk-docs-head-actions{display:flex;gap:6px;align-items:center}.wk-docs-collapse,.wk-docs-mobile-close{padding:4px 6px;font-size:var(--text-micro);white-space:nowrap}.wk-docs-mobile-close{display:none}.wk-docs-list{min-height:0;overflow-y:auto;overflow-x:hidden;padding:4px 2px 28px 0}.wk-docs-empty{padding:18px 4px}.wk-docs-group{padding:12px 0 2px}.wk-docs-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.wk-docs-group-head h3{margin:0;color:var(--ink);font-family:var(--font-data);font-size:var(--text-micro);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.wk-doc-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;min-width:0;padding:9px 0;border-bottom:1px solid var(--line-soft)}.wk-doc-row-main{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:4px;padding:0;border:0;background:transparent;color:var(--ink);text-align:left}.wk-doc-row-main:hover strong{color:var(--accent-ink)}.wk-doc-row-main strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-data)}.wk-doc-filename{max-width:100%;overflow-wrap:anywhere;color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-micro)}.wk-doc-meta{display:flex;min-width:0;max-width:100%;align-items:center;gap:5px;flex-wrap:wrap;color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-micro)}.wk-doc-meta>span:not(:last-child):after{content:" ·";margin-left:5px}.wk-doc-origin{white-space:nowrap}.wk-doc-origin.uploaded,.wk-doc-origin.generated{color:var(--ink-muted)}.wk-doc-download{align-self:start;padding:3px 2px;font-size:var(--text-micro);white-space:nowrap}.wk-doc-history{grid-column:1 / -1;margin-top:2px;padding:7px 0 0 10px;border-top:1px solid var(--line-soft);display:grid;gap:5px;color:var(--ink-muted)}.wk-doc-history>b{font-size:var(--text-micro);text-transform:uppercase}.wk-doc-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;font-size:var(--text-micro)}.wk-doc-history-row button{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:2px;padding:0;border:0;background:transparent;color:var(--ink);text-align:left}.wk-doc-history-row a{white-space:nowrap}.wk-docs-mobile-trigger{display:none}.wk-docs-panel.collapsed .wk-docs-head{border-bottom:0;padding-top:0}.wk-docs-panel.collapsed .wk-docs-head>div:first-child{display:none}.wk-docs-panel.collapsed .wk-docs-head-actions{flex-direction:column;width:100%}.wk-docs-panel.collapsed .wk-docs-collapse{writing-mode:vertical-rl;min-height:80px}.shell-request-btn{align-self:center;margin:0 4px 0 12px;white-space:nowrap}@media (max-width: 1400px){.wk-shell,.wk-shell.docs-collapsed{grid-template-columns:minmax(240px,280px) minmax(0,1fr)}.wk-docs-region{position:fixed;top:calc(var(--shell-h) + 16px);right:20px;bottom:20px;z-index:80;height:auto;width:min(340px,calc(100vw - 40px));overflow:visible;pointer-events:none}.wk-docs-mobile-trigger{display:inline-flex;pointer-events:auto;position:fixed;top:calc(var(--shell-h) + 16px);right:20px;z-index:81;gap:8px;align-items:center;min-height:44px;padding:8px 12px;font-weight:600}.wk-docs-panel{display:none;pointer-events:auto;height:100%;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}.wk-docs-region.mobile-open .wk-docs-panel{display:flex}.wk-docs-region.mobile-open .wk-docs-mobile-trigger{display:none}.wk-docs-mobile-close{display:inline-block}}@media (max-width: 1000px){.home-grid{grid-template-columns:1fr}.wk-shell{grid-template-columns:1fr;height:auto;overflow:visible}.wk-sidebar,.wk-middle-content .workspace,.spine-scroll{height:auto;overflow:visible}.wk-middle-content{overflow:visible}.wk-middle,.spine-page{display:block;height:auto}.spine-layout{display:block}.spine-stage-head,.spine-stage table.data th,.material-toolbar,.material-edit-table th{position:static}}@media (max-width: 760px){:root{--shell-h: 48px}.shell-head{max-width:100vw;height:auto;min-height:var(--shell-h);align-items:stretch;flex-wrap:wrap;overflow:visible}body{padding-top:calc(var(--shell-h) * 2)}.shell-nav-link,.brand-block{flex:0 0 auto}.app-switcher{flex:0 0 var(--gruv-app-logo-slot-w);width:var(--gruv-app-logo-slot-w);min-width:var(--gruv-app-logo-slot-w)}.shell-nav-link{padding:0 10px}.shell-head .jump{order:10;flex:1 1 100%;min-width:0}.jump input{width:100%;min-width:0}.crumb-title{display:none}.shell-menu{flex:0 1 auto;min-width:0;margin-left:auto;padding:0 6px}.shell-menu>button{max-width:112px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace{padding:12px 8px 60px}.plate-item{grid-template-columns:1fr}.page,.plate,.spine-page,.home-grid{max-width:100%;padding:12px 8px 80px}.page-head,.filter-row,.project-choice,.gate-actions{align-items:stretch}.page-head>button,.filter-row input,.filter-row select,.project-choice>button,.gate-actions button,.gate-actions input,.gate-actions input[type=text],.gate-actions input:not([type]){width:100%;min-width:0}.project-assignment-grid,.project-delivery-grid{grid-template-columns:1fr}.project-combobox-field{width:100%}.material-toolbar{grid-template-columns:1fr;align-items:stretch}.material-toolbar-selection,.material-toolbar-assignment,.material-toolbar-actions{justify-content:flex-start;flex-wrap:wrap}.material-list-import-panel{align-items:stretch;flex-direction:column}.material-list-import-impact{grid-template-columns:1fr}.material-vendor-actions{align-items:stretch;width:100%}.material-vendor-actions select:first-child{width:100%;min-width:0}.shell-request-btn span{display:none}.wk-docs-region{right:10px;width:calc(100vw - 20px)}.wk-docs-mobile-trigger{right:10px}}@media (max-width: 640px){.home-grid.touch,.home-grid{grid-template-columns:1fr;max-width:100%}.home-pane.touch .proj-row,.proj-row{align-items:stretch;gap:8px}.stage-summary{justify-self:start;max-width:100%;overflow-x:auto;padding-bottom:2px}.wk-proj-row{grid-template-columns:auto minmax(0,1fr)}.wk-proj-row .stage-summary{grid-column:1 / -1;grid-row:2;justify-self:start}.wk-shell{padding-inline:10px}.spine-scroll{padding-inline:0}.spine{min-width:0;margin-left:6px}.spine-stage{min-width:0;padding-left:18px}.spine-stage-head{align-items:stretch;flex-direction:column}.spine-stage-head:before{display:none}.spine-stage-actions{justify-content:flex-start;max-width:100%}.spine-action-field,.spine-action-field .row{width:100%}.spine-action-field .row{flex-wrap:wrap}.spine-action-field input{min-width:0}.material-edit-table{min-width:720px}.floor-card{display:grid;grid-template-columns:1fr}.floor-open{min-height:72px;padding:14px}.floor-title{white-space:normal;overflow-wrap:anywhere}.floor-action{min-width:0;min-height:48px;border-left:0;border-top:2px solid var(--line);text-align:center}.receiving h1{font-size:22px}.recv-area-head{align-items:flex-start}.recv-area-head .area-tag{white-space:normal;overflow-wrap:anywhere;line-height:1.2}.recv-toolbar{position:static;padding:10px 0}.recv-bulk-actions{display:grid;grid-template-columns:1fr}.recv-line{display:grid;grid-template-columns:1fr;gap:10px;padding:14px 0}.recv-line .desc,.recv-line .qty-info{min-width:0;width:100%}.recv-description,.recv-meta{overflow-wrap:anywhere}.touch-btns,.recv-submit{display:grid;grid-template-columns:1fr}.stepper input{width:min(120px,calc(100vw - 120px))}}@media (min-width: 641px) and (max-width: 1024px){.home-grid.touch{grid-template-columns:1fr;max-width:860px}.recv-line .desc{flex-basis:min(420px,52vw)}.recv-toolbar{top:var(--shell-h)}}
