:root{--bg:#f7faf9;--bg-accent:#dce9e7;--bg-subtle:#f3f4f6;--surface:#fff;--surface-2:#fff;--header-bg:#111827;--sidebar:#111827;--sidebar-2:#111827;--sidebar-hover:#ffffff0f;--sidebar-active:#ffffff1f;--sidebar-text:#cbd5e1;--sidebar-text-bright:#fff;--sidebar-line:#ffffff14;--ink:#1f2a2e;--ink-soft:#3c484d;--muted:#6b777c;--line:#dbe7e5;--line-strong:#bdd3cf;--accent:#208b58;--accent-hover:#197548;--accent-soft:#208b581f;--brand-magenta:#92266d;--brand-magenta-hover:#781c59;--brand-magenta-soft:#92266d1a;--glass:#208b58;--glass-soft:#208b581f;--brass:#92266d;--brass-soft:#92266d1f;--danger:#ef4444;--danger-soft:#ef444414;--ok:#10b981;--ok-soft:#10b9811a;--warning:#f59e0b;--shadow:0 1px 3px #0f172a0a, 0 1px 2px #0f172a0f;--shadow-md:0 4px 12px #0f172a0f, 0 1px 3px #0f172a14;--shadow-lg:0 8px 30px #0f172a14, 0 2px 8px #0f172a0f;--shadow-sticky:0 12px 40px #0f172a1f, 0 4px 12px #0f172a0f;--radius:3px;--radius-sm:2px;--radius-xs:2px;--font:"Inter", system-ui, -apple-system, sans-serif;--display:"Inter", system-ui, -apple-system, sans-serif;--paper:#f6f4ef;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--ink);font:400 14.5px/1.55 var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,.brand-name,.preview-price,.total-grand strong,.inv-brand,.wo-banner{font-family:var(--display);letter-spacing:-.01em}h1,h2,h3,p{margin:0}h2,h3{line-height:1.25}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{--shell-sidebar-width:250px;--shell-sidebar-collapsed-width:64px;background:var(--bg);flex-direction:column;min-height:100dvh;display:flex}.shell-top{z-index:30;background:var(--header-bg,#111827);border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:20px;height:72px;padding:0 28px 0 0;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 1px 3px #0f172a33}.shell-top-start{align-self:stretch;align-items:center;gap:8px;min-width:0;display:flex}.shell-brand-slot{width:var(--shell-sidebar-width);background:#fff;flex:none;justify-content:center;align-self:flex-start;align-items:center;height:144px;transition:width .32s cubic-bezier(.4,0,.2,1);display:flex}.app-shell.is-sidebar-collapsed .shell-brand-slot{width:var(--shell-sidebar-collapsed-width)}.app-shell.is-sidebar-collapsed .shell-brand-copy{display:none}.shell-symbol{mix-blend-mode:multiply;width:40px;height:auto;display:none}.app-shell.is-sidebar-collapsed .shell-logo{display:none}.app-shell.is-sidebar-collapsed .shell-symbol{display:block}.shell-mini{width:var(--shell-sidebar-collapsed-width);flex-direction:column;align-items:center;gap:6px;padding:6px 0 12px;display:flex}.shell-mini-rule{background:var(--sidebar-line);width:24px;height:1px;margin:4px 0}.shell-mini-item{width:40px;height:40px;color:var(--sidebar-text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:background .18s,color .18s,border-color .18s;display:inline-flex;position:relative}.shell-mini-item:hover,.shell-mini-item:focus-visible{background:var(--sidebar-hover);color:var(--sidebar-text-bright)}.shell-mini-item.is-active{background:var(--sidebar-hover);color:var(--sidebar-text-bright);border-color:#ffffff1f}.shell-mini-item.is-action{border-color:var(--sidebar-line)}.shell-mini-item:disabled{opacity:.6;cursor:progress}.shell-mini-item:after{content:attr(data-label);z-index:40;color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#111827;border-radius:6px;padding:6px 10px;font-size:13px;font-weight:500;line-height:1.2;transition:opacity .15s,transform .15s;position:absolute;top:50%;left:calc(100% + 12px);transform:translate(-4px,-50%);box-shadow:0 4px 14px #0f172a40}.shell-mini-item:hover:after,.shell-mini-item:focus-visible:after{opacity:1;transform:translateY(-50%)}.shell-menu{border:1px solid var(--line);border-radius:var(--radius-xs);background:var(--surface);width:34px;height:34px;color:var(--ink-soft);flex:none;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.shell-menu:hover{background:var(--bg-subtle);border-color:var(--line-strong);color:var(--ink);transform:scale(1.04)}.shell-brand{min-width:0;color:inherit;align-items:center;gap:10px;text-decoration:none;transition:opacity .2s;display:flex}.shell-brand:hover{opacity:.8}.shell-logo{object-fit:contain;mix-blend-mode:multiply;background:0 0;flex:none;width:160px;height:auto;display:block}.shell-brand-copy{gap:1px;min-width:0;display:grid}.shell-brand-name{font-family:var(--display);letter-spacing:-.015em;color:var(--ink);font-size:18px;font-weight:600;line-height:1}.shell-brand-tag{color:var(--muted);letter-spacing:.01em;font-size:11px;line-height:1.2}.shell-breadcrumbs{align-items:center;min-width:0;margin-left:28px;display:flex}.shell-breadcrumbs-list{flex-wrap:nowrap;align-items:center;min-width:0;margin:0;padding:0;list-style:none;display:flex}.shell-breadcrumb-item{color:#fff;white-space:nowrap;align-items:center;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px;font-weight:500;line-height:1;display:inline-flex}.shell-breadcrumb-current{color:#fff;font-weight:500}.shell-breadcrumb-sep{color:#fff;opacity:.75;-webkit-user-select:none;user-select:none;margin:0 10px;font-size:14px;font-weight:400}.shell-logout{border-radius:var(--radius-xs);color:#fff;background:0 0;border:1px solid #ffffff57;flex:none;align-items:center;gap:6px;min-height:34px;padding:0 14px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.shell-header-meta{align-items:center;gap:20px;display:flex}.shell-date{color:#fff;letter-spacing:.01em;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;font-weight:600}.shell-logout:hover{background:var(--danger-soft);color:var(--danger);border-color:#ef444433}.header-account-menu{position:relative}.header-account-trigger{color:#ffffffc7;background:0 0;border:0;border-left:1px solid #ffffff3d;align-items:center;gap:10px;padding:3px 0 3px 14px;transition:color .18s;display:inline-flex}.header-account-trigger:hover,.header-account-menu.is-open .header-account-trigger{color:#fff}.header-account-trigger svg{transition:transform .2s}.header-account-menu.is-open .header-account-trigger svg{transform:rotate(180deg)}.shell-home-link{display:none}.header-account-avatar{color:#111827;letter-spacing:.02em;background:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.header-account-dropdown{z-index:40;border:1px solid var(--line);border-radius:var(--radius-xs);background:var(--surface);min-width:150px;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform-origin:100% 0;padding:6px;transition:opacity .18s,transform .2s,visibility 0s .2s;display:grid;position:absolute;top:calc(100% + 11px);right:0;transform:translateY(-6px)}.header-account-menu.is-open .header-account-dropdown{opacity:1;visibility:visible;transition:opacity .18s,transform .2s,visibility;transform:translateY(0)}.header-account-dropdown a,.header-account-dropdown button{border-radius:var(--radius-xs);width:100%;min-height:34px;color:var(--ink-soft);font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0 9px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.header-account-dropdown a:hover,.header-account-dropdown button:hover{background:var(--bg-subtle);color:var(--ink)}.shell-body{align-items:stretch;min-width:0;padding-top:72px;display:block}.shell-scrim{display:none}.shell-side{width:var(--shell-sidebar-width);z-index:20;background:linear-gradient(180deg, var(--sidebar) 0%, var(--sidebar-2) 100%);border-right:1px solid #ffffff14;flex-direction:column;flex:none;min-width:0;height:calc(100dvh - 144px);margin-top:0;transition:width .32s cubic-bezier(.4,0,.2,1),border-color .32s;display:flex;position:fixed;top:144px;bottom:0;left:0;overflow:hidden auto}.app-shell.is-sidebar-collapsed .shell-side{width:var(--shell-sidebar-collapsed-width);overflow:visible}.app-shell.is-sidebar-collapsed .shell-nav,.app-shell.is-sidebar-collapsed .shell-account-copy{display:none}.app-shell.is-sidebar-collapsed .shell-account{justify-content:center}.shell-rail{width:var(--shell-sidebar-width);min-width:var(--shell-sidebar-width);flex-shrink:0;justify-content:flex-end;align-items:center;padding:10px 10px 6px;display:flex}.app-shell.is-sidebar-collapsed .shell-account-wrap{width:var(--shell-sidebar-collapsed-width);min-width:var(--shell-sidebar-collapsed-width)}.app-shell.is-sidebar-collapsed .shell-rail{width:var(--shell-sidebar-collapsed-width);min-width:var(--shell-sidebar-collapsed-width);justify-content:center;padding:10px 0 6px}.shell-rail .shell-menu{border-color:var(--sidebar-line);color:var(--sidebar-text);background:0 0}.shell-rail .shell-menu:hover{background:var(--sidebar-hover);color:var(--sidebar-text-bright);border-color:#ffffff1f;transform:scale(1.04)}.shell-nav{width:var(--shell-sidebar-width);min-width:var(--shell-sidebar-width);flex:1;min-height:0;padding:6px 8px 12px;overflow:hidden auto}.shell-nav::-webkit-scrollbar{width:3px}.shell-nav::-webkit-scrollbar-track{background:0 0}.shell-nav::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:4px}.shell-nav::-webkit-scrollbar-thumb:hover{background:#ffffff26}.shell-account-wrap{width:var(--shell-sidebar-width);min-width:var(--shell-sidebar-width);border-top:1px solid var(--sidebar-line);margin-top:auto;padding:8px}.shell-account{border-radius:var(--radius-sm);color:var(--sidebar-text);align-items:center;gap:10px;padding:8px;text-decoration:none;transition:all .2s;display:flex}.shell-account:hover,.shell-account.is-active{background:var(--sidebar-hover);color:var(--sidebar-text-bright)}.shell-account.is-active{background:var(--sidebar-active);box-shadow:inset 0 0 0 1px #0ea5e926}.shell-avatar{background:linear-gradient(135deg, var(--accent) 0%, #6366f1 100%);color:#fff;letter-spacing:.03em;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11.5px;font-weight:700;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;display:grid;box-shadow:0 2px 8px #0ea5e94d}.shell-account:hover .shell-avatar{transform:scale(1.06);box-shadow:0 4px 12px #0ea5e966}.shell-account-copy{gap:1px;min-width:0;display:grid}.shell-account-name{overflow-wrap:anywhere;color:var(--sidebar-text-bright);font-size:13px;font-weight:600;line-height:1.3}.shell-account-role{color:var(--sidebar-text);text-transform:capitalize;font-size:11.5px;line-height:1.3}.side-group+.side-group{margin-top:2px}.shell-nav>.side-group+.side-group{margin-top:14px}.side-group-head{border-radius:var(--radius);align-items:center;gap:2px;transition:background-color .2s;display:flex;position:relative}.side-group-head:hover{background:var(--sidebar-hover)}.side-group-head:has(.side-group-link.is-active){background:#93c5fd14}.side-group-head .side-group-link,.side-group-head .side-group-link:hover,.side-group-head .side-group-link.is-active,.side-group-head .side-chevron:hover{background:0 0}.side-group-link,.side-group-toggle,.side-chevron,.side-link,.shell-account,.shell-logout{transition:background-color .2s,color .2s,box-shadow .2s,opacity .2s}.side-group-icon{opacity:.6;flex:none;transition:opacity .2s,transform .25s cubic-bezier(.4,0,.2,1)}.side-group-link:hover .side-group-icon,.side-group-toggle:hover .side-group-icon,.side-group-link.is-active .side-group-icon{opacity:1}.side-group-link:hover .side-group-icon,.side-group-toggle:hover .side-group-icon{transform:scale(1.08)}.side-group-link,.side-group-toggle{border-radius:var(--radius);min-height:38px;color:var(--sidebar-text-bright);text-align:left;background:0 0;border:0;align-items:center;gap:10px;font-size:13.5px;font-weight:600;text-decoration:none;display:flex}.side-group-link{flex:1;padding:0 10px;position:relative}.side-group-toggle{justify-content:space-between;width:100%;padding:0 6px 0 10px}.side-group-toggle>span{flex:1}.side-group-link:hover,.side-group-toggle:hover,.side-chevron:hover,.side-link:hover{background:var(--sidebar-hover)}.side-group-link.is-active,.side-link.is-active{color:#fff;background:#93c5fd14}.side-group-link.is-active:before,.side-link.is-active:before{content:"";background:#93c5fd;border-radius:0 3px 3px 0;width:3px;height:16px;animation:.25s cubic-bezier(.4,0,.2,1) side-bar-in;position:absolute;top:50%;left:0;transform:translateY(-50%)}.side-chevron{border-radius:var(--radius);color:#cbd5e18c;background:0 0;border:0;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.side-chevron:hover{color:var(--sidebar-text-bright)}.side-chevron svg,.side-group-toggle svg:last-child{transition:transform .3s cubic-bezier(.4,0,.2,1);transform:rotate(-90deg)}.side-group-toggle svg:last-child{color:#cbd5e18c}.side-group.is-open>.side-group-head .side-chevron svg,.side-group.is-open>.side-group-toggle svg:last-child{transform:rotate(0)}.side-panel{visibility:hidden;opacity:0;will-change:grid-template-rows, opacity;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1),opacity .2s,visibility 0s .3s;display:grid;overflow:hidden}.side-group.is-open>.side-panel{visibility:visible;opacity:1;grid-template-rows:1fr;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1),opacity .2s,visibility}.side-panel-inner{border-left:1px solid var(--sidebar-line);flex-direction:column;gap:2px;min-height:0;margin:2px 0 4px 18px;padding-left:8px;display:flex;overflow:hidden}.side-group.is-open>.side-panel>.side-panel-inner>*{animation:.3s cubic-bezier(.4,0,.2,1) both side-item-in}.side-group.is-open>.side-panel>.side-panel-inner>:nth-child(2){animation-delay:30ms}.side-group.is-open>.side-panel>.side-panel-inner>:nth-child(3){animation-delay:60ms}.side-group.is-open>.side-panel>.side-panel-inner>:nth-child(4){animation-delay:90ms}.side-group.is-open>.side-panel>.side-panel-inner>:nth-child(n+5){animation-delay:.12s}.side-link{border-radius:var(--radius);width:100%;min-height:34px;color:var(--sidebar-text);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex;position:relative}.side-link>span{transition:transform .22s cubic-bezier(.4,0,.2,1)}.side-link:hover{color:var(--sidebar-text-bright)}.side-link:hover>span{transform:translate(3px)}.side-link:not(.side-link-action)>svg{display:none}.side-panel-inner .side-link.is-active:before{left:-9px}.side-link:disabled{cursor:not-allowed;opacity:.5}.side-link-action{color:#bfdbfe;background:#93c5fd14;margin:2px 0 4px;font-weight:600}.side-link-action .side-link-icon{color:currentColor;transition:transform .3s cubic-bezier(.4,0,.2,1)}.side-link-action:hover{color:#fff;background:#93c5fd24}.side-link-action:hover>span{transform:none}.side-link-action:hover .side-link-icon{transform:rotate(90deg)}.shell-side :focus-visible{outline-offset:-2px;outline-color:var(--accent)}@keyframes side-item-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@keyframes side-bar-in{0%{height:0}to{height:16px}}.home-welcome{margin-bottom:28px}.home-kicker{color:var(--accent);margin-bottom:6px;font-size:13px;font-weight:600}.home-welcome h1{letter-spacing:-.025em;color:var(--ink);font-size:clamp(28px,4vw,38px);line-height:1.15}.home-desk{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.home-stat{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:148px;box-shadow:var(--shadow);color:inherit;gap:8px;padding:22px 20px;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);display:grid}.home-stat:hover{border-color:var(--accent);box-shadow:var(--shadow-md), 0 0 0 1px #0ea5e91a;transform:translateY(-3px)}.home-stat span{color:var(--muted);font-size:13px;font-weight:600}.home-stat strong{font-family:var(--display);color:var(--ink);font-size:34px;font-weight:600;line-height:1}.home-stat em{color:var(--muted);font-size:13px;font-style:normal}@media (width<=640px){.home-desk{gap:10px}.home-stat{gap:6px;min-height:0;padding:14px 12px}.home-stat strong{font-size:26px}.home-stat span{font-size:12.5px}.home-stat em{display:none}}.today{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);margin-top:24px;padding:24px}.today-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.today-head h2{font-size:19px}.today-date{color:var(--muted);margin-top:2px;font-size:13.5px}.today-refresh{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-flex}.today-refresh:hover:not(:disabled){border-color:var(--line-strong);color:var(--ink)}.is-spinning{animation:.8s linear infinite today-spin}@keyframes today-spin{to{transform:rotate(360deg)}}.today .kind-started,.today .kind-edited{--kind:var(--ink-soft);--kind-soft:var(--bg-subtle)}.today .kind-edited{--kind:var(--muted)}.today .kind-quoted{--kind:var(--accent);--kind-soft:var(--accent-soft)}.today .kind-booked{--kind:var(--brand-magenta);--kind-soft:var(--brand-magenta-soft)}.today-glance{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin:18px 0 8px;padding-bottom:18px;display:flex}.today-counts{flex-wrap:wrap;gap:10px 28px;margin:0;padding:0;list-style:none;display:flex}.today-count{grid-template-columns:auto auto;align-items:center;column-gap:8px;display:grid}.today-count strong{color:var(--ink);font-size:26px;font-weight:600;line-height:1.1}.today-count span:last-child{color:var(--muted);grid-column:1/-1;font-size:13px}.today-count.kind-people span:last-child{grid-column:1}.today-dot{background:var(--kind);border-radius:50%;width:9px;height:9px}.today-count .today-dot{order:2;grid-row:1}.today-hours{width:min(100%,300px);margin:0}.today-hours svg{width:100%;height:auto;display:block}.today-hours figcaption{color:var(--muted);text-align:right;margin-top:4px;font-size:12px}.today-track{fill:var(--bg-subtle)}.today-track.is-now{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1px;stroke-dasharray:2 2}.today-bar{fill:var(--accent)}.today-hour-label{fill:var(--muted);font-size:10px;font-family:var(--font)}.today-hour-label.is-now{fill:var(--accent);font-weight:700}.today-empty{color:var(--muted);margin:18px 0 4px}.today-timeline{margin:8px 0 0;padding:0;list-style:none;position:relative}.today-timeline:before{content:"";background:var(--line);width:1px;position:absolute;top:14px;bottom:14px;left:62px}.today-item{grid-template-columns:48px 30px minmax(0,1fr);align-items:center;animation:.3s both side-item-in;display:grid;position:relative}.today-time{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:13px}.today-node{border:2px solid var(--surface);background:var(--kind);width:11px;height:11px;box-shadow:0 0 0 1px var(--kind);z-index:1;border-radius:50%;justify-self:center}.today-entry{min-width:0;color:inherit;border-radius:6px;align-items:center;gap:12px;margin:3px 0;padding:10px 12px;text-decoration:none;transition:background-color .2s;display:flex}.today-entry:hover,.today-entry:focus-visible{background:var(--bg)}.today-avatar{background:var(--kind-soft);width:34px;height:34px;color:var(--kind);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.today-text{gap:2px;min-width:0;display:grid}.today-line{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.today-line strong{font-weight:600}.today-customer{color:var(--muted)}.today-meta{color:var(--muted);align-items:center;gap:8px;font-size:12.5px;display:flex}.today-tag{background:var(--kind-soft);color:var(--kind);border-radius:999px;padding:1px 7px;font-size:11.5px;font-weight:600}.today-go{color:var(--muted);opacity:0;flex:none;margin-left:auto;transition:opacity .2s,transform .2s;transform:translate(-3px,3px)}.today-entry:hover .today-go,.today-entry:focus-visible .today-go{opacity:1;transform:none}.today-more{margin:8px 0 0 78px}.home-showcase{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;margin-top:24px;padding:28px 32px;display:grid;overflow:hidden}.home-showcase-art{align-items:flex-end;min-width:0;padding:14px 10px 10px;display:flex}.device-tablet,.device-phone{box-shadow:var(--shadow-lg);background:#1b2328;border-radius:20px;flex:none;padding:10px;position:relative}.device-tablet{aspect-ratio:4/3;width:76%;transform:rotate(-2deg)}.device-phone{z-index:1;aspect-ratio:9/17;border-radius:16px;width:27%;margin-left:-5%;padding:6px;transform:rotate(3deg)}.device-screen{background:#f5f5f3;border-radius:12px;width:100%;height:100%;overflow:hidden}.device-phone .device-screen{border-radius:12px;padding:10px 6px}.device-screen .drawing-frame{height:100%;min-height:0}.home-showcase-copy h2{font-size:26px;line-height:1.2}.home-showcase-copy p{color:var(--ink-soft);margin:12px 0 20px;font-size:15.5px;line-height:1.6}.home-showcase-copy .home-showcase-note{color:var(--muted);margin:14px 0 0;font-size:13px}@media (width<=860px){.home-showcase{grid-template-columns:1fr;padding:22px}.home-showcase-art{max-width:520px}}@media (width<=560px){.today{padding:18px}.today-hours{width:100%}.today-timeline:before{left:52px}.today-item{grid-template-columns:40px 26px minmax(0,1fr)}.today-customer{display:none}.today-line{white-space:normal}.today-more{margin-left:66px}}.login-screen{background:linear-gradient(135deg,#0f172a 0%,#1e293b 50%,#0f172a 100%);min-height:100dvh;padding:48px 24px;display:flex}.login-split{border-radius:var(--radius);background:var(--surface);border:1px solid #ffffff14;grid-template-columns:minmax(220px,280px) minmax(320px,420px);width:min(740px,100%);margin:auto;animation:.5s cubic-bezier(.16,1,.3,1) rise-in;display:grid;overflow:hidden;box-shadow:0 24px 80px #00000040,0 8px 24px #00000026}.login-aside{background:linear-gradient(180deg, var(--sidebar) 0%, var(--sidebar-2) 100%);color:var(--sidebar-text);border-right:1px solid #ffffff0f;align-content:end;gap:8px;padding:32px 24px;font-size:13.5px;line-height:1.45;display:grid}.login-aside p{margin:0}.login-aside-kicker{color:var(--accent);font-size:13px;font-weight:600}.login-aside-name{font-family:var(--display);color:#fff;font-size:28px;font-weight:600;line-height:1.2}.login-aside-tag{color:var(--sidebar-text);margin-bottom:12px}.card.account-card{max-width:640px;margin-top:22px;padding:0;overflow:hidden}.account-head{border-bottom:1px solid var(--line);background:var(--bg-subtle);align-items:center;gap:14px;padding:22px 24px;display:flex}.account-avatar{background:var(--header-bg);color:#fff;letter-spacing:.02em;border-radius:50%;flex:none;justify-content:center;align-items:center;width:48px;height:48px;font-size:16px;font-weight:600;display:inline-flex}.account-head-copy{gap:2px;min-width:0;display:grid}.account-head-copy h2{overflow-wrap:anywhere;margin:0;font-size:18px;line-height:1.25}.account-head-copy p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:14px}.account-rows{margin:0;padding:4px 24px}.account-rows>div{border-bottom:1px solid var(--line);grid-template-columns:140px minmax(0,1fr);align-items:center;gap:16px;min-height:56px;padding:10px 0;display:grid}.account-rows>div:last-child{border-bottom:0}.account-rows dt{color:var(--muted);font-size:14px}.account-rows dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:500}.account-reset{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.account-note{max-width:640px;color:var(--muted);margin:14px 0 0;font-size:13px}@media (width<=480px){.account-rows>div{grid-template-columns:minmax(0,1fr);gap:2px}}.account-layout,.split-desk{grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);align-items:start;gap:16px;margin-top:22px;display:grid}.account-forms{gap:16px;display:grid}.account-name,.account-password,.desk-note,.account-side{align-content:start;gap:14px;display:grid}.account-side h2,.desk-note h2,.account-name h2,.account-password h2{font-size:19px}.desk-note ul{color:var(--ink-soft);margin:0;padding-left:18px}.desk-note p,.account-side p{color:var(--muted)}.prices-card{max-width:720px}.app-main{min-width:0;margin-left:var(--shell-sidebar-width);flex:1;padding:28px 24px 48px;overflow-x:clip}.app-shell.is-sidebar-collapsed .app-main{margin-left:var(--shell-sidebar-collapsed-width)}.page{width:100%;max-width:1600px;margin:0 auto;animation:.42s cubic-bezier(.16,1,.3,1) rise-in}.page-head,.quote-identity,.card-head,.panel-editor-head,.dialog-head,.job-top,.quote-bar,.print-back,.print-toolbar,.preview-kicker{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-head{border-bottom:1px solid var(--line);align-items:flex-end;margin-bottom:24px;padding-bottom:18px}.page-head .lede{margin-bottom:0}.eyebrow{color:var(--accent);font-size:13px;font-weight:600}h1{letter-spacing:-.015em;overflow-wrap:anywhere;margin-top:4px;font-size:28px;font-weight:600;line-height:1.2}.lede,.card-head p,.disclosure-copy,.job-ref,.order-spec,.order-notes,.field-hint,.dialog-copy{color:var(--muted)}.lede{max-width:52ch;margin-top:10px;margin-bottom:20px;line-height:1.55}.stat-row,.form-grid,.product-grid,.glazing-grid,.preset-grid,.job-grid,.config-layout,.order-layout{gap:16px;display:grid}.stat-row{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.stat-row article,.card,.job-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.stat-row article{padding:16px 18px}.stat-row span,.job-meta dt,.field-label,.field-suffix{color:var(--muted);font-size:13px;font-weight:600}.field-label{color:var(--ink-soft)}.stat-row strong{font-family:var(--display);margin-top:6px;font-size:26px;font-weight:600;line-height:1.2;display:block}.toolbar{margin-bottom:18px}.search input,.input,.stepper{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;transition:border-color .2s,box-shadow .2s,background .2s}.search input,.input{min-height:44px;padding:10px 14px}select.input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%2364748b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:40px}.search{max-width:460px;display:block}.search input{max-width:100%}.input:hover,.search input:hover{border-color:var(--line-strong)}.input:focus,.search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.textarea{resize:vertical;min-height:84px}.job-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));justify-content:start;margin:0;padding:0;list-style:none}.job-card{border-color:var(--line);border-radius:var(--radius);width:min(100%,400px);min-width:0;min-height:0;box-shadow:var(--shadow);flex-direction:column;gap:12px;padding:22px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.job-card:before{content:"";background:var(--accent);opacity:0;height:2px;transition:opacity .2s;position:absolute;top:0;left:0;right:0}.job-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.job-card:hover:before{opacity:1}.job-card h2{overflow-wrap:anywhere;margin:0;font-size:21px;line-height:1.12}.owner-switch{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.owner-switch button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:36px;color:var(--ink-soft);padding:0 14px;font-weight:600;transition:all .2s}.owner-switch button.is-on{border-color:var(--accent);background:var(--accent);color:#fff}.owner-board{border:0;padding:0}.owner-card{border-radius:var(--radius);gap:0;min-height:310px;padding:24px}.owner-card .owner-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.owner-card h2{min-width:0;color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:19px;font-weight:600;line-height:1.2}.owner-card .owner-jobs{border-radius:var(--radius-xs);background:var(--accent-soft);color:var(--accent-hover);font-variant-numeric:tabular-nums;white-space:nowrap;border:1px solid #208b582e;flex:none;margin:0;padding:5px 9px;font-size:12px;font-weight:600;line-height:1.2}.owner-card .owner-id{color:var(--muted);overflow-wrap:anywhere;margin-top:7px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.45}.owner-card .owner-stats{border-top:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0;padding:0;display:grid}.owner-card .owner-stats>div{border:1px solid var(--line);border-radius:var(--radius-xs);background:var(--bg-subtle);text-align:center;align-content:center;justify-items:center;min-width:0;min-height:112px;padding:12px 8px;display:grid}.owner-card .owner-stats dt{color:var(--muted);white-space:nowrap;font-size:13px;font-weight:600}.owner-card .owner-stats dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:5px 0 0;font-size:26px;font-weight:700;line-height:1.1}.owner-card .owner-stats dd.is-booked{color:var(--brand-magenta)}.owner-card>.btn{border-radius:var(--radius-sm);width:100%;margin-top:auto}.owner-card>.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.owner-id{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:13px}.lede .owner-id{margin-top:6px;display:block}.table-scroll{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow-x:auto}.admin-orders,.people-table{border-collapse:collapse;width:100%;min-width:760px}.people-table{min-width:880px}.people-users{min-width:1160px}.people-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);gap:14px;margin-top:22px;padding:20px;display:grid}.people-section .table-scroll{box-shadow:none;border:0}.admin-orders th,.people-table th,.catalog-parts th{background:var(--bg-subtle)}.people-section h2{font-size:19px}.people-actions{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.people-create{border-radius:var(--radius);background:linear-gradient(135deg,#fff 0%,#fbfdfd 100%);border-color:#315c5d38;gap:20px;margin-bottom:0;padding:30px;scroll-margin-top:80px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 36px #073f4014}.people-create:before{content:"";background:var(--ink-soft);height:4px;position:absolute;top:0;left:0;right:0}.people-create-head{border-bottom:1px solid var(--line);gap:5px;padding:2px 0 20px;display:grid}.people-create-head .eyebrow,.desk-note .eyebrow{margin:0}.people-create-head h2{letter-spacing:-.02em;font-size:22px}.people-create-head .field-hint{margin:0}.people-create .form-grid{gap:20px}.user-id-note{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--accent-soft), var(--bg-subtle));min-height:76px;padding:12px 14px}.user-id-note .field-hint{margin:4px 0 0;line-height:1.4}.people-create>.btn{justify-self:end;min-width:188px;min-height:46px}.desk-note{border-color:var(--line);border-top:3px solid var(--accent);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);gap:10px;margin-bottom:0;padding:26px}.desk-note h2{color:var(--ink);font-size:19px}.desk-note p:last-child{max-width:34ch;color:var(--muted);margin:0;line-height:1.55}.desk-note .eyebrow{color:var(--accent)}.create-login-summary{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-subtle);grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.password-once{gap:12px;margin-top:8px;display:grid}.password-once div{gap:2px;display:grid}.password-once dt{color:var(--muted);font-size:13px;font-weight:600}.password-once dd{overflow-wrap:anywhere;margin:0;font-weight:600}.admin-orders th,.admin-orders td,.people-table th,.people-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:10px 14px}.admin-orders th,.people-table th{color:var(--muted);font-size:13px;font-weight:600}.admin-orders tr:last-child td,.people-table tr:last-child td{border-bottom:0}.admin-orders tr:hover td,.people-table tr:hover td{background:var(--bg-subtle)}.people-table .input{width:auto;min-width:8rem}.people-table input[type=date]{min-width:11rem}.people-id{font-size:13px}.people-table th,.people-table td{white-space:nowrap}.catalog-table{min-width:720px}.catalog-row{cursor:pointer}.catalog-row:hover td{background:var(--bg-subtle)}.row-open{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.row-open:hover{text-decoration:underline}.pager{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.catalog-block{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);gap:14px;margin-top:22px;padding:20px;display:grid}.catalog-block-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;display:flex}.catalog-block-head>div{flex:260px}.catalog-block-head .subhead{margin:0 0 4px}.catalog-block-head .btn{flex:none}.catalog-block .table-scroll{box-shadow:none;border:0}.catalog-editor,.catalog-add,.catalog-add-panel{gap:12px;display:grid}.catalog-add{margin-top:14px}.check-line{flex-wrap:wrap;gap:8px 18px;display:flex}.catalog-parts{border-collapse:collapse;width:100%;min-width:760px}.catalog-parts th,.catalog-parts td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:12px 10px}.catalog-parts th{color:var(--muted);font-size:13px;font-weight:600}.catalog-parts .input{width:100%;min-width:0;max-width:100%}.catalog-actions-cell{white-space:nowrap;width:1%}.catalog-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.catalog-attach{gap:8px;margin:0;padding:0;list-style:none;display:grid}.catalog-attach li{justify-content:space-between;align-items:center;gap:12px;display:flex}.row-check{white-space:nowrap;align-items:center;gap:8px;min-height:44px;display:inline-flex}.row-check input{width:18px;height:18px;accent-color:var(--accent)}.switch{min-height:44px;font:inherit;white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:inline-flex}.switch-track{border:1px solid var(--line-strong);background:var(--bg-accent);border-radius:11px;flex:none;width:40px;height:22px;transition:background .2s,border-color .2s;position:relative}.switch-track:after{content:"";background:var(--muted);border-radius:50%;width:16px;height:16px;transition:left .2s cubic-bezier(.4,0,.2,1),background .2s;position:absolute;top:2px;left:2px}.switch.is-on .switch-track{border-color:var(--accent);background:var(--accent)}.switch.is-on .switch-track:after{background:#fff;left:20px}.switch:disabled{cursor:not-allowed;opacity:.45}.page-head .page-links{margin-top:12px}.page>.page-links{margin-top:16px}.page-links a:not(.btn){color:var(--accent);font-weight:600}.empty .page-links{margin-top:12px}.job-no{color:var(--ink-soft);white-space:nowrap;font-size:12px;font-weight:600}.job-meta{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:0;display:grid;overflow:hidden}.job-meta>div{min-width:0;padding:14px 16px}.job-meta>div:nth-child(2){border-left:1px solid var(--line)}.job-meta dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:5px 0 0;font-size:21px;font-weight:600;line-height:1.15}.job-meta .job-updated{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.job-meta .job-updated dd{text-align:right;margin:0;font-size:15px;line-height:1.3}.job-meta .job-updated time{white-space:nowrap}.job-actions,.order-actions,.quote-actions,.dialog-actions,.preview-actions,.page-links,.panel-foot{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.quote-actions{flex:0 auto;justify-content:flex-end}.panel-foot{justify-content:space-between;gap:12px 16px;margin-top:12px}.job-actions,.order-actions{justify-content:center}.job-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-top:0;display:grid}.job-actions .btn{justify-content:center;width:100%}.job-actions .btn:last-child:nth-child(3){grid-column:span 2}.badge{border-radius:var(--radius-xs);align-items:center;min-height:24px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.badge-draft{background:var(--bg-accent);color:var(--ink-soft)}.badge-quoted{background:var(--accent-soft);color:var(--accent-hover)}.badge-booked{background:var(--ok-soft);color:var(--ok)}.btn{border-radius:var(--radius-sm);border:1px solid var(--accent);background:var(--accent);color:#fff;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:var(--shadow)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-sm{min-height:34px;padding:0 12px;font-size:13px}.quote-nav{flex:none;align-items:center;gap:8px;display:flex}.btn.btn-icon{width:34px;min-width:34px;padding:0}.btn-secondary,.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.btn-secondary:hover:not(:disabled),.btn-ghost:hover:not(:disabled){border-color:var(--ink-soft);background:var(--bg-subtle)}.btn-danger{background:var(--surface);color:var(--danger);border-color:#ef444459}.btn.btn-danger:hover:not(:disabled){background:var(--danger);border-color:var(--danger);color:#fff}.quote-bar{flex-wrap:wrap;align-items:center;gap:16px 24px;margin-bottom:20px}.quote-identity{flex:260px;align-items:center;min-width:0}.quote-identity>div{min-width:0}.quote-identity h1{font-size:24px;line-height:1.15}.config-layout{grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start;gap:24px}.config-layout .preview-sheet{height:clamp(370px,57vh,610px)}@media (width<=1280px){.config-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.preview-column{align-self:stretch;min-width:0}.preview-sticky{z-index:1;margin-bottom:0;position:sticky;top:82px}.preview-card,.config-forms>:last-child{margin-bottom:0}.config-forms{border:0;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;margin:0;padding:0;display:grid}.config-forms:disabled{opacity:1}.card{margin-bottom:20px;padding:24px}.card-head{flex-wrap:wrap;align-items:baseline;row-gap:4px;margin-bottom:20px}.card h2,.subhead,.dialog-title{font-family:var(--display);font-weight:600}.card h2{font-size:19px}.subhead{margin:16px 0 8px;font-size:16px}.form-grid{grid-template-columns:1fr 1fr}.span-2{grid-column:1/-1}.field{flex-direction:column;gap:7px;display:flex}.product-grid,.glazing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-choice,.glazing-card,.preset,.swatch{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);text-align:left;transition:border-color .2s,background .2s,box-shadow .2s}.product-choice,.glazing-card{padding:14px}.product-choice.is-active,.glazing-card.is-active,.preset.is-active,.swatch.is-active,.segment-btn.is-active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.product-name,.order-location,.order-title{font-weight:650}.product-picker{flex-direction:column;gap:8px;display:flex}.product-results{flex-direction:column;gap:8px;max-height:280px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.product-results .product-choice{width:100%}.product-summary,.preset-label{color:var(--muted);font-size:13px;display:block}.preset-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px}.preset{flex-direction:column;gap:8px;padding:8px;display:flex}.preset-static{cursor:default}.preset-art{border-radius:var(--radius-xs);background:var(--paper);flex:none;height:84px;display:block;overflow:hidden}.preset-art .drawing-frame{height:100%;min-height:0}.preset-custom{color:var(--muted);border:1px dashed var(--line-strong);place-items:center;font-size:13px;font-weight:600;display:grid}.preset-label{min-height:2.5em;padding:0 2px;line-height:1.25}.segment{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-subtle);padding:3px;display:flex}.segment-btn{border-radius:var(--radius-xs);background:0 0;border:1px solid #0000;flex:1;min-height:38px;font-weight:600;transition:all .18s}.segment-btn.is-active{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow)}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{min-height:42px;color:var(--ink);align-items:center;gap:8px;padding:6px 10px 6px 6px;display:flex}.swatch-chip{border-radius:var(--radius-xs);border:1px solid #0f172a26;width:28px;height:28px}.stepper{align-items:stretch;display:flex;overflow:hidden}.stepper .input{text-align:center;font-variant-numeric:tabular-nums;border:0;border-radius:0}.stepper-btn{background:var(--bg-subtle);width:42px;color:var(--ink);border:0;font-size:20px;transition:background .15s}.stepper-btn:hover{background:var(--bg-accent)}.panel-editor{margin-top:16px;padding-top:4px}.panel-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.panel-row{grid-template-columns:28px minmax(0,1fr) minmax(140px,1fr) auto;align-items:end;gap:12px 14px;display:grid}.drawing-cell.is-clickable{cursor:pointer;outline:none}.drawing-cell.is-clickable:hover .glass-face,.drawing-cell.is-clickable:focus-visible .glass-face{filter:brightness(.94)saturate(1.2)}.panel-editor>.panel-list{margin-top:14px}.panel-editor>.check-row+.panel-list{margin-top:8px}.layout-section .panel-row{isolation:isolate;position:relative}.layout-section .panel-row:before{content:"";z-index:-1;border:1.5px solid var(--accent);background:var(--accent-soft);opacity:0;pointer-events:none;border-radius:6px;transition:opacity .5s;position:absolute;inset:-6px -10px}.layout-section .panel-row.is-flash:before{opacity:1;transition-duration:.15s}.layout-section{gap:8px;display:grid}.layout-section+.layout-section{border-top:1px dashed var(--line);padding-top:12px}.panel-cells{border-left:2px solid var(--line);gap:8px;margin:0 0 0 42px;padding:0 0 0 12px;list-style:none;display:grid}.panel-row.panel-cell-row{grid-template-columns:minmax(84px,1fr) minmax(140px,1.5fr) auto}.layout-section>.panel-row{grid-template-columns:28px minmax(84px,1fr) minmax(140px,1.5fr) auto}.panel-row-note{color:var(--muted);align-self:center;font-size:13px}.link-btn{color:var(--accent);background:0 0;border:0;justify-self:start;padding:2px 0;font-size:13px;font-weight:600}.link-btn:hover{color:var(--accent-hover);text-decoration:underline}.panel-add-cell{margin-left:42px}.check-row{align-items:center;gap:8px;margin:4px 0 12px;font-size:13.5px;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--accent)}.layout-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.layout-tools .field-hint{margin:0}.panel-row>.btn{place-self:end center;height:44px;min-height:44px}.panel-index{border-radius:var(--radius-xs);background:var(--bg-subtle);width:28px;height:44px;font-family:var(--display);place-items:center;font-size:18px;display:grid}.width-sum{font-variant-numeric:tabular-nums;flex:200px;margin:0;font-weight:650}.width-sum.is-ok{color:var(--ok)}.width-sum.is-bad{color:var(--danger)}.disclosure{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:0;display:flex}.disclosure-title{font-family:var(--display);font-size:19px;font-weight:600;display:block}.chevron{border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);width:10px;height:10px;transition:transform .2s;transform:rotate(45deg)}.chevron.is-open{transform:rotate(225deg)}.tech-grid{margin-top:14px}.config-section{border-top:1px solid var(--line)}.config-section:last-of-type{border-bottom:1px solid var(--line);margin-bottom:16px}.config-section-head{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:14px 2px;list-style:none;display:flex}.config-section-head::-webkit-details-marker{display:none}.config-section-head:hover .config-section-title{color:var(--accent)}.config-section-head:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.config-section-title{white-space:nowrap;font-family:var(--display);flex:none;font-size:16px;font-weight:600;transition:color .2s}.config-section-value{min-width:0;color:var(--accent);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;margin-left:auto;font-size:14px;font-weight:600;display:inline-flex;overflow:hidden}.config-section-value .swatch-chip{flex:none;width:16px;height:16px}.config-section-head .chevron{flex:none;margin:0 4px 4px}.config-section[open]>.config-section-head .chevron{margin-bottom:-4px;transform:rotate(225deg)}.config-section-body{margin:2px 0 18px}.config-section .panel-editor-head{justify-content:flex-end}.config-section .panel-editor{margin-top:2px}.preview-card{box-shadow:var(--shadow-lg)}.preview-kicker{color:var(--muted);justify-content:flex-start;gap:6px;font-size:13px;font-weight:600;line-height:1.4}.preview-kicker span+span:before{content:"·";margin-right:6px}.preview-size{line-height:1.2;font-family:var(--display);margin-top:6px;font-size:22px;font-weight:600}.preview-size span,.preview-price small,.order-money span,.bottom-bar span{color:var(--muted);font-family:var(--font);font-size:13px;font-weight:500}.preview-price{margin:4px 0 12px;font-size:32px;font-weight:700;line-height:1.1}.preview-price small,.order-title span{letter-spacing:0;margin-top:4px;line-height:1.4;display:block}.preview-sheet,.enlarge-sheet,.drawing-frame{background:var(--paper);border-radius:var(--radius-sm)}.preview-sheet{border:1px solid var(--line);height:340px;margin-top:4px;position:relative;overflow:hidden}.preview-actions{flex-wrap:wrap;gap:12px;margin-top:14px;display:flex}.preview-actions .btn{flex:1 1 0;min-width:0}.drawing-frame{width:100%;height:100%;min-height:280px}.preview-sheet .drawing-frame{min-height:0;position:absolute;inset:0}.drawing-frame svg{width:100%;height:100%;display:block}.spec-chips{flex-wrap:wrap;gap:6px;margin:10px 0;padding:0;list-style:none;display:flex}.spec-chips li{border-radius:var(--radius-xs);background:var(--bg-subtle);padding:4px 10px;font-size:12px;font-weight:600}.form-error{color:var(--danger);margin:8px 0;font-weight:600}.prices-banner{max-width:1180px;margin:0 auto 12px}.parts-intro{gap:12px;margin-top:12px;display:grid}.parts-intro p{color:var(--ink);margin:0;font-weight:600}.parts-intro .btn{width:100%}.text-link{color:var(--accent);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:650;text-decoration:underline}.parts-build{margin-top:12px}.parts-scroll{position:relative;overflow-x:auto}.parts-table{border-collapse:collapse;width:100%;font-size:13px}.parts-table th{color:var(--muted);text-align:left;padding:8px 10px 8px 0;font-size:13px;font-weight:600}.parts-table td{border-bottom:1px solid var(--line);vertical-align:baseline;padding:8px 10px 8px 0}.parts-table .part-action{white-space:nowrap;text-align:center;vertical-align:middle;width:1%}.part-remove{border-radius:var(--radius-xs);background:var(--danger-soft);width:22px;height:22px;color:var(--danger);cursor:pointer;border:1px solid #0000;place-items:center;padding:0;line-height:1;transition:all .18s;display:inline-grid}.part-remove:hover,.part-remove:focus-visible{color:#fff;border-color:var(--danger);background:var(--danger);outline:none}.parts-summary td{font-weight:650}.parts-add{margin-top:10px}.fixed-qty{align-items:flex-end;gap:8px;display:flex}.fixed-qty .field{width:96px}.parts-table td:last-child,.num{text-align:right;font-variant-numeric:tabular-nums}.order-card{margin-top:18px}.measure-grid{margin-top:26px}.order-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start}.order-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.order-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);grid-template-columns:92px minmax(0,1fr) auto;grid-template-areas:"thumb copy money""thumb actions actions";gap:8px 12px;padding:12px;transition:border-color .2s,box-shadow .2s;display:grid}.order-item:hover{border-color:var(--line-strong)}.order-item.is-editing{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.order-thumb{border-radius:var(--radius-xs);border:1px solid var(--line);grid-area:thumb;width:92px;height:72px;overflow:hidden}.order-thumb .drawing-frame,.inv-thumb .drawing-frame,.preset-art .drawing-frame{height:100%;min-height:0}.order-copy{grid-area:copy}.order-money{text-align:right;grid-area:money}.order-money strong{font-family:var(--display);font-size:26px;display:block}.order-actions{grid-area:actions}.totals-card h2{margin-bottom:8px}.total-row,.inv-totals div{justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}.total-input .field{max-width:140px}.total-input{align-items:flex-end}.total-input>span{line-height:44px}.total-grand{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.total-grand span{font-size:20px}.total-grand,.inv-grand{border-top:2px solid var(--ink);font-family:var(--display);margin-top:6px;padding-top:8px;font-size:32px;font-weight:600}.empty{color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:32px}.empty .btn{margin-top:12px}.page-links{color:var(--muted);font-size:13px}.bottom-bar{display:none}.boot{color:var(--muted);padding:48px 20px}.toast-wrap{z-index:50;gap:8px;display:grid;position:fixed;bottom:16px;right:16px}.toast{border:1px solid var(--ink);border-radius:var(--radius-sm);background:var(--ink);color:#fff;text-align:left;min-width:220px;max-width:360px;box-shadow:var(--shadow-sticky);padding:12px 16px;animation:.35s cubic-bezier(.16,1,.3,1) toast-in}.toast-danger{background:var(--danger);border-color:var(--danger);color:#fff}.toast-info{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.dialog-overlay{z-index:40;-webkit-backdrop-filter:blur(4px);background:#0f172a80;animation:.22s overlay-in;position:fixed;inset:0}.dialog-overlay[data-state=closed]{animation:.16s overlay-out}.dialog{z-index:41;border-radius:var(--radius);background:var(--surface);width:min(480px,100vw - 24px);max-height:min(86vh,860px);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-sticky);padding:24px;animation:.32s cubic-bezier(.16,1,.3,1) dialog-in;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.dialog[data-state=closed]{animation:.16s dialog-out}.dialog-wide{width:min(760px,100vw - 24px)}.dialog-customer{width:min(880px,100vw - 24px)}.customer-onboarding{gap:18px;display:grid}.customer-onboarding .dialog-copy{margin:-4px 0 2px}.customer-onboarding-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.customer-onboarding-grid label{min-width:0}.customer-onboarding-full{grid-column:1/-1}.customer-onboarding-grid .input{width:100%;min-height:52px}.dialog-catalog{width:min(980px,100vw - 24px)}.dialog-title{font-size:22px}.dialog-copy{margin:8px 0 14px}.dialog-actions{justify-content:flex-end;margin-top:16px}.dialog-actions.dialog-actions-split{justify-content:space-between}.icon-x{border:1px solid var(--line);border-radius:var(--radius-xs);background:0 0;width:34px;height:34px;font-size:20px;transition:all .15s}.icon-x:hover{background:var(--bg-subtle);border-color:var(--line-strong)}.enlarge-sheet{border:1px solid var(--line);height:min(68vh,640px);overflow:hidden}@media (width<=1020px){.config-layout,.order-layout,.account-layout,.split-desk{grid-template-columns:1fr}.preview-column{order:-1}.preview-sticky{position:static}.preview-sheet{height:420px}.quote-bar,.page-head{flex-direction:column;align-items:stretch}.quote-identity{flex-basis:auto}.quote-actions{justify-content:flex-start}.bottom-bar{z-index:15;padding:12px 16px calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);background:#ffffffeb;justify-content:space-between;align-items:center;gap:12px;margin:0 -32px -48px;display:flex;position:sticky;bottom:0}.bottom-bar strong{font-family:var(--display);font-size:28px;line-height:1;display:block}}@media (width<=720px){.app-main{padding:16px 14px 40px}.card{padding:18px}.config-section-value{white-space:normal;text-align:right}h1,.quote-identity h1{font-size:24px}}.quote-overview-page{gap:24px;padding-top:12px;display:grid}.quote-customer-strip{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;padding:14px 18px;transition:border-color .15s,background .15s;display:flex}.quote-customer-strip:hover,.quote-customer-strip:focus-visible{border-color:var(--accent);background:var(--bg-subtle);outline:none}.quote-customer-strip>span{flex-wrap:wrap;gap:7px;display:flex}.quote-customer-strip strong{font-weight:700}.quote-customer-strip svg,.quote-note-edit svg{color:var(--accent)}.quote-summary-grid,.quote-notes-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}@media (width<=1020px){.quote-summary-grid,.quote-notes-grid{grid-template-columns:1fr}}.quote-summary-card,.quote-note-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:0;padding:16px 18px}.quote-summary-card h2,.quote-note-card h2,.quote-products-placeholder h2{margin:0;font-size:17px}.quote-summary-card h2{border-bottom:1px solid var(--line);padding-bottom:12px}.quote-detail-list{margin:12px 0 0;display:grid}.quote-detail-list>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:16px;min-height:46px;padding:10px 16px;display:grid}.quote-detail-list>div:nth-child(odd){background:var(--bg-subtle)}.quote-detail-list dt{color:var(--ink);font-weight:500}.quote-detail-list dd{overflow-wrap:anywhere;min-width:0;margin:0}.quote-cost-list>div{min-height:46px}.quote-price-list>div{min-height:44px}.quote-price-button{width:100%;margin-top:12px}.quote-note-card{min-height:84px}.quote-note-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.quote-note-edit{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;flex:none;place-items:center;width:30px;height:30px;padding:0;transition:all .15s;display:inline-grid}.quote-note-edit:hover{background:var(--bg-subtle);border-color:var(--accent-hover)}.quote-note-body{margin-top:14px}.quote-note-body p{color:var(--ink);white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.5}.dialog.note-dialog{border:1px solid var(--line);background:#fff;border-radius:8px;width:min(780px,100vw - 32px);max-width:780px;padding:0;overflow:hidden;box-shadow:0 20px 48px #00000038}.note-dialog-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.note-dialog-title{color:#1f2937;font-size:19px;font-weight:600;font-family:var(--font);margin:0}.note-dialog-close{color:#6b7280;border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:color .15s,background-color .15s;display:inline-flex}.note-dialog-close:hover{color:#111827;background:#f3f4f6}.note-dialog-form{flex-direction:column;display:flex}.note-dialog-body{padding:24px}.note-dialog-textarea{border-radius:var(--radius-sm);color:#111827;width:100%;min-height:280px;font-family:var(--font);resize:vertical;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;padding:16px;font-size:14.5px;line-height:1.6;transition:border-color .15s,box-shadow .15s}.note-dialog-textarea::placeholder{color:#9ca3af}.note-dialog-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}.note-dialog-footer{justify-content:flex-end;align-items:center;gap:12px;padding:0 24px 24px;display:flex}.note-dialog-btn-cancel{border-radius:var(--radius-sm);color:#1f2937;min-height:42px;font-family:var(--font);cursor:pointer;background:#eceee9;border:1px solid #e2e4df;justify-content:center;align-items:center;padding:0 24px;font-size:14px;font-weight:500;transition:background-color .15s,border-color .15s;display:inline-flex}.note-dialog-btn-cancel:hover{background:#e2e4df}.note-dialog-btn-save{border-radius:var(--radius-sm);background:var(--accent);color:#fff;min-height:42px;font-family:var(--font);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0 24px;font-size:14px;font-weight:600;transition:background-color .15s,transform .1s;display:inline-flex}.note-dialog-btn-save:hover{background:var(--accent-hover)}.note-dialog-btn-save:active{transform:translateY(1px)}.note-dialog-btn-save:disabled,.note-dialog-btn-cancel:disabled{opacity:.6;cursor:not-allowed}.quote-products-placeholder{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:130px;padding-top:24px;display:flex}.quote-products-placeholder h2{font-size:24px}@media (width<=720px){.form-grid,.product-grid,.glazing-grid,.panel-row{grid-template-columns:1fr}.job-grid{grid-template-columns:minmax(0,1fr)}.job-card{width:100%;padding:20px}.customer-onboarding-grid{grid-template-columns:1fr}.customer-onboarding-full{grid-column:auto}.job-meta{gap:12px 16px}.job-meta .job-updated{grid-template-columns:minmax(0,1fr) auto;gap:12px}.job-meta .job-updated dd{font-size:15px}.panel-index{display:none}.order-item{grid-template-columns:72px minmax(0,1fr);grid-template-areas:"thumb copy""money money""actions actions"}.order-money{text-align:left}.order-actions{justify-content:flex-start}.panel-cells,.panel-add-cell{margin-left:0}.panel-row.panel-cell-row,.layout-section>.panel-row,.stat-row{grid-template-columns:1fr}.bottom-bar{flex-wrap:wrap;margin-left:-14px;margin-right:-14px}.quote-identity{flex-wrap:wrap;align-items:flex-start}.quote-identity>div{flex:140px;min-width:0}.quote-overview-page{gap:16px}.quote-summary-card,.quote-note-card{padding:18px}.quote-detail-list>div{grid-template-columns:1fr;gap:4px}.quote-products-placeholder{flex-direction:column;align-items:stretch}.toast-wrap{left:16px;right:16px}.toast{min-width:0;max-width:none}}@media (width>=861px){.shell-top{position:fixed;top:0;left:0;right:0}.shell-body{padding-top:72px;display:block}.shell-side{z-index:20;height:calc(100dvh - 144px);margin-top:0;position:fixed;top:144px;bottom:0;left:0}.app-main{margin-left:var(--shell-sidebar-width)}.app-shell.is-sidebar-collapsed .app-main{margin-left:var(--shell-sidebar-collapsed-width)}.shell-menu-bar{display:none}}@media (width<=860px){.shell-top{height:80px;padding-left:16px;padding-right:16px}.shell-body{padding-top:80px}.app-main,.app-shell.is-sidebar-collapsed .app-main{margin-left:0}.shell-brand-slot,.app-shell.is-sidebar-collapsed .shell-brand-slot{justify-content:flex-start;width:auto;height:80px}.shell-logo{width:140px;height:auto}.shell-date{display:none}.shell-breadcrumbs{scrollbar-width:none;margin-left:12px;font-size:13.5px;overflow-x:auto}.shell-breadcrumbs::-webkit-scrollbar{display:none}.shell-breadcrumb-sep{margin:0 6px}.shell-header-meta{gap:0}.app-shell.is-sidebar-collapsed .shell-brand-copy{display:grid}.shell-scrim{z-index:25;-webkit-backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#0f172a80;transition:opacity .3s;display:block;position:fixed;inset:80px 0 0}.shell-scrim.is-open{opacity:1;pointer-events:auto}.shell-side{z-index:28;width:min(300px,88vw);height:calc(100dvh - 80px);margin-top:0;transition:transform .32s cubic-bezier(.4,0,.2,1),box-shadow .32s;position:fixed;top:80px;bottom:0;left:0;transform:translate(-105%)}.app-shell.is-sidebar-collapsed .shell-side{width:min(300px,88vw)}.shell-rail{display:none}.shell-side.is-open{transform:translate(0);box-shadow:12px 0 40px #0f172a40}}.login-screen .login-card{width:auto;box-shadow:none;background:#fff;border:0;border-radius:0;flex-direction:column;margin:0;padding:0;display:flex;overflow:hidden}.login-screen>.login-card{border-radius:var(--radius);border:1px solid #ffffff1a;width:min(420px,100%);margin:auto;box-shadow:0 24px 80px #00000040}.login-brand{justify-content:center;align-items:center;padding:28px 28px 0;display:flex}.login-logo{object-fit:contain;flex:none;width:142px;height:64px;display:block}.login-company{font-family:var(--display);letter-spacing:-.01em;color:var(--ink);font-size:24px;font-weight:600;line-height:1.2}.login-form{flex-direction:column;gap:14px;padding:24px 28px 28px;display:flex}.login-intro{gap:6px;margin-bottom:4px;display:grid}.login-screen .login-title{font-family:var(--display);letter-spacing:-.015em;color:var(--ink);font-size:26px;font-weight:600;line-height:1.2}.login-lede,.login-note{color:var(--muted);font-size:14px;line-height:1.5}.login-note{padding:16px 28px 28px}.login-screen .field-label{color:var(--ink-soft);letter-spacing:0;text-transform:none;font-size:13px;font-weight:600}.login-screen .field{gap:6px}.login-screen .input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:46px;padding:11px 14px;font-size:16px;transition:border-color .2s,box-shadow .2s}.login-screen .input:hover:not(:disabled){border-color:var(--line-strong)}.login-screen .input:focus,.login-screen .input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.login-screen .input:disabled{background:var(--bg-subtle);cursor:not-allowed}.login-screen .input[aria-invalid=true]{border-color:var(--danger)}.login-password{position:relative}.login-password .input{padding-right:46px}.login-reveal{border-radius:var(--radius-xs);width:34px;height:34px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.login-reveal:hover:not(:disabled){background:var(--bg-subtle);color:var(--ink)}.login-reveal:disabled{cursor:not-allowed;opacity:.45}.login-feedback{gap:4px;min-height:1.4em;display:grid}.login-screen .form-error{margin:0;font-size:13px;font-weight:500;line-height:1.4}.login-screen .btn{border-radius:var(--radius-sm);border-color:var(--accent);background:var(--accent);width:100%;min-height:46px;margin-top:2px;font-size:15px;transition:background .2s,border-color .2s,box-shadow .2s}.login-screen .btn:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent-hover);box-shadow:0 4px 16px #0ea5e94d}.login-screen .btn.is-busy:disabled{opacity:1;cursor:progress}.login-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite login-spin}.login-switch{color:var(--muted);text-align:center;margin:2px 0 0;font-size:13px;line-height:1.4}.login-switch a{color:var(--accent);font-weight:600;text-decoration:none}.login-switch a:hover{text-underline-offset:3px;text-decoration:underline}.login-footnote{border-top:1px solid var(--line);color:var(--muted);letter-spacing:.02em;text-align:center;margin:0;padding:14px 28px 16px;font-size:12px;font-weight:600}.login-status{color:#94a3b8e6;margin:auto;font-size:14px;font-weight:500}@media (width<=1024px){.login-screen{padding:32px 20px}}@media (width<=900px){.login-split{grid-template-columns:minmax(0,420px);justify-content:center}.login-aside{display:none}}@media (width<=640px){.login-screen{padding:16px 14px max(16px, env(safe-area-inset-bottom))}.login-brand,.login-note{padding-left:18px;padding-right:18px}.login-brand{gap:10px;padding-top:20px}.login-logo{width:136px;height:58px}.login-company{font-size:22px}.login-form{gap:12px;padding:16px 18px 18px}.login-footnote{padding:12px 18px 14px}.login-screen .login-title{font-size:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:none}}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes overlay-out{0%{opacity:1}to{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-46%)scale(.96)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes dialog-out{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-48%)scale(.96)}}@keyframes login-spin{to{transform:rotate(360deg)}}.product-chooser{--pp-rail:#191c2d;--pp-rail-head:#2e3040;--pp-card:#f6f6f4;--pp-line:#e1e1e1;--pp-green:#239658;--pp-green-hover:#1d7f4a;--pp-text:#31333c;z-index:120;height:100dvh;color:var(--pp-text);background:#fff;grid-template-columns:250px minmax(0,1fr);animation:.24s both pp-in;display:grid;position:fixed;inset:0}.pp-rail{background:var(--pp-rail);color:#fff;flex-direction:column;min-height:0;display:flex;overflow:auto}.pp-rail-head{background:var(--pp-rail-head);align-items:flex-start;min-height:126px;padding:25px 22px;display:flex}.pp-title{letter-spacing:.01em;color:#fff;margin:0;font-size:16px;font-weight:500;line-height:1.2}.pp-groups{padding:18px 0;display:grid}.pp-group{color:#ffffffc7;width:100%;height:48px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:0 22px;font-size:15px;transition:background .16s,color .16s;display:flex;position:relative}.pp-group:hover{color:#fff;background:#ffffff0f}.pp-group.is-active{color:#fff;background:#ffffff17;font-weight:500}.pp-group.is-active:before{content:"";background:var(--pp-green);border-radius:0 2px 2px 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.pp-main{background:#fff;flex-direction:column;min-width:0;min-height:0;padding:16px 24px 32px;display:flex;overflow:auto}.pp-bar{border-bottom:1px solid var(--pp-line);flex:none;justify-content:space-between;align-items:center;gap:16px;padding-bottom:12px;display:flex}.pp-filters{flex-wrap:wrap;align-items:center;gap:24px;min-width:0;display:flex}.pp-filter-label{color:var(--pp-text);white-space:nowrap;margin-right:9px;font-size:13px}.pp-field{align-items:center;display:inline-flex;position:relative}.pp-field select{appearance:none;border:1px solid var(--pp-line);color:#666a72;width:139px;height:46px;font:inherit;cursor:pointer;background:#fff;border-radius:2px;padding:0 30px 0 10px;font-size:13px}.pp-field svg{pointer-events:none;color:#7b7f87;position:absolute;right:10px}.pp-qty{align-items:center;gap:14px;margin-left:8px;display:flex}.pp-qty-label{color:var(--pp-text);white-space:nowrap;font-size:13px}.pp-stepper{border:1px solid var(--pp-line);background:#fff;border-radius:2px;align-items:center;height:46px;display:inline-flex;overflow:hidden}.pp-stepper button{color:#555a62;cursor:pointer;background:0 0;border:0;place-items:center;width:30px;height:100%;display:grid}.pp-stepper button:hover:not(:disabled){background:#f4f4f2}.pp-stepper button:disabled{color:#c4c6cb;cursor:default}.pp-stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:30px;color:var(--pp-text);font-size:13px}.pp-close{border:1px solid var(--pp-line);color:#5c6068;cursor:pointer;background:#fff;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;transition:background .16s,color .16s;display:grid}.pp-close:hover{color:var(--pp-text);background:#f1f1ef}.pp-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:40px;padding:0 22px;display:grid}.pp-card{background:var(--pp-card);border-radius:5px;flex-direction:column;align-items:center;height:222px;padding:32px 8px 12px;display:flex}.pp-art{color:#9aa0a7;place-items:center;width:104px;height:104px;display:grid}.pp-art svg{width:100%;height:100%}.pp-name{color:#6b6f76;text-align:center;margin:10px 0 auto;font-size:13px;line-height:1.35}.pp-add{background:var(--pp-green);color:#fff;width:100%;height:36px;font:inherit;cursor:pointer;border:0;border-radius:3px;justify-content:center;align-items:center;margin-top:10px;font-size:13px;font-weight:600;transition:background .16s;display:inline-flex}.pp-add:hover{background:var(--pp-green-hover)}.pp-empty{color:#777b83;margin:40px 0 0;font-size:14px}@keyframes pp-in{0%{opacity:0;transform:scale(.995)}to{opacity:1;transform:scale(1)}}@media (width<=1400px){.pp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1080px){.pp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.product-chooser{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.pp-rail{overflow:visible}.pp-rail-head{min-height:0;padding:16px 18px}.pp-title{font-size:17px}.pp-groups{gap:4px;padding:8px 10px;display:flex;overflow-x:auto}.pp-group{border-radius:4px;flex:none;width:auto;height:38px;padding:0 14px;font-size:13px}.pp-group.is-active:before{border-radius:2px 2px 0 0;width:auto;height:2px;inset:auto 8px 0}.pp-main{padding:14px 16px 24px}.pp-grid{padding:0}}@media (width<=620px){.pp-grid{grid-template-columns:minmax(0,1fr)}.pp-bar{align-items:flex-start}.pp-filters{gap:8px}.pp-field select{width:128px}.pp-qty{margin-left:0}.pp-qty-label{display:none}}@media (width<=860px){.shell-nav{width:100%;min-width:0}.shell-brand-slot,.app-shell.is-sidebar-collapsed .shell-brand-slot{display:none}.shell-menu-bar,.shell-menu-bar:hover{color:#fff;background:#1d3a5f;border-color:#fff}.shell-breadcrumbs{margin-left:14px}.shell-home-link{color:#fff;background:#1d3a5f;border:1px solid #fff;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;margin-right:12px;transition:opacity .15s;display:grid}.shell-home-link:hover{opacity:.85}}@media (width<=480px){.config-layout .preview-sheet{height:300px}}@media (width>=1021px) and (width<=1180px){.config-forms .form-grid{grid-template-columns:1fr}}@media (width>=1021px){.page.quote-page{max-width:none}.quote-page .quote-bar{z-index:12;box-sizing:border-box;border-bottom:1px solid var(--line);background:var(--bg);flex-wrap:nowrap;height:72px;margin:-28px -24px 0;padding:0 24px;position:sticky;top:72px}.quote-page .quote-identity{flex:auto}.quote-page .quote-identity h1{margin-top:0;font-size:22px;line-height:1.2}.quote-page .quote-identity .eyebrow{line-height:1.3}.quote-page .quote-actions{flex-wrap:nowrap;flex:none}.quote-page .config-layout{background:var(--surface);border-bottom:1px solid var(--line);align-items:stretch;gap:0;margin:0 -24px}.quote-page .config-forms{border-right:1px solid var(--line)}.quote-page .config-forms>.card,.quote-page .preview-card{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0}.quote-page .config-forms>.card{border-bottom:1px solid var(--line);padding:28px 32px}.quote-page .config-forms>.card:last-child{border-bottom:0}.quote-page .preview-card{padding:28px 32px}.quote-page .preview-sticky{top:144px}.quote-page .order-card{box-shadow:none;border:0;border-radius:0;margin:0 -24px;padding:28px 32px}}.confirm-strip{border:1px solid var(--accent);background:var(--accent-soft);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 14px;animation:.2s rise-in;display:flex}.confirm-strip p{margin:0;font-weight:600}.confirm-strip-actions{gap:8px;display:flex}.print-stage{background:#d5dde1;min-height:100vh;padding:18px 12px 40px;position:relative;overflow-x:auto}.print-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:min(210mm,100%);margin:0 auto 12px;display:flex}.print-toolbar strong{display:block}.print-stack{gap:18px;display:grid}.print-sheet{color:#161616;background:#fff;width:210mm;min-height:297mm;margin:0 auto;padding:8mm;box-shadow:0 10px 28px #14262e29}.wo-banner,.inv-title-block h1{text-align:center;letter-spacing:.08em;margin:0 0 6px;font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:28px}.wo-meta,.wo-options,.wo-grid,.inv-table{border-collapse:collapse;width:100%;font-size:10px;line-height:1.25}.wo-meta th,.wo-meta td,.wo-options th,.wo-options td,.wo-grid th,.wo-grid td,.inv-table th,.inv-table td{vertical-align:top;border:1px solid #222;padding:2px 4px}.wo-meta th,.wo-options th,.wo-grid th,.inv-table th{text-align:left;background:#f3f3f3;font-weight:650}.wo-options caption,.wo-grid caption{caption-side:top;text-align:left;padding:6px 0 2px;font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:14px;font-weight:700}.wo-top{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:8px;margin-top:8px;display:grid}.wo-drawing{background:#fff;border:1px solid #222;height:118mm;padding:4px}.wo-drawing-caption{margin:0 0 2px;font-size:10px;font-weight:650}.wo-drawing .drawing-frame{background:#fff;height:calc(100% - 16px);min-height:0}.wo-grid{margin-top:6px}.inv-head,.inv-parties{grid-template-columns:1.4fr .8fr;gap:16px;display:grid}.inv-parties{border-top:1px solid #222;border-bottom:1px solid #222;grid-template-columns:repeat(3,1fr);margin:14px 0;padding:8px 0}.inv-brand{font-size:28px;line-height:.9}.inv-tag,.inv-head p,.inv-parties p,.inv-table p{margin:0;font-size:11px}.inv-title-block{text-align:right}.inv-title-block h1{text-align:right;letter-spacing:.12em}.inv-parties h2,.inv-table strong{font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:14px}.inv-thumb{width:32mm;height:24mm}.inv-table{font-size:11px}.inv-table th{text-transform:uppercase;letter-spacing:.04em;font-size:10px}.inv-totals{width:72mm;margin-top:10px;margin-left:auto}.inv-grand{border-top:2px solid #111;font-size:18px}.inv-foot{color:#333;margin-top:16px;font-size:10px}@page{size:A4 portrait;margin:8mm}@media print{body{background:#fff!important}.no-print,.topbar,.shell-side,.shell-scrim,.shell-menu,.toast-wrap,.bottom-bar{display:none!important}.print-stage{background:#fff;padding:0;overflow:visible}.print-sheet{width:auto;min-height:0;box-shadow:none;break-after:page;margin:0;padding:0}.print-sheet:last-child{break-after:auto}.avoid-break,.wo-top,.inv-head{break-inside:avoid}.wo-drawing,.print-sheet,.print-sheet *{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
