:root{--ink:#14181c;--ink-2:#5b6570;--ink-3:#646d77;--paper:#f2f0ec;--panel:#fff;--rule:#d9d4ca;--rule-hard:#918671;--brand:#b23a2e;--teal:#2f6b62;--amber:#906317;--slate:#3f5b74;--gold:#fadf4b;--saved:#5fd29e;--brand-wash:color-mix(in oklab, var(--brand) 6%, var(--paper));--on-brand:var(--panel);--on-brand-muted:color-mix(in oklab, var(--brand) 26%, white);--on-ink:color-mix(in oklab, var(--ink) 14%, white);--on-ink-muted:color-mix(in oklab, var(--ink) 44%, white);--ink-line:color-mix(in oklab, var(--ink) 82%, white);--paper-tint:color-mix(in oklab, var(--paper) 55%, white);--ink-field:color-mix(in oklab, var(--ink) 88%, white);--ink-field-edge:color-mix(in oklab, var(--ink) 76%, white);--ink-btn-edge:color-mix(in oklab, var(--ink) 62%, white);--ink-btn-hover:color-mix(in oklab, var(--ink) 78%, white);--saved-wash:color-mix(in oklab, var(--saved) 18%, var(--panel));--saved-edge:color-mix(in oklab, var(--saved) 75%, var(--panel));--saved-halo:color-mix(in oklab, var(--saved) 35%, transparent);--amber-dial:color-mix(in oklab, var(--amber) 55%, white);--amber-wash:color-mix(in oklab, var(--amber) 8%, var(--panel));--brand-deep:color-mix(in oklab, var(--brand) 88%, black);--on-slate:var(--panel);--slate-hover:color-mix(in oklab, var(--slate) 85%, black);--font-sans:"Archivo", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-narrow:"Archivo Narrow", "Archivo", ui-sans-serif, sans-serif;--text-xs:.6875rem;--text-sm:.8125rem;--text:.875rem;--text-lg:1.0625rem;--text-xl:1.375rem;--text-2xl:1.625rem;--tracking-label:.11em;--space:1rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-lg:1.5rem;--radius:3px;--radius-pill:999px}*,:before,:after{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--text);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--brand)}:focus-visible{outline:2px solid var(--rule);outline-offset:0px}h1,h2,h3{letter-spacing:-.01em;margin:0}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}.num{font-variant-numeric:tabular-nums}.label{color:var(--ink-3);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:600}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[x-cloak]{display:none}body.app-shell{grid-template:"bar"52px"main"minmax(0,1fr)/1fr;height:100dvh;display:grid;overflow:hidden}body.app-shell.has-sidebar{grid-template-columns:13rem 1fr;grid-template-areas:"bar bar""side main"}.app-bar{background:var(--ink);border-bottom:1px solid var(--brand);color:var(--on-ink);align-items:center;gap:var(--space-lg);padding:0 var(--space-lg);grid-area:bar;display:flex;position:relative}.app-bar__brand{color:var(--on-ink);font-size:var(--text-lg);letter-spacing:.16em;text-transform:uppercase;font-weight:700}.app-bar__brand:hover{color:var(--panel)}.app-bar__dot{color:var(--brand)}.app-bar__spacer{margin-left:auto}.app-bar__search{background:var(--ink-field);border:1px solid var(--ink-field-edge);border-radius:var(--radius);color:var(--on-ink);font:inherit;font-size:var(--text-sm);padding:var(--space-sm) var(--space-sm);width:20rem}.app-bar__search::placeholder{color:var(--on-ink-muted)}.app-bar__user-trigger{border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:0;padding:0;display:grid}.app-bar__account-menu{background:var(--panel);border:1px solid var(--brand);border-radius:0 0 var(--radius) var(--radius);min-width:13rem;right:var(--space-lg);z-index:30;border-top:0;position:absolute;top:100%;overflow:hidden}.app-bar__account-menu form{display:contents}.app-bar__account-cap{background:var(--ink);align-items:center;gap:var(--space-xs);padding:var(--space-sm);display:flex}.app-bar__account-name{color:var(--panel);font-family:var(--font-narrow);font-size:var(--text-sm);font-weight:700;display:block}.app-bar__account-role{color:var(--on-ink-muted);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;display:block}.app-bar__account-body{gap:var(--space-2xs);padding:var(--space-2xs);flex-direction:column;display:flex}.app-bar__account-rule{border:0;border-top:1px solid var(--rule);margin:var(--space-2xs) 0;width:100%}.app-bar__account-link{border-radius:var(--radius);color:var(--ink);cursor:pointer;font:inherit;padding:var(--space-xs);text-align:left;background:0 0;border:0;width:100%}.app-bar__account-link:hover{background:var(--paper-tint)}.global-search{position:relative}.global-search__panel{background:var(--panel);border:1px solid var(--brand);border-radius:var(--radius);color:var(--ink);max-height:min(28rem,70vh);padding:var(--space-2xs);right:0;top:calc(100% + var(--space-xs));z-index:30;width:26rem;position:absolute;overflow-y:auto}.global-search__group+.global-search__group{border-top:1px solid var(--rule);margin-top:var(--space-2xs);padding-top:var(--space-2xs)}.global-search__label{color:var(--ink-2);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);padding:var(--space-2xs) var(--space-xs);text-transform:uppercase;margin:0;font-weight:700}.global-search__item{border-radius:var(--radius);padding:var(--space-xs);display:block}.global-search__item:hover,.global-search__item:focus-visible{background:var(--paper-tint);color:var(--ink);outline:none}.global-search__title{font-weight:600;display:block}.global-search__detail{color:var(--ink-2);font-size:var(--text-sm);display:block}.global-search__empty{color:var(--ink-2);padding:var(--space-sm);margin:0}.app-sidebar{background:var(--ink);min-height:0;padding:var(--space) var(--space-xs);flex-direction:column;grid-area:side;gap:2px;display:flex;overflow-y:auto}.app-sidebar__link{border-radius:0 var(--radius) var(--radius) 0;color:var(--on-ink-muted);font-size:var(--text-sm);padding:var(--space-sm) var(--space-sm);border-left:3px solid #0000;display:block}.app-sidebar__link:hover{background:var(--ink-btn-hover);color:var(--panel)}.app-sidebar__link.is-active{background:var(--ink-btn-hover);border-left-color:var(--brand);color:var(--gold)}.app-sidebar__sublist{padding:2px 0 var(--space-2xs) var(--space);flex-direction:column;gap:2px;display:flex}.app-sidebar__sublink{border-radius:0 var(--radius) var(--radius) 0;color:var(--on-ink-muted);font-size:var(--text-sm);padding:var(--space-xs) var(--space-sm);border-left:3px solid #0000;display:block}.app-sidebar__sublink:hover{color:var(--panel)}.app-sidebar__sublink.is-active{border-left-color:var(--brand);color:var(--gold)}.app-sidebar__flyout{background:var(--ink);border:1px solid var(--brand);border-radius:0 var(--radius) var(--radius) 0;left:calc(var(--flyout-left,0px) - 10px);opacity:0;min-width:11rem;padding:var(--space-2xs);top:var(--flyout-top,0);visibility:hidden;z-index:40;flex-direction:column;gap:2px;transition:opacity .12s,visibility 0s linear .15s;display:flex;position:fixed}.app-sidebar__flyout:before{content:"";bottom:0;left:calc(-1 * var(--flyout-bridge,0px));width:var(--flyout-bridge,0px);position:absolute;top:0}.app-sidebar__group:hover>.app-sidebar__flyout,.app-sidebar__group:focus-within>.app-sidebar__flyout{opacity:1;visibility:visible;transition-delay:0s}.app-sidebar__flyout-title{color:var(--on-ink-muted);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);padding:var(--space-2xs) var(--space-sm);text-transform:uppercase;font-weight:700}.app-sidebar__flyout-link{border-radius:var(--radius);color:var(--on-ink);font-size:var(--text-sm);padding:var(--space-xs) var(--space-sm);display:block}.app-sidebar__flyout-link:hover,.app-sidebar__flyout-link:focus-visible{background:var(--ink-btn-hover);color:var(--panel)}.app-main{min-width:0;min-height:0;padding:var(--space-lg);grid-area:main;overflow-y:auto}.app-main.has-steps-bar{padding-top:0}.page-head{align-items:flex-end;gap:var(--space);padding-bottom:var(--space);display:flex}.page-head__context{color:var(--ink-2);font-size:var(--text-sm);padding-bottom:var(--space-2xs)}.page-head__actions{gap:var(--space-xs);margin-left:auto;display:flex}.btn{background:var(--panel);border:1px solid var(--rule-hard);border-radius:var(--radius);color:var(--ink);cursor:pointer;font-family:inherit;font-size:var(--text-sm);align-items:center;gap:var(--space-2xs);padding:var(--space-xs) var(--space-sm);width:fit-content;font-weight:600;display:inline-flex}.btn:hover{background:var(--paper-tint);border-color:var(--ink-3);color:var(--ink)}.btn--primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.btn--primary:hover{background:var(--brand-deep);border-color:var(--brand-deep);color:var(--on-brand)}.btn--quiet{border-color:var(--rule);color:var(--ink-2);background:0 0}.btn--quiet:hover{background:color-mix(in oklab, var(--ink) 6%, transparent)}.btn--slate{background:var(--slate);border-color:var(--slate);color:var(--on-slate)}.btn--slate:hover{background:var(--slate-hover);border-color:var(--slate-hover);color:var(--on-slate)}.btn[disabled]{cursor:not-allowed;opacity:.5}.card{background:var(--panel);border:1px solid var(--rule)}.card__head{border-bottom:1px solid var(--rule);align-items:baseline;gap:var(--space-xs);padding:var(--space-sm) var(--space);display:flex}.card__title{color:var(--ink-2);font-family:var(--font-narrow);font-size:var(--text-lg);text-transform:uppercase;font-weight:600}.card__note{color:var(--ink-3);font-size:var(--text-sm);margin-left:auto}.card__body{gap:var(--space);padding:var(--space);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.card__body>*{grid-column:1/-1}.card__body hr{border:none;border-top:1px solid var(--rule);margin:0 0 0 calc(-1 * var(--space));width:calc(100% + 2 * var(--space))}.card--flush .card__body{padding:0}section.card+section.card{margin-top:10px}.show-actions{border-bottom:1px solid var(--rule);gap:var(--space-xs);padding-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.chip{border:1px solid var(--rule-hard);border-radius:var(--radius);color:var(--ink-2);cursor:pointer;font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:.05em;padding:var(--space-2xs) var(--space-xs);text-transform:uppercase;background:0 0;font-weight:600}.chip:hover{border-color:var(--ink-3);color:var(--ink)}.chip.is-active{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.chip--urgent{border-color:var(--brand);color:var(--brand)}.avatar{aspect-ratio:1;background:var(--avatar-bg,var(--slate));border-radius:var(--radius-pill);color:var(--avatar-fg,var(--on-slate));font-size:var(--text-xs);flex:none;place-items:center;width:38px;height:38px;font-weight:600;display:grid}.avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.avatar--lg{font-size:var(--text-lg);width:64px;height:64px}.avatar--xl{font-size:var(--text-2xl);width:7rem;height:7rem}.toast-slot{align-items:center;display:inline-flex}.toast{background:color-mix(in oklab, var(--teal) 10%, var(--panel));border:1px solid color-mix(in oklab, var(--teal) 45%, var(--panel));border-radius:var(--radius);color:var(--teal);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-xs);white-space:nowrap;font-weight:600;animation:6s forwards toast;display:inline-flex}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.toast__tick{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:none;width:1em;height:1em}@keyframes toast{0%{opacity:0;transform:translate(-.25rem)}4%,80%{opacity:1;transform:none}to{opacity:0;visibility:hidden}}.toast-row{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.rep-name{align-items:center;gap:var(--space-xs);display:inline-flex}.avatar-field__panel{background:var(--paper-tint);border:1px solid var(--rule);border-radius:var(--radius);align-items:start;gap:var(--space-sm) var(--space-lg);max-width:42rem;padding:var(--space);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=40rem){.avatar-field__panel{grid-template-columns:11rem minmax(0,1fr)}.avatar-field__panel>*,.avatar-field__panel .avatar-cropper>*{grid-column:2}.avatar-field__panel>.avatar-field__current{grid-area:1/1/span 2}.avatar-field__panel .avatar-cropper>.avatar-cropper__stage{grid-area:1/1/span 3}}.avatar-field__current{aspect-ratio:1;width:100%;max-width:11rem}.avatar-field__current .avatar{font-size:var(--text-2xl);width:100%;height:100%}.avatar-field__colour{cursor:pointer;font-size:var(--text-sm);align-items:center;gap:var(--space-2xs) var(--space-xs);flex-wrap:wrap;display:flex}.avatar-field__colour .avatar-field__note{flex-basis:100%}.avatar-field__swatch{background:var(--panel);border:1px solid var(--rule-hard);border-radius:var(--radius);cursor:pointer;width:2.5rem;height:2rem;padding:2px}.avatar-field__hex{color:var(--ink-2)}.avatar-field__actions{border-top:1px solid var(--rule);align-items:center;gap:var(--space-xs);padding-top:var(--space-sm);flex-wrap:wrap;display:flex}.avatar-field__upload{cursor:pointer}.avatar-field__upload:focus-within{outline:2px solid var(--ink);outline-offset:2px}.avatar-field__note{color:var(--ink-2);font-size:var(--text-sm);margin:0}.linked-person{background:var(--paper-tint);border:1px solid var(--rule);border-radius:var(--radius);align-items:center;gap:var(--space);max-width:42rem;padding:var(--space);display:flex}.linked-person__text{gap:var(--space-2xs);min-width:0;display:grid}.linked-person__name{font-weight:600}.linked-person__email{color:var(--ink-2);font-size:var(--text-sm);overflow-wrap:anywhere}.avatar-cropper{display:contents}.avatar-cropper__stage{aspect-ratio:1;background:var(--ink);border-radius:var(--radius);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;max-width:11rem;position:relative;overflow:hidden}.avatar-cropper__stage:after{background:radial-gradient(circle closest-side, transparent calc(100% - 2px), color-mix(in oklab, var(--panel) 85%, transparent) calc(100% - 2px), color-mix(in oklab, var(--panel) 85%, transparent) 100%, color-mix(in oklab, var(--ink) 60%, transparent) 100%);content:"";pointer-events:none;position:absolute;inset:0}.avatar-cropper__stage:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.avatar-cropper__stage.is-dragging{cursor:grabbing}.avatar-cropper__image{max-width:none;position:absolute;top:0;left:0}.avatar-cropper__controls{gap:var(--space-sm);display:grid}.avatar-cropper__zoom{align-items:center;gap:var(--space-xs);display:flex}.avatar-cropper__zoom input[type=range]{accent-color:var(--ink);flex:1;min-width:0}.avatar-cropper__step{font-size:var(--text-lg);justify-content:center;width:2rem;height:2rem;padding:0;line-height:1}.avatar-cropper__result{align-items:center;gap:var(--space-sm);display:flex}.avatar-cropper__preview{background-repeat:no-repeat}.card-footer{font-size:var(--text-lg);align-items:center;gap:var(--space-xs);padding:var(--space-2xs) 0;display:flex}.due-date{color:var(--ink-2);font-size:var(--text-sm)}.overdue-pill{background:var(--brand);border-radius:var(--radius-pill);color:var(--on-brand);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);padding:var(--space-2xs) var(--space-xs);text-transform:uppercase;font-weight:700}.badge{border:1px solid var(--rule);border-radius:var(--space-2xs);color:var(--ink-2);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:.07em;padding:var(--space-2xs) var(--space-xs);text-transform:uppercase;font-weight:600}.badge--waiting{color:var(--amber)}.badge--done{color:var(--teal)}.badge--urgent{color:var(--brand)}.flag{background:var(--panel);align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space);line-height:1.45;display:flex}.flag+.flag{border-top:1px solid var(--rule)}.flag__kind{color:var(--ink-3);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;flex:none;padding-top:1px;font-weight:700}.flag a{white-space:nowrap;font-weight:700;text-decoration:underline}.flag--check{background:var(--amber-wash);border:1px solid var(--amber)}.flag--check .flag__kind{color:var(--amber)}.flag--stop .flag__kind{background:var(--brand);color:var(--on-brand);align-items:center;padding:6px 10px;font-weight:600;display:flex}.metrics{border-top:1px solid var(--rule);flex-wrap:wrap;display:flex}.card__body>.metrics{margin-left:calc(-1 * var(--space));padding:0 var(--space);width:calc(100% + 2 * var(--space))}.metrics .metric{border-right:1px solid var(--rule);margin-right:var(--space-lg);flex:none}.metric{padding:var(--space-sm) var(--space-lg) var(--space-sm) 0}.metric__value{font-size:var(--text-2xl);letter-spacing:-.02em;margin-top:1px;font-weight:400}.metric__note{color:var(--ink-2);font-size:var(--text-xs)}.metric--alert .metric__value{color:var(--brand)}.table-wrap{min-width:0;overflow-x:auto}.table{background:var(--panel);border:1px solid var(--rule);border-collapse:collapse;width:100%}.table thead th{background:var(--paper);border-bottom:1px solid var(--rule);color:var(--ink-2);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);padding:var(--space-xs) var(--space-sm);text-align:left;text-transform:uppercase;white-space:nowrap;z-index:2;font-weight:700;position:sticky;top:0}.table tbody td{border-bottom:1px solid var(--rule);padding:var(--space-sm) var(--space-sm);white-space:nowrap}.table tbody tr:hover td{background:var(--paper-tint)}.table tfoot td{background:var(--paper);border-top:2px solid var(--ink);padding:var(--space-xs) var(--space-sm);font-weight:700}.table .is-right{text-align:right}.table tbody td:last-child:has(.btn){text-align:right}.table button.row-link{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0}.table button.row-link:hover{color:var(--brand)}.table .is-title{font-size:var(--text);white-space:normal;max-width:21rem;font-weight:600}.table .is-muted{color:var(--ink-2)}.table .is-money{font-size:var(--text-lg);letter-spacing:-.01em;font-weight:700}.bar{background:var(--rule);height:5px;margin-left:var(--space-xs);vertical-align:middle;width:2.6rem;display:inline-block}.bar__fill{background:var(--teal);height:5px;display:block}.bar__fill--low{background:var(--brand)}.who{background:color-mix(in oklab, var(--paper) 70%, var(--rule-hard));border-radius:var(--radius-pill);font-size:var(--text-xs);justify-content:center;place-items:center;width:25px;height:25px;font-weight:700;display:inline-grid}.empty{color:var(--ink-2);padding:var(--space-lg);text-align:center}.empty__title{color:var(--ink);margin-bottom:var(--space-2xs);font-weight:600}.field{gap:var(--space-2xs);flex-direction:column;display:flex}.field__label{color:var(--ink-2);font-size:var(--text-sm)}.field__lock{color:var(--rule-hard);height:.75em;margin-left:var(--space-2xs);vertical-align:-.05em;width:.75em}.field--locked .input{-webkit-text-fill-color:var(--teal);color:var(--teal);cursor:not-allowed;opacity:1;border-style:dashed}.field__required{color:var(--brand);margin-left:var(--space-2xs);text-decoration:none}.field__hint{color:var(--ink-3);font-size:var(--text-xs);line-height:1.4}.field__error{color:var(--brand);font-size:var(--text-xs);margin:0}.field--inline{align-items:baseline;gap:var(--space-xs);flex-direction:row}.field.field--half{grid-column:span 2}.field.field--quarter{grid-column:span 1}.field.field--three-quarters{grid-column:span 3}.field.field--third{flex:0 0 calc(33.333% - var(--space-sm))}.detail{gap:var(--space-2xs);flex-direction:column;display:flex}.detail__label{color:var(--ink-2);font-size:var(--text-sm)}.detail__value{color:var(--ink)}.detail.detail--half{grid-column:span 2}.input{background:var(--panel);border:1px solid var(--rule-hard);border-radius:var(--radius);color:var(--ink);font-family:inherit;font-size:var(--text);padding:var(--space-xs) var(--space-sm);width:100%;transition:background-color .6s,border-color .6s,box-shadow .6s}.input::placeholder{color:var(--ink-3)}.input:focus{border-color:var(--brand)}.input.is-saved{background:var(--saved-wash);border-color:var(--saved-edge);box-shadow:0 0 0 3px var(--saved-halo);transition:none}@media (prefers-reduced-motion:reduce){.input{transition:none}}.input[readonly]{background:var(--paper);color:var(--ink-2)}.input--num{font-variant-numeric:tabular-nums;text-align:right}.input--invalid{border-color:var(--brand)}select.input{appearance:none;padding-right:var(--space-lg)}.checkline{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);display:flex}.grid-cell--entered{border-bottom:1px dotted var(--rule-hard)}.grid-cell--calculated{color:var(--teal)}.form-error{color:var(--brand);font-size:var(--text-sm);margin:0}.steps-bar{align-items:center;gap:var(--space-sm) var(--space);flex-wrap:wrap;justify-content:space-between;display:flex}.steps-bar--sticky{background:var(--paper);border-bottom:1px solid var(--rule);margin-bottom:var(--space-lg);margin-inline:calc(-1 * var(--space-lg));padding-inline:var(--space-lg);z-index:5;position:sticky;top:0}.steps{gap:var(--space-xs);padding:var(--space-xs) 0 0;flex-wrap:wrap;flex:auto;display:flex}.steps__step{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space);border-bottom:3px solid #0000;display:flex}.steps__mark{border:1.5px solid var(--rule-hard);border-radius:var(--radius-pill);color:var(--ink-3);font-size:var(--text-xs);flex:none;place-items:center;width:21px;height:21px;font-weight:700;display:grid}.steps__name{color:var(--ink-2);font-size:var(--text-sm)}.steps__step.is-done .steps__mark{background:var(--teal);border-color:var(--teal);color:var(--panel)}.steps__step.is-done .steps__name{color:var(--ink)}.steps__step.is-alert .steps__mark{background:var(--amber-wash);border-color:var(--amber);color:var(--amber)}.steps__step.is-alert .steps__name{color:var(--amber)}.steps__step.is-current{background:var(--brand-wash);border-bottom-color:var(--brand)}.steps__step.is-current .steps__mark{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.steps__step.is-current .steps__name{color:var(--ink);font-weight:700}.tape{background:var(--ink);border-top:1px solid var(--brand);color:var(--on-ink);z-index:50;display:flex;position:fixed;bottom:0;left:0;right:0}.tape__step{border-right:1px solid var(--ink-line);padding:var(--space-sm) var(--space);flex-direction:column;justify-content:center;display:flex}.tape__key{color:var(--on-ink-muted);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:600}.tape__value,.tape__roll{font-size:var(--text-lg);letter-spacing:-.02em;margin-top:1px;font-weight:700}.tape__roll{white-space:nowrap;line-height:1.2em;display:none}.tape__roll>span{vertical-align:top;height:1.2em;display:inline-block}.tape__digit{overflow:hidden}.tape__digit-reel{flex-direction:column;display:flex}.tape__digit-reel>span{height:1.2em}.tape__slips{display:none}.tape__slip{background:var(--paper);border-bottom:1px dashed var(--ink-line);color:var(--ink);font-family:var(--font-narrow);font-size:var(--text-xs);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-label);padding:2px var(--space-xs);white-space:nowrap;font-weight:700}.has-tape-motion .tape .tape__value{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.has-tape-motion .tape .tape__roll{display:block}.has-tape-motion .tape .tape__step{position:relative}.has-tape-motion .tape .tape__slips{bottom:calc(100% + var(--space-xs));gap:var(--space-2xs);left:var(--space-xs);pointer-events:none;flex-direction:column-reverse;display:flex;position:absolute}.tape__note{color:var(--on-ink-muted);font-size:var(--text-xs)}.tape__step--dial .tape__value,.tape__step--dial .tape__roll{color:var(--amber-dial)}.tape__step--total{background:var(--brand);border-right:0}.tape__step--total .tape__key,.tape__step--total .tape__note{color:var(--on-brand-muted)}.tape__step--total .tape__value,.tape__step--total .tape__roll{color:var(--on-brand);font-size:var(--text-xl)}.tape__operator{color:var(--on-ink-muted);font-size:var(--text-xs);padding:0 var(--space-2xs);place-items:center;display:grid}.tape__actions{align-items:center;gap:var(--space-xs);padding:0 var(--space);margin-left:auto;display:flex}.tape .btn{border-color:var(--ink-btn-edge);color:var(--on-ink);background:0 0}.tape .btn:hover{background:var(--ink-btn-hover);border-color:var(--on-ink-muted);color:var(--panel)}.tape .btn--primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.tape .btn--quiet{color:var(--on-ink-muted);border-color:#0000}.has-tape{padding-bottom:5.5rem}.wizard__step{border:0;min-width:0;padding:0}.wizard__row{border-bottom:1px solid var(--rule);gap:var(--space-xs);margin-inline:calc(-1 * var(--space));padding:var(--space-lg) var(--space) var(--space-sm);flex-direction:column;transition:background-color .6s;display:flex}.wizard__row:nth-child(2n of .wizard__row){background:var(--paper-tint)}.wizard__row.is-new{background:var(--saved-wash);transition:none}@media (prefers-reduced-motion:reduce){.wizard__row{transition:none}}.wizard__row+.wizard__row{margin-top:calc(-1 * var(--space))}.wizard__row-fields{align-items:flex-start;gap:var(--space-xs) var(--space-sm);flex-wrap:wrap;display:flex}.wizard__row-fields .field{flex:9rem}.wizard__row-fields .field:has(>.input--num){flex:0 7.5rem}.wizard__row-fields .field.field--wide{flex:3 20rem}.wizard__row-actions{justify-content:flex-end;display:flex}.wizard__catalog-search{gap:var(--space);flex-direction:column;display:flex}.scope-editor{gap:var(--space-xs);display:grid}.scope-editor__toolbar{align-items:center;gap:var(--space-2xs);flex-wrap:wrap;display:flex}.scope-editor__tool{font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);padding:var(--space-2xs) var(--space-xs);text-transform:uppercase}.scope-editor__tool[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--panel)}.scope-editor__divider{background:var(--rule);margin:0 var(--space-2xs);align-self:stretch;width:1px}.scope-editor__editor{cursor:text;min-height:12rem}.scope-editor__editor:focus-within{border-color:var(--brand)}.scope-editor .tiptap{min-height:calc(12rem - 2 * var(--space-xs));outline:none}.scope-editor .tiptap>*+*{margin-top:var(--space-xs)}.scope-editor .tiptap h1{font-size:var(--text-lg);margin:0}.scope-editor .tiptap ol,.scope-editor .tiptap p,.scope-editor .tiptap ul{margin:0}.scope-editor .tiptap ol,.scope-editor .tiptap ul{padding-left:var(--space-lg)}.proposal-send{background:var(--paper-tint);border-top:1px solid var(--rule);margin:0 calc(-1 * var(--space)) calc(-1 * var(--space));flex-direction:column;display:flex}.proposal-send__actions{align-items:center;gap:var(--space-xs);padding:var(--space);flex-wrap:wrap;order:2;display:flex}.proposal-send__go{align-items:flex-start;gap:var(--space-2xs);padding:var(--space) var(--space-lg);border-radius:0;flex-direction:column;order:1;justify-content:center}.proposal-send__go--done{border-bottom:1px solid var(--rule);display:flex}.proposal-send__figure{font-size:var(--text-xl);letter-spacing:-.02em;font-weight:400}@media (width>=40rem){.proposal-send{flex-direction:row;justify-content:flex-start}.proposal-send__go{min-width:15rem}.proposal-send__go--done{border-bottom:0;border-right:1px solid var(--rule)}}.wizard__assembly-qty{width:7rem;display:inline-block}.board{background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);max-height:calc(100vh - 52px - (var(--space-lg) * 2));grid-template-columns:repeat(5,minmax(230px,1fr));min-width:0;display:grid;overflow:auto}.board>*{border-right:1px solid var(--rule);min-width:0}.board>:nth-child(5n){border-right:0}.lane-head{background:var(--panel);border-bottom:2px solid var(--rule-hard);padding:var(--space-sm);z-index:2;position:sticky;top:0}.lane-head__count{font-size:var(--text-2xl);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:700;line-height:1;display:block}.lane-head__count--brand{color:var(--brand)}.lane-head__count--amber{color:var(--amber)}.lane-head__count--teal{color:var(--teal)}.lane-head__count--muted{color:var(--ink-3)}.lane-head__label{color:var(--ink-2);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);margin:var(--space-2xs) 0 0;text-transform:uppercase;font-weight:700;display:block}.lane-head__total{color:var(--ink);font-size:var(--text-sm);margin-top:var(--space-2xs);font-weight:600;display:block}.lane-body{gap:var(--space-sm);padding:var(--space-sm);flex-direction:column;display:flex}.lane-body__empty{color:var(--ink-3);font-size:var(--text-sm)}.bid-card{background:var(--panel);border:1px solid var(--rule);border-left:3px solid var(--rule-hard);padding:var(--space) var(--space) var(--space-2xs);flex-direction:column;transition:border-color .12s,transform .12s;display:flex;position:relative}.bid-card:hover{border-color:var(--ink-3);transform:translateY(-1px)}.bid-card.is-overdue{border-left-color:var(--brand)}.bid-card__avatar{right:var(--space-xs);top:var(--space-xs);position:absolute}.bid-card__project{color:var(--ink);font-size:var(--text-sm);padding-right:calc(38px + var(--space-xs));text-wrap:balance;font-weight:700}.bid-card__customer{color:var(--ink-2);font-size:var(--text-xs);margin-top:var(--space-xs)}.jobs-board{grid-template-columns:repeat(5,minmax(230px,1fr));gap:0;min-width:0;display:grid;overflow:auto}.jobs-lane{border-right:1px solid var(--rule);min-width:0}.jobs-lane:last-child{border-right:0}.jobs-lane__head{background:var(--panel);border-bottom:2px solid var(--rule-hard);padding:var(--space-sm)}.jobs-lane__count{color:var(--ink-3);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;font-weight:700;display:block}.jobs-lane__label{color:var(--ink-2);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);margin:var(--space-2xs) 0 0;text-transform:uppercase;font-weight:700}.jobs-lane__body{gap:var(--space-sm);padding:var(--space-sm);flex-direction:column;display:flex}.jobs-lane__empty{color:var(--ink-3);font-size:var(--text-sm)}.job-card{background:var(--panel);border:1px solid var(--rule);cursor:grab;gap:var(--space-xs);padding:var(--space);flex-direction:column;display:flex}.job-card__number{color:var(--ink);font-size:var(--text-sm);font-weight:700}.job-card__site{color:var(--ink-2);font-size:var(--text-xs)}.job-card__company{color:var(--ink-3);font-size:var(--text-xs)}.job-details__meta{color:var(--ink-2);font-size:var(--text-sm)}.job-phase-row{align-items:end;gap:var(--space-sm);padding:var(--space-sm) 0;flex-wrap:wrap;display:flex}.job-phase-row__actions{gap:var(--space-xs);display:flex}.gantt{gap:var(--space-xs);flex-direction:column;display:flex}.gantt__row{align-items:center;gap:var(--space-sm);grid-template-columns:140px 1fr;display:grid}.gantt__label{color:var(--ink-2);font-size:var(--text-xs)}.gantt__track{background:var(--rule);border-radius:var(--radius);height:20px;position:relative}.gantt__bar{background:var(--teal);border-radius:var(--radius);height:100%;left:var(--gantt-left);width:var(--gantt-width);position:absolute}.gantt__empty{color:var(--ink-3);font-size:var(--text-sm)}.invoice-builder__meta{color:var(--ink-2);font-size:var(--text-sm)}.invoice-line-row{align-items:end;gap:var(--space-sm);padding:var(--space-sm) 0;flex-wrap:wrap;display:flex}.invoice-show .invoice-builder__meta{color:var(--ink-2);font-size:var(--text-sm)}.activity-timeline{gap:var(--space-sm);flex-direction:column;display:flex}.activity-timeline__list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.activity-timeline__entry{border-bottom:1px solid var(--rule);padding-bottom:var(--space-sm)}.activity-timeline__type{color:var(--ink);font-size:var(--text-xs);text-transform:uppercase;font-weight:700}.activity-timeline__meta{color:var(--ink-3);font-size:var(--text-xs);margin-left:var(--space-xs)}.activity-timeline__body{color:var(--ink-2);font-size:var(--text-sm);margin:var(--space-2xs) 0 0}.activity-timeline__empty{color:var(--ink-3);font-size:var(--text-sm)}.activity-timeline__form{border-top:1px solid var(--rule-hard);gap:var(--space);padding-top:var(--space-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.activity-timeline__form>*{grid-column:1/-1}.crm-toolbar{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;flex-wrap:wrap;display:flex}.crm-toolbar>.btn--primary{margin-left:auto}.contact-form__primary{color:var(--ink-2);font-size:var(--text-sm);align-items:center;gap:var(--space-2xs);display:flex}.lead-show__resolve{border-top:1px solid var(--rule);gap:var(--space-xs);padding:var(--space-sm) 0;display:flex}.lead-show__reason-prompt{border-top:1px solid var(--rule);padding-top:var(--space-sm)}.leads-board{grid-template-columns:repeat(4,minmax(230px,1fr));gap:0;min-width:0;display:grid;overflow:auto}.leads-lane{border-right:1px solid var(--rule);min-width:0}.leads-lane:last-child{border-right:0}.leads-lane__head{background:var(--panel);border-bottom:2px solid var(--rule-hard);padding:var(--space-sm)}.leads-lane__count{color:var(--ink-3);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;font-weight:700;display:block}.leads-lane__label{color:var(--ink-2);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:var(--tracking-label);margin:var(--space-2xs) 0 0;text-transform:uppercase;font-weight:700}.leads-lane__body{gap:var(--space-sm);padding:var(--space-sm);flex-direction:column;display:flex}.leads-lane__empty{color:var(--ink-3);font-size:var(--text-sm)}.leads-lane__add{justify-content:center;width:100%}.lead-card{background:var(--panel);border:1px solid var(--rule);border-left:3px solid var(--rule-hard);cursor:grab;padding:var(--space) var(--space) var(--space-xs);flex-direction:column;transition:border-color .12s,transform .12s;display:flex;position:relative}.lead-card:hover{border-color:var(--ink-3);transform:translateY(-1px)}.lead-card.is-overdue{border-left-color:var(--brand)}.lead-card__corner{align-items:center;gap:var(--space-2xs);right:var(--space-xs);top:var(--space-xs);display:flex;position:absolute}.lead-card__name{color:var(--ink);font-size:var(--text-sm);padding-right:calc(38px + var(--space-lg));text-wrap:balance;font-weight:700}.lead-card__site{color:var(--ink-2);font-size:var(--text-xs);margin-top:var(--space-xs)}.lead-card__company{color:var(--ink-3);font-size:var(--text-xs);margin-top:calc(-1 * var(--space-xs))}.lead-card__menu-toggle{color:var(--ink-3);cursor:pointer;font-size:var(--text-lg);background:0 0;border:0;padding:0}.lead-card__menu-list{background:var(--panel);border:1px solid var(--rule-hard);right:var(--space-xs);top:calc(var(--space-xs) + 38px + var(--space-2xs));z-index:1;flex-direction:column;display:flex;position:absolute}.lead-card__menu-item{color:var(--ink);cursor:pointer;font-size:var(--text-sm);padding:var(--space-xs) var(--space-sm);text-align:left;background:0 0;border:0}.lead-card__menu-item:hover{background:var(--paper)}.lead-card__reason-prompt{border-top:1px solid var(--rule);padding-top:var(--space-xs)}.lead-form__quick-add{background:var(--paper-tint);border:1px solid var(--rule);gap:var(--space-xs);margin-top:var(--space-xs);padding:var(--space-sm);flex-direction:column;display:flex}.lead-form__quick-add-actions{gap:var(--space-xs);display:flex}.lead-form__quick-add-actions>:first-child{flex:3}.lead-form__quick-add-actions>:last-child{flex:1}.print-body{background:var(--panel);color:var(--ink);padding:var(--space-lg)}.print-invoice{max-width:640px;margin:0 auto}.print-invoice__header{margin-bottom:var(--space-lg)}.print-invoice__lines{border-collapse:collapse;margin-bottom:var(--space-lg);width:100%}.print-invoice__lines th,.print-invoice__lines td{border-bottom:1px solid var(--rule);padding:var(--space-xs) var(--space-sm);text-align:left}.print-invoice__totals{margin-bottom:var(--space-lg)}.print-invoice__notes{color:var(--ink-2);font-size:var(--text-sm)}.print-proposal{max-width:640px;margin:0 auto}.print-proposal__brand{color:var(--brand);font-family:var(--font-narrow);text-transform:uppercase;font-weight:700}.print-proposal__header,.print-proposal__scope{margin-bottom:var(--space-lg)}.print-proposal__scope-text>*+*{margin-top:var(--space-xs)}.print-proposal__scope-text h1{font-size:var(--text-lg);margin:var(--space) 0 var(--space-2xs)}.print-proposal__scope-text ol,.print-proposal__scope-text p,.print-proposal__scope-text ul{margin:0}.print-proposal__scope-text ol,.print-proposal__scope-text ul{padding-left:var(--space-lg)}.print-proposal__totals{margin-bottom:var(--space-lg)}.print-proposal__terms{color:var(--ink-2);font-size:var(--text-sm);margin-bottom:var(--space-lg)}.print-proposal__signatures{gap:var(--space-lg);margin-top:var(--space-lg);display:flex}.print-proposal__signature-line{border-top:1px solid var(--ink);padding-top:var(--space-xs);flex:1}.feedback-launcher{right:var(--space-lg);top:calc(52px + var(--space));z-index:40;position:fixed}.feedback-picking-banner{background:var(--panel);border:1px solid var(--rule-hard);color:var(--ink-2);font-size:var(--text-sm);padding:var(--space-sm) var(--space);width:240px}.feedback-picking-target{outline:2px solid var(--slate);outline-offset:2px}.feedback-form{background:var(--panel);border:1px solid var(--rule);gap:var(--space-xs);padding:var(--space);flex-direction:column;width:280px;display:flex}.feedback-form textarea{resize:vertical;min-height:4.5em}.feedback-form__undo{align-self:flex-start}.feedback-form__secondary-actions{gap:var(--space-xs);display:flex}.feedback-context{color:var(--ink-3);font-size:var(--text-sm);margin:0}.feedback-item{background:var(--panel);border:1px solid var(--rule);gap:var(--space-2xs);margin-bottom:var(--space-sm);padding:var(--space);flex-direction:column;display:flex}.feedback-item__meta{color:var(--ink-3);font-size:var(--text-xs)}.feedback-item__actions{gap:var(--space-xs);margin-top:var(--space-xs);display:flex}.feedback-item__reply{background:var(--paper);border-left:2px solid var(--rule-hard);color:var(--ink-2);font-size:var(--text-sm);margin-top:var(--space-2xs);padding:var(--space-xs) var(--space-sm)}.feedback-empty{color:var(--ink-3);font-size:var(--text-sm)}.feedback-marker{background:var(--slate);border-radius:var(--radius-pill);color:var(--on-slate);font-size:var(--text-xs);padding:0 var(--space-xs);width:fit-content;font-weight:600;line-height:1.4;position:absolute;top:-6px;right:-6px}.auth-card{margin:calc(var(--space) * 3) auto;max-width:22rem}.auth-card__title{font-size:var(--text-xl);margin:0 0 var(--space)}.auth-form{gap:var(--space);flex-direction:column;display:flex}.sheet{max-width:74rem}.sheet__section{border-top:1px solid var(--rule-hard);margin-top:var(--space-lg);padding-top:var(--space)}.sheet__title{align-items:baseline;gap:var(--space-xs);margin-bottom:var(--space);display:flex}.sheet__rule{color:var(--ink-2);font-size:var(--text-sm);margin:0 0 var(--space);max-width:44rem;line-height:1.5}.sheet__row{align-items:center;gap:var(--space-xs);margin-bottom:var(--space);flex-wrap:wrap;display:flex}.sheet__grid{gap:var(--space);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.swatches{gap:var(--space-xs);grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));display:grid}.swatch{background:var(--panel);border:1px solid var(--rule)}.swatch__chip{border-bottom:1px solid var(--rule);height:3.25rem}.swatch__chip--ink{background:var(--ink)}.swatch__chip--ink-2{background:var(--ink-2)}.swatch__chip--ink-3{background:var(--ink-3)}.swatch__chip--paper{background:var(--paper)}.swatch__chip--panel{background:var(--panel)}.swatch__chip--rule{background:var(--rule)}.swatch__chip--rule-hard{background:var(--rule-hard)}.swatch__chip--brand{background:var(--brand)}.swatch__chip--teal{background:var(--teal)}.swatch__chip--amber{background:var(--amber)}.swatch__chip--brand-wash{background:var(--brand-wash)}.swatch__chip--on-brand-muted{background:var(--on-brand-muted)}.swatch__name{font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:.04em;padding:var(--space-xs) var(--space-xs) 0;display:block}.swatch__use{color:var(--ink-3);font-size:var(--text-xs);padding:2px var(--space-xs) var(--space-xs);line-height:1.35;display:block}.sheet-type-2xl{font-size:var(--text-2xl);letter-spacing:-.01em;font-weight:700}.sheet-type-xl{font-size:var(--text-xl);font-weight:700}.sheet-type-lg{font-size:var(--text-lg);font-weight:700}.sheet-type-sm{color:var(--ink-2);font-size:var(--text-sm)}.type-row{border-bottom:1px solid var(--rule);align-items:baseline;gap:var(--space);padding:var(--space-xs) 0;display:flex}.type-row__spec{color:var(--ink-3);font-family:var(--font-narrow);font-size:var(--text-xs);letter-spacing:.04em;flex:none;width:12rem}
