:root{--color-bg:#0d0d0d;--color-surface:#111;--color-surface-deep:#0a0a0a;--color-surface-alt:#161616;--color-text:#f0ece4;--color-text-soft:#ccc;--color-text-muted:#888;--color-accent:#b07d2a;--color-accent-bright:#e0b050;--color-accent-hover:#c98e35;--color-accent-soft:#b07d2a26;--color-danger:#ff453a;--color-danger-hover:#d9362e;--color-danger-text:#ff9b9b;--color-danger-contrast:#fff;--color-border:#2a2a2a;--color-border-soft:#444;--color-border-input:#333;--color-border-faint:#1e1e1e;--color-dev-banner-bg:#f5e300;--color-dev-banner-fg:#000;--font-system:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.75rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:1rem;--radius-pill:999px;--touch-target:44px;--touch-target-glove:72px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 -8px 24px #00000080;--z-header:10;--z-tabbar:20;--z-overlay:100;--z-modal:101;--transition-fast:.15s ease;--status-capturing:#e0b050;--status-ready:#5aa9e6;--status-generating:#e08a3d;--status-draft:#b58ae0;--status-final:#5cc08a}*,:before,:after{box-sizing:border-box}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-system);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}#root{flex-direction:column;min-height:100svh;display:flex}.dev-banner{background:var(--color-dev-banner-bg);color:var(--color-dev-banner-fg);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.1em;padding:var(--space-1) 0;text-align:center;white-space:nowrap;flex-shrink:0;font-weight:700;overflow:hidden}.app{flex-direction:column;height:100svh;display:flex;overflow:hidden}.header{z-index:var(--z-header);background:var(--color-surface);border-bottom:2px solid var(--color-accent);padding:var(--space-3) var(--space-4);gap:var(--space-3);position:sticky;top:0}.header--desktop{padding:var(--space-3) var(--space-6);justify-content:space-between;align-items:center;display:flex}.header-left{align-items:center;gap:var(--space-5);min-width:0;display:flex}.header-right{align-items:center;gap:var(--space-3);min-width:0;display:flex}.header-app-name{color:var(--color-accent-bright);font-size:var(--text-lg);letter-spacing:.05em;white-space:nowrap;font-weight:600}.header-email{color:var(--color-text-muted);font-size:var(--text-sm);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.logout-btn{padding:var(--space-2) var(--space-4);color:var(--color-text-soft);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-system);font-size:var(--text-sm);min-height:var(--touch-target);transition:border-color var(--transition-fast), color var(--transition-fast);background:0 0;flex-shrink:0}.logout-btn:hover{border-color:var(--color-accent);color:var(--color-accent-bright)}.header--mobile{grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.header-title{color:var(--color-accent-bright);font-size:var(--text-base);letter-spacing:.04em;text-align:center;white-space:nowrap;text-overflow:ellipsis;grid-column:2;font-weight:600;overflow:hidden}.header-action{grid-column:3;justify-self:end;align-items:center;display:flex}.avatar-btn{background:var(--color-accent);width:36px;height:36px;color:var(--color-bg);font-family:var(--font-system);font-size:var(--text-base);letter-spacing:0;cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.avatar-btn:hover{background:var(--color-accent-hover)}.avatar-btn:active{transform:scale(.94)}.tab-bar{background:var(--color-surface-deep);padding:0 var(--space-6);border-bottom:1px solid var(--color-border-faint);display:flex}.tab{color:var(--color-text-muted);font-family:var(--font-system);font-size:var(--text-sm);padding:var(--space-3) var(--space-5) var(--space-2);margin-bottom:var(--space-1);cursor:pointer;min-height:var(--touch-target);transition:color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000}.tab:hover{color:var(--color-text-soft)}.tab.active{color:var(--color-text);border-bottom-color:var(--color-accent)}.subtab-bar{gap:var(--space-2);padding:0 var(--space-6);border-bottom:1px solid var(--color-border-faint);background:var(--color-surface-deep);display:flex}.subtab{color:var(--color-text-muted);font-family:var(--font-system);font-size:var(--text-sm);padding:var(--space-3) var(--space-4) var(--space-2);cursor:pointer;min-height:var(--touch-target);transition:color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000}.subtab:hover{color:var(--color-text-soft)}.subtab.active{color:var(--color-text);border-bottom-color:var(--color-accent)}.page-content{padding:var(--space-6);flex:1;overflow-y:auto}.page-content.centered{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.page-content h1{font-size:var(--text-3xl);letter-spacing:.03em;color:var(--color-text);font-weight:400}.placeholder-title{font-size:var(--text-xl);color:var(--color-text);margin:0 0 var(--space-3);font-weight:400}.placeholder-sub{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.offline-note{margin:0 0 var(--space-4);padding:var(--space-3);background:var(--color-surface-alt);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-text-soft);font-size:var(--text-sm)}.report-status-label{margin:0 0 var(--space-3);color:var(--color-text-soft);font-size:var(--text-sm)}.report-actions{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-6);flex-direction:column;display:flex}.report-action-group{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.report-action-note{color:var(--color-text-soft);font-size:var(--text-sm);margin:0}.rejected-draft-note{margin:0 0 var(--space-4);padding:var(--space-3);background:var(--color-surface-alt);border:1px solid var(--color-danger);border-radius:var(--radius-sm);border-left-width:3px}.rejected-draft-message{margin:0 0 var(--space-3);color:var(--color-text-soft);font-size:var(--text-sm)}.rejected-draft-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.login-page{min-height:100svh;padding:max(var(--space-8), var(--safe-top)) var(--space-4) var(--space-8);justify-content:center;align-items:center;gap:var(--space-5);flex-direction:column;display:flex}.login-app-name{font-size:var(--text-3xl);color:var(--color-accent-bright);letter-spacing:.08em;overflow-wrap:anywhere;text-align:center;max-width:100%;margin:0}.login-form{gap:var(--space-3);background:var(--color-surface-alt);border:1px solid var(--color-border);border-top:2px solid var(--color-accent);border-radius:var(--radius-md);width:min(360px,90vw);padding:var(--space-6);flex-direction:column;display:flex}.login-form h2{margin:0 0 var(--space-1);font-weight:400;font-size:var(--text-xl);letter-spacing:.05em;color:var(--color-accent-bright)}.login-form input{padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-system);font-size:var(--text-base);min-height:var(--touch-target);transition:border-color var(--transition-fast);outline:none}.login-form input:focus{border-color:var(--color-accent)}.login-form button{margin-top:var(--space-1);padding:var(--space-3);background:var(--color-accent);color:var(--color-bg);border-radius:var(--radius-sm);font-family:var(--font-system);font-size:var(--text-base);min-height:var(--touch-target);cursor:pointer;transition:background var(--transition-fast);border:none;font-weight:700}.login-form button:hover{background:var(--color-accent-hover)}.save-btn:disabled{opacity:.45;cursor:not-allowed}.save-btn:disabled:hover{background:var(--color-accent)}.login-error{color:var(--color-danger-text);font-size:var(--text-sm);margin:0}.alert-overlay{z-index:var(--z-overlay);background:#0009;position:fixed;inset:0}.alert-content{z-index:var(--z-modal);background:var(--color-surface-alt);border:1px solid var(--color-border);border-top:2px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);gap:var(--space-3);width:min(420px,90vw);box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.alert-title{font-size:var(--text-lg);color:var(--color-text);letter-spacing:.03em;margin:0;font-weight:400}.alert-description{font-size:var(--text-sm);color:var(--color-text-muted);margin:0;line-height:1.5}.alert-actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2);display:flex}.alert-cancel{padding:var(--space-2) var(--space-4);color:var(--color-text-soft);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);font-family:var(--font-system);font-size:var(--text-sm);min-height:var(--touch-target);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);background:0 0}.alert-cancel:hover{border-color:var(--color-text-muted);color:var(--color-text)}.alert-confirm{padding:var(--space-3) var(--space-5);background:var(--color-danger);color:var(--color-danger-contrast);border-radius:var(--radius-md);font-family:var(--font-system);font-size:var(--text-base);min-height:var(--touch-target);cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast);border:1px solid #0000;font-weight:600;box-shadow:0 4px 12px #ff453a40}.alert-confirm:hover{background:var(--color-danger-hover)}.alert-confirm:active{transform:scale(.97)}.alert-strong{color:var(--color-text);font-weight:600}.error-page{gap:var(--space-4);min-height:100svh;color:var(--color-danger-text);font-size:var(--text-base);text-align:center;padding:var(--space-6);flex-direction:column;justify-content:center;align-items:center;display:flex}.error-page p{margin:0}.retry-btn{min-height:var(--touch-target);padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-bg);font:inherit;cursor:pointer;border:0;font-weight:700}.retry-btn:hover{background:var(--color-accent-hover)}.loading{min-height:100svh;color:var(--color-text-muted);font-size:var(--text-base);justify-content:center;align-items:center;display:flex}@media (width<=768px){.tab-bar{z-index:var(--z-tabbar);padding:0 var(--space-2);padding-bottom:var(--safe-bottom);background:var(--color-surface);border-bottom:none;border-top:1px solid var(--color-border);box-shadow:var(--shadow-lg);justify-content:space-around;position:fixed;bottom:0;left:0;right:0}.tab{padding:var(--space-3) var(--space-2);font-size:var(--text-sm);text-align:center;border-top:2px solid #0000;border-bottom:none;flex:1;margin-bottom:0}.tab.active{border-bottom-color:#0000;border-top-color:var(--color-accent)}.page-content{padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--space-5) + var(--touch-target) + var(--safe-bottom))}.page-content h1{font-size:var(--text-2xl)}.alert-content{border-radius:var(--radius-lg) var(--radius-lg) 0 0;border:1px solid var(--color-border);border-bottom:none;border-top:2px solid var(--color-accent);width:100%;max-width:100%;padding-bottom:calc(var(--space-5) + var(--safe-bottom));inset:auto 0 0;transform:none}.alert-actions{flex-direction:column-reverse}.alert-actions>button{justify-content:center;width:100%}.alert-cancel{color:var(--color-text-muted);background:0 0;border:none;font-weight:500}.alert-cancel:hover{color:var(--color-text-muted);border-color:#0000}}html,body{overscroll-behavior-y:none}button,a{-webkit-tap-highlight-color:transparent}.is-native .header{padding-top:max(var(--space-3), var(--safe-top))}@media (hover:none){.avatar-btn:hover{background:var(--color-accent)}.logout-btn:hover{border-color:var(--color-border-soft);color:var(--color-text-soft)}.tab:hover{color:var(--color-text-muted)}.tab.active:hover{color:var(--color-text)}.login-form button:hover{background:var(--color-accent)}.alert-cancel:hover{border-color:var(--color-border-soft);color:var(--color-text-soft)}.alert-confirm:hover{background:var(--color-danger)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.page-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.page-head .placeholder-title{margin:0}.job-form{margin-bottom:var(--space-5)}.address-input{position:relative}.address-suggestions{z-index:30;padding:var(--space-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin:0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 12px 24px #00000059}.address-suggestions button{width:100%;padding:var(--space-2) var(--space-3);color:var(--color-text);text-align:left;font-size:var(--text-sm);min-height:var(--touch-target);background:0 0;border:none;margin:0;font-weight:400}.address-suggestions button:hover,.address-suggestions button:focus,.address-suggestions button.active,.address-suggestions [aria-selected=true] button{background:var(--color-surface-alt)}.schedule-fields{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.field-label{gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-soft);flex-direction:column;display:flex}.login-form .now-btn{margin-top:calc(-1 * var(--space-1));min-height:0;color:var(--color-accent);font:inherit;font-size:var(--text-xs);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;align-self:flex-start;padding:0;font-weight:400;text-decoration:underline}.login-form .now-btn:hover{color:var(--color-accent-hover);background:0 0}.form-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end;display:flex}.form-status{align-items:center;gap:var(--space-2);color:var(--color-text);font-size:var(--text-sm);margin-right:auto;font-weight:600;display:inline-flex}.form-status:before{content:"";border-radius:var(--radius-pill);background:var(--color-accent-bright);width:.5rem;height:.5rem;box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent-bright) 18%, transparent);flex-shrink:0}.form-actions .logout-btn{color:var(--color-text-soft);background:0 0}.form-actions .save-btn{min-width:6.75rem}.job-form .sticky-form-actions{z-index:5;gap:var(--space-2);margin:var(--space-2) calc(var(--space-5) * -1) calc(var(--space-4) * -1);padding:var(--space-2) var(--space-5) calc(var(--space-2) + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--color-surface) 92%, transparent);border-top:1px solid var(--color-border-faint);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;bottom:0;box-shadow:0 -4px 10px #00000014}@media (width<=768px){.job-form .sticky-form-actions{align-items:stretch;gap:var(--space-1);margin-right:calc(var(--space-4) * -1);margin-left:calc(var(--space-4) * -1);padding-right:var(--space-4);padding-left:var(--space-4)}.job-form .sticky-form-actions .form-status{text-align:center;flex:0 0 100%;margin:0}.job-form .sticky-form-actions .logout-btn,.job-form .sticky-form-actions .save-btn{text-align:center;flex:1 1 0;min-width:0}}.btn-primary{padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-bg);border:1px solid var(--color-accent);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-system);font-size:var(--text-sm);min-height:var(--touch-target);transition:background var(--transition-fast), border-color var(--transition-fast);flex-shrink:0;font-weight:600}.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.job-list{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(32rem,100%),1fr));margin:0;padding:0;list-style:none;display:grid}.job-card{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.job-card-main{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.job-client{color:var(--color-text);overflow-wrap:anywhere;font-weight:600}.job-address{font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.job-card-meta{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.job-report{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-accent-bright)}.job-date{font-size:var(--text-sm);color:var(--color-text-muted)}.status-badge{font-size:var(--text-xs);padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--color-surface-alt);color:var(--color-text-soft);border:1px solid var(--color-border-soft);white-space:nowrap;font-weight:600}.status-capturing{color:var(--status-capturing);border-color:var(--status-capturing)}.status-ready{color:var(--status-ready);border-color:var(--status-ready)}.status-generating{color:var(--status-generating);border-color:var(--status-generating)}.status-draft{color:var(--status-draft);border-color:var(--status-draft)}.status-final{color:var(--status-final);border-color:var(--status-final)}@media (width<=768px){.job-card{flex-direction:column;align-items:flex-start}.job-card-meta{justify-content:space-between;width:100%}.schedule-fields{grid-template-columns:1fr}}.job-card-btn{text-align:left;width:100%;font:inherit;cursor:pointer;transition:border-color var(--transition-fast)}.job-card-btn:hover{border-color:var(--color-accent)}.job-summary-heading{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--color-accent-bright);font-weight:600}.job-summary{margin:0 0 var(--space-5);gap:var(--space-3);flex-direction:column;display:flex}.job-summary-row{gap:var(--space-1);flex-direction:column;display:flex}.job-summary-row dt{font-size:var(--text-sm);color:var(--color-text-soft)}.job-summary-row dd{color:var(--color-text);overflow-wrap:anywhere;margin:0}.job-form-readonly{margin-bottom:0}.job-actions{gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.job-action-btn{padding:var(--space-2) var(--space-4);min-height:var(--touch-target);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;cursor:pointer;transition:border-color var(--transition-fast)}.job-action-btn:hover{border-color:var(--color-accent)}.back-link{margin-bottom:var(--space-3);color:var(--color-text-soft);font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0}.back-link:hover{color:var(--color-accent-bright)}.save-ok{color:var(--status-ready);font-size:var(--text-sm);margin:0}.login-form select,.capture-section select,.capture-access select,.capture-access textarea,.capture-instance-label input{padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-system);font-size:var(--text-base);min-height:var(--touch-target);transition:border-color var(--transition-fast);outline:none}.capture-access textarea{resize:vertical}.login-form select:focus,.capture-section select:focus,.capture-access select:focus,.capture-access textarea:focus,.capture-instance-label input:focus{border-color:var(--color-accent)}.characteristics{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:var(--space-3);flex-direction:column;margin:0;display:flex}.characteristics legend{padding:0 var(--space-2);font-size:var(--text-sm);color:var(--color-accent-bright);font-weight:600}.checkbox-group{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.checkbox-option{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--color-text);cursor:pointer;display:flex}.checkbox-option input[type=checkbox]{cursor:pointer;width:auto;min-height:0;margin:0}.capture-summary-row{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin:0 0 var(--space-4);display:flex}.capture-summary{color:var(--color-text-soft);font-size:var(--text-sm);margin:0}.capture-sync-note{align-items:center;gap:var(--space-2);min-height:24px;margin:0 0 var(--space-3);padding:2px var(--space-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);color:var(--color-text-soft);background:var(--color-surface-alt);font-size:var(--text-xs);flex-wrap:wrap;display:inline-flex}.capture-sync-action{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.capture-sync-note--blocked{color:var(--color-danger-text);border-color:var(--color-danger-border);background:var(--color-danger-soft)}.capture-toggle{color:var(--color-accent-bright);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;flex:none;padding:0}.capture-toggle:hover{text-decoration:underline}.scroll-top-btn{right:calc(var(--space-4) + var(--safe-right));bottom:calc(var(--space-4) + var(--safe-bottom));z-index:var(--z-overlay);padding:var(--space-2) var(--space-3);background:var(--color-surface);color:var(--color-accent-bright);border:1px solid var(--color-border);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);font-size:var(--text-sm);cursor:pointer;position:fixed}.scroll-top-btn:hover{border-color:var(--color-accent)}.recorded-findings{margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);background:var(--color-accent-soft);border-left:3px solid var(--color-accent);border-radius:var(--radius-md)}.recorded-findings-title{margin:0 0 var(--space-2);font-size:var(--text-sm);color:var(--color-text);font-weight:600}.recorded-component{margin-top:var(--space-3)}.recorded-component:first-of-type{margin-top:0}.recorded-component-name{margin:0 0 var(--space-1);font-size:var(--text-sm);color:var(--color-text);overflow-wrap:anywhere;font-weight:600}.recorded-jump{text-align:left;width:100%;font:inherit;color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline;display:block}.recorded-jump:hover{color:var(--color-accent-bright)}.recorded-field-group{margin-top:var(--space-2)}.recorded-field{font-size:var(--text-xs);color:var(--color-text-soft);margin:0 0 2px}.recorded-list{padding-left:var(--space-5);color:var(--color-text);font-size:var(--text-sm);margin:0}.recorded-list li{overflow-wrap:anywhere}.capture-subsection{margin-top:var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md)}.capture-subsection-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.capture-subsection-title{font-size:var(--text-base);color:var(--color-accent-bright);align-items:center;gap:var(--space-2);margin:0;display:flex}.capture-repeats-badge{font-size:var(--text-xs);color:var(--color-text-muted);border:1px solid var(--color-border-soft);border-radius:var(--radius-pill);padding:0 var(--space-2);font-weight:400}.capture-instance{margin-top:var(--space-3);padding:var(--space-3);background:var(--color-surface-alt);border-radius:var(--radius-sm);gap:var(--space-3);flex-direction:column;display:flex}.capture-instance-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.capture-instance-title{font-size:var(--text-sm);color:var(--color-accent-bright);margin:0;font-weight:600}.capture-remove-instance{color:var(--color-danger-text);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;padding:0}.capture-remove-instance:disabled{cursor:default;opacity:.6}.capture-access{gap:var(--space-2);flex-direction:column;display:flex}.capture-field-label{margin:0 0 var(--space-1);font-size:var(--text-sm);color:var(--color-text-soft);font-weight:600}.capture-access-label{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.capture-access-status{font-weight:400;font-size:var(--text-xs);color:var(--color-text-muted)}.capture-field-hint{margin-left:var(--space-2);font-weight:400;font-size:var(--text-xs);color:var(--color-text-muted)}.capture-gated-note{font-size:var(--text-sm);color:var(--color-text-muted);margin:0;font-style:italic}.capture-options{gap:var(--space-2);flex-direction:column;display:flex}.capture-option{padding:var(--space-2) var(--space-3);min-height:var(--touch-target);text-align:left;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font-size:var(--text-sm);overflow-wrap:anywhere;cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);line-height:1.4}.capture-option:hover{border-color:var(--color-accent)}.capture-option:disabled{cursor:default}.capture-option.selected{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent-bright);font-weight:600}.capture-add-instance{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);color:var(--color-accent-bright);border:1px dashed var(--color-border-input);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;background:0 0}.capture-add-instance:hover{border-color:var(--color-accent)}.capture-manual{gap:var(--space-2);flex-direction:column;display:flex}.capture-manual-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.capture-manual-item{gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);flex-direction:column;display:flex}.capture-manual-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.capture-manual-text{font-size:var(--text-sm);overflow-wrap:anywhere;line-height:1.4}.capture-manual-remove{color:var(--color-danger-text);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0}.capture-manual-remove:disabled{cursor:default;opacity:.6}.capture-manual-input{width:100%;padding:var(--space-2) var(--space-3);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-sm);resize:vertical;line-height:1.4}.capture-manual-save{min-height:var(--touch-target);padding:var(--space-2) var(--space-3);color:var(--color-accent-bright);border:1px dashed var(--color-border-input);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;background:0 0;align-self:flex-start}.capture-manual-save:hover{border-color:var(--color-accent)}.capture-manual-save:disabled{cursor:default;opacity:.6}.capture-capture{margin-top:var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);column-gap:var(--space-3);row-gap:var(--space-3);grid-template-columns:1fr 1px 1fr;grid-template-areas:"photoctl sep audioctl";align-items:start;display:grid}.capture-strip-divider{background:var(--color-border);grid-area:sep;align-self:stretch;width:1px}.capture-strip-label{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.capture-photo-controls{gap:var(--space-2);flex-direction:column;grid-area:photoctl;display:flex}.capture-audio-controls{align-items:flex-end;gap:var(--space-2);flex-direction:column;grid-area:audioctl;display:flex}.capture-media-actions{gap:var(--space-2);display:flex}.capture-media-btn{padding:var(--space-2) var(--space-3);min-height:var(--touch-target-glove);color:var(--color-accent-bright);border:1px dashed var(--color-border-input);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;background:0 0}.capture-media-btn:hover{border-color:var(--color-accent)}.capture-media-btn:disabled{cursor:default;opacity:.6}.capture-photo-grid{gap:var(--space-3);grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.capture-photo{gap:var(--space-2);padding:var(--space-2);background:var(--color-surface-alt);border-radius:var(--radius-sm);flex-direction:column;display:flex;position:relative}.capture-photo-cover-badge{top:calc(var(--space-2) + 4px);left:calc(var(--space-2) + 4px);z-index:1;padding:1px var(--space-2);font-size:var(--text-xs);color:#fff;background:var(--color-accent);border-radius:var(--radius-pill);font-weight:600;position:absolute}.capture-photo-img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-sm);background:var(--color-surface);width:100%}.capture-photo-img--loading{display:block}.capture-photo-img--missing{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;justify-content:center;align-items:center;display:flex}.capture-photo-caption{width:100%;padding:var(--space-1) var(--space-2);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-sm)}.capture-photo-delete{color:var(--color-danger-text);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0}.capture-photo-status{font-size:var(--text-sm);color:var(--color-text-muted);align-self:flex-start;font-style:italic}.capture-photo-card-actions{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.capture-photo-cover-btn{color:var(--color-accent);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;padding:0}.capture-photo-cover-btn.is-cover{font-weight:600}.capture-finding-photos{gap:var(--space-2);flex-direction:column;display:flex}.capture-finding-photos-hint{font-size:var(--text-xs);color:var(--color-text-muted);margin:0;font-style:italic}.capture-finding-photos-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.capture-finding-photo-btn{padding:var(--space-1) var(--space-2);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-xs);cursor:pointer}.capture-finding-photo-btn:hover{border-color:var(--color-accent)}.capture-finding-photo-btn:disabled{cursor:default;opacity:.6}.capture-finding-photo-picker{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(72px,1fr));display:grid}.capture-finding-photo-pick{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:0;overflow:hidden}.capture-finding-photo-pick:hover{border-color:var(--color-accent)}.capture-finding-photo-pick .capture-photo-img{aspect-ratio:1}.capture-finding-photo-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.capture-photo-detach{color:var(--color-accent);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;padding:0}.capture-option-photos{gap:var(--space-1);margin-top:var(--space-2);padding-left:var(--space-2);border-left:2px solid var(--color-border-input);flex-direction:column;display:flex}.capture-option-photos-label{font-size:var(--text-xs);color:var(--color-text-muted)}.capture-audio-actions{align-items:center;gap:var(--space-3);display:flex}.capture-audio-timer{font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--color-text-muted)}.capture-audio-limit{font-size:var(--text-sm);color:var(--color-danger-text);margin:0}.capture-audio-record{min-height:var(--touch-target-glove);min-width:96px;padding:0 var(--space-4);color:var(--color-accent-bright);border:1px dashed var(--color-border-input);border-radius:var(--radius-md);font-size:var(--text-base);cursor:pointer;background:0 0}.capture-audio-record:hover{border-color:var(--color-accent)}.capture-audio-record:disabled{cursor:default;opacity:.6}.capture-audio-record--active{border-style:solid;border-color:var(--color-danger-text);color:var(--color-danger-text)}.capture-audio-list{gap:var(--space-3);flex-direction:column;grid-column:1/-1;display:flex}.capture-audio-clip{gap:var(--space-2);padding:var(--space-2);background:var(--color-surface-alt);border-radius:var(--radius-sm);flex-direction:column;display:flex}.capture-audio-player{width:100%}.capture-audio-player--loading,.capture-audio-player--missing{min-height:40px;font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-surface);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:flex}.capture-audio-foot{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.capture-audio-transcribe{color:var(--color-accent-bright);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;padding:0}.capture-audio-transcribe:hover{text-decoration:underline}.capture-audio-transcript{width:100%;padding:var(--space-1) var(--space-2);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font:inherit;font-size:var(--text-sm);resize:vertical}
