html[data-theme] .team-figure.glass-surface { --team-ink:#ecf5ff; --team-muted:#a9bfd4; --team-line:#d0e5ff38; --team-panel:#d4e9ff0c; color:var(--team-ink); background:#090e16; }
.team-toolbar { padding:30px 32px 8px; }
.team-toolbar .eyebrow { font-size:9px; color:var(--team-muted); }
.team-toolbar h3 { font:clamp(23px,2.6vw,32px)/1.25 var(--serif); margin-top:10px; }
.diorama-stage { display:none; }
.has-3d .diorama-stage { display:block; position:relative; height:clamp(390px,49vw,640px); overflow:hidden; background:radial-gradient(ellipse at 50% 70%,#213440,#101a29 48%,#090e16 85%); }
.has-3d .diorama-fallback { display:none; }
.diorama-fallback svg { display:block; width:100%; height:auto; }
.fallback-department { opacity:.8; }
.fallback-department.is-active { opacity:1; }
#newsroom-canvas { display:block; width:100%; height:100%; cursor:grab; touch-action:pan-y; }
#newsroom-canvas.is-dragging { cursor:grabbing; }
.team-figure :is(button,summary,input,canvas):focus-visible { outline:2px solid #a4dbef; outline-offset:4px; }
.diorama-labels { position:absolute; inset:0; pointer-events:none; }
.diorama-label { position:absolute; transform:translate(-50%,0); display:flex; gap:7px; align-items:center; white-space:nowrap; color:var(--team-muted); font:10px/1.3 var(--sans); padding:8px 11px; border-radius:24px; background:#0b1728c9; border:1px solid var(--team-line); backdrop-filter:blur(12px); }
.diorama-label[hidden] { display:none; }
.diorama-label b { opacity:.65; font-size:9px; }
.diorama-label.is-active { color:#effaff; border-color:#a0edfa88; }
.team-scene-caption { padding:8px 24px 16px; margin:0; text-align:center; font-size:12px; line-height:1.65; color:var(--team-muted); min-height:44px; }
.team-departments { display:grid; grid-template-columns:1fr 1fr 1.35fr; gap:9px; padding:0 32px; }
.team-departments button { padding:13px 10px; min-height:48px; border-radius:18px; border:1px solid var(--team-line); background:linear-gradient(140deg,#e7f3ff12,#e7f3ff04); color:var(--team-muted); font:12px/1.4 var(--sans); cursor:pointer; }
.team-departments b { font-size:9px; margin-right:9px; opacity:.65; }
.team-departments button[aria-pressed=true] { color:var(--team-ink); border-color:#a0d8ed99; background:#abdfff17; box-shadow:inset 0 1px #fff3; }
.team-departments button:nth-child(2)[aria-pressed=true] { border-color:#edc48e99; background:#edc48e17; }
.team-departments button:nth-child(3)[aria-pressed=true] { border-color:#c6b4f199; background:#c6b4f117; }
.diorama-transport { display:flex; align-items:center; gap:20px; padding:19px 32px; }
.team-actions { display:flex; gap:8px; flex-shrink:0; }
.team-actions button { border:1px solid var(--team-line); border-radius:999px; padding:10px 14px; min-height:44px; color:var(--team-ink); background:var(--team-panel); cursor:pointer; font:11px/1.4 var(--sans); }
.team-actions button[hidden] { display:none; }
.team-actions button:disabled { color:var(--team-muted); cursor:default; }
.team-play-toggle::before { content:'Ⅱ'; margin-right:7px; }
.team-play-toggle[data-paused=true]::before { content:'▷'; }
.team-play-toggle:disabled::before { content:'—'; }
.team-progress { display:flex; align-items:center; gap:14px; flex:1; }
#team-timeline { width:100%; min-width:60px; height:22px; accent-color:#a1d9ec; cursor:pointer; }
#team-time { font:10px/1.4 monospace; color:var(--team-muted); white-space:nowrap; }
.team-roles { margin:0 32px; padding:14px 0; border-top:1px solid var(--team-line); color:var(--team-muted); font-size:12px; }
.team-roles summary { cursor:pointer; width:fit-content; padding:4px 0; }
.team-roles ol { display:grid; grid-template-columns:repeat(5,1fr); gap:18px; padding:18px 0 5px; list-style:none; }
.team-roles li strong { display:block; margin-bottom:6px; color:var(--team-ink); font-size:12px; line-height:1.5; }
.team-roles li span { font-size:11px; line-height:1.6; }
.team-concept { margin:0; padding:4px 32px 24px; font-size:10px; color:var(--team-muted); opacity:.75; }
html[data-theme=light] .team-figure.glass-surface { --team-ink:#203348; --team-muted:#546b80; --team-line:#42688736; --team-panel:#fff9; background:#edf3f7; }
html[data-theme=light] .has-3d .diorama-stage { background:radial-gradient(ellipse at 50% 70%,#d6e5ed,#e9f1f5 60%,#edf3f7); }
html[data-theme=light] .diorama-label { background:#f2f8fbd9; }
html[data-theme=light] .diorama-label.is-active { color:#203348; border-color:#467b9199; }
html[data-theme=light] .team-departments button[aria-pressed=true] { border-color:#628c9e; }
html[data-theme=light] .diorama-fallback { background:#263548; }
@media(max-width:800px) { .diorama-transport { flex-wrap:wrap; gap:10px; } .team-progress { flex-basis:100%; } .team-roles ol { grid-template-columns:repeat(3,1fr); } }
@media(max-width:600px) {
 .team-toolbar { padding:24px 20px 8px; } .has-3d .diorama-stage { height:400px; }
 .team-departments { padding:0 16px; gap:6px; grid-template-columns:1fr 1fr 1.35fr; }
 .team-departments button { font-size:10px; border-radius:14px; padding:9px 5px; }
 .team-departments b { display:block; margin:0 0 4px; }
 .diorama-transport { padding:15px 18px; } .team-actions { gap:6px; }
 .team-actions button { font-size:10px; padding:10px 12px; }
 .diorama-label { font-size:9px; padding:6px 8px; }
 .team-roles { margin:0 20px; } .team-roles ol { grid-template-columns:1fr; gap:12px; }
 .team-roles li strong { margin-bottom:2px; } .team-concept { padding:4px 20px 20px; font-size:9px; }
 .team-scene-caption { font-size:11px; min-height:56px; }
 .diorama-fallback svg { min-height:300px; }
}
