@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;700&display=swap";:root{color-scheme:light;--bg: #e6eef2;--panel: rgba(250, 252, 253, .9);--panel-strong: rgba(255, 255, 255, .97);--surface: rgba(255, 255, 255, .76);--surface-strong: rgba(255, 255, 255, .94);--surface-tint: rgba(15, 143, 149, .08);--ink: #10202b;--muted: #556471;--line: rgba(28, 61, 80, .14);--line-strong: rgba(28, 61, 80, .22);--brand: #0f8f95;--brand-rgb: 15, 143, 149;--brand-deep: #0a6870;--brand-deep-rgb: 10, 104, 112;--accent: #ff7a59;--accent-deep: #c75337;--good: #0f9d74;--warn: #b86b15;--danger: #cb4156;--shadow-panel: 0 24px 56px rgba(16, 32, 43, .14);--shadow-raised: 0 14px 30px rgba(16, 32, 43, .11);--shadow-focus: 0 0 0 4px rgba(var(--brand-rgb), .18);--radius-panel: 18px;--radius-card: 16px;--radius-control: 12px;--radius-chip: 12px;font-family:Manrope,sans-serif;background:radial-gradient(circle at top left,rgba(66,217,209,.14),transparent 34%),linear-gradient(180deg,#eef4f7,#e7eef2);color:var(--ink)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink)}button,input{font:inherit}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;padding:32px 24px 48px}.app-topbar{max-width:1200px;margin:0 auto 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.app-breadcrumbs{font-family:Space Grotesk,sans-serif;font-size:1.1rem;font-weight:700;letter-spacing:-.03em;display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.app-breadcrumb-link,.app-breadcrumb-current{font:inherit;letter-spacing:inherit}.app-breadcrumb-link{border:0;padding:0;background:transparent;color:var(--brand);cursor:pointer}.app-breadcrumb-link:hover,.app-breadcrumb-link:focus-visible{color:var(--brand-deep)}.app-breadcrumb-current{color:var(--ink)}.app-breadcrumb-separator{color:var(--muted)}.session-meta{display:flex;align-items:center;gap:10px}.session-name{font-size:.95rem;color:var(--muted)}.topbar-link{border:0;background:transparent;color:var(--brand);font-size:.85rem;font-weight:600;cursor:pointer;padding:0}.topbar-link:hover,.topbar-link:focus-visible{color:var(--brand-deep)}.dashboard-stack{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.hero-card,.case-panel,.loading-card{max-width:1200px;margin:0 auto}.hero-card,.case-panel,.intervention-panel,.owners-card,.result-card,.loading-card,.empty-state{background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}.hero-card{padding:32px;display:grid;grid-template-columns:1.4fr .9fr;gap:28px}.hero-card-single{grid-template-columns:1.2fr .8fr}.hero-copy-block h1,.case-panel h2,.result-header h3,.intervention-head h3,.empty-state h3{margin:0;font-family:Space Grotesk,sans-serif;letter-spacing:-.03em}.hero-copy-block h1{font-size:clamp(2.2rem,4vw,4rem);line-height:1}.hero-copy{margin:16px 0 0;color:var(--muted);font-size:1.05rem;max-width:42rem}.eyebrow{margin:0 0 12px;text-transform:uppercase;font-size:.75rem;letter-spacing:.18em;color:var(--brand-deep)}.hero-form,.hero-meta{display:flex;flex-direction:column;justify-content:center;gap:16px}.hero-form label,.field-grid label{display:flex;flex-direction:column;gap:8px;font-weight:600}.checkbox-field{flex-direction:row!important;align-items:center;gap:12px!important;font-weight:600}.checkbox-field input{width:18px;height:18px;padding:0;accent-color:var(--brand);flex-shrink:0}input{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface-strong);padding:15px 16px;color:var(--ink);box-shadow:inset 0 1px #ffffffb3;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}input::placeholder{color:color-mix(in srgb,var(--muted) 76%,white)}input:focus{outline:none;border-color:rgba(var(--brand-rgb),.48);box-shadow:var(--shadow-focus);background:#fffffffa}.primary-button,.ghost-button{border:0;border-radius:var(--radius-control);padding:14px 20px;cursor:pointer;transition:transform .12s ease,opacity .12s ease,background .12s ease,box-shadow .12s ease,border-color .12s ease}.primary-button:disabled{opacity:.5;cursor:default}.primary-button{background:linear-gradient(90deg,var(--brand) 0%,var(--brand-deep) 100%);color:#f7fdfe;font-weight:700;box-shadow:0 12px 24px rgba(var(--brand-rgb),.18)}.ghost-button{background:rgba(var(--brand-rgb),.08);color:var(--brand);border:1px solid rgba(var(--brand-rgb),.16);font-weight:600}.primary-button:hover:not(:disabled),.ghost-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-raised)}.primary-button:hover:not(:disabled),.primary-button:focus-visible{background:linear-gradient(90deg,var(--brand-deep) 0%,#09585f 100%)}.ghost-button:hover,.ghost-button:focus-visible{color:var(--brand-deep);border-color:rgba(var(--brand-deep-rgb),.24)}.primary-button:focus-visible,.ghost-button:focus-visible,.app-breadcrumb-link:focus-visible,.topbar-link:focus-visible,.confidence-link:focus-visible,.owner-link:focus-visible,.technical-map-link:focus-visible,.technical-card-link:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.inline-button{display:inline-flex;align-items:center;justify-content:center}.hero-chip,.status-pill{display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:10px 14px;border-radius:var(--radius-chip);background:rgba(var(--brand-rgb),.14);color:var(--brand-deep);font-weight:700;border:1px solid rgba(var(--brand-rgb),.12)}.status-pill.is-running{background:rgba(var(--brand-rgb),.16);position:relative;overflow:hidden;animation:running-pill-pulse 1.4s ease-in-out infinite}.status-pill.is-running:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.36) 50%,transparent 100%);transform:translate(-120%);animation:running-pill-sheen 1.8s linear infinite;pointer-events:none}.status-pill.is-complete{background:#0f9d7424;color:var(--good)}.status-pill.is-waiting_for_input,.status-pill.is-idle{background:#ff7a5929;color:var(--warn)}.status-pill.is-failed{background:#cb415624;color:var(--danger)}.error-banner{max-width:1200px;margin:16px auto 0;background:#cb41561a;border:1px solid rgba(203,65,86,.2);color:var(--danger);border-radius:var(--radius-control);padding:14px 16px}.case-panel{margin-top:20px;padding:28px}.case-panel-active{padding:0;background:transparent;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;display:flex;flex-direction:column;gap:16px}.status-card{padding:18px;border-radius:var(--radius-card);border:1px solid var(--line);background:var(--surface)}.failure-panel{margin-top:20px;padding:20px 22px;border-radius:var(--radius-card);border:1px solid rgba(203,65,86,.18);background:#cb415614;display:flex;justify-content:space-between;gap:18px;align-items:start}.failure-panel-compact{margin-top:16px;padding:16px 18px;border-radius:14px}.failure-panel h3{margin:0;font-family:Space Grotesk,sans-serif;letter-spacing:-.03em}.failure-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:end}.technical-details{margin-top:14px}.technical-details summary{cursor:pointer;color:var(--brand-deep);font-weight:600}.technical-details-copy{margin:10px 0 0;word-break:break-word}.status-strip{display:flex;justify-content:space-between;gap:20px;align-items:start}.status-strip h2{margin:0;font-size:clamp(1.6rem,2vw,2.4rem)}.status-strip-compact h2{font-size:clamp(1.2rem,1.8vw,1.7rem)}.status-main{display:flex;flex-direction:column;gap:10px;min-width:0}.status-main span{color:var(--muted);max-width:28rem}.status-side{display:flex;flex-direction:column;justify-content:end;align-items:end;gap:10px;flex-shrink:0}.module-track{margin-top:16px;display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.module-chip{appearance:none;min-width:168px;padding:10px 12px;border-radius:var(--radius-control);border:1px solid var(--line);background:#ffffffa8;display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;text-align:left;cursor:pointer;font:inherit;transition:transform .12s ease,border-color .12s ease,background .12s ease}.module-chip:hover,.module-chip:focus-visible{transform:translateY(-1px);border-color:#11b8b252;background:#ffffffe6;box-shadow:var(--shadow-raised)}.module-chip:focus-visible{outline:2px solid rgba(17,184,178,.32);outline-offset:2px}.module-marker{width:28px;height:28px;border-radius:999px;border:1px solid var(--line);display:grid;place-items:center;font-weight:700;color:var(--muted);background:#ffffffc7}.module-chip.is-succeeded .module-marker{background:#0f9d7424;color:var(--good);border-color:#0f9d7433}.module-chip.is-running .module-marker{background:#11b8b229;color:var(--brand-deep);border-color:#11b8b23d;animation:running-marker-pulse 1.1s ease-in-out infinite}.module-chip.is-failed .module-marker{background:#cb41561f;color:var(--danger);border-color:#cb415633}.module-chip.is-cancelled .module-marker{background:#ff7a5924;color:var(--accent-deep);border-color:#ff7a5938}.module-copy{display:flex;flex-direction:column;gap:2px}.module-copy span{color:var(--muted);font-size:.85rem}.module-copy strong{text-transform:capitalize;font-size:.95rem}.intervention-panel{margin-top:24px;padding:22px}.intervention-head{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:16px}.bbox-stage{position:relative;overflow:hidden;border-radius:var(--radius-card);border:1px solid var(--line);background:#edf4f7}.bbox-stage img,.candidate-card img,.evidence-card img{width:100%;display:block;object-fit:cover}.bbox-rect{position:absolute;border:3px solid var(--accent);background:#ff7a5924}.candidate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.candidate-card{border:1px solid var(--line);border-radius:var(--radius-card);background:#fffc;overflow:hidden;padding:0;cursor:pointer;text-align:left;box-shadow:0 1px #ffffffb3}.candidate-card.selected{outline:2px solid var(--brand)}.candidate-copy{padding:12px;display:flex;flex-direction:column;gap:4px}.street-drive-scroll{overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.street-drive-track{display:flex;gap:14px;align-items:stretch;min-width:max-content}.street-drive-column{width:min(320px,74vw);display:grid;grid-template-rows:1fr auto 1fr;gap:10px}.street-drive-cell{min-width:0}.street-drive-mid{display:flex;justify-content:center}.street-drive-offset{padding:6px 10px;border-radius:var(--radius-chip);background:#11b8b21a;color:var(--brand-deep);font-size:.82rem;font-weight:700}.street-drive-capture{width:100%;position:relative;border:1px solid var(--line);border-radius:var(--radius-card);background:#fffc;overflow:hidden;padding:0;cursor:pointer;text-align:left;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease,transform .12s ease}.street-drive-capture:hover{transform:translateY(-1px)}.street-drive-capture.selected{border-color:#11b8b285;box-shadow:0 0 0 3px #11b8b22e;background:#11b8b214}.street-drive-capture img{width:100%;aspect-ratio:1.55 / 1;display:block;object-fit:cover}.street-drive-image-button{width:100%;border:0;padding:0;background:transparent;cursor:zoom-in}.street-drive-badge{position:absolute;top:10px;left:10px;z-index:1;display:inline-flex;align-items:center;padding:6px 10px;border-radius:var(--radius-chip);background:#0f9d74eb;color:#fff;font-size:.76rem;font-weight:700}.street-drive-eye{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#ffffffeb;border:1px solid var(--line);color:var(--brand-deep);z-index:1}.street-drive-eye svg{width:18px;height:18px}.street-drive-empty{min-height:180px;border-radius:var(--radius-card);border:1px dashed var(--line-strong);background:#ffffff94;display:grid;place-items:center;color:var(--muted);text-align:center;gap:4px}.street-drive-empty span{font-weight:700}.match-score{width:fit-content;color:var(--muted)}.match-score.is-strong{padding:4px 8px;border-radius:10px;background:#0f9d7424;color:var(--good);font-weight:700}.candidate-empty{min-height:180px;display:grid;place-items:center;color:var(--muted);background:#11b8b20d}.field-grid{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.result-grid{margin-top:28px;display:grid;grid-template-columns:1.5fr .9fr;gap:18px}.primary-result,.owners-card,.empty-state,.status-card{padding:22px}.primary-result-elevated{padding:20px}.result-header{display:flex;justify-content:space-between;gap:16px;align-items:start}.confidence-stack{display:flex;flex-direction:column;align-items:end;gap:4px;color:var(--muted)}.confidence-stack strong{color:var(--ink);font-size:1.5rem}.evidence-grid{margin-top:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.evidence-grid-tight{margin-top:16px}.evidence-card{padding:12px;border-radius:var(--radius-card);background:#ffffffd1;border:1px solid var(--line)}.evidence-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.evidence-card img{aspect-ratio:1.45 / 1;border-radius:10px}.image-preview-button{width:100%;border:0;padding:0;background:transparent;cursor:zoom-in}.evidence-card span,.evidence-head span{font-weight:700}.metric-row{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric-row-tight{margin-top:14px}.metric-card{padding:14px;border-radius:var(--radius-control);background:#11b8b214;display:flex;flex-direction:column;gap:6px}.metric-card span{color:var(--muted)}.metric-card strong{font-size:1.3rem}.metric-row-inline{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-row,.alternate-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.owner-row:first-of-type,.alternate-row:first-of-type{border-top:0;padding-top:0}.owner-row span{display:block;margin-top:4px;color:var(--muted)}.owner-copy{min-width:0}.owner-link{color:var(--brand);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.16em}.owner-link:hover{color:var(--brand-deep)}.owner-role-line{color:var(--brand-deep);font-weight:700}.owner-detail-line,.owner-status-line{font-size:.92rem}.owner-selection-badge{display:inline-flex;margin-top:8px;padding:4px 9px;border-radius:10px;background:#11b8b224;color:var(--brand-deep);font-size:.78rem;font-weight:700}.owner-row-compact{padding:12px 0}.owner-score{font-weight:700}.muted-copy{color:var(--muted)}.owners-section{margin-top:18px;padding-top:6px}.owner-list{margin-top:10px}.owner-empty-state{margin-top:12px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.login-card{padding:22px;border-radius:var(--radius-card);border:1px solid var(--line);background:#ffffffc2;display:flex;flex-direction:column;justify-content:center;gap:12px}.login-card-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:1.15rem;font-weight:700}.recent-properties-card{margin-top:0}.case-browser-search{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.case-browser-search input{flex:1 1 320px}.case-browser-summary{margin:12px 0 0}.recent-case-list{margin-top:12px;border-top:1px solid rgba(255,255,255,.68)}.recent-case-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 0;border-top:1px solid rgba(var(--brand-rgb),.22);box-shadow:inset 0 1px #ffffff94}.recent-case-row:first-child{border-top:0;padding-top:2px;box-shadow:none}.recent-case-row strong{display:block}.recent-case-row span{display:block;margin-top:4px;color:var(--muted)}.recent-case-meta{display:flex;flex-direction:column;align-items:end;gap:4px;flex-shrink:0;text-align:right}.recent-case-status{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:6px 10px;border-radius:10px;font-size:.95rem;line-height:1;border:1px solid transparent}.recent-case-status.is-complete{background:#0f9d741f;border-color:#0f9d742e;color:var(--good)}.recent-case-status.is-progress{background:rgba(var(--brand-rgb),.12);border-color:rgba(var(--brand-rgb),.18);color:var(--brand-deep)}.recent-case-status.is-attention{background:#cb41561f;border-color:#cb41562e;color:var(--danger)}.case-browser-pagination{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px}.section-header-row{display:flex;justify-content:space-between;gap:12px;align-items:end}.section-header-row h4{margin:0;font-family:Space Grotesk,sans-serif;letter-spacing:-.03em;font-size:1.15rem}.confidence-link{border:0;background:transparent;color:var(--brand);font-weight:700;padding:0;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:.16em}.confidence-link:hover,.confidence-link:focus-visible,.technical-card-link:hover,.technical-card-link:focus-visible,.technical-map-link:hover,.technical-map-link:focus-visible{color:var(--brand-deep)}.confidence-link-prominent{font-size:1.5rem}.candidate-card-text{min-height:132px;text-align:left;padding:0}.candidate-copy-rich{width:100%;gap:8px}.candidate-copy-rich strong{display:block}.candidate-copy-rich span{display:block;margin-top:0}.owner-selection-grid,.owner-selection-action{margin-top:22px}.candidate-copy-rich a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.16em}.candidate-linked-line{font-size:1rem}.candidate-role-line{color:var(--accent-deep);font-weight:700}.candidate-detail-line{color:var(--muted);font-size:.92rem;line-height:1.45}.candidate-status-line{color:var(--muted);font-size:.92rem;text-transform:capitalize}.evidence-score{color:var(--ink);font-size:1rem}.dialog-backdrop{position:fixed;inset:0;background:#1b181473;display:grid;place-items:center;padding:24px;z-index:50}.technical-log-stack{display:flex;flex-direction:column;gap:12px;margin-top:8px}.technical-log-header{margin-top:4px}.technical-log-panel{border:1px solid var(--line);border-radius:var(--radius-control);background:#ffffffd1;overflow:hidden}.technical-log-panel summary{cursor:pointer;padding:14px 16px;font-weight:700}.technical-log-pre{margin:0;padding:0 16px 16px;white-space:pre-wrap;word-break:break-word;font-size:.85rem;line-height:1.5}.dialog-card{width:min(640px,100%);background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:0 24px 56px #10202b38;padding:22px}.progress-detail-dialog{width:min(1080px,100%);max-height:min(88vh,980px);display:flex;flex-direction:column;gap:18px}.progress-detail-head{padding-bottom:4px}.progress-detail-head-actions{display:flex;gap:10px;align-items:center}.progress-detail-summary{max-width:48rem;margin:8px 0 0}.progress-detail-body{overflow:auto;display:flex;flex-direction:column;gap:18px;padding-right:4px}.progress-detail-section{display:flex;flex-direction:column;gap:12px}.progress-detail-empty{padding:18px;border-radius:14px;background:#11b8b214;border:1px solid rgba(17,184,178,.1);color:var(--muted)}.progress-facts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.progress-fact-card{padding:14px 16px;border-radius:14px;background:#ffffffd6;border:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.progress-fact-card span{color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.progress-fact-card strong,.progress-fact-card a{color:var(--ink);font-weight:700;word-break:break-word}.progress-media-grid,.progress-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.progress-media-card,.progress-result-card,.progress-text-card{border:1px solid var(--line);border-radius:var(--radius-card);background:#ffffffd6;overflow:hidden}.progress-media-card.selected,.progress-strip-card.selected,.progress-result-card.is-selected{border-color:#11b8b261;box-shadow:0 14px 30px #11b8b224}.progress-media-button,.progress-result-image,.progress-strip-image{width:100%;border:0;padding:0;cursor:pointer;background:transparent;position:relative;display:block}.progress-media-button img,.progress-result-image img,.progress-strip-image img{width:100%;display:block;object-fit:cover;background:#edf4f7}.progress-media-bbox{position:absolute;border:3px solid var(--accent);background:#ff7a5929}.progress-media-copy,.progress-result-copy,.progress-strip-copy{padding:14px 16px;display:flex;flex-direction:column;gap:6px}.progress-media-copy span,.progress-result-copy span,.progress-strip-copy span,.progress-result-copy p,.progress-text-card p{color:var(--muted)}.progress-media-copy a,.progress-result-copy a,.progress-strip-copy a{color:var(--brand-deep);font-weight:600}.progress-result-card{display:flex;flex-direction:column}.progress-result-card.is-kept{border-color:#11b8b22e}.progress-result-card.is-filtered{border-color:#cb415629;background:#cb41560d}.progress-result-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.progress-result-badges{display:flex;flex-wrap:wrap;gap:6px}.progress-result-badges span,.progress-state-chip{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:6px 10px;border-radius:var(--radius-chip);background:#11b8b21a;color:var(--brand-deep);font-size:.78rem;font-weight:700}.progress-state-chip.is-filtered{background:#cb41561f;color:var(--danger)}.progress-state-chip.is-selected{background:#0f9d741f;color:var(--good)}.progress-strip-scroll{overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.progress-strip-track{display:flex;gap:14px;min-width:max-content}.progress-strip-card{width:min(220px,58vw);border:1px solid var(--line);border-radius:var(--radius-card);background:#ffffffd6;overflow:hidden}.progress-strip-meta{display:flex;justify-content:space-between;gap:10px;padding:12px 14px 0;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.progress-text-card{padding:18px;display:flex;flex-direction:column;gap:10px}.progress-text-card.is-warning{background:#ff7a5914}.progress-text-card.is-error{background:#cb415614}.dialog-head{display:flex;justify-content:space-between;gap:16px;align-items:start}.dialog-head h3{margin:0;font-family:Space Grotesk,sans-serif;font-size:1.8rem;letter-spacing:-.03em}.dialog-list{margin-top:18px;display:flex;flex-direction:column;gap:10px}.dialog-list-item{padding:14px 16px;border-radius:var(--radius-control);background:#11b8b214;border:1px solid rgba(17,184,178,.1)}.image-lightbox-backdrop{padding:20px}.image-lightbox-card{width:min(1100px,100%);max-height:100%;display:flex;flex-direction:column;gap:12px;align-items:end}.image-lightbox-card img{width:100%;max-height:calc(100vh - 90px);object-fit:contain;border-radius:var(--radius-card);box-shadow:0 24px 56px #10202b3d}.image-lightbox-close{background:#fffffff0}.loading-card,.empty-state{padding:32px;text-align:center}.case-footer-actions{margin-top:24px;display:flex;justify-content:center;gap:12px}.recent-case-button{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit}.login-form{align-items:stretch}.login-error{margin:0}.technical-shell{max-width:1200px;margin:0 auto}.technical-page-card{background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);padding:24px}.technical-page-header,.technical-module-header{display:flex;justify-content:space-between;gap:16px;align-items:start}.technical-page-header h2,.technical-module-header h3,.technical-step-head h4{margin:0;font-family:Space Grotesk,sans-serif;letter-spacing:-.03em}.technical-layout{margin-top:22px;display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px}.technical-rail{display:flex;flex-direction:column;gap:10px}.technical-rail-item{width:100%;border:1px solid var(--line);background:#ffffffb3;border-radius:var(--radius-card);padding:14px;display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;text-align:left;cursor:pointer;font:inherit}.technical-rail-item.selected{border-color:#11b8b24d;background:#ffffffe6;box-shadow:var(--shadow-raised)}.technical-rail-copy{display:flex;flex-direction:column;gap:4px}.technical-rail-copy span{color:var(--muted);text-transform:capitalize;font-size:.88rem}.technical-rail-badges{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.technical-main,.technical-module-stack{display:flex;flex-direction:column;gap:14px}.technical-module-meta{display:flex;flex-direction:column;gap:8px;align-items:end}.technical-step-card{border-radius:var(--radius-card);border:1px solid var(--line);background:#ffffffc7;padding:18px}.technical-step-card.is-warning{border-color:#b86b152e}.technical-step-card.is-error{border-color:#cb415633}.technical-step-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.technical-step-summary{margin:8px 0 0;color:var(--muted);max-width:46rem}.technical-block-stack{margin-top:14px;display:flex;flex-direction:column;gap:12px}.technical-block{display:flex;flex-direction:column;gap:10px}.technical-image-block.is-compact{max-width:360px}.technical-block h5{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:var(--brand-deep)}.technical-meta-grid,.technical-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.technical-meta-card,.technical-mini-card{padding:14px;border-radius:var(--radius-control);background:#eff7fae6;border:1px solid rgba(28,61,80,.08)}.technical-mini-card{display:flex;flex-direction:column;gap:8px}.technical-mini-card.selected,.technical-mini-card.is-selected{border-color:#11b8b24d;box-shadow:0 0 0 3px #11b8b21f}.technical-mini-card.is-filtered{background:#ff7a5914}.technical-meta-card span,.technical-mini-card span{display:block;color:var(--muted);font-size:.82rem}.technical-meta-card strong,.technical-meta-card a,.technical-mini-card strong{display:block;margin-top:6px;color:var(--ink);overflow-wrap:anywhere}.technical-meta-card a{color:var(--brand-deep);font-weight:700}.technical-text-block{padding:14px 16px;border-radius:var(--radius-control)}.technical-text-block.is-info{background:#11b8b214;border:1px solid rgba(17,184,178,.1)}.technical-text-block.is-warning{background:#ff7a5917;border:1px solid rgba(184,107,21,.14)}.technical-text-block.is-error{background:#cb415617;border:1px solid rgba(203,65,86,.14)}.technical-text-block p{margin:0}.technical-card-image-button{border:0;padding:0;background:transparent;cursor:zoom-in}.technical-card-image{width:100%;aspect-ratio:1.45 / 1;display:block;object-fit:cover;border-radius:10px}.technical-card-subtitle,.technical-card-description{margin:0;color:var(--muted);line-height:1.45}.technical-card-subtitle{font-size:.92rem}.technical-card-description{font-size:.9rem}.technical-card-badges{display:flex;flex-wrap:wrap;gap:6px}.technical-card-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:10px;background:#11b8b21a;color:var(--brand-deep);font-size:.78rem;font-weight:700}.technical-card-link{color:var(--brand);font-weight:700;font-size:.88rem}.technical-empty-block{padding:14px 16px;border-radius:var(--radius-control);background:#eff7fae0;border:1px dashed var(--line-strong);color:var(--muted)}.technical-pill{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:8px 12px;border-radius:var(--radius-chip);font-size:.82rem;font-weight:700;text-transform:capitalize}.technical-pill.is-success{background:#0f9d741f;color:var(--good)}.technical-pill.is-warning{background:#ff7a5924;color:var(--warn)}.technical-pill.is-error{background:#cb41561f;color:var(--danger)}.technical-pill.is-info{background:#11b8b21a;color:var(--brand-deep)}.technical-callout{margin-top:14px;padding:14px 16px;border-radius:var(--radius-control)}.technical-callout strong,.technical-callout p{display:block}.technical-callout p{margin:6px 0 0}.technical-callout.is-warning{background:#ff7a5917;border:1px solid rgba(184,107,21,.14)}.technical-callout.is-error{background:#cb415617;border:1px solid rgba(203,65,86,.14)}.technical-visuals{margin-top:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.technical-visual-card,.technical-link-card{border:1px solid var(--line);border-radius:14px;background:#ffffffd1;overflow:hidden;text-align:left}.technical-visual-card{padding:0;cursor:pointer}.technical-visual-card.selected{border-color:#11b8b24d}.technical-visual-card.is-compact{width:fit-content;max-width:360px}.technical-visual-frame{position:relative}.technical-visual-card img{width:100%;aspect-ratio:1.4 / 1;display:block;object-fit:cover}.technical-visual-card img.is-contain{aspect-ratio:auto;object-fit:contain;max-height:280px;background:#ffffffd6}.technical-visual-bbox{position:absolute;border:3px solid var(--accent);background:#ff7a5929;box-shadow:0 0 0 999px #0000000a}.technical-visual-card span,.technical-link-card span,.technical-link-card strong{display:block;padding:10px 12px}.technical-visual-card small{display:block;padding:0 12px 12px;color:var(--muted);text-align:left;line-height:1.4}.technical-map-canvas{border-radius:var(--radius-card);border:1px solid var(--line);overflow:hidden;background:#ffffffd6}.technical-map-google{width:100%;height:360px}.technical-map-fallback-link{display:block}.technical-map-fallback-image{width:100%;display:block}.technical-map-legend{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:.9rem}.technical-map-legend span{display:inline-flex;align-items:center;gap:8px}.technical-map-legend i{width:14px;height:14px;border-radius:999px;display:inline-block}.technical-map-legend i.capture{background:#11b8b2eb}.technical-map-legend i.selected,.technical-map-legend i.final{background:var(--accent)}.technical-map-links{display:flex;flex-wrap:wrap;gap:10px}.technical-map-link{color:var(--brand);font-weight:700}.technical-link-card strong{padding-top:0;color:var(--brand-deep)}.technical-loading{max-width:none}@keyframes running-marker-pulse{0%,to{transform:scale(1);box-shadow:0 0 #11b8b233}50%{transform:scale(1.08);box-shadow:0 0 0 8px #11b8b200}}@keyframes running-pill-pulse{0%,to{box-shadow:0 0 #11b8b21f}50%{box-shadow:0 0 0 8px #11b8b200}}@keyframes running-pill-sheen{0%{transform:translate(-120%)}to{transform:translate(120%)}}@media(max-width:960px){.app-topbar{align-items:start;flex-direction:column}.hero-card,.status-strip,.result-grid,.technical-layout{grid-template-columns:1fr;display:grid}.status-strip{gap:16px}.failure-panel,.failure-actions{flex-direction:column;align-items:stretch}.case-panel-active{padding:16px}.metric-row,.field-grid,.evidence-grid{grid-template-columns:1fr}.dialog-head,.section-header-row,.technical-page-header,.technical-module-header{flex-direction:column;align-items:stretch}.progress-detail-dialog{width:100%;max-height:calc(100vh - 28px);padding:18px}.progress-detail-head-actions{flex-direction:column;align-items:stretch}.recent-case-row{flex-direction:column;align-items:start}.recent-case-meta{align-items:start;text-align:left}}
