:root{--sidebar-width:380px;--green:#174d38;--border:#d4ddd5}
#sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);z-index:6;display:flex;flex-direction:column;background:#f8faf5;box-shadow:3px 0 18px #18332920;border-right:1px solid #bccbc0}
#sidebar header{position:static;flex:none;display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:0;padding:14px 16px;border-radius:0;background:#f8faf5;box-shadow:none;border-bottom:1px solid var(--border)}
#sidebar header>div{flex:1;min-width:170px}#sidebar header strong{display:block;font-size:17px;margin:0;line-height:1.3}#sidebar header span{display:block;font-size:10px;margin-top:3px;color:#62756b}
#language-toggle{font-weight:650;min-width:62px;border-color:#597e68;background:#edf3ea}#sidebar #panel-toggle{width:100%;font-size:11px;padding:4px;background:#f0f4ed}
#sidebar-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:14px 16px 18px}
#sidebar #metrics{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 12px;border:1px solid var(--border);background:#edf3e9;border-radius:7px;padding:11px;margin:0 0 10px}
#metrics small{font-size:10px;line-height:1.35;min-height:27px}#metrics b{font-size:21px}#sidebar #views{position:static;display:flex;justify-content:space-between;gap:8px;background:transparent;padding:0 0 10px;font-size:10px;color:#60766a}
#sidebar #controls{position:static;width:auto;max-width:none;padding:0;overflow:visible;background:none;border-radius:0}
#sidebar #controls .tabs{top:-14px;margin:0 -1px 12px;padding:8px 0;background:#f8faf5;gap:5px;border-bottom:1px solid var(--border)}#controls .tabs button{font-size:11px;padding:9px 3px}#sidebar .tabs button.active{background:var(--green);border-color:var(--green)}
#sidebar h2{font-size:13px;margin:0 0 10px;color:#294d3a}#sidebar label{font-size:11px}#sidebar p{font-size:11px;color:#607568}#sidebar .feature-note{font-size:10px;color:#7b725d}#sidebar button{line-height:1.45}#sidebar .run{gap:7px}#sidebar .run button{padding:8px}
#sidebar #extended-metrics{position:static;display:grid;grid-template-columns:1fr;gap:6px;margin-top:10px;pointer-events:auto}#sidebar #extended-metrics span{font-size:11px;background:#edf3e9;padding:6px 8px}
#sidebar #role-banner{position:static;margin-bottom:8px;padding:8px;font-size:11px}#sidebar #role-banner:empty{display:none}
#sidebar #replay-bar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 0 0;background:transparent;font-size:11px}#replay-bar>span:first-child{display:none}#replay-time{grid-column:1/-1;margin:0}#replay-label{grid-column:1/-1}
#sidebar #timeline{position:static;display:block;width:auto;max-height:220px;padding:9px 0 0;background:transparent;overflow:auto}#sidebar #event-log{font-size:10px}
#sidebar .scene-links{margin-top:14px}#sidebar .scene-links nav{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0 0;font-size:11px}
#sidebar #report-panel{position:static;padding:12px;margin-top:12px;max-height:none;overflow:visible;box-shadow:none}#report-panel table{display:block;overflow:auto;max-width:100%}#sidebar #report-panel[hidden]{display:none}#sidebar #report-panel .close{float:none;width:100%;margin-bottom:10px}
#sidebar footer{position:static;display:grid;gap:6px;margin:14px 0 0;padding:10px 0 0;background:none;border-top:1px solid var(--border);font-size:10px}#sidebar footer span:last-child{display:block;margin:0}
.sidebar-action{flex:none;padding:10px 16px 14px;background:#f8faf5;border-top:1px solid var(--border)}#sidebar #reset{margin:0;width:100%;min-height:48px;background:#174d38;border:1px solid #123f2d;color:#fff;font-size:13px;font-weight:700;box-shadow:0 2px 5px #174d3825}#sidebar #reset:hover{background:#226344}#sidebar #reset:focus-visible{outline:3px solid #9dc78c;outline-offset:3px}
#sidebar #toast{position:static;transform:none;flex:none;padding:9px 16px;background:#274f3c;max-width:none;border-radius:0;font-size:11px}
body>canvas{position:fixed;left:var(--sidebar-width);top:0;width:calc(100vw - var(--sidebar-width));height:100vh;touch-action:none}
.panel-hidden #sidebar{width:68px;bottom:auto;border-radius:0 0 8px 0}.panel-hidden #sidebar header{padding:8px;gap:6px}.panel-hidden #sidebar header>div,.panel-hidden #sidebar-scroll,.panel-hidden .sidebar-action,.panel-hidden #toast{display:none}.panel-hidden #sidebar #panel-toggle{font-size:10px;padding:7px 2px}.panel-hidden #language-toggle{font-size:10px;min-width:0;width:100%;padding:6px 1px}.panel-hidden>canvas{left:0;width:100vw}
@media(max-width:700px){:root{--sidebar-width:min(350px,88vw)}#sidebar header{padding:10px 12px}#sidebar-scroll{padding:12px}#sidebar #controls .tabs{top:-12px}#sidebar .sidebar-action{padding:9px 12px}#sidebar #metrics small{font-size:9px}#sidebar #views{display:flex}#sidebar #timeline{display:block}}

#scene-layout-control{margin:6px 0;padding:9px;background:#e4ece3;border:1px solid #a6b6a4;border-radius:7px}#scene-layout-control select{font-weight:700;color:#173d29;border:1px solid #55765d}#scene-layout-status{font-size:11px;line-height:1.4;margin:5px 0 0;color:#38543b}button:disabled{opacity:.5;cursor:not-allowed}

#sidebar #roam-toggle{display:block;width:100%;margin-top:9px;padding:10px;background:#174d38;border:1px solid #123f2d;color:white;font-weight:700}#sidebar #roam-toggle[aria-pressed="true"]{background:#764c20;border-color:#633c13}#sidebar #roam-help{font-size:10px;line-height:1.55;margin:6px 0 0}#roam-crosshair{display:none;position:fixed;left:calc(50% + var(--sidebar-width)/2);top:50%;transform:translate(-50%,-50%);color:#fff;text-shadow:0 1px 3px #000;z-index:4;font:20px/1 system-ui;pointer-events:none}.is-roaming #roam-crosshair{display:block}.is-roaming>canvas{cursor:crosshair;outline:none}.panel-hidden #roam-crosshair{left:50%}

#emergency-quick{margin:8px 0 0}#emergency-quick summary{font-weight:700;color:#8d3c22;font-size:11px}#emergency-quick button{font-size:11px}#reaction-live{font-weight:650;color:#87441d!important;line-height:1.5}#reaction-live:empty{display:none}
