:root{font-size:100%;--product-ink: #0b2523;--product-bg: #f3f6f5;--product-surface: #ffffff;--product-surface-sunken: #eef2f1;--product-line: #dfe8e5;--product-line-strong: #c9d8d3;--product-text: #152925;--product-text-muted: #5f7570;--product-text-faint: #8aa09a;--product-text-on-dark: #ffffff;--product-radius-card: .875rem;--product-radius-control: .6875rem;--product-radius-small: .5625rem;--product-radius-pill: 999rem;--product-space-0: 0;--product-space-1: .25rem;--product-space-2: .5rem;--product-space-3: .75rem;--product-space-4: 1rem;--product-space-5: 1.5rem;--product-space-6: 2rem;--product-text-sm: .8125rem;--product-text-md: 1rem;--product-text-title: 1.0625rem;--product-text-lg: 1.125rem;--product-text-value: 1.25rem;--product-text-xl: 1.375rem;--product-weight-regular: 400;--product-weight-medium: 600;--product-weight-strong: 700;--product-border-hairline: .0625rem;--product-shadow: 0 .0625rem .125rem rgb(11 37 35 / 5%), 0 .625rem 1.75rem -.875rem rgb(11 37 35 / 20%);--product-shadow-raised: 0 .75rem 2.5rem -.75rem rgb(11 37 35 / 30%);--product-scrim: rgb(11 37 35 / 45%)}:root{--state-green-fg: #14713f;--state-green-bg: #e4f5eb;--state-green-line: #1e9e5a;--state-yellow-fg: #8a5a06;--state-yellow-bg: #fbf1db;--state-yellow-line: #d89312;--state-red-fg: #9e2b2d;--state-red-bg: #fbe7e7;--state-red-line: #d5484a;--state-gray-fg: #4b605b;--state-gray-bg: #eef2f1;--state-gray-line: #8aa09a}:root{--field-tap: 3rem;--field-tap-large: 3.25rem;--field-gutter: .75rem;--field-row-gap: .5rem;--field-bar-height: 4rem;--field-nav-height: 3.75rem;--field-icon: 1.5rem}:root{--desktop-column: 46rem;--desktop-dialog: 30rem;--desktop-gutter: 1.5rem;--desktop-font-title: "Barlow Semi Condensed", system-ui, sans-serif;--desktop-font-text: "Public Sans", system-ui, sans-serif}:root{--brand-primary: var(--product-ink);--brand-secondary: var(--product-text-muted);--brand-accent: var(--product-ink);--brand-on-primary: var(--product-text-on-dark);--brand-on-secondary: var(--product-text-on-dark);--brand-on-accent: var(--product-text-on-dark)}.ui-icon{width:1.15em;height:1.15em;flex:none}.ui-muted{color:var(--product-text-muted)}.ui-pill{display:inline-flex;align-items:center;gap:var(--product-space-1);padding:var(--product-space-1) var(--product-space-3);border-radius:var(--product-radius-pill);border:var(--product-border-hairline) solid transparent;font-size:var(--product-text-sm);font-weight:var(--product-weight-medium);line-height:1.3;white-space:nowrap}.ui-pill[data-tone=green]{color:var(--state-green-fg);background:var(--state-green-bg);border-color:var(--state-green-line)}.ui-pill[data-tone=yellow]{color:var(--state-yellow-fg);background:var(--state-yellow-bg);border-color:var(--state-yellow-line)}.ui-pill[data-tone=red]{color:var(--state-red-fg);background:var(--state-red-bg);border-color:var(--state-red-line)}.ui-pill[data-tone=gray]{color:var(--state-gray-fg);background:var(--state-gray-bg);border-color:var(--state-gray-line)}.ui-pill-detail{font-weight:var(--product-weight-regular);white-space:normal}.ui-brand-lockup{display:flex;flex-direction:column;align-items:center;gap:var(--product-space-3);text-align:center}.ui-brand-lockup-logo{max-height:var(--field-tap-large);max-width:100%;width:auto}.ui-brand-lockup-mark{width:var(--field-tap-large);height:var(--field-tap-large);border-radius:var(--product-radius-small)}.ui-brand-lockup-name{margin:0;color:var(--product-ink);font-size:var(--product-text-xl);font-weight:var(--product-weight-strong);overflow-wrap:anywhere}.ui-brand-header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-3);padding:var(--product-space-3) var(--field-gutter);background:var(--brand-primary);color:var(--brand-on-primary)}.ui-brand-identity{display:flex;align-items:center;gap:var(--product-space-2);min-width:0}.ui-brand-logo{height:var(--product-space-6);width:auto;max-width:100%}.ui-brand-mark{width:var(--product-space-6);height:var(--product-space-6);border-radius:var(--product-radius-small);flex:none}.ui-brand-name{font-size:var(--product-text-lg);font-weight:var(--product-weight-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-brand-actions{margin-inline-start:auto;display:flex;gap:var(--product-space-2)}.ui-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-2) var(--product-space-3);width:100%;min-height:var(--field-tap);padding:var(--product-space-3);border:var(--product-border-hairline) solid var(--product-line);border-radius:var(--product-radius-control);background:var(--product-surface);color:var(--product-text);text-align:start}.ui-row-action{cursor:pointer;min-height:var(--field-tap-large)}.ui-row-action:disabled{color:var(--product-text-muted);background:var(--product-surface-sunken);cursor:default}.ui-row-body{display:flex;flex-direction:column;gap:var(--product-space-1);flex:1 1 60%;min-width:0}.ui-row-title{font-size:var(--product-text-title);font-weight:var(--product-weight-medium)}.ui-row-title[data-struck=true]{text-decoration:line-through;color:var(--product-text-muted)}.ui-row-subtitle,.ui-row-note{font-size:var(--product-text-sm);color:var(--product-text-muted)}.ui-row-state,.ui-row-trailing{display:flex;align-items:center;gap:var(--product-space-2)}.ui-row-state{flex-wrap:wrap}.ui-row-trailing{margin-inline-start:auto}.ui-search-select{display:flex;flex-direction:column;gap:var(--product-space-2);min-width:0}.ui-label{font-size:var(--product-text-sm);font-weight:var(--product-weight-medium);color:var(--product-text-muted)}.ui-input{width:100%;min-height:var(--field-tap);padding:var(--product-space-2) var(--product-space-3);border:var(--product-border-hairline) solid var(--product-line-strong);border-radius:var(--product-radius-control);background:var(--product-surface);color:var(--product-text);font-size:var(--product-text-md)}.ui-search-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--field-row-gap);max-height:55vh;overflow-y:auto}.ui-search-option{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--product-space-1) var(--product-space-3);width:100%;min-height:var(--field-tap);padding:var(--product-space-3);border:var(--product-border-hairline) solid var(--product-line);border-radius:var(--product-radius-control);background:var(--product-surface);color:var(--product-text);text-align:start;cursor:pointer}.ui-search-option[data-selected=true]{border-color:var(--brand-accent);background:var(--product-surface-sunken)}.ui-search-option:disabled{color:var(--product-text-faint);cursor:default}.ui-search-option-label{font-weight:var(--product-weight-medium)}.ui-search-option-detail{font-size:var(--product-text-sm);color:var(--product-text-muted)}.ui-search-option-check{margin-inline-start:auto;font-size:var(--product-text-sm);color:var(--brand-accent);font-weight:var(--product-weight-medium)}.ui-empty-inline{margin:0;color:var(--product-text-muted);font-size:var(--product-text-sm)}.ui-dialog-scrim{position:fixed;inset:0;background:var(--product-scrim);display:flex;align-items:flex-end;justify-content:center;z-index:20}.ui-dialog{display:flex;flex-direction:column;gap:var(--product-space-3);width:100%;max-height:92dvh;overflow-y:auto;padding:var(--product-space-4) var(--field-gutter);padding-bottom:max(var(--product-space-4),env(safe-area-inset-bottom));background:var(--product-surface);border-start-start-radius:var(--product-radius-card);border-start-end-radius:var(--product-radius-card);box-shadow:var(--product-shadow-raised)}.ui-dialog-head{display:flex;align-items:center;gap:var(--product-space-3)}.ui-dialog-title{margin:0;font-size:var(--product-text-lg)}.ui-dialog-dismiss{margin-inline-start:auto;min-height:var(--field-tap);padding:var(--product-space-2) var(--product-space-3);border:var(--product-border-hairline) solid var(--product-line);border-radius:var(--product-radius-control);background:var(--product-surface);color:var(--product-text-muted);cursor:pointer}.ui-dialog-body,.ui-dialog-footer{display:flex;flex-direction:column;gap:var(--product-space-3)}.ui-dialog-footer{flex-direction:row;flex-wrap:wrap;gap:var(--product-space-2)}.ui-notice{display:flex;align-items:flex-start;gap:var(--product-space-2);padding:var(--product-space-3);border:var(--product-border-hairline) solid transparent;border-radius:var(--product-radius-control);font-size:var(--product-text-md)}.ui-notice[data-tone=green]{color:var(--state-green-fg);background:var(--state-green-bg);border-color:var(--state-green-line)}.ui-notice[data-tone=yellow]{color:var(--state-yellow-fg);background:var(--state-yellow-bg);border-color:var(--state-yellow-line)}.ui-notice[data-tone=red]{color:var(--state-red-fg);background:var(--state-red-bg);border-color:var(--state-red-line)}.ui-notice[data-tone=gray]{color:var(--state-gray-fg);background:var(--state-gray-bg);border-color:var(--state-gray-line)}.ui-notice-body{display:flex;flex-direction:column;gap:var(--product-space-1);min-width:0}.ui-notice-actions{display:flex;flex-wrap:wrap;gap:var(--product-space-2);margin-top:var(--product-space-1)}.ui-card{display:flex;flex-direction:column;gap:var(--product-space-3);width:100%;padding:var(--product-space-4);border-radius:var(--product-radius-card);background:var(--product-surface);box-shadow:var(--product-shadow)}.ui-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-2)}.ui-card-title{margin:0;font-size:var(--product-text-lg)}.ui-card-actions{margin-inline-start:auto;display:flex;flex-wrap:wrap;gap:var(--product-space-2)}.ui-empty{display:flex;flex-direction:column;gap:var(--product-space-2);align-items:flex-start;padding:var(--product-space-4) 0;color:var(--product-text-muted)}.ui-empty-title{color:var(--product-text);font-size:var(--product-text-lg)}.ui-empty-text>p{margin:0 0 var(--product-space-1)}.ui-empty-actions{display:flex;flex-wrap:wrap;gap:var(--product-space-2)}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--product-space-2);min-height:var(--field-tap-large);padding:var(--product-space-2) var(--product-space-4);border:var(--product-border-hairline) solid transparent;border-radius:var(--product-radius-control);background:var(--brand-accent);color:var(--brand-on-accent);font-size:var(--product-text-md);font-weight:var(--product-weight-medium);cursor:pointer}.ui-button-secondary{background:var(--product-surface);color:var(--product-text);border-color:var(--product-line-strong)}.ui-button-danger{background:var(--state-red-fg);color:var(--product-text-on-dark)}.ui-button-block{width:100%}.ui-button:disabled{background:var(--product-surface-sunken);color:var(--product-text-faint);border-color:var(--product-line);cursor:default}@media(min-width:48rem){.ui-dialog-scrim{align-items:center;padding:var(--desktop-gutter)}.ui-dialog{max-width:var(--desktop-dialog);border-radius:var(--product-radius-card)}.ui-brand-header{padding-inline:var(--desktop-gutter)}}.field-frame{display:flex;flex-direction:column;flex:1;min-height:100dvh;background:var(--product-bg)}.ui-brand-header[data-sticky=true]{position:sticky;top:0;z-index:4}.field-update{padding:var(--product-space-3) var(--field-gutter) 0}.field-detail-bar{display:flex;align-items:center;gap:var(--product-space-3);padding:var(--product-space-2) var(--field-gutter);background:var(--product-surface);border-bottom:var(--product-border-hairline) solid var(--product-line);position:sticky;top:0;z-index:3}.field-detail-back{display:inline-flex;align-items:center;justify-content:center;min-height:var(--field-tap);min-width:var(--field-tap);padding:var(--product-space-0) var(--product-space-2);border:var(--product-border-hairline) solid var(--product-line-strong);border-radius:var(--product-radius-control);background:var(--product-surface);color:var(--product-text);text-decoration:none;cursor:pointer}.field-detail-title{margin:0;min-width:0;flex:1;font-size:var(--product-text-title);font-weight:var(--product-weight-medium);color:var(--product-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-main{display:flex;flex-direction:column;gap:var(--product-space-4);flex:1;width:100%;padding:var(--field-gutter);padding-bottom:calc(var(--product-space-6) + env(safe-area-inset-bottom,0rem))}.field-main[data-nav=true]{padding-bottom:calc(var(--field-nav-height) + var(--product-space-5) + env(safe-area-inset-bottom,0rem))}.field-main[data-bottom-bar=true]{padding-bottom:calc(var(--field-bar-height) + var(--product-space-5) + env(safe-area-inset-bottom,0rem))}.field-title{margin:0;font-size:var(--product-text-xl);font-weight:var(--product-weight-strong);color:var(--product-ink)}.field-title:first-letter{text-transform:uppercase}.field-nav{position:fixed;inset-inline:0;bottom:0;z-index:5;display:flex;align-items:stretch;background:var(--product-surface);border-top:var(--product-border-hairline) solid var(--product-line);box-shadow:var(--product-shadow);padding-bottom:env(safe-area-inset-bottom,0rem)}.field-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--product-space-1);min-height:var(--field-nav-height);padding:var(--product-space-2) var(--product-space-1);color:var(--product-text-muted);text-decoration:none;font-size:var(--product-text-sm);font-weight:var(--product-weight-medium)}.field-nav-item .ui-icon{width:var(--field-icon);height:var(--field-icon)}.field-nav-item[aria-current=page]{color:var(--brand-primary);box-shadow:inset 0 var(--product-space-1) 0 0 var(--brand-primary)}.agenda-list,.week-list,.crew-list,.reason-list,.missing-list,.log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--field-row-gap)}.week-list{gap:var(--product-space-5)}.week-day{display:flex;flex-direction:column;gap:var(--field-row-gap)}.week-day-name{margin:0;font-size:var(--product-text-md);font-weight:var(--product-weight-strong);color:var(--product-text-muted)}.sync-section-title{margin:0;font-size:var(--product-text-lg)}.sync-log{border:var(--product-border-hairline) solid var(--product-line);border-radius:var(--product-radius-card);background:var(--product-surface);padding:0 var(--product-space-4)}.sync-log-summary{display:flex;align-items:center;min-height:var(--field-tap);cursor:pointer;font-size:var(--product-text-md);font-weight:var(--product-weight-medium)}.sync-log[open] .sync-log-summary{border-bottom:var(--product-border-hairline) solid var(--product-line)}.sync-log .log{padding:var(--product-space-3) 0;color:var(--product-text-muted);font-size:var(--product-text-sm)}.sync-manual{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-2) var(--product-space-3)}.device-who{display:flex;flex-direction:column;gap:var(--product-space-1)}.device-name{font-size:var(--product-text-lg);font-weight:var(--product-weight-strong)}.device-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-2) var(--product-space-3)}.device-actions{display:flex;flex-wrap:wrap;gap:var(--product-space-2)}.device-version{align-self:center;color:var(--product-text-faint);font-size:var(--product-text-sm)}.install-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--product-space-2)}.install-step{display:flex;align-items:flex-start;gap:var(--product-space-2)}.install-step-mark{display:grid;place-items:center;flex:none;width:var(--product-space-5);height:var(--product-space-5);border-radius:var(--product-radius-pill);background:var(--product-surface-sunken);color:var(--product-text-muted);font-size:var(--product-text-sm);font-weight:var(--product-weight-strong)}@media(min-width:48rem){.field-main{max-width:var(--desktop-column);margin-inline:auto;padding-inline:var(--desktop-gutter)}.field-detail-bar{padding-inline:var(--desktop-gutter)}.field-nav{justify-content:center;gap:var(--desktop-gutter)}.field-nav-item{flex:0 1 var(--desktop-dialog)}}.field-heading{display:flex;flex-direction:column;gap:var(--product-space-1)}.field-subtitle{margin:0;color:var(--product-text-muted);font-size:var(--product-text-md)}.today-work{display:flex;flex-direction:column;gap:var(--product-space-4)}.agenda-list-settled{opacity:.72}.ui-card[data-kind=current]{border-left:var(--product-space-1) solid var(--brand-primary)}.current-visit-head{display:flex;flex-direction:column;gap:var(--product-space-1)}.current-visit-site{font-size:var(--product-text-lg);font-weight:var(--product-weight-strong)}.current-visit-states{display:flex;flex-wrap:wrap;gap:var(--product-space-2)}.ui-row[data-muted=true] .ui-row-title,.ui-row[data-muted=true] .ui-row-subtitle{color:var(--product-text-muted)}.week-day-name{display:flex;align-items:baseline;gap:var(--product-space-2)}.week-day-label:first-letter{text-transform:uppercase}.week-day-today{color:var(--brand-primary);font-size:var(--product-text-sm);font-weight:var(--product-weight-strong);text-transform:none}.week-day-empty{margin:0;color:var(--product-text-faint);font-size:var(--product-text-md)}.week-gap{color:var(--product-text-faint);font-size:var(--product-text-md)}.week-gap:first-letter{text-transform:uppercase}.field-bottom-bar{position:fixed;inset-inline:0;bottom:0;z-index:4;display:flex;align-items:center;gap:var(--product-space-4);min-height:var(--field-bar-height);padding:var(--product-space-2) max(var(--field-gutter),env(safe-area-inset-right,0rem)) calc(var(--product-space-2) + env(safe-area-inset-bottom,0rem)) max(var(--field-gutter),env(safe-area-inset-left,0rem));background:var(--product-surface);border-top:var(--product-border-hairline) solid var(--product-line);box-shadow:var(--product-shadow)}.field-bottom-bar>.ui-button{flex:1}.field-bottom-bar .visit-progress-block{flex:1;display:flex;flex-direction:column;gap:var(--product-space-1);min-width:0}.field-bottom-bar .visit-progress-block+.ui-button{flex:0 1 auto}.visit-progress-label{font-size:var(--product-text-sm);font-weight:var(--product-weight-strong);color:var(--product-text-muted)}.visit-progress{height:var(--product-space-2);border-radius:var(--product-radius-pill);background:var(--product-line);overflow:hidden}.visit-progress>span{display:block;height:100%;background:var(--brand-primary)}@media(min-width:48rem){.field-bottom-bar{max-width:var(--desktop-column);margin-inline:auto;padding-inline:var(--desktop-gutter)}}.visit-origin{font-weight:var(--product-weight-medium);color:var(--product-text)}.visit-stack{display:flex;flex-direction:column;align-items:flex-start;gap:var(--product-space-1)}.visit-summary-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-2)}.visit-summary-value{font-weight:var(--product-weight-medium)}.visit-header-states{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-2)}.visit-started{margin-inline-start:auto;color:var(--product-text-muted);font-size:var(--product-text-sm);white-space:nowrap}.visit-crew{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-2) var(--product-space-3)}.visit-crew-names{flex:1;min-width:0}.visit-groups{display:flex;gap:var(--product-space-2);overflow-x:auto;padding-bottom:var(--product-space-1);scrollbar-width:none}.visit-groups::-webkit-scrollbar{display:none}.visit-group-pill{display:inline-flex;align-items:center;gap:var(--product-space-2);flex:none;min-height:var(--field-tap);padding:var(--product-space-2) var(--product-space-4);border:var(--product-border-hairline) solid var(--product-line-strong);border-radius:var(--product-radius-pill);background:var(--product-surface);color:var(--product-text);font-size:var(--product-text-md);font-weight:var(--product-weight-medium);white-space:nowrap;cursor:pointer}.visit-group-pill[aria-current=true]{border-color:var(--brand-primary);background:var(--brand-primary);color:var(--brand-on-primary)}.visit-group-pill[data-complete=true]{border-color:var(--state-green-line)}.visit-group-pill[data-complete=true] .ui-icon{color:var(--state-green-fg)}.visit-group-pill[aria-current=true][data-complete=true] .ui-icon{color:var(--brand-on-primary)}.visit-group-count{font-variant-numeric:tabular-nums;font-weight:var(--product-weight-regular)}.field .visit-field-name{display:block;font-size:var(--product-text-md);font-weight:var(--product-weight-medium);color:var(--product-text)}.field .visit-field-required{color:var(--product-text-muted);font-weight:var(--product-weight-regular)}.visit-value-row{display:flex;align-items:center;gap:var(--product-space-2)}.visit-value-row .input{flex:1;min-width:0;font-size:var(--product-text-value);font-weight:var(--product-weight-medium);font-variant-numeric:tabular-nums}.visit-unit{color:var(--product-text-muted);font-size:var(--product-text-value);white-space:nowrap}.visit-field-facts{color:var(--product-text-faint);font-size:var(--product-text-sm);font-variant-numeric:tabular-nums}.visit-next{align-self:flex-start}.visit-missing-group{display:flex;flex-direction:column;gap:var(--product-space-1)}.visit-missing-group-name{color:var(--product-text-muted);font-size:var(--product-text-sm);font-weight:var(--product-weight-strong)}.closing-message{margin:0;font-size:var(--product-text-lg);font-weight:var(--product-weight-medium);color:var(--product-text)}.visit-reading-title{margin:0;font-size:var(--product-text-lg);font-weight:var(--product-weight-strong);color:var(--product-text)}.visit-reading-field{display:flex;flex-direction:column;gap:var(--product-space-2);padding-block:var(--product-space-3);border-top:var(--product-border-hairline) solid var(--product-line)}.visit-reading-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--product-space-2) var(--product-space-3)}.visit-reading-name{flex:1;min-width:0;font-weight:var(--product-weight-medium);color:var(--product-text)}.visit-reading-value{font-variant-numeric:tabular-nums;font-weight:var(--product-weight-strong);color:var(--product-text)}.visit-reading-note{margin:0;color:var(--product-text-muted);white-space:pre-wrap}.visit-reading-actions{margin:0;padding-inline-start:var(--product-space-5);color:var(--product-text-muted)}:root{--ink: #0b2523;--bg: #f3f6f5;--card: #ffffff;--line: #dfe8e5;--line-strong: #c9d8d3;--text: #152925;--muted: #5f7570;--faint: #8aa09a;--green: #1e9e5a;--green-bg: #e4f5eb;--yellow: #d89312;--yellow-bg: #fbf1db;--red: #d5484a;--red-bg: #fbe7e7;--gray: #5f7570;--gray-bg: #eef2f1;--amber: #d89312;--radius-card: 14px;--radius-control: 11px;--radius-small: 9px;--shadow: 0 1px 2px rgb(11 37 35 / 5%), 0 10px 28px -14px rgb(11 37 35 / 20%);--tap: var(--field-tap);color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45;font-variant-numeric:tabular-nums;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased}#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}button,input,select,textarea{font:inherit;color:inherit}.app-main{flex:1;padding:16px;max-width:900px;width:100%;margin:0 auto}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:16px;box-shadow:var(--shadow)}.muted{color:var(--muted);font-size:.93rem}.btn{min-height:var(--tap);padding:10px 16px;border-radius:var(--radius-control);border:1.5px solid var(--brand-primary);background:var(--brand-primary);color:var(--brand-on-primary);font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.btn:disabled{opacity:.45;cursor:default}.btn.secondary{background:var(--card);color:var(--text);border-color:var(--line-strong)}.btn.accent{background:var(--brand-accent);border-color:var(--brand-accent);color:var(--brand-on-accent)}.btn.danger{background:var(--red);border-color:var(--red);color:#fff}.btn.block{width:100%}.btn.icon{padding:0 12px;min-width:var(--tap)}.field{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-bottom:1px dotted var(--line-strong)}.field:last-of-type{border-bottom:none}.field-head{display:flex;align-items:baseline;gap:12px}.field label,.field .label{font-weight:600;font-size:14px}.input{min-height:var(--tap);padding:8px 12px;border:1.5px solid var(--line-strong);border-radius:var(--radius-control);background:var(--card);width:100%}.input:focus{outline:2px solid var(--brand-accent);outline-offset:1px;border-color:var(--brand-accent)}.input[data-state=rejected],.input[data-state=invalid]{border-color:var(--red);background:var(--red-bg)}.segmented{display:flex;gap:8px}.segmented button{flex:1;min-height:var(--tap);border:1.5px solid var(--line-strong);background:var(--card);border-radius:var(--radius-control);cursor:pointer;font-weight:600}.segmented button[data-kind=ok][aria-pressed=true]{border-color:var(--green);background:var(--green-bg);color:var(--green)}.segmented button[data-kind=fail][aria-pressed=true]{border-color:var(--red);background:var(--red-bg);color:var(--red)}.observation{min-height:74px;padding:10px 12px;border:1.5px solid var(--line-strong);border-radius:var(--radius-control);background:var(--card);width:100%;resize:vertical}.observation:focus{outline:2px solid var(--brand-accent);outline-offset:1px;border-color:var(--brand-accent)}.observation-block{display:flex;flex-direction:column;gap:6px}.observation-block .label{font-size:13px;font-weight:600;color:var(--muted)}.photo-row{display:flex;gap:8px;flex-wrap:wrap}.photo-slot{width:112px;aspect-ratio:4 / 3;border:1.5px dashed var(--line-strong);border-radius:var(--radius-small);display:flex;align-items:center;justify-content:center;color:var(--faint);font-size:12px}.alert{border-radius:var(--radius-control);padding:12px 16px;border:1px solid transparent;font-size:13px}.alert.error{background:var(--red-bg);color:var(--red);border-color:color-mix(in srgb,var(--red) 45%,#fff)}.alert.info{background:var(--gray-bg);border-color:var(--line)}.alert.warn{background:var(--yellow-bg);color:#7a5200;border-color:var(--yellow)}.alert.success{background:var(--green-bg);color:var(--green);border-color:color-mix(in srgb,var(--green) 45%,#fff)}.missing-list{font-size:13px}.marker{border:1.5px dashed var(--yellow);background:var(--yellow-bg);color:#7a5200;padding:12px;border-radius:var(--radius-control);font-weight:600}.site-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.site-item{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:14px 16px;min-height:72px;text-decoration:none;color:inherit;box-shadow:var(--shadow)}.site-item .name{font-weight:700;font-size:1.02rem}.confirmation{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:32px 16px}.confirmation .circle{width:74px;height:74px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:700}.confirmation h2{margin:0}.dialog{position:fixed;inset:0;background:#0b25238c;display:flex;align-items:flex-end;justify-content:center;z-index:5;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom,0px))}.dialog .card{width:100%;max-width:600px;max-height:90vh;max-height:90dvh;overflow-y:auto}.log{font-size:.93rem}.access{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:stretch;justify-content:center;padding:24px;max-width:480px;margin:0 auto;gap:16px}.corrective-list{display:flex;flex-direction:column;gap:10px}.photo-strip{display:flex;flex-direction:column;gap:8px}.photo-tile{position:relative;width:112px;margin:0;display:flex;flex-direction:column;gap:4px}.photo-tile img,.photo-tile .photo-slot{width:112px;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-small);border:1px solid var(--line);background:var(--gray-bg)}.photo-state{font-size:11px;font-weight:600;color:var(--muted)}.photo-tile[data-state=uploaded] .photo-state{color:var(--green)}.photo-tile[data-state=rejected] .photo-state{color:var(--red)}.photo-delete{position:absolute;top:-8px;right:-8px;width:var(--tap);height:var(--tap);border-radius:50%;border:1.5px solid var(--line-strong);background:var(--card);color:var(--red);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow)}.photo-capture{align-self:flex-start}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
