:root{--ink:#192c38;--muted:#6e7c86;--line:#dce3e7;--paper:#f4f6f7;--cyan:#008e9b;--red:#c8404c;--navy:#173d4c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}button:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #45bac8;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:32px;letter-spacing:-1px;margin-bottom:8px}h2{font-size:20px;letter-spacing:-.5px}h3{font-size:15px}p{line-height:1.65}header{height:76px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 40px;border-bottom:1px solid var(--line)}.wordmark{font-size:29px;font-weight:700;letter-spacing:-1.7px}.wordmark>span{color:var(--cyan)}.wordmark small{display:inline-block;font-size:9px;letter-spacing:1.6px;border-left:1px solid var(--line);padding-left:15px;margin-left:15px;vertical-align:middle;color:var(--muted)}nav{display:flex;gap:22px;align-items:center}.case-nav button,nav button{background:none;border:0;color:#3e5e6c;padding:8px}.progress-track{height:3px;background:#e4eaed}.progress-track>div{height:100%;background:var(--cyan);transition:width .2s}.workspace{max-width:1600px;padding:34px 40px 70px;margin:auto}.workspace-heading{display:flex;justify-content:space-between;align-items:center}.workspace-heading p{color:var(--muted);margin-bottom:20px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--cyan);margin-bottom:12px}.completion{text-align:right}.completion strong{font-size:29px;font-weight:600}.completion strong span{font-size:18px;color:#93a0a8}.completion small{display:block;color:var(--muted);margin-top:3px}.case-nav{justify-content:space-between;margin:5px 0 18px}.case-nav,.case-nav>div{display:flex;align-items:center}.case-nav>div{gap:18px}.case-nav>div>span{font-weight:600}.save-status{font-size:12px;color:var(--cyan)}.review-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px}.scene-context{display:flex;gap:34px;padding:18px 22px;align-items:center;background:#fff;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0}.scene-context>span{font-size:14px;font-weight:600}.scene-context small{display:block;font-size:9px;color:var(--muted);letter-spacing:1.3px;margin-bottom:5px}.legend{display:flex;gap:16px;font-size:12px;color:#627380}.scene-context .legend{margin-left:auto}.legend>span{display:flex;align-items:center;gap:7px}.dot{width:9px;height:9px;border-radius:50%;display:inline-block}.cyan-bg{background:#00abba}.red-bg{background:#e4525b}.cyan{color:var(--cyan)}.red{color:var(--red)}.image-button,.main-image{display:block;position:relative;border:0;padding:0;width:100%;background:#15232d;text-align:left;color:#fff;overflow:hidden}.main-image{border-radius:0 0 10px 10px}.main-image img{display:block;width:100%;height:auto;min-height:190px;object-fit:contain}.image-button>span,.main-image>span{display:flex;justify-content:space-between;position:absolute;bottom:0;left:0;width:100%;padding:18px 16px 12px;background:linear-gradient(transparent,#0b162dcc);font-size:12px}.image-button b,.main-image b{font-weight:400;font-size:11px}.rear-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0 20px}.image-button{border-radius:8px}.image-button img{display:block;width:100%;height:168px;object-fit:cover}.evidence>details{background:#fff;border:1px solid var(--line);border-radius:10px;margin:12px 0}.evidence summary{padding:17px 20px}.evidence summary span{float:right}summary{cursor:pointer;font-size:13px;font-weight:600}.camera-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:12px}.camera-grid .image-button img{height:150px}.history{padding:14px 18px;border-top:1px solid var(--line)}.history>.image-button img{height:auto}.decision,.trajectory-card{padding:22px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:18px}.decision h2{font-size:18px;margin-bottom:20px}.decision .eyebrow{margin-bottom:8px}.choice{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;border:1px solid;padding:16px 13px;margin-bottom:10px;border-radius:9px;transition:box-shadow .15s}.choice:hover{box-shadow:0 2px 8px #192c3818}.choice strong{display:block;font-size:14px;margin-bottom:4px}.choice small{display:block;font-size:11px;font-weight:400;color:#64747d}.choice.threat{background:#fff8f8;border-color:#efd0d4;color:#af3542}.choice.safe{background:#f1faf9;border-color:#b8dfd9;color:#147568}.choice.unsure{background:#f7f8fa;border-color:#d9dfe6;color:#53636e}.choice.selected{box-shadow:inset 0 0 0 2px currentColor}kbd{font:10px system-ui,sans-serif;padding:4px 6px;border:1px solid #cad3d8;border-radius:4px;background:#ffffffa0;color:#667b85}.decision label{margin-top:19px;display:block;font-size:12px;font-weight:600;margin-bottom:8px}input,textarea{width:100%;border:1px solid var(--line);border-radius:7px;padding:12px;background:#fff;color:var(--ink)}textarea{resize:vertical}.muted{font-size:11px;color:var(--muted);margin-top:10px}.trajectory{display:block;width:100%;margin-top:-12px}.trajectory-card details{border-top:1px solid var(--line);padding-top:12px}.trajectory-card table{font-size:10px;width:100%;border-collapse:collapse;margin-top:10px}.trajectory-card td,.trajectory-card th{padding:7px 2px;text-align:left;border-bottom:1px solid #edf0f2}.error{background:#fff1f2;border:1px solid #edb6bd;padding:12px 16px;border-radius:7px;color:#a02c3b;line-height:1.6;margin-bottom:16px}.error button{margin-left:8px}.success{background:#e7f6f1;border:1px solid #add9c9;border-radius:8px;padding:15px;margin:10px 0 20px}.loading{padding:80px;text-align:center;color:var(--muted)}.modal{z-index:50;inset:0;background:#0a1729e8;display:flex;justify-content:center;align-items:center;padding:50px 30px;overflow:auto}.close,.modal{position:fixed}.close{top:18px;right:24px;color:#fff;background:#ffffff20;border:1px solid #ffffff40;border-radius:8px;padding:10px 16px;z-index:60}.zoom-content{max-width:100%;max-height:100%;overflow:auto;color:#fff}.zoom-content h2{font-size:17px}.zoom-content img{display:block;max-width:none;min-width:min(90vw,1100px);max-height:none;height:auto}.zoom-content p{font-size:12px;margin:15px 0}.guide{max-width:680px;background:#fff;padding:36px;border-radius:14px;max-height:85vh;overflow:auto}.guide li,.login-guide li{line-height:1.7;margin-bottom:12px}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;max-width:1200px;align-items:center;gap:100px;margin:auto;padding:60px}.login-card .wordmark{margin-bottom:70px}.login-card h1{font-size:49px;line-height:1.12;letter-spacing:-2px;margin-bottom:24px}.lead{font-size:16px;color:var(--muted);max-width:440px}.login .legend{margin:25px 0 40px}.login form label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.primary{width:100%;padding:15px;background:var(--navy);color:#fff;border:0;border-radius:8px;margin-top:12px;font-weight:600}.login-guide{padding:35px;background:#fff;border:1px solid var(--line);border-radius:18px;font-size:13px}.login-guide h2{font-size:23px}.login-guide ol{padding-left:20px}.login-guide p:last-child{color:var(--muted);font-size:12px}.login-card>.muted{text-align:center;margin-top:18px}@media(min-width:1500px){.image-button img{height:220px}}@media(max-width:1050px){.review-grid{grid-template-columns:minmax(0,1fr) 300px}.workspace{padding:26px 20px}.scene-context{gap:20px}.scene-context .legend{display:none}.image-button img{height:130px}.decision{padding:16px}.camera-grid{grid-template-columns:repeat(2,1fr)}.login{gap:40px;padding:40px}}@media(max-width:760px){header{padding:0 18px;height:64px}.wordmark{font-size:25px}.wordmark small{display:none}nav{gap:10px;font-size:11px}.workspace{padding:25px 14px}h1{font-size:25px}.workspace-heading p{font-size:12px}.completion strong{font-size:23px}.completion small{font-size:10px}.review-grid{grid-template-columns:1fr}.review-grid aside{display:flex;flex-direction:column}.decision{padding:20px}.trajectory-card{max-width:100%}.trajectory{max-height:310px}.scene-context{padding:14px}.rear-grid{gap:7px}.image-button img{height:115px}.image-button>span{font-size:10px;padding:17px 8px 8px}.case-nav>div{gap:8px;font-size:12px}.save-status{font-size:10px}.login{display:block;padding:35px 22px}.login-card{max-width:500px;margin:auto}.login-card .wordmark{margin-bottom:55px}.login-card h1{font-size:42px}.login-guide{margin-top:40px;padding:24px}.modal{padding:55px 12px}.guide{padding:24px}.main-image b{display:none}}.hover-magnifier,.image-button>span,.main-image>span{pointer-events:none}.hover-magnifier{position:fixed;top:0;left:0;z-index:45;border-radius:50%;background-color:#15232d;background-repeat:no-repeat;outline:3px solid #fff;box-shadow:0 6px 28px #071b3666,inset 0 0 0 1px #173d4c55;opacity:0;overflow:hidden;will-change:transform;contain:strict}.magnifier-crosshair{position:absolute;left:50%;top:50%;width:15px;height:15px;transform:translate(-50%,-50%);filter:drop-shadow(0 0 1px #000)}.magnifier-crosshair:after,.magnifier-crosshair:before{content:"";position:absolute;background:#ffffffb3}.magnifier-crosshair:before{left:7px;top:0;width:1px;height:15px}.magnifier-crosshair:after{left:0;top:7px;width:15px;height:1px}.magnifier-caption{position:absolute;left:50%;bottom:15px;transform:translateX(-50%);padding:5px 10px;border-radius:20px;background:#122633dc;color:#fff;font-size:11px;font-weight:600;white-space:nowrap}@media(any-hover:hover) and (any-pointer:fine){.magnifiable-image{cursor:crosshair}}.scene-navigation{margin:-2px 0 20px;padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:9px}.scene-jump{display:flex;gap:12px;align-items:center}.scene-jump label{font-size:12px;font-weight:650;white-space:nowrap}.scene-jump input{flex:1 1;min-width:0;max-width:540px;padding:10px 12px;font-size:12px}.scene-jump button{border:0;border-radius:7px;padding:11px 18px;background:var(--navy);color:#fff;font-size:12px;font-weight:600;white-space:nowrap}.scene-identity{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:11px;color:var(--muted);font-size:11px}.scene-identity code{margin-left:6px;overflow-wrap:anywhere;color:var(--ink);font-size:11px}.scene-identity a{color:#3e5e6c;white-space:nowrap;text-decoration:none}.scene-identity a:hover{text-decoration:underline}.scene-matches{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:12px;color:var(--muted)}.scene-matches button{padding:6px 11px;border:1px solid var(--line);background:#fff;border-radius:6px;color:#3e5e6c;font-size:12px}.scene-matches button[aria-pressed=true]{background:#e6f5f7;border-color:#54adb9;color:#126374}.scene-search-error{font-size:12px;color:#a02c3b;margin:10px 0 0}@media(max-width:760px){.scene-navigation{padding:13px}.scene-jump{flex-wrap:wrap;gap:8px}.scene-jump label{width:100%}.scene-jump input{max-width:none}.scene-identity{align-items:flex-start;flex-direction:column;gap:6px}.scene-identity code{font-size:10px}}