:root{--accent:#00b4e7;--ink:#14181f;--bg:#f2f4f6;--line:#d9dde2;--brand-navy:#4b5e81;--accent-text:#00738f;--accent-press:#0098c4;--accent-soft:#e0f5fd;--accent-soft-bd:#cbebf8;--surface:#fff;--surface-sunken:#fafbfc;--surface-chip:#e9ecf0;--line-soft:#eef0f3;--line-medium:#e6e9ed;--line-input:#bcc1c8;--ink-muted:#5b6472;--ink-faint:#878f99;--ink-ghost:#b4bac2;--good:#187846;--good-bg:#e8f0ec;--good-bd:#c3d8ce;--warn:#8f5a00;--warn-bg:#f7efdd;--warn-bd:#e3d3ab;--bad:#b3261e;--bad-bg:#f8ece8;--bad-bd:#e2c8c1;--mute:#5b6472;--mute-bg:#e9ecf0;--mute-bd:#d9dde2;--open-fg:#00738f;--open-bg:#e0f5fd;--open-bd:#b9e6f6;--band-h:86px;--radius:6px;--radius-card:10px;--radius-shell:12px;--radius-pill:999px;--shadow-sm:-2px -2px 4px #ffffffb3, 2px 2px 4px #14181f0e;--shadow:-3px -3px 8px #ffffffb3, 3px 3px 8px #14181f0e;--shadow-inset:inset 2px 2px 4px #14181f0d, inset -2px -2px 4px #ffffffb3;--shadow-lg:0 10px 28px #14181f1a, 0 2px 6px #14181f0d;--ring:0 0 0 3px #00b4e759;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--dur-fast:.12s;--dur-tip:.125s;--dur-press:.16s;--dur-pop:.2s;--dur-shell:.24s;--dur-modal:.25s;--pad:16px;--gutter:24px;--gutter-card:14px;--gap-card:12px;--content-max:1560px;--masthead-h:64px;--shell-lift:12px;--rail-w:214px;--rail-w-narrow:60px;--cardhead-h:38px;--row-h:32px;--fs-figure:26px;--fs-title:15px;--fs-body:13.5px;--fs-control:13px;--fs-field:14px;--fs-note:12.5px;--fs-label:12px;--fs-micro:10.5px;--fs-rail:14.5px;--fs-railsub:13.5px;--track-eyebrow:.02em;--track-colhead:var(--track-eyebrow);--track-pill:var(--track-eyebrow);--track-railgrp:var(--track-eyebrow);--font-brand:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--focus-ring:2px solid var(--accent);--focus-offset:2px;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--rail-bg:#14181f;--rail-rule:#262c36;--rail-fg:#fff;--rail-dim:#b4bac2;--rail-label:#858d99;--rail-chip:#262c36;--rail-sel:#1d232c;--rail-edge:#14181f;--rail-logo:#fff;--rail-logo-mark:var(--accent);--rail-mark:var(--accent);--rail-hi:var(--accent);--rail-hi-fg:var(--ink)}:root[data-rail=light]{--rail-bg:#e9ecf0;--rail-rule:#d9dde2;--rail-fg:var(--ink);--rail-dim:#5b6472;--rail-label:#626a78;--rail-chip:#dfe3e8;--rail-sel:#fff;--rail-edge:#d9dde2;--rail-logo:var(--brand-navy);--rail-logo-mark:var(--accent-text);--rail-mark:var(--accent-text);--rail-hi:var(--accent);--rail-hi-fg:var(--ink)}:root[data-rail=cyan]{--rail-bg:#00b4e7;--rail-rule:#4fcaf0;--rail-fg:var(--ink);--rail-dim:#143845;--rail-label:#123c4c;--rail-chip:#4fcaf0;--rail-sel:#2ec7ef;--rail-edge:#00b4e7;--rail-logo:var(--ink);--rail-logo-mark:var(--ink);--rail-mark:var(--ink);--rail-hi:#005c72;--rail-hi-fg:#fff}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-brand);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:13.5px;line-height:1.45}button,input,select{font-family:inherit;font-size:inherit;color:var(--ink)}button{cursor:pointer}:focus-visible{box-shadow:var(--ring);border-radius:var(--radius);outline:none}.control{height:36px;font-size:var(--fs-field);border:1px solid var(--line-input);border-radius:var(--radius);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-inset);transition:border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;outline:none;padding:0 10px}.control::placeholder{color:var(--ink-faint)}@media (hover:hover) and (pointer:fine){.control:hover{border-color:var(--brand-navy)}}.control:focus{border-color:var(--accent);box-shadow:var(--ring)}.sel{text-align:left;cursor:pointer;transition:border-color var(--dur-fast) ease, background var(--dur-fast) ease, box-shadow var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);align-items:center;gap:6px;display:inline-flex}.sel:disabled{cursor:default}.sel.control{padding-right:8px}.sel.control-sm{padding-right:6px}.sel-value{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.sel-caret{color:var(--ink-faint);transition:transform var(--dur-fast) var(--ease-in-out);flex:none}.sel[data-open] .sel-caret{transform:rotate(180deg)}.sel[data-open]{border-color:var(--accent)}.sel:active:not(:disabled){transform:scale(.97)}.sel-list{z-index:200;overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-lg);transform-origin:top;transition:opacity var(--dur-pop) var(--ease-out), transform var(--dur-pop) var(--ease-out);flex-direction:column;gap:1px;padding:4px;display:flex;position:fixed;overflow-y:auto}.sel-list-up{transform-origin:bottom}@starting-style{.sel-list{opacity:0;transform:scale(.97)}}.sel-opt{border-radius:var(--radius);width:100%;color:var(--ink);font-family:inherit;font-size:var(--fs-control);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:7px 9px;font-weight:500;display:flex}.sel-opt-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.sel-opt-blank .sel-opt-label{color:var(--ink-faint)}.sel-opt[data-active]{background:var(--accent-soft)}.sel-opt.on{color:var(--accent-text);font-weight:650}.sel-opt:disabled{color:var(--ink-faint);cursor:default;background:0 0}.sel-tick{color:var(--accent-text);flex:none}.sel.addgrant{justify-content:center;gap:0;display:inline-flex}.sel.addgrant .sel-caret{display:none}.sel.addgrant .sel-value{flex:none}@media (prefers-reduced-motion:reduce){.sel-list{transition:opacity var(--dur-pop) var(--ease-out)}@starting-style{.sel-list{opacity:0;transform:none}}.sel:active:not(:disabled){transform:none}}.field{flex-direction:column;gap:4px;display:flex}.field>label{letter-spacing:.05em;color:var(--ink-faint);font-size:10.5px;font-weight:650}.search{align-items:center;display:flex;position:relative}.search svg{color:var(--ink-faint);pointer-events:none;position:absolute;left:10px}.search .control{padding-left:32px}.btn{border-radius:var(--radius);border:1px solid var(--line-input);background:var(--surface);height:36px;color:var(--ink);white-space:nowrap;box-shadow:var(--shadow-sm);transition:background var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:550;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn:hover{background:var(--surface-sunken);border-color:var(--brand-navy)}}.btn:active,.btn-2:active{background:var(--line);box-shadow:var(--shadow-inset)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:2px 2px 4px #14181f16}@media (hover:hover) and (pointer:fine){.btn-primary:hover{background:var(--accent-press);border-color:var(--accent-press)}}.btn-primary:active{background:var(--accent-press);box-shadow:inset 2px 2px 4px #14181f21}.btn:disabled,.btn-primary:disabled{background:var(--surface-sunken);border-color:var(--line);color:var(--ink-muted);cursor:not-allowed;opacity:1}.btn-sm{height:30px;padding:0 10px;font-size:12.5px}.btn-link{color:var(--brand-navy);transition:color var(--dur-fast) ease, background var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);background:0 0;border:none;border-radius:4px;padding:2px 4px;font-weight:550}@media (hover:hover) and (pointer:fine){.btn-link:hover{color:var(--accent-text);background:var(--accent-soft)}}.icon-btn{border-radius:var(--radius);width:28px;height:28px;color:var(--ink-faint);transition:color var(--dur-fast) ease, background var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover) and (pointer:fine){.icon-btn:hover{color:var(--brand-navy);background:var(--line)}.icon-btn.danger:hover{color:var(--bad);background:var(--bad-bg)}}.pill{border-radius:var(--radius-pill);letter-spacing:.01em;white-space:nowrap;padding:2px 9px;font-size:11.5px;font-weight:650;line-height:17px;display:inline-block}.pill-Win{background:var(--good-bg);color:var(--good)}.pill-Loss{background:var(--bad-bg);color:var(--bad)}.pill-Open{background:var(--open-bg);color:var(--open-fg)}.pill-Abandoned{background:var(--mute-bg);color:var(--mute)}.pill-warn{background:var(--warn-bg);color:var(--warn)}.pill-cyan{background:var(--open-bg);color:var(--open-fg);border-color:var(--open-bd)}.app{grid-template-columns:var(--rail-w) 1fr;transition:opacity var(--dur-pop) var(--ease-out);background:var(--rail-bg);grid-template-rows:minmax(0,1fr);height:100vh;display:grid;position:relative;overflow:hidden}.rail{background:var(--rail-bg);color:var(--rail-fg);flex-direction:column;grid-row:1/-1;display:flex;overflow:hidden}.rail-nav{isolation:isolate;flex:auto;min-height:0;padding-bottom:10px;position:relative;overflow:hidden auto;-webkit-mask-image:linear-gradient(#0000,#000 12px calc(100% - 16px),#0000);mask-image:linear-gradient(#0000,#000 12px calc(100% - 16px),#0000)}.buildline{border-top:1px solid var(--line);font-size:var(--fs-note);color:var(--ink-faint);text-align:center;justify-content:center;align-items:center;gap:6px;margin-top:26px;padding-top:16px;line-height:1;display:flex}.buildline b{color:var(--ink-muted);font-weight:650}.rail-resize{top:0;bottom:0;left:calc(var(--rail-w) - 3px);z-index:5;cursor:col-resize;touch-action:none;width:6px;position:absolute}.rail-resize:after{content:"";background:var(--rail-mark);opacity:0;width:2px;transition:opacity var(--dur-fast) var(--ease-out);position:absolute;top:0;bottom:0;left:2px}.rail-resize:focus-visible:after,.app-dragging .rail-resize:after{opacity:1}@media (hover:hover) and (pointer:fine){.rail-resize:hover:after{opacity:1}}.rail-resize:focus-visible{outline:none}.rail-brand{height:var(--masthead-h);padding:0 var(--pad);border-bottom:1px solid var(--rail-rule);flex:none;align-items:center;gap:8px;display:flex}.app-dragging,.app-dragging .rail-label{transition:none}.app-narrow .rail-brand{justify-content:center;padding:0 8px}.app-narrow .rail{cursor:pointer}@media (hover:hover) and (pointer:fine){.app-narrow .rail:hover:not(:has(.railicon:hover,.rail-user:hover)){background:var(--rail-sel)}}.app-narrow .rail-user{justify-content:center;padding:6px}.rail-icons{flex-direction:column;align-items:center;gap:4px;padding:10px 0;display:flex}.railicon{border-radius:var(--radius);width:40px;height:40px;color:var(--rail-dim);cursor:pointer;transition:background var(--dur-fast) ease, color var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);background:0 0;border:0;place-items:center;padding:0;display:grid}@media (hover:hover) and (pointer:fine){.railicon:hover{background:var(--rail-sel);color:var(--rail-fg)}}.railicon[aria-current=page]{color:var(--rail-hi-fg);background:0 0}@media (hover:hover) and (pointer:fine){.railicon[aria-current=page]:hover{color:var(--rail-hi-fg);background:0 0}}.railicon:focus-visible{box-shadow:inset 0 0 0 2px var(--rail-mark);outline:none}.rail-group{font-size:var(--fs-micro);letter-spacing:var(--track-eyebrow);color:var(--rail-label);padding:18px var(--pad) 6px;text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:700;overflow:hidden}.navrow{border-radius:var(--radius);transition:transform var(--dur-press) var(--ease-out);align-items:stretch;gap:2px;margin:0 8px;display:flex}@media (hover:hover) and (pointer:fine){.navrow:hover{background:var(--rail-sel)}.navrow:hover .navitem{color:var(--rail-fg)}}.navrow:has(>.navitem[aria-current=page]){background:0 0}@media (hover:hover) and (pointer:fine){.navrow:has(>.navitem[aria-current=page]):hover{background:0 0}}.navrow:has(>.navitem[aria-current=page]) .navcaret{color:var(--rail-hi-fg)}.navitem{min-width:0;font-family:inherit;font-size:var(--fs-rail);color:var(--rail-dim);border-radius:var(--radius);text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:8px;min-width:0;padding:10px;font-weight:500;display:flex}.navitem .navicon{flex:none}.navitem>span,.navsubitem>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.navsubitem{min-width:0}@media (hover:hover) and (pointer:fine){.navitem:hover{color:var(--rail-fg)}}.navitem[aria-current=page]{color:var(--rail-hi-fg);font-weight:600}@media (hover:hover) and (pointer:fine){.navitem[aria-current=page]:hover,.navrow:hover .navitem[aria-current=page]{color:var(--rail-hi-fg);font-weight:600}}.navrow.current .navitem:not([aria-current=page]){color:var(--rail-fg);font-weight:600}.navcaret{border-radius:var(--radius);width:26px;color:var(--rail-mark);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}@media (hover:hover) and (pointer:fine){.navcaret:hover{color:var(--rail-fg)}}.navcaret svg{transition:transform var(--dur-fast) var(--ease-in-out)}.navcaret[aria-expanded=true] svg{transform:rotate(90deg)}.navgroup{display:block}.navfolder{display:contents}.navsub-wrap{transition:grid-template-rows var(--dur-pop) var(--ease-in-out);grid-template-rows:0fr;display:grid}.navsub-wrap.open{grid-template-rows:1fr}.navsub-inner{min-height:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.navsub-wrap{transition:none}}.navsub{border-left:1px solid var(--rail-chip);flex-direction:column;margin:2px 8px 0 27px;padding-bottom:4px;padding-left:6px;display:flex}.navsub-nested{border-left:0;margin:0;padding-bottom:0;padding-left:0}.navsubitem{width:auto;min-height:28px;font-family:inherit;font-size:var(--fs-railsub);color:var(--rail-dim);border-radius:var(--radius);text-align:left;cursor:pointer;transition:transform var(--dur-press) var(--ease-out);background:0 0;border:0;align-items:center;margin:0;padding:4px 10px 4px 12px;font-weight:500;display:flex}@media (hover:hover) and (pointer:fine){.navsubitem:hover{color:var(--rail-fg);background:var(--rail-sel)}}.navsubitem-folder{justify-content:space-between;gap:8px}.navcaret-inline{color:var(--rail-mark);transition:transform var(--dur-fast) var(--ease-in-out);display:inline-flex}.navsubitem-folder[aria-expanded=true] .navcaret-inline{transform:rotate(90deg)}.navsubitem-deep{padding-left:26px}.navgap{margin-top:15px;position:relative}.navgap:before{content:"";background:var(--rail-rule);height:1px;position:absolute;top:-7px;left:-7px;right:10px}.navbreak{margin-top:15px;position:relative}.navbreak:after{content:"";background:var(--rail-bg);width:1px;height:15px;position:absolute;top:-15px;left:-7px}.navsubitem[aria-current=page]{color:var(--rail-hi-fg);background:0 0;font-weight:600}@media (hover:hover) and (pointer:fine){.navsubitem[aria-current=page]:hover{color:var(--rail-hi-fg);background:0 0;font-weight:600}}.rail-thumb{z-index:-1;border-radius:var(--radius);background:var(--rail-hi);pointer-events:none;opacity:1;transition:transform var(--dur-pop) var(--ease-in-out);position:absolute;top:0}.app-dragging .rail-thumb{transition:none}.rail-thumb.settling{opacity:0;transition:none}.rail-foot{flex:none;position:relative}.rail-menu{z-index:40;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);min-width:190px;box-shadow:var(--shadow-lg);color:var(--ink);transform-origin:0 100%;will-change:transform, opacity;transition:opacity var(--dur-pop) var(--ease-out), transform var(--dur-pop) var(--ease-out);padding:4px;position:absolute;bottom:calc(100% - 2px);left:8px;right:8px}@starting-style{.rail-menu{opacity:0;transform:translateY(8px)scale(.95)}}.rail-menu.out{opacity:0;transition-duration:var(--dur-fast);transform:translateY(8px)scale(.95)}.app-narrow .rail-menu{min-width:210px;right:auto}.rail-menu button{border-radius:var(--radius);width:100%;font:inherit;font-size:var(--fs-body);color:var(--ink);text-align:left;cursor:pointer;transition:background var(--dur-fast) ease, color var(--dur-fast) ease;background:0 0;border:0;align-items:center;gap:8px;padding:8px 10px;display:flex}.rail-menu button.danger{color:var(--bad)}.rail-menu button:disabled{color:var(--ink-faint);cursor:default}@media (hover:hover) and (pointer:fine){.rail-menu button:hover{background:var(--accent-soft)}.rail-menu button.danger:hover{background:var(--bad-bg)}}.rail-menu button:focus-visible{box-shadow:var(--ring);outline:none}.rail-menu-who{border-bottom:1px solid var(--line-soft);margin-bottom:4px;padding:6px 10px 8px}.rail-menu-who b{font-size:var(--fs-body);font-weight:600;display:block}.rail-menu-who span{font-size:var(--fs-note);color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.rail-user-caret{color:var(--rail-dim);transition:transform var(--dur-fast) var(--ease-in-out);flex:none;margin-left:auto}.rail-user[aria-expanded=true] .rail-user-caret{transform:rotate(180deg)}.rail-user[aria-current=page] .rail-user-caret{color:var(--rail-hi-fg)}@media (prefers-reduced-motion:reduce){.rail-menu{transition-property:opacity}@starting-style{.rail-menu{opacity:0;transform:none}}.rail-menu.out{transform:none}}.rail-user{border-radius:var(--radius);width:calc(100% - 16px);color:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);background:0 0;border:0;align-items:center;gap:8px;margin:8px;padding:8px 10px;font-family:inherit;display:flex}.rail-user[aria-current=page]{background:var(--rail-hi)}.rail-user[aria-current=page] .rail-name,.rail-user[aria-current=page] .rail-role{color:var(--rail-hi-fg)}.rail-user[aria-current=page] .rail-initials{background:color-mix(in srgb, var(--rail-hi-fg) 16%, transparent);color:var(--rail-hi-fg)}@media (hover:hover) and (pointer:fine){.rail-user:hover{background:var(--rail-sel)}.rail-user[aria-current=page]:hover{background:var(--rail-hi)}}.rail-initials{border-radius:var(--radius);background:var(--rail-chip);width:28px;height:28px;color:var(--rail-fg);font-size:var(--fs-micro);flex:none;place-items:center;font-weight:700;display:grid}.rail-who{flex-direction:column;flex:auto;align-items:flex-start;min-width:0;display:flex}.rail-name,.rail-role{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.rail-name{font-size:var(--fs-railsub);color:var(--rail-fg)}.rail-role{font-size:var(--fs-micro);letter-spacing:var(--track-eyebrow);color:var(--rail-mark);font-weight:700}.shell{min-width:0;margin-top:var(--shell-lift);background:var(--bg);border-top:1px solid var(--rail-edge);border-left:1px solid var(--rail-edge);border-top-left-radius:var(--radius-shell);flex-direction:column;display:flex;overflow:hidden}.rail-trigger{border-radius:var(--radius);width:24px;height:24px;color:var(--ink-muted);cursor:pointer;transition:background var(--dur-fast) ease, color var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin-left:-4px;padding:0;display:inline-flex}@media (hover:hover) and (pointer:fine){.rail-trigger:hover{background:var(--surface-sunken);color:var(--ink)}}.rail-trigger:active{transform:scale(.97)}.rail-trigger:focus-visible{box-shadow:var(--ring);outline:none}.topbar{height:calc(var(--masthead-h) - var(--shell-lift));padding:0 var(--gutter);background:var(--surface);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:12px;display:flex}.topbar h1{font-size:var(--fs-title);white-space:nowrap;letter-spacing:.01em;margin:0;font-weight:600}.topbar-sep{color:var(--ink-faint);font-size:var(--fs-title)}.topbar-view{font-size:var(--fs-title);color:var(--ink-muted);white-space:nowrap;font-weight:600}.topbar .spacer{flex:auto}.topbar-pick{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);-webkit-user-select:none;user-select:none;cursor:pointer;height:34px;transition:background var(--dur-fast) ease, border-color var(--dur-fast) ease;align-items:center;gap:8px;padding:0 4px 0 12px;display:inline-flex;box-shadow:2px 2px 4px #14181f16}.topbar-pick-k{font-size:var(--fs-micro);letter-spacing:var(--track-eyebrow);color:#fff;font-weight:700}.topbar-pick .sel{border-radius:var(--radius);height:26px;box-shadow:none;color:#fff;font-family:inherit;font-size:var(--fs-body);background:0 0;border:0;padding:0 6px;font-weight:700}.topbar-pick .sel-caret{color:#fff}@media (hover:hover) and (pointer:fine){.topbar-pick:hover{background:var(--accent-press);border-color:var(--accent-press)}}.topbar-pick:has(.sel:focus-visible){box-shadow:var(--ring)}.topbar-pick .sel:focus-visible{box-shadow:none}main{flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.view{min-height:0;transition:opacity var(--dur-fast) ease;flex-direction:column;flex:auto;display:flex}@starting-style{.app,.view{opacity:0}.auth-card{opacity:0;transform:scale(.98)}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{width:100%;max-width:var(--content-max);padding:20px var(--gutter) 28px;gap:var(--gap-card);flex-direction:column;flex:1;min-height:0;margin:0 auto;display:flex}@media (width<=60rem){:root{--shell-lift:0px}.app{background:var(--bg);grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.rail{flex-direction:row;align-items:stretch;overflow:auto hidden}.rail-brand{border-bottom:0;border-right:1px solid var(--rail-rule)}.rail-group{display:none}.navgroup{display:contents}.navsub{background:0 0;flex-direction:row;padding-bottom:0}.navitem,.navsubitem{white-space:nowrap;align-items:center;width:auto}.navsubitem{padding:9px 12px}@media (hover:hover) and (pointer:fine){.navsubitem:hover{background:var(--rail-sel)}}.navsubitem[aria-current=page]{background:var(--rail-hi)}@media (hover:hover) and (pointer:fine){.navsubitem[aria-current=page]:hover{background:var(--rail-hi)}}.navitem[aria-expanded=true] .navcaret{transform:none}.rail-trigger{display:none}.app-narrow .rail-brand{padding:0 var(--pad);justify-content:flex-start}.app-narrow .rail-user{padding:12px var(--pad);justify-content:flex-start}.rail-user{border-top:0;border-left:1px solid var(--rail-rule);background:var(--rail-bg);width:auto;position:sticky;right:0}.rail-name{max-width:90px}.shell{border:0;border-radius:0}}.kpis{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);flex-shrink:0;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:hidden}.kpi{border:0;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);margin-bottom:-1px;margin-right:-1px;padding:11px 16px 13px}.kpi .label{font-size:var(--fs-micro);letter-spacing:var(--track-eyebrow);color:var(--ink-faint);margin-bottom:4px;font-weight:700}.kpi .value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink);font-size:21px;font-weight:680;line-height:1.15}.kpi .sub{color:var(--ink-faint);margin-top:1px;font-size:11.5px}.kpi.accent .value{color:var(--accent-text)}.kpi.alert .value{color:var(--bad)}.kpi.warn .value{color:var(--warn)}.kpi.loss .value{color:var(--bad)}.kpi-filter{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;transition:border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease, background var(--dur-fast) ease;background:0 0;display:block;position:relative}@media (hover:hover) and (pointer:fine){.kpi-filter:hover{background:var(--accent-soft)}}.kpi-filter:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.kpi.on{background:linear-gradient(180deg, var(--accent-soft) 0%, var(--surface) 100%);box-shadow:inset 0 0 0 2px var(--accent)}@media (hover:hover) and (pointer:fine){.kpi-filter.on:hover{background:linear-gradient(180deg, var(--accent-soft-bd) 0%, var(--accent-soft) 100%)}}.kpi-filter:after,.ageband:after,.agingnote:after{content:"Filter";color:var(--accent-text);text-underline-offset:3px;margin-top:6px;font-size:11.5px;font-weight:600;line-height:1.3;text-decoration-thickness:1px;display:block}.ageband:after,.agingnote:after{margin-top:5px}.agingnote:after{content:"Sort"}.kpi.on:after,.ageband.on:after{content:"Filtered"}.agingnote.on:after{content:"Sorted"}.agingnote-empty:after{content:none}@media (hover:hover) and (pointer:fine){.kpi-filter:hover:after,.ageband:hover:after,.agingnote:hover:not(:disabled):after{text-decoration:underline}}.kpis.six{grid-template-columns:repeat(6,minmax(0,1fr))}@media (width<=1400px){.kpis.six{grid-template-columns:repeat(3,minmax(0,1fr))}}.kpis:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.kpis:has(>:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}.gridwrap{flex-direction:column;gap:14px;min-width:0;display:flex}.agingstrip{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);flex-shrink:0;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;display:grid;overflow:hidden}@media (width<=1100px){.kpis,.agingstrip{grid-template-columns:repeat(2,minmax(0,1fr))}.kpis>:last-child:nth-child(odd),.agingstrip>:last-child:nth-child(odd){grid-column:1/-1}}:is(.kpis:has(+.agingstrip),.kpis:has(+.gridwrap)){border-bottom-color:var(--line-soft);border-bottom-right-radius:0;border-bottom-left-radius:0;box-shadow:-3px -3px 8px #ffffffb3}.kpis+.agingstrip,.kpis+.gridwrap{margin-top:calc(-1 * var(--gap-card))}.kpis+.agingstrip,.kpis+.gridwrap>.agingstrip:first-child{border-top:0;border-top-left-radius:0;border-top-right-radius:0;box-shadow:3px 3px 8px #14181f0e}.kpis>:first-child,.agingstrip>:first-child{border-top-left-radius:calc(var(--radius-card) - 1px);border-bottom-left-radius:calc(var(--radius-card) - 1px)}.kpis>:last-child,.agingstrip>:last-child{border-top-right-radius:calc(var(--radius-card) - 1px);border-bottom-right-radius:calc(var(--radius-card) - 1px)}:is(.kpis:has(+.agingstrip)>:first-child,.kpis:has(+.gridwrap)>:first-child){border-bottom-left-radius:0}:is(.kpis:has(+.agingstrip)>:last-child,.kpis:has(+.gridwrap)>:last-child){border-bottom-right-radius:0}.kpis+.agingstrip>:first-child,.kpis+.gridwrap>.agingstrip:first-child>:first-child{border-top-left-radius:0}.kpis+.agingstrip>:last-child,.kpis+.gridwrap>.agingstrip:first-child>:last-child{border-top-right-radius:0}@media (width<=1100px){.kpis>:first-child,.agingstrip>:first-child{border-bottom-left-radius:0}.kpis>:last-child,.agingstrip>:last-child{border-top-right-radius:0}.kpis>:nth-child(2),.agingstrip>:nth-child(2){border-top-right-radius:calc(var(--radius-card) - 1px)}.kpis>:nth-last-child(2):nth-child(odd),.kpis>:last-child:nth-child(odd),.agingstrip>:nth-last-child(2):nth-child(odd),.agingstrip>:last-child:nth-child(odd){border-bottom-left-radius:calc(var(--radius-card) - 1px)}.kpis:has(+.agingstrip)>:nth-last-child(2):nth-child(odd){border-bottom-right-radius:0;border-bottom-left-radius:0}.kpis:has(+.agingstrip)>:last-child{border-bottom-right-radius:0;border-bottom-left-radius:0}.kpis:has(+.gridwrap)>:nth-last-child(2):nth-child(odd){border-bottom-right-radius:0;border-bottom-left-radius:0}.kpis:has(+.gridwrap)>:last-child{border-bottom-right-radius:0;border-bottom-left-radius:0}.kpis+.agingstrip>:nth-child(2),.kpis+.gridwrap>.agingstrip:first-child>:nth-child(2){border-top-right-radius:0}}.ageband{min-height:var(--band-h);text-align:left;border:0;border-right:1px solid var(--line-soft);cursor:pointer;font:inherit;transition:box-shadow var(--dur-fast) ease, background var(--dur-fast) ease;background:0 0;flex-direction:column;justify-content:center;gap:1px;margin-right:-1px;padding:12px 16px;display:flex}@media (hover:hover) and (pointer:fine){.ageband:hover{background:var(--accent-soft)}}.ageband:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.ageband-count{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink);font-size:24px;font-weight:680;line-height:1.15}.ageband-label{letter-spacing:.06em;color:var(--ink-faint);font-size:10.5px;font-weight:650}.ageband-value{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:11.5px}.ageband.ok .ageband-count{color:var(--good)}.ageband.warn .ageband-count{color:var(--warn)}.ageband.bad .ageband-count{color:var(--bad)}.ageband.ok .ageband-label,.ageband.warn .ageband-label,.ageband.bad .ageband-label{color:var(--ink-muted)}.ageband.ageband-zero:not(:hover){background:0 0}.ageband.ageband-zero .ageband-count{color:var(--ink-faint)}.ageband.on{background:linear-gradient(180deg, var(--accent-soft) 0%, var(--surface) 100%);box-shadow:inset 0 0 0 2px var(--accent)}@media (hover:hover) and (pointer:fine){.ageband.on:hover{background:linear-gradient(180deg, var(--accent-soft-bd) 0%, var(--accent-soft) 100%)}}.ageband{position:relative}.agingnote{min-height:var(--band-h);text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;white-space:nowrap;transition:border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;background:0 0;border:0;flex-direction:column;justify-content:center;gap:2px;padding:12px 16px;display:flex;position:relative}@media (hover:hover) and (pointer:fine){.agingnote:hover:not(:disabled){background:var(--accent-soft)}}.agingnote-empty{cursor:default}.agingnote-empty .agingnote-oldest{color:var(--ink-faint)}.agingnote:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.agingnote.on{box-shadow:inset 0 0 0 2px var(--accent);background:linear-gradient(180deg, var(--accent-soft) 0%, var(--surface) 100%)}.agingnote-label{letter-spacing:.06em;color:var(--ink-faint);font-size:10.5px;font-weight:650}.agingnote-oldest{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--bad);font-size:24px;font-weight:680;line-height:1.15}.agingnote-open{color:var(--ink-faint);font-size:11.5px}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);z-index:30;border-radius:var(--radius);background:var(--ink);color:#fff;letter-spacing:0;text-transform:none;white-space:normal;text-align:left;width:max-content;max-width:280px;box-shadow:var(--shadow-lg);pointer-events:none;opacity:0;visibility:hidden;transform-origin:100% 100%;transition:opacity var(--dur-tip) var(--ease-out), transform var(--dur-tip) var(--ease-out), visibility var(--dur-tip);padding:6px 9px;font-size:11.5px;font-weight:500;line-height:1.35;position:absolute;bottom:calc(100% + 6px);right:0;transform:scale(.97)}[data-tip]:focus-visible:after{opacity:1;visibility:visible;transform:none}@media (hover:hover) and (pointer:fine){[data-tip]:hover:after{opacity:1;visibility:visible;transform:none}}.totalrow td{background:var(--accent-soft);border-top:2px solid var(--line);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:680;position:sticky;bottom:0}.tab{color:var(--ink-muted);transition:color var(--dur-fast) ease, border-color var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);background:0 0;border:none;border-bottom:2px solid #0000;padding:13px 14px 12px;font-size:13.5px;font-weight:600;position:relative}@media (hover:hover) and (pointer:fine){.tab:hover{color:var(--ink)}}.tab.on{color:var(--accent-text);border-bottom-color:var(--accent)}.branchpick{color:var(--ink-faint);align-items:center;gap:7px;font-size:12px;font-weight:600;display:flex}.branchpick .control{height:30px}.tabnote{color:var(--ink-faint);font-size:12px;font-weight:600}.namerow{flex-wrap:wrap;align-items:center;gap:7px;display:flex}table.grid th.cell-center,table.grid td.cell-center{text-align:center}td.cell-center .checkfield{justify-content:center}.pill-you{color:var(--open-fg);background:var(--open-bg);border-color:var(--open-bd);border-radius:var(--radius-pill);text-transform:none;letter-spacing:.02em;font-size:var(--fs-label);padding:2px 9px}.pagebar{flex-wrap:wrap;align-items:center;gap:10px;min-height:30px;display:flex}.pagebar h2{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:17px;font-weight:680}.pagebar-note{font-size:var(--fs-note);color:var(--ink-faint)}.pagebar .spacer{flex:auto}.pagebar .branchpick{margin-left:auto}.infobtn{border:1px solid var(--line-input);border-radius:var(--radius-pill);background:var(--surface);width:20px;height:20px;color:var(--ink-muted);font-family:var(--font-brand);cursor:pointer;transition:transform var(--dur-press) var(--ease-out);flex:none;place-items:center;padding:0;font-size:11px;font-style:italic;font-weight:700;line-height:1;display:inline-grid}@media (hover:hover) and (pointer:fine){.infobtn:hover{border-color:var(--brand-navy);color:var(--ink)}}@keyframes infobtn-pop{0%{scale:.86}to{scale:1}}.infobtn[aria-expanded=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text);animation:infobtn-pop var(--dur-press) var(--ease-out)}.helpnote{background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-muted);font-size:var(--fs-note);max-width:62rem;padding:10px 14px}.helpnote p{margin:0}.helpnote strong{color:var(--ink);font-weight:650}.statusbtn{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);height:26px;color:var(--ink-muted);font-family:inherit;font-size:var(--fs-label);white-space:nowrap;cursor:pointer;transition:transform var(--dur-press) var(--ease-out);align-items:center;gap:7px;padding:0 10px;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.statusbtn:hover:not(:disabled){border-color:var(--brand-navy);color:var(--ink)}}.statusbtn:disabled{cursor:progress;opacity:.6}.statusdot{border-radius:var(--radius-pill);background:var(--good);flex:none;width:6px;height:6px}.statusbtn.off{background:var(--mute-bg);color:var(--mute);border-color:var(--mute-bd)}.statusbtn.off .statusdot{box-shadow:inset 0 0 0 1.5px var(--ink-faint);background:0 0}.chips{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.chip{border-radius:var(--radius-pill);border:1px solid var(--accent-soft-bd);background:var(--accent-soft);color:var(--open-fg);transition:transform var(--dur-press) var(--ease-out);align-items:center;gap:7px;padding:5px 9px;font-size:12px;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.chip:hover{border-color:var(--accent);background:var(--accent-soft-bd)}}.chip span{opacity:.6;font-size:13px}.chartgrid{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.chartcard.span2{grid-column:span 2}.chartcard.span3{grid-column:span 3}.chartcard.span4{grid-column:span 4}.chartcard.span6{grid-column:span 6}@media (width<=1420px){.chartgrid{grid-template-columns:repeat(4,minmax(0,1fr))}.chartcard.span4{grid-column:span 4}.chartcard.span3,.chartcard.span2{grid-column:span 2}.chartcard.span6{grid-column:span 4}}@media (width<=900px){.chartgrid{grid-template-columns:minmax(0,1fr)}.chartcard.span2,.chartcard.span3,.chartcard.span4,.chartcard.span6{grid-column:span 1}}.chartcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);flex-direction:column;min-width:0;padding:14px 16px 16px;display:flex}.chartcard .chartbody{flex-direction:column;flex:1;justify-content:center;min-height:0;display:flex}.chartcard header{align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.chartcard h3{color:var(--ink);font-size:13.5px;font-weight:680}.chartcard .hint{color:var(--ink-faint);font-size:11.5px}.chartcard header.head-icon{grid-template-rows:auto auto;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:1px 11px;display:grid}.head-icon .card-disc{border-radius:var(--radius);background:var(--surface-sunken);border:1px solid var(--line-soft);width:28px;height:28px;color:var(--ink-faint);grid-area:1/1/3;place-items:center;display:grid}.head-icon h3{grid-area:1/2;align-self:end}.head-icon .hint{text-align:left;grid-area:2/2;align-self:start}.head-icon .quotes-card-actions{grid-area:1/3/3}.card-foot{border-top:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:0 0 calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px);font-size:var(--fs-note);color:var(--ink-muted);align-items:flex-start;gap:9px;margin:12px -16px -16px;padding:10px 16px;line-height:1.4;display:flex}svg.chart{width:100%;height:auto;display:block;overflow:visible}svg.chart.donut{max-height:216px;margin:0 auto}svg.chart .gridline{stroke:var(--line);stroke-width:1px}svg.chart .axis{fill:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:10.5px}svg.chart .axis.strong{fill:var(--ink-muted);font-weight:650}svg.chart .bargroup,svg.chart .slice{transition:opacity var(--dur-fast) var(--ease-out)}svg.chart .pickable{cursor:pointer}@media (hover:hover) and (pointer:fine){svg.chart .pickable:hover{opacity:.78}}svg.chart .dim{opacity:.22}.legend{color:var(--ink-muted);flex-wrap:wrap;gap:4px 14px;margin-top:10px;font-size:12px;display:flex}.legend li{align-items:center;gap:6px;display:flex}.legend i{border-radius:2px;width:9px;height:9px;display:inline-block}.legend .dim{color:var(--ink-faint);font-variant-numeric:tabular-nums}.agingstats{border-top:1px solid var(--line);gap:22px;margin-top:12px;padding-top:11px;display:flex}.agingstats .label{letter-spacing:.05em;color:var(--ink-faint);font-size:10.5px;font-weight:650;display:block}.agingstats strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:17px;font-weight:680}.agingstats .bad{color:var(--bad)}table.grid.compact td,table.grid.compact th{padding:6px 10px;font-size:12.5px}.card-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);flex-direction:column;min-height:0;display:flex;overflow:hidden}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;display:flex}.spacer{flex:1}.filterbar{border-bottom:1px solid var(--line);background:var(--surface-sunken);flex-wrap:wrap;align-items:flex-end;gap:10px;padding:12px 14px;display:flex}.checkfield{height:36px;color:var(--ink-muted);white-space:nowrap;cursor:pointer;align-items:center;gap:6px;font-weight:500;display:flex}.checkfield input{accent-color:var(--accent);width:15px;height:15px}.tablewrap{flex:1;min-height:0;overflow:auto}table.grid{border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;width:100%}table.grid th{z-index:2;background:var(--surface-sunken);text-align:left;letter-spacing:.055em;color:var(--ink-faint);border-bottom:1px solid var(--line-input);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:9px 12px;font-size:10.5px;font-weight:680;position:sticky;top:0}table.grid th.num{text-align:right}table.grid th.sortable{cursor:pointer;transition:color var(--dur-fast) ease}@media (hover:hover) and (pointer:fine){table.grid th.sortable:hover{color:var(--accent-text)}}table.grid th .sortmark{color:var(--accent-text);margin-left:3px}table.grid td{border-bottom:1px solid var(--line);white-space:nowrap;color:var(--ink);vertical-align:middle;padding:7px 12px}table.grid tbody tr{transition:background var(--dur-fast) ease}@media (hover:hover) and (pointer:fine){table.grid tbody tr:hover{background:var(--accent-soft)}}table.grid tbody tr:last-child td{border-bottom:none}table.grid td.num{text-align:right}table.grid td.idcode{font-family:var(--mono);color:var(--accent-text);letter-spacing:-.02em;font-size:12px;font-weight:600}table.grid td.muted-cell{color:var(--ink-faint)}.sub-line{color:var(--ink-faint);font-variant-numeric:tabular-nums;margin-top:1px;font-size:11.5px;display:block}.truncate{text-overflow:ellipsis;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}table.grid td.col-wide{max-width:215px}table.grid td.col-mid{max-width:165px}@media (hover:hover) and (pointer:fine){td.editable:hover{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent);border-radius:3px}td.editable:hover:after{content:"";border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);opacity:.75;width:5px;height:5px;margin-top:-3px;position:absolute;top:50%;right:5px;transform:rotate(45deg)}}td.editable{position:relative}td.editing{background:var(--accent-soft);padding:3px 6px}td.editing .control{width:100%;height:30px}td.actions{white-space:nowrap;text-align:right;width:1%}td.actions .icon-btn{opacity:0;transition:opacity var(--dur-fast) var(--ease-out), color var(--dur-fast) ease, background var(--dur-fast) ease}td.actions:focus-within .icon-btn{opacity:1}@media (hover:hover) and (pointer:fine){tr:hover td.actions .icon-btn{opacity:1}}@media (hover:none){td.actions .icon-btn{opacity:1}}td.actions.pinned,th.actions-head{background:var(--surface);position:sticky;right:0}th.actions-head{background:var(--surface-sunken);z-index:2}@media (hover:hover) and (pointer:fine){tr:hover td.actions.pinned{background:var(--accent-soft)}}td.actions.pinned:before,th.actions-head:before{content:"";background:var(--line);width:1px;position:absolute;inset:0 auto 0 0}.disclosure{border-radius:var(--radius);color:var(--brand-navy);white-space:nowrap;transition:color var(--dur-fast) ease, background var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);background:0 0;border:none;align-items:center;gap:5px;padding:3px 6px;font-size:12.5px;font-weight:600;display:inline-flex}@media (hover:hover) and (pointer:fine){.disclosure:hover{color:var(--accent-text);background:var(--line)}}.disclosure[aria-expanded=true]{color:var(--accent-text)}tr.clickable{cursor:pointer}td.panelcell{white-space:normal;background:var(--surface-sunken);border-bottom:1px solid var(--line);padding:0}.eventpanel{padding:12px 16px 14px}.eventpanel-head{border-bottom:1px solid var(--line-input);align-items:center;gap:10px;margin-bottom:4px;padding-bottom:9px;display:flex}.eventpanel-head strong{color:var(--ink);font-size:13px}.eventpanel-head .spacer{flex:1}.eventrow{border-bottom:1px solid var(--line);padding:8px 0}.eventrow:last-child{border-bottom:none;padding-bottom:0}.btn-danger{color:var(--bad);border-color:var(--bad-bg);background:var(--bad-bg)}@media (hover:hover) and (pointer:fine){.btn-danger:hover{color:#fff;background:var(--bad);border-color:var(--bad)}}.toast{z-index:40;background:var(--ink);color:#fff;border-radius:var(--radius);transition:opacity var(--dur-modal) var(--ease-out), transform var(--dur-modal) var(--ease-out);align-items:center;gap:14px;padding:11px 16px;font-size:13px;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 6px 22px #25374747}@starting-style{.toast{opacity:0;transform:translate(-50%,100%)}}.toast .btn-link{color:var(--accent-soft-bd);opacity:1;font-weight:600}@media (hover:hover) and (pointer:fine){.toast .btn-link:hover{color:#fff}}.flagdot{color:var(--warn);vertical-align:-2px;cursor:help;display:inline-flex}.pinbtn{color:var(--accent-text);vertical-align:-2px;margin-left:4px}.footerbar{border-top:1px solid var(--line);background:var(--surface-sunken);color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;font-size:12.5px;display:flex}.footerbar .control{height:30px}.auth{background:var(--rail-bg);place-items:center;min-height:100%;padding:24px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);width:100%;max-width:46rem;transition:opacity var(--dur-modal) var(--ease-out), transform var(--dur-modal) var(--ease-out);grid-template-columns:17rem minmax(19rem,1fr);display:grid;overflow:hidden}.auth-brand{background:var(--accent-soft);border-right:1px solid var(--accent-soft-bd);justify-content:center;align-items:center;padding:40px 32px;display:flex}.auth-brand svg{max-width:100%}.auth-body{align-self:center;padding:34px 32px}.auth-body h2{color:var(--ink);margin:0 0 3px;font-size:17px;font-weight:650}.auth-body h2:not(:has(+p.sub)){margin-bottom:20px}.auth-body p.sub{color:var(--ink-muted);margin:0 0 20px;font-size:13px}.auth-body label{color:var(--ink-muted);margin-bottom:5px;font-size:12px;font-weight:600;display:block}.auth-body .control{width:100%;margin-bottom:14px}.auth-body .btn{width:100%;height:40px}.auth-alt{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.auth-alt:has(>.btn-link){text-align:center}.control-box{margin-bottom:14px;position:relative}.control-box .control{width:100%;margin-bottom:0;padding-left:36px}.control-i{color:var(--ink-faint);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.control-box:focus-within .control-i{color:var(--accent-text)}.control-reveal{border-radius:var(--radius);font:inherit;font-size:var(--fs-micro);color:var(--ink-faint);cursor:pointer;transition:background var(--dur-fast) ease, color var(--dur-fast) ease;background:0 0;border:0;padding:3px 7px;font-weight:600;position:absolute;top:50%;right:8px;transform:translateY(-50%)}@media (hover:hover) and (pointer:fine){.control-reveal:hover{background:var(--surface-chip);color:var(--ink)}}.control-box:has(.control-reveal) .control{padding-right:58px}.btn-signin{justify-content:center;align-items:center;gap:9px;display:inline-flex}.btn-signin svg{flex:none}.error-in{animation:err-in var(--dur-pop) var(--ease-out) both;align-items:center;gap:8px;display:flex}.error-in svg{flex:none}@keyframes err-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.error-in{animation:none}}.spin-i{transform-origin:50%;animation:1.1s linear infinite spin-i}@keyframes spin-i{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin-i{animation:none}}@media (width<=44rem){.auth-card{grid-template-columns:minmax(0,1fr);max-width:26rem}.auth-brand{border-right:0;border-bottom:1px solid var(--accent-soft-bd);padding:26px 24px}.auth-body{padding:24px}}.error{background:var(--bad-bg);color:var(--bad);border-radius:var(--radius);border:1px solid var(--bad-bd);margin-bottom:14px;padding:9px 12px;font-size:12.5px}.banner{background:var(--accent-soft);border:1px solid var(--accent-soft-bd);color:var(--open-fg);border-radius:var(--radius);align-items:center;gap:10px;padding:9px 12px;font-size:13px;display:flex}.banner-error{background:var(--bad-bg);border-color:var(--bad-bd);color:var(--bad)}.banner-warn{background:var(--warn-bg);border-color:var(--warn-bd);color:var(--warn)}.banner-good{background:var(--good-bg);border-color:var(--good-bd);color:var(--good)}.banner-info{background:var(--accent-soft);border-color:var(--accent-soft-bd);color:var(--open-fg)}.dropzone{border:1.5px dashed var(--line-input);border-radius:var(--radius-card);background:var(--surface-sunken);color:var(--ink-muted);text-align:center;cursor:pointer;transition:border-color var(--dur-fast) ease, background var(--dur-fast) ease, color var(--dur-fast) ease;flex-direction:column;align-items:center;gap:4px;padding:30px 20px;display:flex}.dropzone.over{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}@media (hover:hover) and (pointer:fine){.dropzone:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}}.dropzone.over{border-style:solid}.dropzone.busy{pointer-events:none;opacity:.65}.dropzone strong{color:var(--ink);font-size:14px}.dropzone svg{color:var(--brand-navy)}.importresult{flex-direction:column;gap:11px;display:flex}.importhead{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding-bottom:10px;display:flex}.importhead strong{color:var(--ink);font-size:13.5px}.difftally{font-variant-numeric:tabular-nums;align-items:baseline;gap:16px;font-size:14px;font-weight:650;display:flex}.difftally .add{color:var(--good)}.difftally .mod{color:var(--warn)}.difftally .same{color:var(--ink-faint);font-weight:550}.difftally .dim{font-size:12.5px;font-weight:500}.importactions{align-items:center;gap:10px;padding-top:4px;display:flex}.blockpanel{border:1px solid var(--bad-bd);background:var(--bad-bg);border-radius:var(--radius);padding:11px 13px}.blockhead{color:var(--bad);align-items:center;gap:7px;margin-bottom:4px;display:flex}.blockpanel p{color:var(--ink-muted);margin:0 0 8px;font-size:12.5px}.blockrows{flex-direction:column;gap:3px;font-size:12.5px;display:flex}.blockrows li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.blockrows .rownum{color:var(--ink);font-variant-numeric:tabular-nums;min-width:62px;font-weight:650}.blockrows code,.changelist code{font-family:var(--mono);color:var(--accent-text);font-size:11.5px;font-weight:600}.changelist{flex-direction:column;gap:5px;font-size:12.5px;display:flex}.changelist li{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.changelist .who{color:var(--ink-muted);min-width:140px}.fieldchange{color:var(--ink-muted)}.fieldchange .was{color:var(--bad);text-decoration:line-through}.fieldchange .now{color:var(--good);font-weight:600}.page:has(>.landing){justify-content:safe center;align-items:center}.landing{text-align:center;flex-direction:column;align-items:center;gap:30px;width:100%;max-width:62rem;padding:24px 0;display:flex}.landing-head{flex-direction:column;align-items:center;gap:12px;display:flex}.landing-mark{border-radius:var(--radius-card);border:1px solid var(--accent-soft-bd);background:var(--accent-soft);width:64px;height:64px;color:var(--accent-text);box-shadow:var(--shadow-sm);place-items:center;display:inline-grid}.landing-head h2{letter-spacing:-.025em;color:var(--ink);margin:0;font-size:26px;font-weight:680}.landing-lede{max-width:52ch;font-size:var(--fs-body);color:var(--ink-muted);margin:0;line-height:1.55}.landing-cards{gap:var(--gap-card);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));width:100%;display:grid}.landing-card{text-align:center;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-sm);cursor:pointer;transition:border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);grid-template-rows:12px auto 1fr auto;justify-items:center;row-gap:8px;padding:24px 20px 20px;display:grid}@media (hover:hover) and (pointer:fine){.landing-card:hover{border-color:var(--accent);box-shadow:var(--shadow)}.landing-card:hover .landing-card-go{color:var(--accent-text)}}.landing-card:active{transform:scale(.97)}.landing-card:focus-visible{box-shadow:var(--ring);outline:none}.landing-card-meta{font-size:var(--fs-micro);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--accent-text);grid-row:1;align-self:center;font-weight:700;line-height:1}.landing-card-label{font-size:var(--fs-title);color:var(--ink);grid-row:2;font-weight:650}.landing-card-body{font-size:var(--fs-note);color:var(--ink-muted);grid-row:3;line-height:1.55}.landing-card-go{font-size:var(--fs-label);color:var(--ink-faint);transition:color var(--dur-fast) ease;grid-row:4;align-items:center;gap:3px;margin-top:6px;font-weight:650;display:inline-flex}.addform{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.addform .field{min-width:190px}.addform .checkfield{height:36px}.control-sm{height:30px;padding:0 8px;font-size:12.5px}.grantcell{white-space:normal}.grant{border-radius:var(--radius-pill);border:1px solid var(--accent-soft-bd);background:var(--accent-soft);color:var(--open-fg);transition:transform var(--dur-press) var(--ease-out);align-items:center;gap:5px;margin:0 4px 4px 0;padding:3px 8px;font-size:11.5px;font-weight:650;display:inline-flex}@media (hover:hover) and (pointer:fine){.grant:hover{border-color:var(--bad);background:var(--bad-bg);color:var(--bad)}}.grant em{opacity:.75;font-style:normal;font-weight:500}.grant span{opacity:.55}.grant.viewer{border-color:var(--line-input);background:var(--mute-bg);color:var(--ink-muted)}.resetrow{align-items:center;gap:6px;display:inline-flex}.pwrow{gap:8px;margin-top:12px;display:flex}.pwrow .control{font-family:var(--mono);flex:1;font-size:13px}.addgrant{appearance:none;text-align:center;text-align-last:center;border:1px dashed var(--line-input);border-radius:var(--radius-pill);background:var(--surface);width:26px;height:24px;color:var(--ink-faint);cursor:pointer;vertical-align:middle;transition:border-color var(--dur-fast) ease, color var(--dur-fast) ease, background var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);padding:0;font-size:14px;font-weight:650;line-height:1}@media (hover:hover) and (pointer:fine){.addgrant:hover{border-style:solid;border-color:var(--accent);color:var(--accent-text);background:var(--accent-soft)}}td.actions .resetrow .icon-btn{opacity:1}.modal-overlay{z-index:60;transition:opacity var(--dur-modal) var(--ease-out);background:#25374773;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-lg);transform-origin:50%;width:100%;max-width:460px;transition:opacity var(--dur-modal) var(--ease-out), transform var(--dur-modal) var(--ease-out);padding:20px 22px}@starting-style{.modal-overlay{opacity:0}.modal-card{opacity:0;transform:scale(.96)}}.modal-card h3{color:var(--ink);margin-bottom:8px;font-size:15px;font-weight:680}.modal-card p{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.5}.modalactions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.modules{gap:10px;display:grid}.module{text-align:left;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);transition:border-color var(--dur-fast) ease, background var(--dur-fast) ease, box-shadow var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);padding:14px 16px;display:block}@media (hover:hover) and (pointer:fine){.module:hover{border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--shadow-sm)}}.module strong{color:var(--ink);margin-bottom:2px;font-size:14.5px;display:block}.module span{color:var(--ink-muted);font-size:12.5px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:0 var(--gutter-card) 11px}.card-h{font-size:var(--fs-body);letter-spacing:var(--track-eyebrow);color:var(--accent-text);margin:0;font-weight:700}.card>.card-h{height:var(--cardhead-h);border-bottom:1px solid var(--line-soft);align-items:center;display:flex}.card-head{min-height:var(--cardhead-h);border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.card>.card-h,.card>.card-head{margin:0 calc(-1 * var(--gutter-card));padding-left:var(--gutter-card);padding-right:var(--gutter-card)}.card-head .card-h{flex:auto}.card-head .actions{flex:none;gap:6px;display:flex}.card-cap{font-size:var(--fs-note);color:var(--ink-faint)}.card>*{margin-top:11px}.card>.card-h:first-child,.card>.card-head:first-child{margin-top:0}.card>.card-cap+*{margin-top:8px}.card>:last-child{margin-bottom:0}:is(.card:has(>.card-h:only-child),.card:has(>.card-head:only-child)){padding-bottom:0}.facts{border:1px solid var(--line-soft);border-radius:var(--radius);flex-shrink:0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}@media (width>=52rem){.facts{grid-template-columns:repeat(4,minmax(0,1fr))}}.facts.facts-3{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=52rem){.facts.facts-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.facts>div{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);margin-bottom:-1px;margin-right:-1px;padding:11px 14px}@media (width<=51.9375rem){.facts>div:last-child:nth-child(odd){grid-column:1/-1}}.fact-k{font-size:var(--fs-micro);letter-spacing:var(--track-eyebrow);color:var(--ink-faint);font-weight:700}.fact-v{font-size:var(--fs-title);color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:4px;font-weight:600;line-height:1.3}.fact-sub{font-size:var(--fs-note);color:var(--ink-faint);margin-top:2px;font-weight:400;display:block}.field-label{font-size:var(--fs-label);color:var(--ink-faint);margin:0;font-weight:600}.field-hint{font-size:var(--fs-note);color:var(--ink-faint);margin:3px 0 0}.cols{gap:12px 16px;display:grid}.cols-2{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.cols-3{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}.field>input:not(.control){border:1px solid var(--line-input);border-radius:var(--radius);background:var(--surface);height:36px;color:var(--ink);font-family:inherit;font-size:var(--fs-field);width:100%;padding:0 10px}@media (hover:hover) and (pointer:fine){.field>input:not(.control):hover:not(:disabled){border-color:var(--brand-navy)}}.field>input:not(.control):disabled{background:var(--surface-sunken);color:var(--ink-muted);cursor:not-allowed}.btn-2{border-radius:var(--radius);border:1px solid var(--line-input);background:var(--surface);height:36px;color:var(--ink);white-space:nowrap;box-shadow:var(--shadow-sm);transition:background var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:550;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn-2:hover:not(:disabled){background:var(--surface-sunken);border-color:var(--brand-navy)}}.btn-2:disabled{opacity:.45;cursor:not-allowed}.muted{color:var(--ink-muted)}.dim{color:var(--ink-faint)}.empty{text-align:center;color:var(--ink-muted);padding:56px 24px}.empty svg{color:var(--ink-faint);margin-bottom:10px}.empty strong{color:var(--ink);margin-bottom:4px;font-size:14.5px;display:block}.section-head{color:var(--ink);align-items:center;gap:8px;padding:14px 14px 8px;font-size:13px;font-weight:650;display:flex}.flagrow{border-top:1px solid var(--line);align-items:baseline;gap:10px;padding:8px 14px;font-size:13px;display:flex}.flagrow .kind{min-width:128px;color:var(--ink);font-weight:600}.flagrow .msg{color:var(--ink-muted);flex:1}a{color:var(--accent-text)}@media (hover:hover) and (pointer:fine){a:hover{color:var(--accent-text)}}tr.newrow>td{z-index:1;background:var(--accent-soft);border-bottom:2px solid var(--accent);vertical-align:middle;padding:5px 8px;position:sticky;top:34px}tr.newrow.dirty>td{background:color-mix(in srgb, var(--warn-bg) 32%, var(--surface));border-bottom-color:var(--warn)}@media (hover:hover) and (pointer:fine){tr.newrow:hover>td{background:var(--accent-soft)}tr.newrow.dirty:hover>td{background:color-mix(in srgb, var(--warn-bg) 32%, var(--surface))}}.cellinput{width:100%;min-width:0;height:28px;color:var(--ink);transition:border-color var(--dur-fast) ease, background var(--dur-fast) ease, box-shadow var(--dur-fast) ease;background:#ffffffbf;border:1px solid #0000;border-radius:4px;outline:none;padding:0 6px;font-size:13px}.cellinput::placeholder{color:var(--ink-faint)}@media (hover:hover) and (pointer:fine){.cellinput:hover{border-color:var(--line-input);background:var(--surface)}}.cellinput:focus{border-color:var(--accent);background:var(--surface);box-shadow:var(--ring)}.cellinput.num{text-align:right;font-variant-numeric:tabular-nums}tr.newrow td.actions .btn-sm,tr.newrow td.actions .icon-btn{opacity:1}td.actions .rowedit-btn{opacity:.68;height:26px;transition:opacity var(--dur-fast) var(--ease-out), background var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);padding:0 9px;font-size:12px}td.actions:focus-within .rowedit-btn{opacity:1}@media (hover:hover) and (pointer:fine){tr:hover td.actions .rowedit-btn{opacity:1}}tr.rowediting>td{background:var(--accent-soft);padding:5px 8px}@media (hover:hover) and (pointer:fine){tr.rowediting:hover>td{background:var(--accent-soft)}}tr.rowediting>td:first-child{box-shadow:inset 2px 0 0 var(--accent)}tr.rowediting td.actions .btn-sm,tr.rowediting td.actions .icon-btn{opacity:1}tr.addedrow>td{background:var(--good-bg);border-bottom:1px solid var(--good-bd)}@media (hover:hover) and (pointer:fine){tr.addedrow:hover>td{background:color-mix(in srgb, var(--good-bg) 88%, var(--good))}}.materials-frame{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);width:100%;height:calc(100vh - 148px);min-height:30rem;box-shadow:var(--shadow-sm);display:block}.quotes-card header{flex-wrap:wrap}.quotes-card>header h3{font-size:var(--fs-body);letter-spacing:var(--track-eyebrow);color:var(--accent-text);font-weight:700}.quotes-card-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.quotes-cap{color:var(--ink-faint);margin:-4px 0 12px;font-size:12.5px;line-height:1.5}.quotes-card+.quotes-card{margin-top:0}.quotes-cols-2,.quotes-cols-3{align-items:start;gap:14px;display:grid}.quotes-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.quotes-fieldgrid{align-items:start}:is(.quotes-fieldgrid>.quotes-textarea,.quotes-fieldgrid>.field:has(>.quotes-textarea)){grid-column:1/-1}.quotes-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.quotes-scoperow{max-width:260px;margin-bottom:14px}@media (width<=900px){.quotes-cols-2,.quotes-cols-3{grid-template-columns:minmax(0,1fr)}.quotes-scoperow{max-width:none}}.quotes-split{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:16px;display:grid}.quotes-split-main{min-width:0}.quotes-rail-stack{flex-direction:column;gap:16px;min-width:0;display:flex}@media (width<=1100px){.quotes-split{grid-template-columns:minmax(0,1fr)}}.quotes-summary{grid-template-columns:minmax(0,1fr) 26.5rem;align-items:start;gap:20px;display:grid}@media (width<=1100px){.quotes-summary{grid-template-columns:minmax(0,1fr)}}.quotes-summary-rail{padding:14px 16px 16px}.quotes-detail-split{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}@media (width<=1000px){.quotes-detail-split{grid-template-columns:minmax(0,1fr)}}.quotes-mt{margin-top:14px}.quotes-mb{margin-bottom:14px}.quotes-full{width:100%}.quotes-grow{flex:auto;min-width:0}.quotes-actions{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-top:14px;display:flex}.quotes-actions-end{justify-content:flex-end}.quotes-actions-row{flex-wrap:nowrap}.quotes-actions-row>*{flex:0 auto;min-width:0}@media (width<=1100px){.quotes-actions-row{flex-wrap:wrap}}.quotes-box-t{font-size:var(--fs-label);color:var(--ink-faint);margin:16px 0 5px;font-weight:600}.quotes-box-t:first-child{margin-top:0}.quotes-hint{color:var(--ink-faint);margin:7px 0 0;font-size:11.5px;line-height:1.5}.quotes-hint-warn{color:var(--warn-ink,#96650a)}.quotes-warnlist{margin:4px 0 0;padding-left:18px}.quotes-note{margin:0 0 10px;font-size:13px}.quotes-field-label{font-size:var(--fs-label);color:var(--ink-faint);font-weight:600}.quotes-field-hint{color:var(--ink-faint);font-size:11.5px}.quotes-field{min-width:0}textarea{resize:none}.quotes-textarea{field-sizing:content;resize:none;height:auto;min-height:58px;max-height:160px;padding:8px 10px;line-height:1.5}.quotes-radios{gap:16px;margin:6px 0 14px;font-size:13px;display:flex}.quotes-radios label{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.quotes-radios input{accent-color:var(--accent)}.quotes-facts{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.quotes-facts>div{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);margin-bottom:-1px;margin-right:-1px;padding:10px 14px}@media (width<=1100px){.quotes-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.quotes-facts{grid-template-columns:minmax(0,1fr)}}.quotes-fact-k{font-size:var(--fs-micro);letter-spacing:var(--track-eyebrow);color:var(--ink-faint);font-weight:700}.quotes-fact-v{font-size:var(--fs-title);color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:4px;font-weight:600;line-height:1.3}.quotes-fact-v.is-email{font-size:var(--fs-body);overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.quotes-fact-sub{color:var(--ink-faint);font-size:11.5px;display:block}.quotes-rail{background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--radius);font-variant-numeric:tabular-nums;padding:12px 14px}.quotes-rail-t{letter-spacing:.06em;color:var(--ink-faint);margin-bottom:8px;font-size:10.5px;font-weight:680}.quotes-rail-row{color:var(--ink-muted);justify-content:space-between;gap:12px;padding:3px 0;font-size:12.5px;display:flex}.quotes-rail-row.sub{border-top:1px solid var(--line);color:var(--ink);margin-top:6px;padding-top:7px;font-weight:600}.quotes-rail-row.tot{border-top:1px solid var(--line-input);color:var(--ink);margin-top:6px;padding-top:7px;font-size:14px;font-weight:680}.quotes-tot{color:var(--ink-muted);font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;padding:4px 0;font-size:13px;display:flex}.quotes-tot-rule{background:var(--line-input);height:1px;margin:8px 0}.quotes-tot-grand-k{letter-spacing:.06em;color:var(--ink-faint);font-size:10.5px;font-weight:650}.quotes-tot-grand-v{letter-spacing:-.02em;color:var(--accent-text);font-variant-numeric:tabular-nums;font-size:26px;font-weight:700;line-height:1.2}.quotes-billto-name{color:var(--ink);font-size:15px;font-weight:650}.quotes-billto-addr{color:var(--ink-muted);margin:2px 0 12px;font-size:12.5px;line-height:1.5}.quotes-linegrid,.quotes-linetable{border:1px solid var(--line);border-radius:var(--radius);max-height:none;overflow:auto visible}.quotes-linegrid table.grid td,.quotes-linetable table.grid td{padding:4px 8px}.quotes-linegrid .cellinput{height:26px}.quotes-tick{text-align:center;width:32px}.quotes-tick input{accent-color:var(--accent)}table.grid tbody tr.quotes-ticked{background:var(--accent-soft-bd)}@media (hover:hover) and (pointer:fine){table.grid tbody tr.quotes-ticked:hover{background:var(--accent-soft-bd)}}table.grid td.quotes-calc{color:var(--ink-muted);font-variant-numeric:tabular-nums;background:var(--surface-sunken)}.quotes-grid-empty{text-align:center;color:var(--ink-faint);padding:16px 12px;font-size:12.5px}.quotes-grid-foot{justify-content:flex-end;margin-top:7px;display:flex}.quotes-addrow{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.quotes-hours{text-align:right;font-variant-numeric:tabular-nums;flex:0 0 92px}.quotes-picker{position:relative}.quotes-picker .control{width:100%}.quotes-picker-list{z-index:40;background:var(--surface);border:1px solid var(--line-input);border-radius:var(--radius);max-height:320px;box-shadow:var(--shadow-lg);transform-origin:top;transition:opacity var(--dur-pop) var(--ease-out), transform var(--dur-pop) var(--ease-out);position:absolute;top:calc(100% + 2px);left:0;right:0;overflow-y:auto}@starting-style{.quotes-picker-list{opacity:0;transform:scale(.95)}}.quotes-picker-item{cursor:pointer;border-bottom:1px solid var(--line);align-items:baseline;gap:10px;padding:7px 10px;display:flex}.quotes-picker-item:last-child{border-bottom:none}@media (hover:hover) and (pointer:fine){.quotes-picker-item:hover{background:var(--accent-soft)}}.quotes-wo-item{flex:auto;justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.quotes-wo-item strong{font-variant-numeric:tabular-nums;font-weight:700}.quotes-wo-type{font-size:var(--fs-label);letter-spacing:var(--track-eyebrow);color:var(--accent-text);white-space:nowrap;font-weight:700}.quotes-pi-main{flex-direction:column;flex:auto;min-width:0;display:flex}.quotes-pi-main strong{font-size:13px;font-weight:600}.quotes-pi-main span{color:var(--ink-faint);font-size:11.5px}.quotes-pi-meta{color:var(--open-fg);font-variant-numeric:tabular-nums;flex:none;font-size:11.5px;font-weight:650}.quotes-pi-meta.none{color:var(--ink-faint);font-weight:500}.quotes-picker-empty,.quotes-picker-foot{color:var(--ink-faint);padding:9px 10px;font-size:11.5px}.quotes-picker-foot{border-top:1px solid var(--line);background:var(--surface-sunken)}.quotes-subtabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;margin-bottom:12px;display:flex}.quotes-subtabs .tab{padding:8px 12px 7px;font-size:13px}.quotes-subtab-body{min-width:0}.quotes-exp{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-sunken)}.quotes-exp>summary{cursor:pointer;color:var(--ink-muted);padding:9px 12px;font-size:12.5px;font-weight:600;list-style-position:inside}@media (hover:hover) and (pointer:fine){.quotes-exp>summary:hover{color:var(--accent-text)}}.quotes-exp-body{border-top:1px solid var(--line);background:var(--surface);border-radius:0 0 var(--radius) var(--radius);padding:12px}.quotes-share{align-items:center;gap:8px;min-width:160px;display:flex}.quotes-share-bar{border-radius:var(--radius-pill);background:var(--line);flex:auto;height:7px;overflow:hidden}.quotes-share-bar>span{background:var(--accent);height:100%;display:block}.quotes-share-pct{text-align:right;color:var(--ink-faint);font-variant-numeric:tabular-nums;flex:0 0 34px;font-size:11.5px}.quotes-worklist{flex-direction:column;display:flex}.quotes-wl-row{border:0;border-bottom:1px solid var(--line);width:100%;font:inherit;color:inherit;text-align:left;transition:transform var(--dur-press) var(--ease-out);background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:8px 4px;display:flex}.quotes-wl-row:last-child{border-bottom:none}@media (hover:hover) and (pointer:fine){.quotes-wl-row:hover{background:var(--accent-soft)}}.quotes-wl-row:focus-visible{box-shadow:var(--ring);outline:none}.quotes-wl-name{font-size:13px;font-weight:600;display:block}.quotes-wl-val{color:var(--ink);font-variant-numeric:tabular-nums;flex:none;font-size:13px;font-weight:650}.quotes-sq{grid-template-columns:340px minmax(0,1fr);align-items:start;gap:14px;display:grid}@media (width<=1000px){.quotes-sq{grid-template-columns:minmax(0,1fr)}}.quotes-sq-detail{flex-direction:column;gap:14px;min-width:0;display:flex}.quotes-sq-list{flex-direction:column;align-items:stretch;max-height:60vh;margin-top:10px;display:flex;overflow-y:auto}.quotes-sq-row{border-radius:var(--radius);width:auto;font:inherit;color:inherit;text-align:left;transition:transform var(--dur-press) var(--ease-out);background:0 0;border:0;margin:0 6px;padding:8px 10px;display:block}@media (hover:hover) and (pointer:fine){.quotes-sq-row:hover{background:var(--accent-soft)}}.quotes-sq-row:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.quotes-sq-row.on{background:var(--accent);color:#fff}@media (hover:hover) and (pointer:fine){.quotes-sq-row.on:hover{background:var(--accent);color:#fff}}.quotes-sq-row.on .quotes-sq-tot,.quotes-sq-row.on .sub-line{color:#fff;opacity:.9}.quotes-sq-list{padding:4px 0}.quotes-sq-name{justify-content:space-between;gap:10px;font-size:13px;font-weight:600;display:flex}.quotes-sq-tot{color:var(--ink);font-variant-numeric:tabular-nums;flex:none}.themerow{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.themerow>.field-label{font-size:var(--fs-field);color:var(--ink-muted);flex:none}.themeswitch{grid-template-columns:repeat(var(--n,3), auto);border-radius:var(--radius);background:var(--surface-chip);flex:none;max-width:100%;padding:3px;display:grid;position:relative}.themeswitch-thumb{width:var(--w,0px);border-radius:calc(var(--radius) - 2px);background:var(--surface);transform:translateX(calc(var(--x,0px) - 3px));transition:transform var(--dur-pop) var(--ease-out);pointer-events:none;position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 1px 2px #14181f14,0 3px 8px #14181f1a,inset 0 0 0 1px #fffc}.themeswitch-sm{flex:none;max-width:none;padding:2px}.themeswitch-sm button{height:24px;font-size:var(--fs-micro);gap:5px;padding:0 11px}.themeswitch-sm .themeswitch-thumb{transform:translateX(calc(var(--x,0px) - 2px));top:2px;bottom:2px;left:2px}.themeswitch-fill{grid-template-columns:repeat(var(--n,3), minmax(0, 1fr));width:100%;display:grid}.themeswitch button{z-index:1;border-radius:calc(var(--radius-card) - 3px);height:28px;color:var(--ink-muted);font:inherit;font-size:var(--fs-field);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) ease, transform var(--dur-press) var(--ease-out);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-weight:500;display:inline-flex;position:relative}.themeswitch button[aria-checked=true]{color:var(--ink);font-weight:600}@media (hover:hover) and (pointer:fine){.themeswitch button:hover{color:var(--ink)}}.themeswitch button:focus-visible{box-shadow:var(--ring);outline:none}.themeswitch button svg{flex:none}.btn:active:not(:disabled),.btn-2:active:not(:disabled),.btn-link:active:not(:disabled),.icon-btn:active:not(:disabled),.railicon:active,.themeswitch button:active,.tab:active,.chip:active,.infobtn:active,.statusbtn:active:not(:disabled),.disclosure:active,.addgrant:active,.grant:active,td.actions .rowedit-btn:active{transform:scale(.97)}.navrow:active,.navsubitem:active,.rail-user:active,.module:active,.quotes-wl-row:active,.quotes-sq-row:active{transform:scale(.985)}.kpi-filter:active,.ageband:active,.agingnote:active:not(:disabled),.quotes-picker-item:active{background:var(--accent-soft-bd)}.skel{vertical-align:middle;border-radius:var(--radius-pill);background:var(--line-soft);max-width:100%;height:12px;animation:skel-pulse 1.2s var(--ease-in-out) infinite alternate;display:inline-block}.skelrow td{height:36px}.kpi .value .skel{height:20px}@keyframes skel-pulse{to{opacity:.45}}@media (prefers-reduced-motion:reduce){.btn:active:not(:disabled),.btn-2:active:not(:disabled),.btn-link:active:not(:disabled),.icon-btn:active:not(:disabled),.railicon:active,.themeswitch button:active,.tab:active,.chip:active,.infobtn:active,.statusbtn:active:not(:disabled),.disclosure:active,.addgrant:active,.grant:active,td.actions .rowedit-btn:active,.navrow:active,.navsubitem:active,.rail-user:active,.module:active,.quotes-wl-row:active,.quotes-sq-row:active{transform:none}.quotes-picker-list,.modal-card,.auth-card,.toast{transition-property:opacity}[data-tip]:after{transition-property:opacity,visibility}.infobtn[aria-expanded=true]{animation:none}.navcaret svg,.navcaret-inline,.rail-thumb,.themeswitch-thumb{transition-duration:0s}}.qt-table{table-layout:fixed;width:100%}.qt-time{white-space:nowrap;width:92px}.qt-outcome{width:124px}.qt-endpoint-h{width:26%}.qt-n{white-space:nowrap;width:84px}.qt-sharecol{width:22%;min-width:120px}.qt-endpoint,.qt-for{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qt-for{color:var(--ink-muted)}.qt-count{background:var(--line-soft);color:var(--ink-muted);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;border-radius:999px;margin-left:7px;padding:1px 6px;display:inline-block}.qt-bar{background:var(--line-soft);border-radius:4px;height:8px;display:block;overflow:hidden}.qt-bar-fill{background:var(--accent);border-radius:4px;height:100%;display:block}.qt-switchrow{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:16px;display:flex}.qt-compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=720px){.qt-compare{grid-template-columns:1fr}}.qt-compare-side{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);padding:13px 16px 15px}.qt-compare-h{font-size:var(--fs-micro);letter-spacing:var(--track-eyebrow);color:var(--ink-faint);margin-bottom:5px;font-weight:700}.qt-compare-n{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:25px;font-weight:680;line-height:1.1}.qt-compare-k{color:var(--ink-faint);margin-bottom:10px;font-size:11.5px}.qt-compare-empty{font-size:var(--fs-note);color:var(--ink-faint);padding:10px 0 4px}.qt-compare-dl{font-size:var(--fs-note);grid-template-columns:1fr auto;gap:3px 12px;margin:0;display:grid}.qt-compare-dl dt{color:var(--ink-muted)}.qt-compare-dl dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.quotes-gp-confirm{flex-direction:column;gap:8px;display:flex}.quotes-gp-actions{gap:8px;margin-top:4px;display:flex}.quotes-gp-check{cursor:pointer;align-items:flex-start;gap:8px;display:flex}.quotes-gp-check input{margin-top:3px}.quotes-est-hint{color:var(--ink-faint);margin:0 0 10px;font-size:11.5px;line-height:1.45}.quotes-est-row{color:var(--ink-muted);grid-template-columns:6.5rem minmax(0,1fr);align-items:center;gap:8px;padding:3px 0;font-size:12.5px;display:grid}.quotes-est-label{line-height:1.25}.quotes-est-input{align-items:center;gap:6px;display:flex}.quotes-est-unit{color:var(--ink-faint);text-align:right;flex:none;min-width:1.6rem;font-size:11px}.quotes-est-input .control{text-align:right;font-variant-numeric:tabular-nums;flex:auto;min-width:0}.quotes-est-empty{color:var(--ink-faint);padding:3px 0;font-size:12.5px}.quotes-est-actions{border-top:1px solid var(--line);gap:8px;margin-top:12px;padding-top:12px;display:flex}.quotes-detail-actions{border-top:1px solid var(--line);grid-column:1/-1;margin-top:4px;padding-top:14px}@media (width<=1000px){.quotes-detail-actions{grid-column:1}}.quotes-detail-side{grid-area:1/2}.quotes-detail-total,.quotes-detail-wide{grid-column:1/-1}@media (width<=1000px){.quotes-detail-side{grid-area:auto/1}}.quotes-prov{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:inline-flex}.quotes-prov-chip{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:650}.quotes-prov-posted{background:var(--surface-sunken);color:var(--ink-faint);border-color:var(--line)}.quotes-prov-committed{color:#8a5300;background:#fff5e6;border-color:#f0d9b5}.quotes-prov-unposted{color:#14507d;background:#eaf3ff;border-color:#c6dcf5}.quotes-prov-paired{color:var(--ink-faint);border-color:var(--line);cursor:help;background:0 0;border-style:dashed}
