:root{--color-bg:#fff;--color-surface:#f1f4f7;--color-border:#828e9b;--color-text:#10151c;--color-text-muted:#414d5a;--color-brand:#0a4d8c;--color-brand-contrast:#fff;--color-ok:#14562f;--color-pending:#7a4100;--color-danger:#97161c;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--line-tight:1.25;--line-body:1.5;--weight-regular:400;--weight-medium:600;--weight-bold:700;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--duration-fast:.12s;--duration-base:.2s;--easing-standard:cubic-bezier(.2,0,.2,1);--touch-min:44px;--header-height:3rem;--bp-tablet:768px;--bp-tablet-wide:1024px;--shell-measure:40rem;--shell-measure-wide:64rem;--update-prompt-inset:0px}@media (prefers-color-scheme:dark){:root{--color-bg:#0d1218;--color-surface:#182029;--color-border:#657282;--color-text:#f2f5f8;--color-text-muted:#b6c1cc;--color-brand:#7fb6e8;--color-brand-contrast:#0d1218;--color-ok:#6dcf90;--color-pending:#e0b071;--color-danger:#f59a9a}}*,*:before,*:after{box-sizing:border-box}html{overscroll-behavior:none;-webkit-text-size-adjust:100%}body{min-height:100dvh;margin:0}a,button,input,select,textarea,summary,[role=button]{-webkit-tap-highlight-color:transparent}button,[role=button],label,summary{touch-action:manipulation}button,input,select,textarea{font:inherit;color:inherit}img,svg,canvas{display:block;max-width:100%}h1,h2,h3,h4,p,figure,blockquote{margin:0}ul,ol{list-style:none;margin:0;padding:0}button,[role=button],a[href],input,select,textarea{min-height:var(--touch-min)}:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}html{font-family:var(--font-body);line-height:var(--line-body);color:var(--color-text);background-color:var(--color-bg)}body{font-size:var(--text-base);font-weight:var(--weight-regular);background-color:var(--color-bg)}h1,h2,h3{line-height:var(--line-tight);font-weight:var(--weight-bold)}h1{font-size:var(--text-xl)}h2{font-size:var(--text-lg)}h3{font-size:var(--text-base)}p{max-width:65ch}code,samp{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}a{color:var(--color-brand)}.header{position:sticky;z-index:10;display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);min-height:var(--header-height);padding:calc(env(safe-area-inset-top) + var(--space-2))var(--space-4)var(--space-2);padding-right:max(var(--space-4),env(safe-area-inset-right));padding-left:max(var(--space-4),env(safe-area-inset-left));background-color:var(--color-surface);border-bottom:1px solid var(--color-border);top:0}.header-title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text);letter-spacing:.01em}.header-indicators{display:flex;align-items: center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end}.header-indicator{display:inline-flex;align-items: center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;color:var(--color-text-muted)}.header-indicator-glyph{font-size:var(--text-base);line-height:1}.header-indicator--online{color:var(--color-ok)}.header-indicator--offline{color:var(--color-text-muted)}.header-indicator--ok{color:var(--color-ok)}.header-indicator--pending{color:var(--color-pending)}.header-indicator--failed{color:var(--color-danger)}.router-link{display:inline-flex;min-height:var(--touch-min);color:var(--color-brand);text-decoration:underline;text-underline-offset:.15em;text-decoration-thickness:2px;align-items: center}.router-link:active{opacity:.7}.sync-error-banner{display:flex;gap:var(--space-2);padding:var(--space-3)var(--space-4);padding-right:max(var(--space-4),env(safe-area-inset-right));padding-left:max(var(--space-4),env(safe-area-inset-left));background-color:var(--color-surface);border-bottom:1px solid var(--color-danger);animation:sync-error-banner-appear var(--duration-fast)var(--easing-standard);flex-direction:column}.sync-error-banner-heading{font-size:var(--text-base);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-danger)}.sync-error-banner-detail{font-size:var(--text-sm);line-height:var(--line-body);color:var(--color-text)}.sync-error-banner-actions{display:flex;gap:var(--space-3);margin-top:var(--space-1);flex-wrap:wrap}.sync-error-banner-action{min-height:var(--touch-min);min-width:var(--touch-min);padding:var(--space-2)var(--space-5);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight);cursor:pointer;border:1px solid #0000;flex:0 auto}.sync-error-banner .sync-error-banner-support{min-width:var(--touch-min);padding:var(--space-2)var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight);text-decoration:none;justify-content:center}@keyframes sync-error-banner-appear{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sync-error-banner{animation:none}}.update-prompt{position:fixed;z-index:20;display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);background-color:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-3)var(--space-4);padding-bottom:max(var(--space-3),env(safe-area-inset-bottom));padding-right:max(var(--space-4),env(safe-area-inset-right));padding-left:max(var(--space-4),env(safe-area-inset-left));animation:update-prompt-rise var(--duration-base)var(--easing-standard);flex-wrap:wrap;bottom:0;left:0;right:0}.update-prompt-copy{flex:18rem}.update-prompt-headline{font-size:var(--text-base);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.update-prompt-detail{margin-top:var(--space-1);font-size:var(--text-sm);line-height:var(--line-body);color:var(--color-text-muted)}.update-prompt-action{min-height:var(--touch-min);min-width:var(--touch-min);padding:var(--space-2)var(--space-5);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight);cursor:pointer;border:1px solid #0000;flex:none}.update-prompt-action:disabled{background-color:var(--color-surface);border-color:var(--color-border);color:var(--color-text-muted);cursor:default}@keyframes update-prompt-rise{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.update-prompt{animation:none}}.op-log-debug{padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.op-log-debug-back{display:inline-flex;min-height:var(--touch-min);margin-bottom:var(--space-2);color:var(--color-brand);align-items: center}.op-log-debug-heading{font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.op-log-debug-lede{margin-top:var(--space-2);font-size:var(--text-sm);line-height:var(--line-body);color:var(--color-text-muted)}.op-log-debug-label{display:block;margin-top:var(--space-4);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight);color:var(--color-text)}.op-log-debug-notes{display:block;min-height:var(--touch-min);margin-top:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body);resize:vertical;width:100%}.op-log-debug-state{margin-top:var(--space-3);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-body);color:var(--color-text-muted)}.op-log-debug-state--saved{color:var(--color-ok)}.op-log-debug-state--saving{color:var(--color-pending)}.op-log-debug-state--error{color:var(--color-danger);font-weight:var(--weight-bold)}.op-log-debug-action{min-height:var(--touch-min);min-width:var(--touch-min);margin-top:var(--space-3);padding:var(--space-2)var(--space-5);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight);cursor:pointer;border:1px solid #0000}.op-log-debug-queue{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.op-log-debug-queue-row{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-1)0}.op-log-debug-queue-term{font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text-muted)}.op-log-debug-queue-value{font-size:var(--text-base);font-weight:var(--weight-bold);line-height:var(--line-body);color:var(--color-text);font-variant-numeric:tabular-nums;margin:0}.op-log-debug-error{margin-top:var(--space-3);padding:var(--space-3);border-left:4px solid var(--color-danger);border-radius:var(--radius-sm);background-color:var(--color-bg);font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text)}.technician-picker{display:flex;gap:var(--space-2);list-style:none;flex-direction:column}.technician-picker-row{display:flex}.technician-picker-button{display:flex;gap:var(--space-1);min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);text-align:left;flex-direction:column;flex:auto}.technician-picker-button:disabled{border-color:var(--color-border);background-color:var(--color-surface)}.technician-picker-action{color:var(--color-text-muted);font-size:var(--text-sm)}.technician-picker-name{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-medium);line-height:var(--line-tight)}.technician-picker-detail{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body);overflow-wrap:anywhere}.claim-device{display:flex;gap:var(--space-4);padding:var(--space-4);padding-top:calc(var(--space-4) + env(safe-area-inset-top));padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom));padding-left:calc(var(--space-4) + env(safe-area-inset-left));padding-right:calc(var(--space-4) + env(safe-area-inset-right));flex-direction:column}.claim-device-heading{color:var(--color-text);font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight)}.claim-device-note{color:var(--color-text);font-size:var(--text-base);line-height:var(--line-body)}.claim-device-status{color:var(--color-text-muted);line-height:var(--line-body)}.claim-device-status--error{color:var(--color-danger);font-weight:var(--weight-medium)}.claim-device-failure{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.claim-device-skip{min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);text-align:left}.claim-device-skip-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.adhoc-description{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.adhoc-description-heading{font-size:var(--text-lg);color:var(--color-text)}.adhoc-description-label{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.adhoc-description-input{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base)}.adhoc-description-required{color:var(--color-pending);font-weight:var(--weight-medium);font-size:var(--text-sm);line-height:var(--line-body)}.adhoc-description-save{font-size:var(--text-sm);font-weight:var(--weight-medium)}.adhoc-description-save--idle{color:var(--color-text-muted)}.adhoc-description-save--saving{color:var(--color-pending)}.adhoc-description-save--saved{color:var(--color-ok)}.adhoc-description-save--error{color:var(--color-danger)}.install-outcome{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.install-outcome-heading{font-size:var(--text-lg);color:var(--color-text)}.install-outcome-lead{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.install-outcome-unanswered{color:var(--color-pending);font-weight:var(--weight-medium);font-size:var(--text-sm);line-height:var(--line-body)}.install-outcome-choices{display:flex;gap:var(--space-2);flex-direction:column}.install-outcome-choice{display:flex;gap:var(--space-1);min-height:calc(var(--touch-min)*1.4);padding:var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);text-align:left;flex-direction:column}.install-outcome-choice-label{font-size:var(--text-lg);font-weight:var(--weight-medium)}.install-outcome-choice-gloss{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.install-outcome-choice-state{font-size:var(--text-sm);font-weight:var(--weight-bold)}.install-outcome-choice--selected{border-color:var(--color-brand);color:var(--color-brand)}.install-outcome-choice:disabled{opacity:.6}.notes-section{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.notes-section-heading{font-size:var(--text-lg);color:var(--color-text)}.notes-section-label{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.notes-section-input{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body);resize:vertical;min-height:10rem}.notes-section-save{font-size:var(--text-sm);font-weight:var(--weight-medium)}.notes-section-save--idle{color:var(--color-text-muted)}.notes-section-save--saving{color:var(--color-pending)}.notes-section-save--saved{color:var(--color-ok)}.notes-section-save--error{color:var(--color-danger)}.outcome-section{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.outcome-section-heading{font-size:var(--text-lg);color:var(--color-text)}.outcome-section-required{color:var(--color-pending);font-weight:var(--weight-medium);font-size:var(--text-sm);line-height:var(--line-body)}.outcome-section-choices{display:flex;gap:var(--space-2);flex-direction:column}.outcome-section-choice{display:flex;gap:var(--space-1);min-height:calc(var(--touch-min)*1.4);padding:var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);text-align:left;flex-direction:column}.outcome-section-choice-label{font-size:var(--text-lg);font-weight:var(--weight-medium)}.outcome-section-choice-state{font-size:var(--text-sm);font-weight:var(--weight-bold)}.outcome-section-choice--selected.outcome-section-choice--on-spec{border-color:var(--color-ok);color:var(--color-ok)}.outcome-section-choice--selected.outcome-section-choice--needs-repair{border-color:var(--color-pending);color:var(--color-pending)}.outcome-section-choice:disabled{opacity:.6}.outcome-section-reason{display:flex;gap:var(--space-2);flex-direction:column}.outcome-section-label{color:var(--color-text);font-weight:var(--weight-medium)}.outcome-section-reason-input{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body);resize:vertical;min-height:6rem}.outcome-section .outcome-section-quote{display:flex;min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border:2px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-brand);font-size:var(--text-base);font-weight:var(--weight-medium);text-align:center;text-decoration:none;justify-content:center;align-items: center}.outcome-section-save{font-size:var(--text-sm);font-weight:var(--weight-medium)}.outcome-section-save--idle{color:var(--color-text-muted)}.outcome-section-save--saving{color:var(--color-pending)}.outcome-section-save--saved{color:var(--color-ok)}.outcome-section-save--error{color:var(--color-danger)}.capture-button{position:relative;display:flex;min-height:var(--touch-min);min-width:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);text-align:center;flex:12ch;justify-content:center;align-items: center}.capture-button-label{font-size:var(--text-base);font-weight:var(--weight-medium)}.capture-button-input{position:absolute;opacity:0;width:100%;height:100%;inset:0}.capture-button--quiet{border:2px solid var(--color-brand);background-color:var(--color-bg);color:var(--color-brand)}.capture-button:focus-within{outline:3px solid var(--color-text);outline-offset:2px}.photo-section{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.photo-section-heading{font-size:var(--text-lg);color:var(--color-text)}.photo-section-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.photo-section-actions--purpose{flex-flow:column}.photo-section-purpose-lead{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.photo-section-purpose{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:var(--line-tight)}.photo-section-status{color:var(--color-text-muted);font-size:var(--text-sm)}.photo-section-failure{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.photo-section-empty{color:var(--color-text-muted)}.photo-section-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(8rem,1fr));gap:var(--space-3)}.photo-section-item{display:flex;gap:var(--space-1);flex-direction:column}.photo-section-thumb{aspect-ratio:4/3;border-radius:var(--radius-sm);background-color:var(--color-bg);object-fit:cover;width:100%}.photo-section-placeholder{display:flex;aspect-ratio:4/3;padding:var(--space-2);border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:var(--text-sm);text-align:center;justify-content:center;align-items: center;width:100%}.photo-section-badge{font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--line-tight)}.photo-section-badge--ok{color:var(--color-ok)}.photo-section-badge--pending{color:var(--color-pending)}.photo-section-badge--danger{color:var(--color-danger)}.photo-section-badge--muted{color:var(--color-text-muted)}.photo-section-taken{color:var(--color-text-muted);font-size:var(--text-sm)}.serial-section{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.serial-section-heading{font-size:var(--text-lg);color:var(--color-text)}.serial-section-value{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-text);overflow-wrap:anywhere}.serial-section-value--absent{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-pending)}.serial-section-required{color:var(--color-pending);font-weight:var(--weight-medium)}.serial-section-captured{display:flex;gap:var(--space-2);color:var(--color-ok);font-weight:var(--weight-medium)}.serial-section-captured-mark{flex:none}.serial-section-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.serial-section-button{min-height:var(--touch-min);min-width:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);flex:auto}.serial-section-button--primary{border-color:var(--color-brand);background-color:var(--color-brand);color:var(--color-brand-contrast)}.serial-section-button:disabled{opacity:.6}.serial-section-panel{display:flex;gap:var(--space-2);flex-direction:column}.serial-section-label{color:var(--color-text-muted);font-size:var(--text-sm)}.serial-section-input{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base)}.serial-section-rejected{color:var(--color-danger);font-weight:var(--weight-medium)}.asset-work{display:flex;gap:var(--space-4);flex-direction:column}.asset-work-back{display:flex;min-height:var(--touch-min);padding:var(--space-2)0;color:var(--color-brand);font-weight:var(--weight-medium);align-self: flex-start;align-items: center}.asset-work-header{display:flex;gap:var(--space-1);flex-direction:column}.asset-work-title{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.asset-work-where{color:var(--color-text-muted)}.asset-work-status{color:var(--color-text-muted);line-height:var(--line-body)}.asset-work-status--error{color:var(--color-danger);font-weight:var(--weight-medium)}.asset-work-failure{padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.asset-work-finish{display:flex;gap:var(--space-3);padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom));flex-direction:column}.asset-work-missing{display:flex;gap:var(--space-2);padding:var(--space-3);border-left:4px solid var(--color-pending);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.asset-work-missing-heading{color:var(--color-pending);font-weight:var(--weight-bold)}.asset-work-missing-list{display:flex;gap:var(--space-1);padding-left:var(--space-4);list-style:disc;flex-direction:column}.asset-work-missing-item{color:var(--color-text);line-height:var(--line-body)}.asset-work-done{min-height:calc(var(--touch-min)*1.4);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-size:var(--text-lg);font-weight:var(--weight-bold);border:none}.asset-work-done:disabled{opacity:.6}.asset-work-finish-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.asset-work-sync{display:flex;align-items: center;gap:var(--space-2);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-body)}.asset-work-sync-glyph{font-size:var(--text-lg);line-height:1}.asset-work-sync--ok{color:var(--color-ok)}.asset-work-sync--pending{color:var(--color-pending)}.asset-work-sync--failed,.asset-work-sync--rejected{color:var(--color-danger)}.asset-work-sync--unknown{color:var(--color-text-muted)}.asset-work-missing-record{display:flex;gap:var(--space-3);flex-direction:column}.asset-work-missing-body{color:var(--color-text);line-height:var(--line-body)}.asset-work-missing-id{color:var(--color-text-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.asset-work-checklist{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.asset-work-checklist-lead{color:var(--color-text);line-height:var(--line-body)}.asset-work-checklist .asset-work-checklist-link{display:flex;min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border:2px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-brand);font-size:var(--text-base);font-weight:var(--weight-medium);text-align:center;text-decoration:none;justify-content:center;align-items: center}.checklist-capture{display:flex;gap:var(--space-4);padding:var(--space-4);flex-direction:column}.checklist-capture-title{font-size:var(--text-xl);color:var(--color-text);line-height:var(--line-tight)}.checklist-capture-body,.checklist-capture-status{color:var(--color-text-muted);line-height:var(--line-body)}.checklist-capture-status--error{color:var(--color-danger);font-weight:var(--weight-medium)}.checklist-capture-header,.checklist-capture-empty,.checklist-capture-choice,.checklist-capture-submit{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.checklist-capture-facts{display:flex;gap:var(--space-2);flex-wrap:wrap}.checklist-capture-fact{padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);background-color:var(--color-bg);color:var(--color-text-muted);font-size:var(--text-sm)}.checklist-capture-partial{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.checklist-capture-note{color:var(--color-text);font-size:var(--text-sm);line-height:var(--line-body)}.checklist-capture-subject{color:var(--color-text-muted);font-size:var(--text-sm)}.checklist-capture-choices{display:flex;gap:var(--space-2);list-style:none;flex-direction:column}.checklist-capture-choice-item{display:flex}.checklist-capture-choice-button{display:flex;gap:var(--space-1);min-height:var(--touch-min);padding:var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);text-align:left;flex-direction:column;flex:1}.checklist-capture-choice-name{font-size:var(--text-lg);font-weight:var(--weight-medium)}.checklist-capture-choice-meta{color:var(--color-text-muted);font-size:var(--text-sm)}.checklist-capture-steps{display:flex;gap:var(--space-3);list-style:none;flex-direction:column}.checklist-capture-step{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.checklist-capture-step-label{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-body)}.checklist-capture-step-number{margin-right:var(--space-2);color:var(--color-text-muted);font-weight:var(--weight-bold)}.checklist-capture-step-marks{display:flex;gap:var(--space-2);flex-wrap:wrap}.checklist-capture-mark{padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);background-color:var(--color-bg);color:var(--color-text-muted);font-size:var(--text-sm)}.checklist-capture-step-hint{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.checklist-capture-bool{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.checklist-capture-bool-button{min-width:calc(var(--touch-min)*1.6);min-height:var(--touch-min);padding:var(--space-2)var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-medium)}.checklist-capture-bool-button--selected{border-color:var(--color-brand);color:var(--color-brand)}.checklist-capture-answer-state{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium)}.checklist-capture-number,.checklist-capture-select,.checklist-capture-text,.checklist-capture-note-input{min-height:var(--touch-min);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body)}.checklist-capture-text{resize:vertical}.checklist-capture-step-extras{display:flex;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border);flex-direction:column}.checklist-capture-note-label{color:var(--color-text-muted);font-size:var(--text-sm)}.checklist-capture-flag{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base);text-align:left}.checklist-capture-flag--set{border-color:var(--color-pending);color:var(--color-pending);font-weight:var(--weight-medium)}.checklist-capture-photos{color:var(--color-ok);font-size:var(--text-sm);font-weight:var(--weight-medium)}.checklist-capture-failure{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.checklist-capture-missing{display:flex;gap:var(--space-2);flex-direction:column}.checklist-capture-missing-heading{color:var(--color-danger);font-weight:var(--weight-medium)}.checklist-capture-missing-list{padding-left:var(--space-4);color:var(--color-text);line-height:var(--line-body)}.checklist-capture-missing-item{list-style:disc}.checklist-capture-submit-button{min-height:calc(var(--touch-min)*1.2);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-size:var(--text-lg);font-weight:var(--weight-medium);border:none}.checklist-capture-submit-button:disabled{opacity:.6}.checklist-capture-save{font-size:var(--text-sm);font-weight:var(--weight-medium)}.checklist-capture-save--idle{color:var(--color-text-muted)}.checklist-capture-save--saving{color:var(--color-pending)}.checklist-capture-save--saved{color:var(--color-ok)}.checklist-capture-save--error{color:var(--color-danger)}.checklist-capture-finish-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.checklists{display:flex;gap:var(--space-4);flex-direction:column}.checklists-header{display:flex;gap:var(--space-2);flex-direction:column}.checklists-title{color:var(--color-text)}.checklists-lead{color:var(--color-text-muted);line-height:var(--line-body)}.checklists-notice{padding:var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-pending);border-radius:var(--radius-md);color:var(--color-pending);font-weight:var(--weight-medium);line-height:var(--line-body)}.checklists-status{color:var(--color-text-muted);line-height:var(--line-body)}.checklists-list{display:flex;gap:var(--space-4);flex-direction:column}.checklists-card{display:flex;gap:var(--space-3);padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column}.checklists-card-title{color:var(--color-text)}.checklists-card-facts{display:flex;gap:var(--space-2);flex-wrap:wrap}.checklists-fact{padding:var(--space-1)var(--space-2);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted)}.checklists-fact--retired{color:var(--color-pending);border-color:var(--color-pending)}.checklists-card-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.checklists-partial{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.checklists-steps{display:flex;gap:var(--space-3);list-style:none;flex-direction:column;margin:0;padding:0}.checklists-step{display:flex;gap:var(--space-1);flex-direction:column}.checklists-step-label{display:flex;align-items:baseline;gap:var(--space-2);color:var(--color-text);line-height:var(--line-body)}.checklists-step-number{font-variant-numeric:tabular-nums;color:var(--color-text-muted);flex:none}.checklists-step-answer{color:var(--color-text-muted);font-size:var(--text-sm)}.checklists-step-marks{display:flex;gap:var(--space-2);flex-wrap:wrap}.checklists-mark{padding:var(--space-1)var(--space-2);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-text-muted)}.checklists-back{min-height:var(--touch-min);display:flex;color:var(--color-brand);align-self: flex-start;align-items: center}.delivery-lines{display:flex;gap:var(--space-3);flex-direction:column}.delivery-lines-heading{font-size:var(--text-lg)}.delivery-lines-empty{color:var(--color-text-muted);line-height:var(--line-body)}.delivery-lines-list{display:flex;gap:var(--space-3);flex-direction:column}.delivery-line{display:flex;gap:var(--space-1);padding:var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column}.delivery-line-what{font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight)}.delivery-line-sku,.delivery-line-facts{font-size:var(--text-sm);color:var(--color-text-muted)}.delivery-line-stepper{display:flex;align-items: center;gap:var(--space-3);margin-top:var(--space-2)}.delivery-line-step{min-width:var(--touch-min);min-height:var(--touch-min);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-xl);font-weight:var(--weight-bold)}.delivery-line-step:active{background-color:var(--color-surface)}.delivery-line-step:disabled{color:var(--color-text-muted);opacity:.6}.delivery-line-quantity{font-size:var(--text-xl);font-weight:var(--weight-bold);text-align:center;min-width:2ch}.delivery-line-over{font-size:var(--text-sm);color:var(--color-pending);line-height:var(--line-body)}.delivery-line-none{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--line-body)}.exceptions{display:flex;gap:var(--space-3);flex-direction:column}.exceptions-heading{font-size:var(--text-lg)}.exceptions-none{font-size:var(--text-sm);color:var(--color-text-muted)}.exceptions-list{display:flex;gap:var(--space-3);flex-direction:column}.exceptions-item{display:flex;gap:var(--space-1);padding:var(--space-3);background-color:var(--color-surface);border-left:4px solid var(--color-pending);border-radius:var(--radius-md);flex-direction:column}.exceptions-item-kind{font-weight:var(--weight-bold)}.exceptions-item-what{line-height:var(--line-body)}.exceptions-item-facts{font-size:var(--text-sm);color:var(--color-text-muted)}.exceptions-photos{display:flex;gap:var(--space-2);flex-wrap:wrap}.exceptions-photo-thumb{border-radius:var(--radius-sm);object-fit:cover;width:88px;height:88px}.exceptions-photo-missing{font-size:var(--text-sm);color:var(--color-text-muted)}.exceptions-form{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-3)}.exceptions-form-summary{padding:var(--space-3)0;font-weight:var(--weight-medium)}.exceptions-form-body{display:flex;gap:var(--space-3);padding-bottom:var(--space-4);flex-direction:column}.exceptions-kinds{display:flex;gap:var(--space-2);border:none;flex-wrap:wrap}.exceptions-legend,.exceptions-label{font-size:var(--text-sm);color:var(--color-text-muted)}.exceptions-kind{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base)}.exceptions-kind--on{background-color:var(--color-brand);border-color:var(--color-brand);color:var(--color-brand-contrast);font-weight:var(--weight-bold)}.exceptions-select{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base)}.exceptions-qty{display:flex;align-items: center;gap:var(--space-3)}.exceptions-step{min-width:var(--touch-min);min-height:var(--touch-min);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-xl);font-weight:var(--weight-bold)}.exceptions-step:disabled{color:var(--color-text-muted);opacity:.6}.exceptions-qty-value{font-size:var(--text-base);font-weight:var(--weight-medium)}.exceptions-description{padding:var(--space-3);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body);resize:vertical}.exceptions-failure{color:var(--color-danger);line-height:var(--line-body)}.exceptions-needed{font-size:var(--text-sm);color:var(--color-text-muted)}.exceptions-submit{min-height:var(--touch-min);padding:var(--space-3)var(--space-4);background-color:var(--color-bg);border:2px solid var(--color-brand);border-radius:var(--radius-md);color:var(--color-brand);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-bold)}.exceptions-submit:disabled{opacity:.6}.exceptions-note{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--line-body)}.delivery{display:flex;gap:var(--space-5);flex-direction:column}.delivery-header{display:flex;gap:var(--space-1);flex-direction:column}.delivery-title{color:var(--color-text)}.delivery-vendor{font-size:var(--text-lg)}.delivery-when,.delivery-tracking{font-size:var(--text-sm);color:var(--color-text-muted)}.delivery-sync{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium)}.delivery-sync--ok{color:var(--color-ok)}.delivery-sync--pending{color:var(--color-pending)}.delivery-sync--failed,.delivery-sync--rejected{color:var(--color-danger)}.delivery-sync--unknown{color:var(--color-text-muted)}.delivery-status{color:var(--color-text-muted);line-height:var(--line-body)}.delivery-status--error{color:var(--color-danger)}.delivery-confirmed{display:flex;gap:var(--space-2);padding:var(--space-3);background-color:var(--color-surface);border-radius:var(--radius-md);flex-direction:column}.delivery-confirmed-heading{font-size:var(--text-base);color:var(--color-text-muted)}.delivery-confirmed-list{display:flex;gap:var(--space-1);flex-direction:column}.delivery-confirmed-item{font-size:var(--text-sm);color:var(--color-text)}.delivery-notes{display:flex;gap:var(--space-2);flex-direction:column}.delivery-notes-heading{font-size:var(--text-lg)}.delivery-notes-input{padding:var(--space-3);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body);resize:vertical}.delivery-notes-save{font-size:var(--text-sm);color:var(--color-text-muted)}.delivery-confirm{display:flex;gap:var(--space-3);flex-direction:column}.delivery-failure{color:var(--color-danger);line-height:var(--line-body)}.delivery-confirm-button{min-height:var(--touch-min);padding:var(--space-3)var(--space-4);background-color:var(--color-brand);border-radius:var(--radius-md);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-bold);border:none}.delivery-confirm-button:disabled{opacity:.6}.delivery-confirm-note{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--line-body)}.delivery-missing{display:flex;gap:var(--space-3);flex-direction:column}.delivery-missing-body{line-height:var(--line-body)}.delivery-missing-id{font-size:var(--text-sm);color:var(--color-text-muted)}.not-on-device{padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);border-left:4px solid var(--color-border);color:var(--color-text)}.not-on-device--unknown{border-left-color:var(--color-pending)}.not-on-device--verified{border-left-color:var(--color-border);color:var(--color-text-muted)}.asset-list{display:flex;gap:var(--space-3);flex-direction:column}.asset-list-heading{color:var(--color-text)}.asset-list-items{display:flex;gap:var(--space-3);flex-direction:column}.asset-list-item{display:flex;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.asset-list-title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text)}.asset-list-fields{display:flex;gap:var(--space-1);flex-direction:column}.asset-list-field{display:flex;gap:var(--space-1)var(--space-2);flex-wrap:wrap}.asset-list-term{color:var(--color-text-muted);font-size:var(--text-sm);flex:none;min-width:12ch}.asset-list-value{color:var(--color-text);overflow-wrap:anywhere;flex:12ch}.asset-list-value--absent{color:var(--color-pending);font-weight:var(--weight-medium)}.asset-list-marks{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.asset-list-chip{padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-bold);border:1px solid}.asset-list-chip--on-spec{color:var(--color-ok)}.asset-list-chip--needs-repair{color:var(--color-pending)}.asset-list-chip--started{color:var(--color-brand)}.asset-list-quotes{display:grid;gap:var(--space-1);margin-top:var(--space-2);padding-left:var(--space-3);border-left:2px solid var(--color-border);font-size:var(--text-sm)}.asset-list-quote{color:var(--color-text)}.asset-list-quote--approved{color:var(--color-ok)}.asset-list-quote--declined{color:var(--color-danger)}.asset-list-quote--awaiting,.asset-list-quote--open,.asset-list-quote--quoted{color:var(--color-pending)}.asset-list-sync{display:inline-flex;align-items: center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-medium)}.asset-list-sync-glyph{font-size:var(--text-base);line-height:1}.asset-list-sync--ok{color:var(--color-ok)}.asset-list-sync--pending{color:var(--color-pending)}.asset-list-sync--failed,.asset-list-sync--rejected{color:var(--color-danger)}.asset-list-sync--unknown{color:var(--color-text-muted)}.asset-list-work{min-height:var(--touch-min);margin-top:var(--space-1);padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-size:var(--text-base);font-weight:var(--weight-medium);border:none}.asset-list-work:disabled{opacity:.6}.asset-list-adhoc{display:flex;gap:var(--space-3);flex-direction:column}.asset-list-adhoc-heading{font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--color-text)}.asset-list-add{min-height:var(--touch-min);padding:var(--space-2)var(--space-4);border:1px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-brand);font-size:var(--text-base);font-weight:var(--weight-medium)}.asset-list-add:disabled{opacity:.6}.asset-list-failure{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.contact-list{display:flex;gap:var(--space-3);flex-direction:column}.contact-list-heading{color:var(--color-text)}.contact-list-items{display:flex;gap:var(--space-3);flex-direction:column}.contact-list-item{display:flex;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.contact-list-name{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text)}.contact-list-role{font-size:var(--text-sm);color:var(--color-text-muted)}.contact-list .contact-list-action{display:flex;min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);background-color:var(--color-bg);box-shadow:inset 0 0 0 2px var(--color-brand);color:var(--color-brand);font-weight:var(--weight-medium);text-decoration:none;overflow-wrap:anywhere;align-items: center}.contact-list-action:active{opacity:.7}.contact-list-absent{font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.job-header{display:flex;gap:var(--space-2);flex-direction:column}.job-header-removed{padding:var(--space-3);border-radius:var(--radius-md);border-left:4px solid var(--color-danger);background-color:var(--color-surface);color:var(--color-text)}.job-header-removed-label{color:var(--color-danger);font-weight:var(--weight-bold)}.job-header-badges{display:flex;gap:var(--space-2);flex-wrap:wrap}.job-header-badge{padding:var(--space-1)var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--line-tight)}.job-header-badge--type{background-color:var(--color-brand);color:var(--color-brand-contrast)}.job-header-badge--status{background-color:var(--color-surface);color:var(--color-text-muted);box-shadow:inset 0 0 0 1px var(--color-border)}.job-header-customer{color:var(--color-text)}.job-header-location{font-size:var(--text-lg);color:var(--color-text)}.job-header-address{color:var(--color-text);overflow-wrap:anywhere}.job-header-when{display:flex;gap:var(--space-1)var(--space-3);color:var(--color-text);flex-wrap:wrap}.job-header-window{font-weight:var(--weight-bold)}.job-header-when-unknown{color:var(--color-pending);font-weight:var(--weight-medium)}.job-header .job-header-navigate{display:flex;min-height:var(--touch-min);margin-top:var(--space-2);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-size:var(--text-lg);font-weight:var(--weight-medium);text-align:center;text-decoration:none;justify-content:center;align-items: center}.job-header-navigate:active{opacity:.7}.office-notes{display:flex;gap:var(--space-2);flex-direction:column}.office-notes-heading{color:var(--color-text)}.office-notes-body{padding:var(--space-3)var(--space-4);border-left:4px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-text);font-size:var(--text-lg);white-space:pre-wrap;overflow-wrap:anywhere}.office-notes-empty{color:var(--color-text-muted)}.service-history{display:flex;gap:var(--space-3);flex-direction:column}.service-history-heading{color:var(--color-text)}.service-history-filter{display:flex;gap:var(--space-1);flex-direction:column}.service-history-filter-label{font-size:var(--text-sm);color:var(--color-text-muted)}.service-history-filter-select{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);width:100%}.service-history-items{display:flex;gap:var(--space-3);flex-direction:column}.service-history-item{display:flex;gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.service-history-when{display:flex;gap:var(--space-1)var(--space-3);flex-wrap:wrap}.service-history-date{font-weight:var(--weight-bold);color:var(--color-text)}.service-history-technician{color:var(--color-text-muted)}.service-history-summary{color:var(--color-text)}.service-history-outcome{font-weight:var(--weight-medium);color:var(--color-ok)}.service-history-outcome--needs-repair{color:var(--color-danger)}.service-history-none{color:var(--color-text-muted)}.action-sheet-backdrop{position:fixed;z-index:100;display:flex;background-color:color-mix(in srgb,var(--color-text)55%,transparent);justify-content:center;align-items: flex-end;inset:0}.action-sheet{display:flex;gap:var(--space-4);overflow-y:auto;padding:var(--space-5)var(--space-4);padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom));border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);background-color:var(--color-bg);animation:action-sheet-rise var(--duration-base)var(--easing-standard);flex-direction:column;width:100%;max-width:30rem;max-height:90vh}@keyframes action-sheet-rise{0%{transform:translateY(1rem)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.action-sheet{animation:none}}.action-sheet-title{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.action-sheet-title:focus-visible{outline:2px solid var(--color-brand);outline-offset:var(--space-1)}.action-sheet-body{display:flex;gap:var(--space-3);font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text);flex-direction:column}.action-sheet-actions{display:flex;gap:var(--space-2);flex-direction:column}.time-entry-list{display:flex;gap:var(--space-3);flex-direction:column}.time-entry-list-heading{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text)}.time-entry-list-empty,.time-entry-list-locked{font-size:var(--text-sm);line-height:var(--line-body);color:var(--color-text-muted)}.time-entry-list-items{display:flex;gap:var(--space-2);list-style:none;flex-direction:column}.time-entry-list-item{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);flex-wrap:wrap}.time-entry-list-fact{display:flex;gap:var(--space-1);flex-direction:column;flex:14rem}.time-entry-list-kind{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);flex-wrap:wrap}.time-entry-list-separator{color:var(--color-text-muted)}.time-entry-list-duration{font-variant-numeric:tabular-nums}.time-entry-list-span{color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.time-entry-list-reason{color:var(--color-pending);font-size:var(--text-sm);line-height:var(--line-body)}.time-entry-list-note{color:var(--color-danger);font-size:var(--text-sm);line-height:var(--line-body)}.time-entry-list-edit{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--line-tight);cursor:pointer;flex:0 auto}.time-entry-list-edit:focus-visible{outline:2px solid var(--color-brand);outline-offset:var(--space-1)}.time-entry-list-field{display:flex;gap:var(--space-2);flex-direction:column}.time-entry-list-field-label{font-weight:var(--weight-medium);color:var(--color-text)}.time-entry-list-field-input,.time-entry-list-field-reason{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body);min-width:0}.time-entry-list-field-reason{resize:vertical}.time-entry-list-field-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.time-entry-list-blocked{color:var(--color-pending);font-size:var(--text-sm);line-height:var(--line-body)}.time-entry-list-sheet-cancel,.time-entry-list-sheet-confirm{min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight);cursor:pointer}.time-entry-list-sheet-cancel{background-color:var(--color-bg);color:var(--color-text)}.time-entry-list-sheet-confirm{border-color:var(--color-brand);background-color:var(--color-brand);color:var(--color-brand-contrast);font-weight:var(--weight-bold)}.time-entry-list-sheet-confirm:disabled{cursor:default;opacity:.6}.time-entry-list-sheet-cancel:focus-visible{outline:2px solid var(--color-brand);outline-offset:var(--space-1)}.time-entry-list-sheet-confirm:focus-visible{outline:2px solid var(--color-brand);outline-offset:var(--space-1)}.visit-controls{display:flex;gap:var(--space-4);flex-direction:column}.visit-controls-state{display:flex;gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.visit-controls-now{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text);flex-wrap:wrap}.visit-controls-now-separator{color:var(--color-text-muted)}.visit-controls-now-duration{font-variant-numeric:tabular-nums}.visit-controls-now--traveling .visit-controls-now-label,.visit-controls-now--on-site .visit-controls-now-label{color:var(--color-ok)}.visit-controls-now--paused .visit-controls-now-label{color:var(--color-pending)}.visit-controls-now--completed .visit-controls-now-label{color:var(--color-brand)}.visit-controls-note{font-size:var(--text-sm);line-height:var(--line-body);color:var(--color-text-muted)}.visit-controls-sync{display:inline-flex;align-items: center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-medium)}.visit-controls-sync-glyph{line-height:1}.visit-controls-sync--ok{color:var(--color-ok)}.visit-controls-sync--pending{color:var(--color-pending)}.visit-controls-sync--failed,.visit-controls-sync--rejected{color:var(--color-danger)}.visit-controls-sync--unknown{color:var(--color-text)}.visit-controls-actions{display:flex;gap:var(--space-2);flex-direction:column}.visit-controls-button{min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-weight:var(--weight-medium);line-height:var(--line-tight);text-align:center;cursor:pointer}.visit-controls-button--primary{padding:var(--space-4);border-color:var(--color-brand);background-color:var(--color-brand);color:var(--color-brand-contrast);font-size:var(--text-lg);font-weight:var(--weight-bold);min-height:3.5rem}.visit-controls-button--secondary{background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base)}.visit-controls-actions--compact{flex-flow:wrap}.visit-controls-actions--compact .visit-controls-button{flex:12rem}.visit-controls-button:disabled{cursor:default;opacity:.6}.visit-controls-button:focus-visible{outline:2px solid var(--color-brand);outline-offset:var(--space-1)}.visit-controls-failure{padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-danger);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-body)}.visit-controls-status{font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text-muted)}.visit-controls-status--error{color:var(--color-danger)}.visit-controls-sheet-cancel,.visit-controls-sheet-secondary,.visit-controls-sheet-confirm{min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight);cursor:pointer}.visit-controls-sheet-cancel,.visit-controls-sheet-secondary{background-color:var(--color-bg);color:var(--color-text)}.visit-controls-sheet-confirm{border-color:var(--color-brand);background-color:var(--color-brand);color:var(--color-brand-contrast);font-weight:var(--weight-bold)}.visit-controls-sheet-cancel:disabled,.visit-controls-sheet-secondary:disabled,.visit-controls-sheet-confirm:disabled{cursor:default;opacity:.6}.visit-controls-sheet-cancel:focus-visible{outline:2px solid var(--color-brand);outline-offset:var(--space-1)}.visit-controls-sheet-secondary:focus-visible{outline:2px solid var(--color-brand);outline-offset:var(--space-1)}.visit-controls-sheet-confirm:focus-visible{outline:2px solid var(--color-brand);outline-offset:var(--space-1)}.visit-controls-sheet-warning{color:var(--color-pending);font-weight:var(--weight-medium)}.visit-controls-picker{display:flex;gap:var(--space-2);flex-direction:column}.visit-controls-picker-label{font-weight:var(--weight-medium);color:var(--color-text)}.visit-controls-picker-input{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);min-width:0}.visit-controls-picker-hint{color:var(--color-pending);font-size:var(--text-sm);line-height:var(--line-body)}.job-detail,.job-detail-context,.job-detail-equipment{display:flex;gap:var(--space-5);flex-direction:column}@media (min-width:1024px){.job-detail{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);align-items: start}.job-detail .job-detail-back{grid-column:1/-1;justify-self:start}.job-detail-status,.job-detail-missing{grid-column:1/-1}.job-detail-context{grid-column:1}.job-detail-equipment{grid-column:2}}.job-detail .job-detail-back{min-height:var(--touch-min);padding-right:var(--space-3);color:var(--color-brand);font-weight:var(--weight-medium);text-decoration:underline;text-underline-offset:.15em;text-decoration-thickness:2px;align-self: flex-start}.job-detail-status{color:var(--color-text-muted)}.job-detail-status--error{color:var(--color-danger);font-weight:var(--weight-medium)}.job-detail-missing{display:flex;gap:var(--space-4);flex-direction:column}.job-detail-missing-heading,.job-detail-missing-body{color:var(--color-text)}.job-detail-missing-id{font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.job-detail-report-link{display:flex;min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-brand);border-radius:var(--radius-md);color:var(--color-brand);font-weight:var(--weight-medium);text-align:center;justify-content:center;align-items: center}.day-map-canvas{position:relative;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.day-map-svg{display:block;width:100%;height:auto}.day-map-route{fill:none;stroke:var(--color-text-muted);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:7 5}.day-map-pin-shape{fill:var(--color-brand);stroke:var(--color-bg);stroke-width:2}.day-map-pin-number{fill:var(--color-brand-contrast);font-family:var(--font-body);font-size:15px;font-weight:var(--weight-bold)}.day-map-north{fill:var(--color-text-muted);stroke:var(--color-text-muted);stroke-width:1.5}.day-map-north-label{stroke:none;font-family:var(--font-body);font-size:13px;font-weight:var(--weight-bold)}.day-map-scale{stroke:var(--color-text-muted);stroke-width:1.5;fill:var(--color-text-muted)}.day-map-scale-label{stroke:none;font-family:var(--font-body);font-size:12px;font-weight:var(--weight-medium)}.day-map-device-dot{fill:var(--color-ok);stroke:var(--color-bg);stroke-width:2}.day-map-device-halo{fill:var(--color-ok);opacity:.22}.day-map-targets{position:absolute;pointer-events:none;inset:0}.day-map-target{position:absolute;display:block;min-width:var(--touch-min);min-height:var(--touch-min);cursor:pointer;pointer-events:auto;background:0 0;border:none;border-radius:50%;padding:0;transform:translate(-50%,-50%)}.day-map-target:active{opacity:.6}.day-map-target-label{position:absolute;overflow:hidden;clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0}.map-screen{display:flex;gap:var(--space-4);flex-direction:column}.map-screen-nav{display:flex;gap:var(--space-3)}.map-screen-heading{margin:0}.map-screen-status{color:var(--color-text);margin:0}.map-screen-summary{font-weight:var(--weight-medium);margin:0}.map-screen-note,.map-screen-device,.map-screen-missing{font-size:var(--text-sm);color:var(--color-text);margin:0}.map-screen-stops{display:flex;gap:var(--space-3);flex-direction:column;margin:0;padding:0}.map-screen-stop{display:flex;gap:var(--space-1);padding:var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column}.map-screen-stop p{margin:0}.map-screen-stop-link{font-size:var(--text-lg);font-weight:var(--weight-bold)}.map-screen-stop-when,.map-screen-stop-leg{font-size:var(--text-sm);color:var(--color-text-muted)}.map-screen-stop-missing{font-size:var(--text-sm);color:var(--color-pending);font-weight:var(--weight-medium)}.map-screen-stop-navigate{margin-top:var(--space-1)}.not-found{display:flex;align-items: flex-start;gap:var(--space-4);flex-direction:column}.not-found-heading,.not-found-body{color:var(--color-text)}.not-found-path{font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.not-found .not-found-action{padding:var(--space-3)var(--space-5);background-color:var(--color-brand);border-radius:var(--radius-md);color:var(--color-brand-contrast);font-weight:var(--weight-medium);text-decoration:none}.labor-notes{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.labor-notes-heading{font-size:var(--text-lg);color:var(--color-text)}.labor-notes-label{margin-top:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.labor-notes-hours,.labor-notes-notes,.labor-notes-recommendation,.labor-notes-severity{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body)}.labor-notes-hours{min-height:var(--touch-min);max-width:8rem}.labor-notes-notes{resize:vertical;min-height:7rem}.labor-notes-recommendation{resize:vertical;min-height:4.5rem}.labor-notes-severity{min-height:var(--touch-min);width:100%}.labor-notes-error{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.labor-notes-save{font-size:var(--text-sm);font-weight:var(--weight-medium)}.labor-notes-save--idle{color:var(--color-text-muted)}.labor-notes-save--saving{color:var(--color-pending)}.labor-notes-save--saved{color:var(--color-ok)}.labor-notes-save--error{color:var(--color-danger)}.missing-part{display:flex;gap:var(--space-2);padding:var(--space-4);border:2px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.missing-part-heading{font-size:var(--text-lg);color:var(--color-text)}.missing-part-intro{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.missing-part-label{margin-top:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.missing-part-input,.missing-part-text{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body)}.missing-part-input{min-height:var(--touch-min)}.missing-part-text{resize:vertical;min-height:5rem}.missing-part-capture-row{display:flex;gap:var(--space-2);flex-wrap:wrap}.missing-part-preview{display:flex;gap:var(--space-2);flex-direction:column;align-items: flex-start}.missing-part-thumb{aspect-ratio:4/3;border-radius:var(--radius-sm);background-color:var(--color-bg);object-fit:cover;width:100%;max-width:12rem}.missing-part-preview-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.missing-part-missing{display:flex;gap:var(--space-1);padding:var(--space-3);border-left:4px solid var(--color-pending);border-radius:var(--radius-md);background-color:var(--color-bg);flex-direction:column}.missing-part-missing-heading{color:var(--color-pending);font-weight:var(--weight-bold)}.missing-part-missing-list{display:flex;gap:var(--space-1);padding-left:var(--space-4);list-style:disc;flex-direction:column}.missing-part-missing-item{color:var(--color-text);line-height:var(--line-body)}.missing-part-failure{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.missing-part-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2);flex-direction:column}.missing-part-add{min-height:calc(var(--touch-min)*1.2);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-bold);border:none}.missing-part-secondary{display:flex;min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);justify-content:center;align-items: center}.missing-part-add:disabled,.missing-part-secondary:disabled{opacity:.6}.quote-line-list{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.quote-line-list-heading{font-size:var(--text-lg);color:var(--color-text)}.quote-line-list-empty{color:var(--color-text-muted)}.quote-line-list-list{display:flex;gap:var(--space-3);flex-direction:column}.quote-line-list-item{display:flex;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);flex-direction:column}.quote-line-list-item--none{opacity:.7}.quote-line-list-what{color:var(--color-text);line-height:var(--line-body);overflow-wrap:anywhere}.quote-line-list-stale{color:var(--color-danger);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--line-body)}.quote-line-list-qty{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.quote-line-list-step{display:flex;min-height:var(--touch-min);min-width:calc(var(--touch-min)*1.6);padding:var(--space-2)var(--space-3);border:1px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-brand);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);justify-content:center;align-items: center}.quote-line-list-step:disabled{border-color:var(--color-border);color:var(--color-text-muted);opacity:.6}.quote-line-list-count{color:var(--color-text);font-weight:var(--weight-bold)}.quote-line-list-total{color:var(--color-text);font-weight:var(--weight-medium);line-height:var(--line-body)}.quote-line-list-source{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body);overflow-wrap:anywhere}.quote-line-list-cost-open{display:flex;min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-brand);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);text-align:center;justify-content:center;align-items: center;width:100%}.quote-line-list-cost-open:disabled{border-color:var(--color-border);color:var(--color-text-muted);opacity:.6}.quote-line-list-cost{display:flex;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.quote-line-list-cost-label{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--line-body)}.quote-line-list-cost-input{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base)}.quote-line-list-cost-echo{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:var(--line-body)}.quote-line-list-cost-error{color:var(--color-danger);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--line-body)}.quote-line-list-cost-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.quote-line-list-cost-cancel,.quote-line-list-cost-save{display:flex;min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);text-align:center;flex:8rem;justify-content:center;align-items: center}.quote-line-list-cost-cancel{border:1px solid var(--color-border);background-color:var(--color-bg);color:var(--color-text)}.quote-line-list-cost-save{border:1px solid var(--color-brand);background-color:var(--color-brand);color:var(--color-brand-contrast)}.sku-search{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.sku-search-heading{font-size:var(--text-lg);color:var(--color-text)}.sku-search-label{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.sku-search-input{min-height:var(--touch-min);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base)}.sku-search-chips{display:flex;gap:var(--space-2);flex-wrap:wrap}.sku-search-chip{display:flex;min-height:var(--touch-min);min-width:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);align-items: center}.sku-search-chip--on{border-color:var(--color-brand);background-color:var(--color-brand);color:var(--color-brand-contrast);font-weight:var(--weight-medium)}.sku-search-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.sku-search-failure{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.sku-search-group{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium)}.sku-search-results{display:flex;gap:var(--space-2);flex-direction:column}.sku-search-result{display:flex;gap:var(--space-1);min-height:var(--touch-min);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);text-align:left;flex-direction:column;width:100%}.sku-search-result:disabled{opacity:.6}.sku-search-result-fields{line-height:var(--line-body)}.sku-search-result-field{overflow-wrap:anywhere}.sku-search-sep{color:var(--color-text-muted)}.sku-search-stale{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.sku-search-add{color:var(--color-brand);font-weight:var(--weight-bold)}.sku-search-missing{position:sticky;bottom:max(env(safe-area-inset-bottom),var(--update-prompt-inset,0px));display:flex;min-height:var(--touch-min);padding:var(--space-3);border:2px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-brand);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-bold);text-align:center;justify-content:center;align-items: center}.sku-search-missing:disabled{opacity:.6}.quote,.quote-catalogue,.quote-request{display:flex;gap:var(--space-4);flex-direction:column}@media (min-width:1024px){.quote{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);align-items: start}.quote .quote-back{grid-column:1/-1;justify-self:start}.quote-header,.quote-failure,.quote-status,.quote-missing{grid-column:1/-1}.quote-catalogue{grid-column:1}.quote-request{grid-column:2}}.quote-back{display:flex;min-height:var(--touch-min);padding:var(--space-2)0;color:var(--color-brand);font-weight:var(--weight-medium);align-self: flex-start;align-items: center}.quote-header{display:flex;gap:var(--space-1);flex-direction:column}.quote-heading{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.quote-what{color:var(--color-text);font-weight:var(--weight-medium)}.quote-body,.quote-status{color:var(--color-text-muted);line-height:var(--line-body)}.quote-status--error{color:var(--color-danger);font-weight:var(--weight-medium)}.quote-failure{padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.quote-finish{display:flex;gap:var(--space-3);padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom));flex-direction:column}.quote-done{min-height:calc(var(--touch-min)*1.4);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-bold);border:none}.quote-done:disabled{opacity:.6}.quote-finish-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.quote-missing{display:flex;gap:var(--space-3);flex-direction:column}.quote-missing-id{color:var(--color-text-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.quote-cost-note{padding:var(--space-2)var(--space-3);border-left:3px solid var(--color-brand);color:var(--color-text)}.receiving{display:flex;gap:var(--space-4);flex-direction:column}.receiving-header{display:flex;gap:var(--space-2);flex-direction:column}.receiving-title{color:var(--color-text)}.receiving-lead{color:var(--color-text-muted);line-height:var(--line-body)}.receiving-sync{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium)}.receiving-sync--ok{color:var(--color-ok)}.receiving-sync--pending{color:var(--color-pending)}.receiving-sync--failed,.receiving-sync--rejected{color:var(--color-danger)}.receiving-sync--unknown{color:var(--color-text-muted)}.receiving-search{display:flex;gap:var(--space-1);flex-direction:column}.receiving-search-label{font-size:var(--text-sm);color:var(--color-text-muted)}.receiving-search-input{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base)}.receiving-status{color:var(--color-text-muted);line-height:var(--line-body)}.receiving-status--error{color:var(--color-danger)}.receiving-empty{color:var(--color-text-muted);line-height:var(--line-body)}.receiving-list{display:flex;gap:var(--space-3);flex-direction:column}.receiving-item{display:block}.receiving-item .receiving-card-link{display:block;padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);text-decoration:none}.receiving-item .receiving-card-link:active{opacity:.7}.receiving-card{display:flex;gap:var(--space-1);flex-direction:column}.receiving-card-po{font-size:var(--text-lg);font-weight:var(--weight-bold)}.receiving-card-vendor{font-size:var(--text-base)}.receiving-card-when,.receiving-card-tracking,.receiving-card-counts{font-size:var(--text-sm);color:var(--color-text-muted)}.receiving-card-exceptions{font-size:var(--text-sm);color:var(--color-pending);font-weight:var(--weight-medium)}.storage-section{display:flex;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-surface);flex-direction:column}.storage-section-heading{font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.storage-section-subheading{margin-top:var(--space-2);font-size:var(--text-base);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.storage-section-detail{font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text)}.storage-section-detail--action{font-weight:var(--weight-medium)}.storage-section-safety{display:flex;gap:var(--space-2);padding:var(--space-3);border-left:4px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);flex-direction:column}.storage-section-safety--clear{border-left-color:var(--color-ok)}.storage-section-safety--waiting{border-left-color:var(--color-pending)}.storage-section-safety--attention{border-left-color:var(--color-danger)}.storage-section-safety-headline{font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.storage-section-facts{display:flex;gap:var(--space-2);flex-direction:column}.storage-section-fact{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);flex-wrap:wrap}.storage-section-term{font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text-muted);flex:12rem}.storage-section-value{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text);font-variant-numeric:tabular-nums}.support-report{display:flex;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-surface);flex-direction:column}.support-report-heading{font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.support-report-blurb{font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text)}.support-report-stamp{font-size:var(--text-sm);line-height:var(--line-body);color:var(--color-text-muted);overflow-wrap:anywhere}.support-report-buttons{display:flex;gap:var(--space-3);flex-wrap:wrap}.support-report-action{min-height:var(--touch-min);min-width:var(--touch-min);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-tight);text-align:center;cursor:pointer;border:1px solid #0000;flex:12rem}.support-report-action--link{display:flex;text-decoration:none;justify-content:center;align-items: center}.support-report-action:disabled{background-color:var(--color-bg);border-color:var(--color-border);color:var(--color-text-muted);cursor:default}.support-report-copied{font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text)}.support-report-text{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--text-base);line-height:var(--line-body);white-space:pre;overflow:auto;resize:vertical;width:100%;min-height:14rem}.technician-section{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.technician-section-heading{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.05em}.technician-section-current{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-medium);line-height:var(--line-body);overflow-wrap:anywhere}.technician-section-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.technician-section-failure,.technician-section-refused{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.technician-section-waiting{color:var(--color-text-muted);line-height:var(--line-body)}.technician-section-change,.technician-section-cancel{min-height:var(--touch-min);padding:var(--space-2)var(--space-4);border:2px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-brand);font-size:var(--text-base);font-weight:var(--weight-medium);align-self: flex-start}.technician-section-cancel{border-color:var(--color-border);color:var(--color-text)}.technician-section-confirm-line{color:var(--color-text);line-height:var(--line-body)}.technician-section-confirm-cancel,.technician-section-confirm-save{min-height:var(--touch-min);padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--weight-medium);flex:10ch}.technician-section-confirm-cancel{border:2px solid var(--color-border);background-color:var(--color-bg);color:var(--color-text)}.technician-section-confirm-save{border:2px solid var(--color-brand);background-color:var(--color-brand);color:var(--color-brand-contrast)}.technician-section-confirm-save:disabled{border-color:var(--color-border);background-color:var(--color-surface);color:var(--color-text-muted)}.settings{display:flex;align-items:stretch;gap:var(--space-4);flex-direction:column}.settings-heading{color:var(--color-text)}.settings-status{font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text)}.settings-footnote{font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text-muted)}.settings .settings-link{display:flex;min-height:var(--touch-min);align-items: center}.signature-pad{display:flex;gap:var(--space-2);flex-direction:column}.signature-pad-canvas{display:block;border:2px solid var(--color-border);border-radius:var(--radius-md);touch-action:none;overscroll-behavior:contain;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;width:100%;height:11rem}.signature-pad-actions{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2);flex-wrap:wrap}.signature-pad-hint{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body);flex:14ch}.signature-pad-clear{min-height:var(--touch-min);min-width:var(--touch-min);padding:var(--space-2)var(--space-4);border:2px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-brand);font-size:var(--text-base);font-weight:var(--weight-medium)}.signature-pad-clear:disabled{border-color:var(--color-border);color:var(--color-text-muted)}.signature-pad-unavailable{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.signature{display:flex;gap:var(--space-4);flex-direction:column}.signature-back{display:flex;min-height:var(--touch-min);color:var(--color-brand);font-size:var(--text-base);align-self: flex-start;align-items: center}.signature-status{color:var(--color-text-muted);line-height:var(--line-body)}.signature-status--error{color:var(--color-danger);font-weight:var(--weight-medium)}.signature-header{display:flex;gap:var(--space-1);flex-direction:column}.signature-title{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.signature-where{color:var(--color-text-muted);font-size:var(--text-base)}.signature-summary{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.signature-summary-heading{font-size:var(--text-sm);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.signature-summary-text{color:var(--color-text);font-size:var(--text-lg);line-height:var(--line-body);white-space:pre-wrap}.signature-summary-missing{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.signature-field{display:flex;gap:var(--space-2);flex-direction:column}.signature-label{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.signature-input{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-lg)}.signature-input:focus{outline:3px solid var(--color-text);outline-offset:2px}.signature-input:disabled{color:var(--color-text-muted)}.signature-field-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.signature-failure{color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.signature-saved{color:var(--color-ok);font-weight:var(--weight-medium);line-height:var(--line-body)}.signature-accept{display:flex;gap:var(--space-3);flex-direction:column}.signature-blocked{display:flex;gap:var(--space-2);color:var(--color-pending);line-height:var(--line-body);flex-direction:column}.signature-checklist{display:flex;gap:var(--space-2);line-height:var(--line-body);flex-direction:column}.signature-checklist-heading{color:var(--color-text);font-weight:var(--weight-medium)}.signature-checklist-list{display:flex;gap:var(--space-1);list-style:none;flex-direction:column}.signature-checklist-item{display:flex;gap:var(--space-2);color:var(--color-pending);line-height:var(--line-body)}.signature-checklist-item--done{color:var(--color-ok)}.signature-checklist-mark{text-align:center;font-weight:var(--weight-bold);flex:0 0 1rem}.signature-checklist-state{position:absolute;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}.signature-checklist-text{flex:auto}.signature-accept-button{min-height:calc(var(--touch-min) + var(--space-2));padding:var(--space-3)var(--space-4);border:2px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-size:var(--text-lg);font-weight:var(--weight-medium)}.signature-accept-button:disabled{border-color:var(--color-border);background-color:var(--color-surface);color:var(--color-text-muted)}.signature-confirm-line{color:var(--color-text);line-height:var(--line-body)}.signature-confirm-cancel,.signature-confirm-save{min-height:var(--touch-min);padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--weight-medium);flex:10ch}.signature-confirm-cancel{border:2px solid var(--color-border);background-color:var(--color-bg);color:var(--color-text)}.signature-confirm-save{border:2px solid var(--color-brand);background-color:var(--color-brand);color:var(--color-brand-contrast)}.signature-confirm-save:disabled{border-color:var(--color-border);background-color:var(--color-surface);color:var(--color-text-muted)}.job-card{display:flex;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);outline-offset:2px;overflow:hidden;flex-direction:column}.job-card--removed{border-color:var(--color-danger);border-left-width:4px}.job-card .job-card-link{display:block;padding:var(--space-4);color:var(--color-text);text-decoration:none}.job-card .job-card-link:active{opacity:.7}.job-card-body{display:flex;gap:var(--space-1);flex-direction:column}.job-card-when{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap}.job-card-stop{display:inline-flex;padding:0 var(--space-2);background-color:var(--color-brand);border-radius:var(--radius-sm);color:var(--color-brand-contrast);font-size:var(--text-sm);font-weight:var(--weight-bold);align-items: center}.job-card-time{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text)}.job-card-where{display:flex;flex-direction:column}.job-card-place{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.job-card-place--unknown{font-weight:var(--weight-regular);color:var(--color-text)}.job-card-customer{font-size:var(--text-sm);color:var(--color-text-muted)}.job-card-facts{display:flex;align-items: center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text);flex-wrap:wrap}.job-card-type{font-weight:var(--weight-medium)}.job-card-separator{color:var(--color-text-muted)}.job-card-quote{display:block;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text)}.job-card-quote--approved{color:var(--color-ok)}.job-card-quote--declined{color:var(--color-danger)}.job-card-quote--awaiting,.job-card-quote--open,.job-card-quote--quoted{color:var(--color-pending)}.job-card-address{font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.job-card-meta{display:flex;gap:var(--space-1);padding:0 var(--space-4)var(--space-3);font-size:var(--text-sm);flex-direction:column}.job-card-sync{display:inline-flex;align-items: center;gap:var(--space-1);font-weight:var(--weight-medium)}.job-card-sync-glyph{line-height:1}.job-card-sync--ok{color:var(--color-ok)}.job-card-sync--pending{color:var(--color-pending)}.job-card-sync--failed,.job-card-sync--rejected{color:var(--color-danger)}.job-card-sync--unknown{color:var(--color-text)}.job-card-removed{color:var(--color-danger);font-weight:var(--weight-medium)}.job-card-missing{color:var(--color-text)}.job-card-navigate{display:flex;min-height:var(--touch-min);padding:var(--space-2)var(--space-4);border-top:1px solid var(--color-border);color:var(--color-brand);font-weight:var(--weight-medium);text-decoration:none;justify-content:center;align-items: center}.job-card-navigate:active{opacity:.7}.map-strip{display:flex;gap:var(--space-2);flex-direction:column}.map-strip-device,.map-strip-missing{font-size:var(--text-sm);color:var(--color-text);margin:0}.map-strip-more{font-size:var(--text-sm);margin:0}.receiving-link-bar{display:flex;justify-content:flex-start}.receiving-link-bar .receiving-link-bar-link{min-width:var(--touch-min);padding-right:var(--space-2)}.settings-link-bar{display:flex;justify-content:flex-end}.settings-link-bar .settings-link-bar-link{min-width:var(--touch-min);padding-left:var(--space-2)}.end-of-day{display:flex;gap:var(--space-2);margin-top:var(--space-5);padding:var(--space-4);border-top:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);margin-bottom:env(safe-area-inset-bottom);flex-direction:column}.end-of-day-heading{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text-muted)}.end-of-day-line{color:var(--color-text);font-size:var(--text-lg);line-height:var(--line-body)}.end-of-day-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.end-of-day-sync{display:flex;align-items:baseline;gap:var(--space-2);font-weight:var(--weight-medium);line-height:var(--line-body)}.end-of-day-sync--ok{color:var(--color-ok)}.end-of-day-sync--pending{color:var(--color-pending)}.end-of-day-glyph{font-weight:var(--weight-bold)}.end-of-day-outstanding{display:flex;gap:var(--space-2);flex-direction:column}.end-of-day-jobs{display:flex;gap:var(--space-2);list-style:none;flex-direction:column}.end-of-day-job{display:flex;gap:var(--space-1);padding-left:var(--space-3);border-left:2px solid var(--color-pending);flex-direction:column}.end-of-day-job-name{color:var(--color-text);font-weight:var(--weight-medium)}.end-of-day-job-state{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.end-of-day-action{min-height:var(--touch-min);padding:var(--space-3)var(--space-5);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);border:none;align-self: flex-start}.today{display:flex;gap:var(--space-5);flex-direction:column}.today-now{display:flex;gap:var(--space-3);flex-direction:column}.today-heading{color:var(--color-text)}.today-day{display:flex;gap:var(--space-2);flex-direction:column}.today-day-heading{font-size:var(--text-base);color:var(--color-text-muted)}.today-jobs{display:flex;gap:var(--space-3);flex-direction:column}.today-job{display:block}.today-past{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-3)}.today-past[open]{padding-bottom:var(--space-3)}.today-past-days{display:flex;gap:var(--space-3);flex-direction:column}.today-past-summary{display:flex;min-height:var(--touch-min);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer;align-items: center}.today-past-summary:active{opacity:.7}.today-empty,.today-status{color:var(--color-text);margin:0}.today-notes{display:flex;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);flex-direction:column}.today-note{font-size:var(--text-sm);color:var(--color-text);margin:0}.today-nav{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3)}.parts-used{display:flex;gap:var(--space-4);flex-direction:column}.parts-used-back{align-self: flex-start}.parts-used-status{color:var(--color-text-muted);line-height:var(--line-body)}.parts-used-status--error{color:var(--color-danger)}.parts-used-header,.parts-used-missing{display:flex;gap:var(--space-2);flex-direction:column}.parts-used-title{font-size:var(--text-xl);color:var(--color-text)}.parts-used-lead{color:var(--color-text);font-weight:var(--weight-medium);line-height:var(--line-body)}.parts-used-body{color:var(--color-text-muted);line-height:var(--line-body)}.parts-used-failure{color:var(--color-danger);line-height:var(--line-body)}.parts-used-empty{color:var(--color-text-muted);line-height:var(--line-body)}.parts-used-list-block{display:flex;gap:var(--space-3);flex-direction:column}.parts-used-list-heading{font-size:var(--text-lg);color:var(--color-text)}.parts-used-list{display:flex;gap:var(--space-3);list-style:none;flex-direction:column}.parts-used-row{display:flex;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.parts-used-row-what{color:var(--color-text);font-weight:var(--weight-medium);line-height:var(--line-body)}.parts-used-row-kind,.parts-used-row-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.parts-used-row-qty{display:flex;align-items: center;gap:var(--space-3)}.parts-used-step{min-height:var(--touch-min);min-width:calc(var(--touch-min)*1.5);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base)}.parts-used-step:disabled{color:var(--color-text-muted)}.parts-used-qty-value{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-bold);text-align:center;min-width:3ch}.parts-used-row-attribute{display:flex;gap:var(--space-1);flex-direction:column}.parts-used-row-attribute-label{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-medium)}.parts-used-row-attribute-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.parts-used-composer{display:flex;gap:var(--space-3);flex-direction:column}.parts-used-composer-heading{font-size:var(--text-lg);color:var(--color-text)}.parts-used-kind{display:flex;gap:var(--space-2);border:none;flex-direction:column}.parts-used-kind-legend{color:var(--color-text);font-weight:var(--weight-medium);padding-bottom:var(--space-2)}.parts-used-kind-choice{display:flex;gap:var(--space-1);min-height:var(--touch-min);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);text-align:left;flex-direction:column}.parts-used-kind-choice--on{border:2px solid var(--color-brand);background-color:var(--color-surface)}.parts-used-kind-name{font-weight:var(--weight-medium)}.parts-used-kind-choice--on .parts-used-kind-name{font-weight:var(--weight-bold)}.parts-used-kind-why{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.parts-used-field{display:flex;gap:var(--space-1);flex-direction:column}.parts-used-field-label{color:var(--color-text);font-weight:var(--weight-medium)}.parts-used-select,.parts-used-qty-input,.parts-used-note-input{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg);color:var(--color-text);font-size:var(--text-base)}.parts-used-qty-input{max-width:8rem}.parts-used-search{display:flex;gap:var(--space-4);flex-direction:column}.parts-used-missing-form{display:flex;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.parts-used-missing-heading{font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--color-text)}.parts-used-missing-list{display:flex;gap:var(--space-1);padding-left:var(--space-4);color:var(--color-danger);line-height:var(--line-body);flex-direction:column}.parts-used-record{min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-size:var(--text-base);font-weight:var(--weight-medium);border:none}.parts-used-record:disabled{background-color:var(--color-border);color:var(--color-text)}.trip-report{display:flex;gap:var(--space-4);flex-direction:column}.trip-report-back{align-self: flex-start}.trip-report-status{color:var(--color-text-muted);line-height:var(--line-body)}.trip-report-status--error{color:var(--color-danger)}.trip-report-header,.trip-report-missing{display:flex;gap:var(--space-2);flex-direction:column}.trip-report-title{font-size:var(--text-xl);color:var(--color-text)}.trip-report-where{color:var(--color-text);font-weight:var(--weight-medium)}.trip-report-body{color:var(--color-text-muted);line-height:var(--line-body)}.trip-report-open{display:flex;gap:var(--space-3);padding:var(--space-4);border:2px solid var(--color-brand);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.trip-report-open--clear{border-color:var(--color-ok)}.trip-report-open-heading{font-size:var(--text-lg);color:var(--color-text)}.trip-report-open-verdict{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--line-body)}.trip-report-open-list{display:flex;gap:var(--space-3);flex-direction:column}.trip-report-item{display:flex;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-left:4px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);flex-direction:column}.trip-report-item--blocking{border-left-color:var(--color-danger)}.trip-report-item-flag{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.04em}.trip-report-item--blocking .trip-report-item-flag{color:var(--color-danger)}.trip-report-item-subject{text-transform:none;letter-spacing:normal}.trip-report-item-what{color:var(--color-text);line-height:var(--line-body);overflow-wrap:anywhere}.trip-report-item-link,.trip-report-finish{display:flex;min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-brand);border-radius:var(--radius-md);color:var(--color-brand);font-weight:var(--weight-medium);text-align:center;justify-content:center;align-items: center}.trip-report-finish{background-color:var(--color-bg)}.trip-report-section{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.trip-report-section-heading{font-size:var(--text-lg);color:var(--color-text)}.trip-report-empty{color:var(--color-text-muted)}.trip-report-list,.trip-report-lines{display:flex;gap:var(--space-3);flex-direction:column}.trip-report-row{display:flex;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);flex-direction:column}.trip-report-row--quiet{color:var(--color-text-muted)}.trip-report-row-title{font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--color-text)}.trip-report-facts{display:flex;gap:var(--space-2);flex-direction:column}.trip-report-fact{display:flex;gap:var(--space-2);flex-wrap:wrap}.trip-report-fact-label{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);min-width:6rem}.trip-report-fact-value{color:var(--color-text);line-height:var(--line-body);overflow-wrap:anywhere;flex:10rem}.trip-report-line{display:flex;gap:var(--space-1);flex-direction:column}.trip-report-line-what{color:var(--color-text);line-height:var(--line-body);overflow-wrap:anywhere}.trip-report-line-source{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body);overflow-wrap:anywhere}.wrap-up{display:flex;gap:var(--space-4);flex-direction:column}.wrap-up-back{display:flex;min-height:var(--touch-min);padding:var(--space-2)0;color:var(--color-brand);font-weight:var(--weight-medium);align-self: flex-start;align-items: center}.wrap-up-header{display:flex;gap:var(--space-1);flex-direction:column}.wrap-up-title{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.wrap-up-lead,.wrap-up-status{color:var(--color-text-muted);line-height:var(--line-body)}.wrap-up-status--error{color:var(--color-danger);font-weight:var(--weight-medium)}.wrap-up-failure{padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-danger);font-weight:var(--weight-medium);line-height:var(--line-body)}.wrap-up-missing{display:flex;gap:var(--space-3);flex-direction:column}.wrap-up-missing-body{color:var(--color-text);line-height:var(--line-body)}.wrap-up-summary{display:flex;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.wrap-up-summary-label{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text)}.wrap-up-summary-input{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-body);resize:vertical;min-height:12rem}.wrap-up-save{font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--line-body)}.wrap-up-save--idle{color:var(--color-text-muted)}.wrap-up-save--saving{color:var(--color-pending)}.wrap-up-save--saved{color:var(--color-ok)}.wrap-up-save--error{color:var(--color-danger)}.wrap-up-unfinished{display:flex;align-items: flex-start;gap:var(--space-2);padding:var(--space-3);border-left:4px solid var(--color-pending);border-radius:var(--radius-md);background-color:var(--color-surface);flex-direction:column}.wrap-up-unfinished-body{color:var(--color-text);line-height:var(--line-body)}.wrap-up-unfinished-link{font-weight:var(--weight-medium)}.wrap-up-paths{display:flex;gap:var(--space-3);padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom));flex-direction:column}.wrap-up .wrap-up-path{display:flex;min-height:calc(var(--touch-min)*1.3);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-lg);line-height:var(--line-tight);text-align:center;text-decoration:none;justify-content:center;align-items: center}.wrap-up .wrap-up-path--primary{background-color:var(--color-brand);color:var(--color-brand-contrast);font-weight:var(--weight-bold);border:none}.wrap-up .wrap-up-path--secondary{border:2px solid var(--color-brand);background-color:var(--color-bg);color:var(--color-brand);font-weight:var(--weight-medium)}.wrap-up-path:disabled{opacity:.6}.wrap-up-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.wrap-up-sheet-label{display:block;margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--line-body)}.wrap-up-sheet-input{min-height:var(--touch-min);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);width:100%}.wrap-up-sheet-warning{margin-top:var(--space-3);color:var(--color-text);font-weight:var(--weight-medium);line-height:var(--line-body)}.wrap-up-sheet-cancel,.wrap-up-sheet-confirm{min-height:var(--touch-min);padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);flex:auto}.wrap-up-sheet-cancel{border:1px solid var(--color-border);background-color:var(--color-bg);color:var(--color-text)}.wrap-up-sheet-confirm{background-color:var(--color-danger);color:var(--color-brand-contrast);font-weight:var(--weight-bold);border:none}.wrap-up-sheet-confirm:disabled{opacity:.6}.wrap-up-review{display:flex;min-height:var(--touch-min);padding:var(--space-2)var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-brand);font-weight:var(--weight-medium);text-align:center;justify-content:center;align-items: center}.storage-unavailable{display:flex;padding:var(--space-5)var(--space-4);padding-top:max(var(--space-5),env(safe-area-inset-top));padding-bottom:max(var(--space-6),env(safe-area-inset-bottom));padding-right:max(var(--space-4),env(safe-area-inset-right));padding-left:max(var(--space-4),env(safe-area-inset-left));background-color:var(--color-bg);justify-content:center;align-items: flex-start;min-height:100dvh}.storage-unavailable--wait{flex-direction:column;justify-content:center;align-items: center}.storage-unavailable-card{padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:34rem}.storage-unavailable-heading{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-danger)}.storage-unavailable-cause{margin-top:var(--space-3);font-size:var(--text-lg);line-height:var(--line-body);color:var(--color-text)}.storage-unavailable-reassurance{margin-top:var(--space-3);padding:var(--space-3);border-left:4px solid var(--color-ok);border-radius:var(--radius-sm);background-color:var(--color-bg);font-size:var(--text-base);font-weight:var(--weight-medium);line-height:var(--line-body);color:var(--color-text)}.storage-unavailable-blocked{margin-top:var(--space-3);font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text)}.storage-unavailable-subheading{margin-top:var(--space-5);font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--line-tight);color:var(--color-text)}.storage-unavailable-steps{margin-top:var(--space-2);list-style:decimal;padding-left:var(--space-5)}.storage-unavailable-step{margin-top:var(--space-2);font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text)}.storage-unavailable-action{min-height:var(--touch-min);min-width:var(--touch-min);margin-top:var(--space-5);padding:var(--space-3)var(--space-5);border-radius:var(--radius-md);background-color:var(--color-brand);color:var(--color-brand-contrast);font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--weight-medium);line-height:var(--line-tight);cursor:pointer;border:1px solid #0000;width:100%}.storage-unavailable-action:disabled{background-color:var(--color-bg);border-color:var(--color-border);color:var(--color-text-muted);cursor:default}.storage-unavailable-detail{margin-top:var(--space-4);font-size:var(--text-sm);line-height:var(--line-body);color:var(--color-text-muted)}.storage-unavailable-wait{font-size:var(--text-lg);line-height:var(--line-body);color:var(--color-text-muted)}.storage-unavailable-wait-slow{margin-top:var(--space-3);font-size:var(--text-base);line-height:var(--line-body);color:var(--color-text-muted);text-align:center;max-width:32rem}.app-main{display:flex;gap:var(--space-4);padding:var(--space-5)var(--space-4);padding-bottom:calc(var(--space-6) + max(env(safe-area-inset-bottom),var(--update-prompt-inset,0px)));padding-right:max(var(--space-4),env(safe-area-inset-right));padding-left:max(var(--space-4),env(safe-area-inset-left));flex-direction:column}@media (min-width:768px){.app-main{max-width:var(--shell-measure);margin-inline-start:auto;margin-inline-end:auto}}@media (min-width:1024px){:root[data-shell-layout=wide] .app-main{max-width:var(--shell-measure-wide)}}
