:root{--bg: #0d1117;--panel: rgba(18, 23, 32, .92);--panel-solid: #121720;--line: rgba(255, 255, 255, .1);--text: #eef1f5;--muted: #9aa4b2;--accent: #ff7a3d;--accent-2: #ffd34d;--ok: #4cc38a;--warn: #ff5a5f;--radius: 14px;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none}body{overflow:hidden}button{font:inherit;color:inherit}.app{position:fixed;inset:0;overflow:hidden}.app canvas{touch-action:none;display:block}.loading{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:15px;padding:16px;text-align:center}.loader{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:min(260px,70vw);background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:13px;color:var(--muted);text-align:center;z-index:40;pointer-events:none}.loader-bar{height:4px;border-radius:999px;background:var(--accent);margin-bottom:8px;transition:width .2s}.top{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:calc(8px + var(--safe-t)) 12px 6px;background:linear-gradient(to bottom,#0d1117f2,#0d111700);pointer-events:none;z-index:30}.top>*{pointer-events:auto}.brand h1{margin:0;font-size:17px;letter-spacing:.2px}.brand span{display:block;font-size:11px;color:var(--muted)}.top nav{display:flex;gap:6px}.btn{border:1px solid var(--line);background:#1e2530e6;border-radius:999px;padding:8px 12px;font-size:13px;line-height:1;cursor:pointer;min-height:34px}.btn.on,.btn.primary{background:var(--accent);border-color:var(--accent);color:#1a0d05;font-weight:600}.btn.icon{width:40px;height:40px;padding:0;display:grid;place-items:center;font-size:14px;flex:none}.chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.chips::-webkit-scrollbar{display:none}.chips.cam{position:absolute;top:calc(52px + var(--safe-t));left:0;right:0;padding:0 12px;z-index:25}.chip{flex:none;border:1px solid var(--line);background:#161c26d9;color:var(--text);border-radius:999px;padding:7px 11px;font-size:12px;cursor:pointer;white-space:nowrap}.chip.on{border-color:var(--accent);color:var(--accent)}.bottom{position:absolute;left:0;right:0;bottom:0;padding:0 10px calc(4px + var(--safe-b));display:flex;flex-direction:column;gap:8px;z-index:30;pointer-events:none;max-height:72vh}.bottom>*{pointer-events:auto}.card,.panel{background:var(--panel);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;position:relative;max-width:720px;width:100%;margin:0 auto;overflow-y:auto;max-height:64vh}.panel h3{margin:0 0 8px;font-size:15px}.x{position:absolute;top:6px;right:6px;width:34px;height:34px;border-radius:50%;border:none;background:#ffffff14;font-size:20px;line-height:1;cursor:pointer}.info h2{margin:0 36px 2px 0;font-size:18px}.latin{font-size:12px;color:var(--muted);font-style:italic;margin-bottom:6px}.info p{margin:6px 0 10px;font-size:14px;line-height:1.45}.row{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.small{font-size:12px;color:var(--muted);line-height:1.4;margin:4px 0}.cite{margin-top:2px}.layer{display:grid;grid-template-columns:1fr 46%;align-items:center;gap:10px;padding:4px 0}.switch{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;padding:4px 0}.switch input{appearance:none;-webkit-appearance:none;width:38px;height:22px;border-radius:999px;background:#3a4351;position:relative;flex:none;cursor:pointer;transition:background .15s}.switch input:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}.switch input:checked{background:var(--ok)}.switch.warn input:checked{background:var(--warn)}.switch input:checked:after{transform:translate(16px)}input[type=range]{width:100%;accent-color:var(--accent)}.scene-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.scene-btn{width:100%;display:flex;gap:10px;align-items:center;text-align:left;border:1px solid var(--line);background:#1e2530b3;border-radius:12px;padding:10px;cursor:pointer}.scene-btn b{display:block;font-size:14px}.scene-btn small{color:var(--muted);font-size:12px}.scene-btn.star{border-color:#ff7a3d99}.scene-btn.on{background:#ff7a3d26}.tag{flex:none;font-size:11px;font-weight:700;background:#ff7a3d2e;color:var(--accent);border-radius:6px;padding:3px 6px}.scene-head{display:flex;align-items:center;gap:8px;margin:0 36px 6px 0}.scene-head h2{margin:0;font-size:15px}.scene-body{display:flex;gap:12px;align-items:flex-start}.scene-visual{display:flex;flex-direction:column;align-items:center;gap:4px;flex:none}.scene-text{min-width:0;flex:1}.caption{font-weight:700;font-size:15px;margin-bottom:2px}.sub{margin:0 0 2px;font-size:13px;line-height:1.42;color:#d5dbe3}.sub.clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.link.more{font-size:12px;color:var(--muted);margin:2px 0 0}.counter{font-size:13px;margin:4px 0}.toggles{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:6px 0}.toggles.col{flex-direction:column;align-items:stretch}.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}.seg button{border:none;background:transparent;padding:8px 12px;font-size:13px;cursor:pointer}.seg button.on{background:var(--ok);color:#04170e;font-weight:600}.seg button.on.warn{background:var(--warn);color:#1c0304}.range span{font-size:13px}.timeline{display:flex;gap:10px;align-items:center;margin-top:6px}.time{font-size:12px;color:var(--muted);white-space:nowrap;min-width:74px;text-align:right}.cards-list{margin:6px 0;padding-left:18px;font-size:13px;line-height:1.45}.gauge{margin:8px 0 2px}.gauge-head{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px}.gauge-bar{position:relative;height:10px;border-radius:999px;background:#2a313d;margin-bottom:16px}.gauge-fill{position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,#4cc38a,#ffd34d,#ff7a3d)}.gauge-mark{position:absolute;top:-3px;width:2px;height:16px;background:#fff;opacity:.8}.gauge-mark span{position:absolute;top:16px;left:-10px;font-size:10px;color:var(--muted)}.pacer-ring{width:74px;height:74px;border-radius:50%;border:2px solid rgba(255,255,255,.15);display:grid;place-items:center;position:relative}.pacer-dot{position:absolute;inset:4px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#4cc38af2,#4cc38a59);transition:transform .05s linear}.pacer.out .pacer-dot{background:radial-gradient(circle at 40% 35%,#6ea0fff2,#6ea0ff4d)}.pacer.hold .pacer-dot{background:#9aa4b266}.pacer-text{position:relative;text-align:center;line-height:1.1}.pacer-text b{display:block;font-size:14px}.pacer-text span{font-size:22px;font-weight:700}.pose{width:110px;height:64px}.pose .body{fill:#e2b49b}.pose .ribs{fill:none;stroke:#ff7a3d;stroke-width:1.5}.pose .limb{fill:none;stroke:#e2b49b;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.pose .prop{fill:#5a6576}.pose .floor{stroke:#3a4351;stroke-width:2}.cta{border:1px solid rgba(255,122,61,.7);background:#ff7a3d29;color:var(--text);border-radius:var(--radius);padding:12px 14px;text-align:left;cursor:pointer;max-width:720px;width:100%;margin:0 auto}.cta b{display:block;font-size:15px}.cta span{font-size:12px;color:var(--muted)}.foot{font-size:10.5px;color:var(--muted);text-align:center;padding:2px 4px;text-shadow:0 1px 2px #000}.foot a,.link{color:#c9d1db}.link{background:none;border:none;padding:0;font-size:inherit;text-decoration:underline;cursor:pointer}.lbl{background:#0d1117d1;border:1px solid rgba(255,122,61,.7);color:#fff;font-size:11px;padding:3px 7px;border-radius:999px;white-space:nowrap;transition:opacity .25s;opacity:0}.page{position:absolute;inset:0;background:#0d1117f5;z-index:50;overflow-y:auto;padding:calc(16px + var(--safe-t)) 16px calc(24px + var(--safe-b))}.page-inner{max-width:720px;margin:0 auto;position:relative;font-size:14px;line-height:1.5}.page h2{margin:4px 40px 8px 0}.page h3{margin:18px 0 6px;font-size:15px}.page a{color:#8fb8ff;word-break:break-all}.sources{padding-left:18px}.disclaimer{background:#ffd34d1f;border:1px solid rgba(255,211,77,.4);border-radius:10px;padding:8px 10px}@media (min-width: 900px){.bottom{left:auto;right:12px;bottom:8px;width:420px;max-height:calc(100vh - 120px)}.card,.panel{max-height:calc(100vh - 160px)}}
