:root{--bg:#f3f5f4;--surface:#fff;--ink:#182c32;--muted:#596f75;--line:#d1dcda;--green:#116d58;--gold:#b98a31;--red:#ad4337;--sky:#dbe9ec}
*{box-sizing:border-box}body{margin:0;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);letter-spacing:0}button,input,select{font:inherit;color:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:var(--surface);padding:8px 12px;border-radius:3px}button:hover{border-color:var(--green)}button:disabled{opacity:.6;cursor:wait}a{color:var(--green)}header{height:76px;display:flex;align-items:center;gap:12px;padding:0 28px;background:var(--surface);border-bottom:1px solid var(--line)}.identity{display:flex;align-items:center;gap:24px;text-decoration:none;color:var(--ink)}.identity img{width:145px;height:44px;object-fit:contain}.identity span{font-size:12px;font-weight:750;letter-spacing:1px;border-left:1px solid var(--line);padding-left:24px}.identity small{display:block;font-size:11px;font-weight:400;color:var(--muted);letter-spacing:0}.connection{margin-left:auto;font-size:11px;color:var(--muted)}nav{display:flex;gap:22px;padding:0 28px;background:var(--surface);border-bottom:1px solid var(--line);overflow:auto}nav button{border:0;border-bottom:3px solid transparent;border-radius:0;padding:15px 0;white-space:nowrap;color:var(--muted)}nav button.active{border-color:var(--gold);color:var(--ink);font-weight:700}main{max-width:1800px;margin:auto;padding:22px 28px 40px}.view{display:none}.view.active{display:block}.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px}.eyebrow{font-size:10px;font-weight:750;color:var(--green);letter-spacing:1.4px}h1{font-family:Georgia,serif;font-size:34px;line-height:1.1;font-weight:500;margin:7px 0}h2{font-size:16px;font-weight:700;margin:0 0 10px}p{color:var(--muted)}#source-badge,#skill-gate{background:var(--surface);border:1px solid var(--line);font-size:11px;padding:7px 10px;max-width:50%;overflow-wrap:anywhere}.sourcebar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:0 0 12px}.sourcebar label{min-width:150px;flex:1}label{font-size:12px;color:var(--muted)}input[type=date],input[type=text],input:not([type]),select{display:block;background:var(--surface);border:1px solid var(--line);padding:7px 8px;min-height:36px;width:100%;margin-top:5px;border-radius:3px}input[type=range]{accent-color:var(--green);width:100%;height:20px}input[type=checkbox]{accent-color:var(--green)}.primary{background:var(--green);color:#fff;border-color:var(--green);min-height:36px}#notice{font-size:12px;padding:8px 0 15px;color:var(--muted)}.twin-shell{display:grid;grid-template-columns:255px minmax(0,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.controls{padding:18px 18px 18px 0;border-right:1px solid var(--line)}.controls h2:not(:first-child){margin-top:22px}.controls label{display:block;margin:12px 0}.controls output{float:right;color:var(--ink);font-weight:600}.small{font-size:11px;line-height:1.55}.check{display:flex!important;gap:8px;align-items:center}.valves{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.valves label{display:flex;align-items:center;margin:4px 0}.scene-workspace{min-width:0;padding-left:18px}.scene-toolbar{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:10px 0;flex-wrap:wrap}.scene-toolbar button{font-size:11px}.segments{display:flex;gap:3px}.segments .selected,button[aria-pressed=true]{background:#e4efeb;border-color:#83b7a9;color:#175c4b}#scene{position:relative;height:540px;min-height:420px;background:var(--sky);overflow:hidden}#scene canvas{width:100%;height:100%;display:block;touch-action:none}#scene-fallback{position:absolute;inset:40%;z-index:3;width:70%}.scene-label{position:absolute;top:16px;left:18px;pointer-events:none}.scene-label span{font-size:12px;display:block;color:#33525a}.scene-label b{font:26px Georgia,serif;color:#183e46}.scale-label{position:absolute;bottom:12px;left:16px;font-size:10px;color:#274e56;background:#edf4f0d9;padding:4px 7px}.legend{position:absolute;right:12px;bottom:14px;display:flex;align-items:center;gap:6px;font-size:10px;color:#23454d}.legend i{width:62px;height:6px;background:linear-gradient(90deg,#c1a36d,#1a8baa)}.legend span{display:none}.timebar{display:flex;align-items:center;gap:10px;padding:12px 0}.timebar input{flex:1;min-width:50px}.timebar output{min-width:92px;font-size:11px}.timebar select{width:92px;margin:0;font-size:11px}.metric-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.metric-row>div{padding:15px 13px;border-right:1px solid var(--line)}.metric-row span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.metric-row b{font-size:23px;display:block;font-weight:650;margin-top:4px;overflow-wrap:anywhere}.analysis{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,1fr);gap:20px;padding:20px 0}.section-title{display:flex;justify-content:space-between;gap:14px;align-items:center}.section-title span{font-size:10px;color:var(--muted)}svg{display:block;width:100%;height:auto}.inspector{border-left:1px solid var(--line);padding-left:20px}.inspector p{font-size:12px}dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 8px;font-size:11px}dt{color:var(--muted)}dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:25px 0}.lower-grid article{min-width:0;border-top:1px solid var(--line);padding-top:18px}.comparison-row{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:14px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.file-label{display:inline-block;border:1px solid var(--line);padding:8px;background:var(--surface)}.file-label input{display:block;font-size:11px;max-width:100%;margin-top:5px}#observation-summary{font-size:12px;margin:12px 0}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{padding:11px;border-bottom:1px solid var(--line);text-align:left}th{font-size:10px;text-transform:uppercase;color:var(--muted)}.run{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:16px 0}.run div{flex:1;min-width:0}.run small{display:block;color:var(--muted);overflow-wrap:anywhere}.reading{max-width:900px;padding:20px 0}.reading h2{margin-top:25px}.reading p{line-height:1.8}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;background:var(--surface);border:1px solid var(--line);padding:16px}footer{padding:20px 28px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:16px}.dark{--bg:#1a262b;--surface:#233238;--ink:#eef4ef;--muted:#b0c0c4;--line:#405259;--green:#8ed0b9;--gold:#d6ac60;--sky:#8dabb5}.dark .identity img{background:#f7faf7;padding:4px}.dark .primary{background:#226e59;color:#fff}.dark button[aria-pressed=true],.dark .selected{background:#365a50;color:#e4f5ec}.positive{color:var(--green)}.negative{color:var(--red)}
@media(min-width:1600px){#scene{height:620px}}@media(max-width:1050px){.analysis{grid-template-columns:1fr}.inspector{border-left:0;border-top:1px solid var(--line);padding:16px 0}.identity span{display:none}.metric-row{grid-template-columns:1fr 1fr}.metric-row>div{border-bottom:1px solid var(--line)}}@media(max-width:720px){header{padding:0 14px;height:66px;gap:8px}.identity img{width:105px}.connection{font-size:10px;max-width:125px}header button{padding:7px}nav{padding:0 14px;gap:18px}main{padding:18px 14px}.workspace-heading{align-items:start}h1{font-size:29px}#source-badge{font-size:10px}.twin-shell{display:flex;flex-direction:column-reverse}.scene-workspace{padding:0}.controls{border:0;padding-right:0;display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.controls h2,.controls p{grid-column:1/-1}.controls label{min-width:0}.scene-toolbar{gap:6px}.scene-toolbar button{padding:7px 6px;font-size:10px}#scene{height:470px;min-height:400px}.sourcebar{gap:8px}.sourcebar label{min-width:130px}.timebar{gap:6px}.timebar output{min-width:65px;font-size:10px}.timebar select{width:75px}.lower-grid{grid-template-columns:1fr}.metric-row b{font-size:20px}.run{flex-wrap:wrap}.run div{min-width:220px}.scale-label{max-width:180px}.legend{bottom:48px}.reading{width:100%}footer{padding:20px 14px;display:block}footer span{display:block;margin-top:8px}}
body.expanded{overflow:hidden}
body.expanded header{position:fixed;inset:0 0 auto;height:48px;z-index:103}
body.expanded header .identity,body.expanded header .connection,body.expanded #theme,body.expanded nav,body.expanded footer{display:none}
body.expanded #fullscreen{margin-left:auto}
body.expanded main{padding:0}
body.expanded #field>.workspace-heading,body.expanded #field>.sourcebar,body.expanded #notice,body.expanded .controls,body.expanded #field>.lower-grid,body.expanded .scene-workspace>.metric-row,body.expanded .analysis{display:none}
body.expanded .scene-toolbar{position:fixed;top:48px;left:0;right:0;z-index:102;background:var(--bg);padding:8px}
body.expanded #scene{position:fixed;inset:100px 0 64px;width:100%;height:calc(100dvh - 164px);min-height:0;z-index:100}
body.expanded .timebar{position:fixed;inset:auto 0 0;height:64px;z-index:102;background:var(--bg);padding:8px}
@media(max-width:480px){body.expanded #scene{top:144px;height:calc(100dvh - 208px)}}
header .return-links{display:flex;gap:14px;font-size:11px;flex-wrap:wrap}
body.expanded .return-links{display:none}
@media(max-width:950px){header .return-links{display:none}}
