@import"https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Inter:wght@300;400;500;600&display=swap";:root{--c-bg: #06070d;--c-glass: rgba(14, 17, 26, .72);--c-glass-2: rgba(20, 24, 35, .85);--c-stage: rgba(9, 11, 18, .9);--c-text: #e7e3da;--c-dim: #8b8d96;--c-faint: #54565f;--c-gold: #e8c14a;--c-teal: #2bb6a3;--c-coral: #db6f5c;--c-red: #c0392b;--c-rule: rgba(255, 255, 255, .09);--serif: "Instrument Serif", Georgia, serif;--sans: "Inter", -apple-system, sans-serif}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;background:var(--c-bg);color:var(--c-text);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden}#globe-container{position:fixed;inset:0;z-index:1;cursor:grab}#globe-container canvas{outline:none}#back-link{position:fixed;top:22px;left:22px;z-index:40;font-size:11px;letter-spacing:.06em;color:var(--c-dim);text-decoration:none;padding:8px 14px;background:var(--c-glass);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--c-rule);border-radius:9px;transition:color .2s,background .2s}#back-link:hover{color:var(--c-text);background:var(--c-glass-2)}#share-btn{position:fixed;top:22px;right:22px;z-index:40;font-family:var(--sans);font-size:11px;letter-spacing:.06em;color:var(--c-dim);cursor:pointer;padding:8px 14px;background:var(--c-glass);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--c-rule);border-radius:9px;transition:color .2s,background .2s}#share-btn:hover{color:var(--c-text);background:var(--c-glass-2)}#toast{position:fixed;bottom:84px;left:50%;transform:translate(-50%) translateY(8px);z-index:60;background:var(--c-glass-2);color:var(--c-text);font-size:13px;letter-spacing:.01em;border:1px solid var(--c-rule);border-radius:10px;padding:10px 16px;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 18px 50px #0000008c;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease}#toast.show{opacity:1;transform:translate(-50%) translateY(0)}.data-actions{display:flex;flex-wrap:wrap;gap:8px}.data-btn{font-family:var(--sans);font-size:12px;font-weight:500;color:var(--c-text);cursor:pointer;background:#ffffff0d;border:1px solid var(--c-rule);border-radius:8px;padding:8px 12px;transition:background .2s,border-color .2s}.data-btn:hover{background:#ffffff1a;border-color:#2bb6a380}.data-stamp{font-size:11px;color:var(--c-faint);margin-top:9px;line-height:1.5}#intro{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px;background:radial-gradient(ellipse at center,#06070d59,#06070dd1 70%);transition:opacity .8s ease;padding:24px}#intro.gone{opacity:0;pointer-events:none}.intro-kicker{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);margin-bottom:14px}.intro-title{font-family:var(--serif);font-size:92px;font-weight:400;line-height:1;color:#fff;letter-spacing:.01em}.intro-sub{font-family:var(--serif);font-style:italic;font-size:26px;color:var(--c-text);margin-top:6px}#begin-btn{margin-top:30px;font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.02em;color:#06231e;background:var(--c-teal);border:none;border-radius:10px;padding:13px 26px;cursor:pointer;transition:transform .2s,background .2s}#begin-btn:hover{transform:translateY(-2px);background:#34cdb8}.intro-credit{margin-top:28px;font-size:11px;letter-spacing:.04em;color:var(--c-faint)}#stage{position:fixed;top:50%;left:3.2vw;transform:translateY(-50%);z-index:16;width:min(56vw,780px);max-height:90vh;background:var(--c-stage);backdrop-filter:blur(30px) saturate(115%);-webkit-backdrop-filter:blur(30px) saturate(115%);border:1px solid var(--c-rule);border-radius:20px;padding:24px 28px 20px;box-shadow:0 40px 110px #0009;opacity:1;transition:opacity .6s ease,transform .6s ease}#stage.hidden{opacity:0;transform:translateY(-46%);pointer-events:none}#stage.swap{opacity:0;transform:translateY(-46%)}#stage-kicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold);margin-bottom:8px}#stage-title{font-family:var(--serif);font-size:30px;font-weight:400;line-height:1.08;color:#fff;margin-bottom:14px}#stage-graph svg{width:100%;height:auto;display:block}#stage-caption{font-size:12px;color:var(--c-dim);margin-top:10px;line-height:1.5}#stage-caption b{color:var(--c-text);font-weight:500}.bc-grid{stroke:#ffffff12;stroke-width:1}.bc-axis{stroke:#ffffff2e;stroke-width:1}.bc-tick{fill:var(--c-dim);font-family:var(--sans);font-size:12px}.bc-line{fill:none;stroke-width:3}.bc-lbl{font-family:var(--sans);font-size:13px;font-weight:600}.bc-shade{stroke:none}.bc-shade-lbl{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.02em}.bc-marker{stroke-width:1.5;stroke-dasharray:4 3}.bc-marker-lbl{font-family:var(--sans);font-size:11.5px;font-weight:600}.bc-note{font-family:var(--sans);font-size:11.5px;font-weight:400}.bc-dot{stroke:#fff;stroke-width:1.5}#panel{position:fixed;top:50%;right:30px;transform:translateY(-50%);z-index:20;width:366px;max-height:88vh;overflow-y:auto;background:var(--c-glass);backdrop-filter:blur(34px) saturate(120%);-webkit-backdrop-filter:blur(34px) saturate(120%);border:1px solid var(--c-rule);border-radius:18px;padding:24px 26px;box-shadow:0 30px 90px #0000008c;transition:opacity .6s ease,transform .6s ease}#panel.hidden{opacity:0;transform:translateY(-46%);pointer-events:none}#panel.swap{opacity:0;transform:translateY(-46%)}#panel-kicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold);margin-bottom:10px}#panel-title{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.1;color:#fff;margin-bottom:14px}#panel-photo{margin:0 0 14px;border-radius:12px;overflow:hidden;border:1px solid var(--c-rule)}#panel-photo.hidden{display:none}#panel-photo img{width:100%;height:150px;object-fit:cover;display:block}#panel-photo figcaption{font-size:10px;color:var(--c-faint);padding:6px 10px;background:#00000052;letter-spacing:.02em}#panel-text{font-size:14px;font-weight:300;line-height:1.62;color:var(--c-text)}#panel-text p{margin-bottom:10px}#panel-text em{font-style:italic;color:#fff}#panel-text a,#panel-links a{color:var(--c-teal);text-decoration:none;border-bottom:1px solid rgba(43,182,163,.4)}#panel-text a:hover,#panel-links a:hover{color:#fff}#panel-controls:not(:empty){margin-top:14px;padding-top:14px;border-top:1px solid var(--c-rule)}#panel-links{margin-top:14px;display:flex;flex-direction:column;gap:7px}#panel-links a{font-size:12px;border:1px solid rgba(43,182,163,.3);border-radius:7px;padding:7px 11px}.lever-row{display:flex;align-items:center;gap:12px;margin:4px 0}.lever-row input[type=range]{flex:1;accent-color:var(--c-gold)}.lever-val{font-family:var(--serif);font-size:25px;color:var(--c-gold);min-width:70px;text-align:right}.lever-cap{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-dim);margin-bottom:2px}.lever-out{font-size:12.5px;color:var(--c-dim);margin-top:8px;line-height:1.5}.lever-out b{color:var(--c-coral);font-weight:500}.lever-out .good{color:var(--c-teal)}.time-grid{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.time-grid .tg{font-size:12px;color:var(--c-text);background:#ffffff0a;border-left:3px solid var(--c-faint);border-radius:4px;padding:3px 8px}.time-grid .tg b{color:#fff;font-weight:600}.glabel{font-family:var(--sans);font-size:11px;font-weight:600;color:#fff;white-space:nowrap;background:#06070dc7;border:1px solid var(--c-rule);border-radius:6px;padding:3px 7px;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 4px 14px #00000080}.glabel b{color:var(--c-gold)}#stepper{position:fixed;bottom:26px;left:50%;transform:translate(-50%);z-index:25;display:flex;align-items:center;gap:18px;background:var(--c-glass);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--c-rule);border-radius:40px;padding:9px 14px;transition:opacity .6s ease}#stepper.hidden{opacity:0;pointer-events:none}#stepper button{font-family:var(--sans);font-size:13px;font-weight:500;color:var(--c-text);background:transparent;border:1px solid var(--c-rule);border-radius:20px;padding:8px 16px;cursor:pointer;transition:background .2s,color .2s}#stepper button:hover{background:#ffffff14}#stepper button:disabled{opacity:.3;cursor:default}#next-btn{background:var(--c-teal);color:#06231e;border-color:var(--c-teal)}#next-btn:hover{background:#34cdb8}#progress-dots{display:flex;gap:7px}.pdot{width:8px;height:8px;border-radius:50%;background:#33363f;transition:background .3s}.pdot.on{background:var(--c-gold)}#legend{position:fixed;left:24px;bottom:26px;z-index:18;background:var(--c-glass);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--c-rule);border-radius:11px;padding:12px 14px;transition:opacity .5s ease}#legend.hidden{opacity:0;pointer-events:none}.legend-title{font-size:11px;color:var(--c-text);margin-bottom:7px}.legend-bar{display:flex;gap:2px;align-items:center}.legend-bar span.sw{width:26px;height:8px;border-radius:2px}.legend-bar span.lab{font-size:10px;color:var(--c-dim);margin:0 4px}.legend-note{font-size:10px;color:var(--c-faint);margin-top:7px;max-width:230px;line-height:1.4}.legend-note em{font-style:italic;color:var(--c-dim)}#loader{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--c-bg);transition:opacity .9s ease}#loader.fade-out{opacity:0;pointer-events:none}.loader-title{font-family:var(--serif);font-size:40px;color:#fff}.loader-sub{font-size:12px;letter-spacing:.08em;color:var(--c-dim);margin-top:8px}#credit{position:fixed;bottom:13px;left:50%;transform:translate(-50%);z-index:15;font-size:10px;letter-spacing:.03em;color:var(--c-faint);text-align:center;max-width:60vw;pointer-events:none}#stepper:not(.hidden)~#credit{opacity:0}@media(max-width:1100px){#stage{width:64vw;left:2vw}}@media(max-width:900px){#panel{inset:auto 12px 84px;width:auto;max-height:46vh;transform:none}#panel.hidden{transform:translateY(20px)}#stage{left:12px;right:12px;width:auto;top:70px;transform:none;max-height:42vh;padding:16px}#stage.hidden{transform:translateY(-12px)}.intro-title{font-size:60px}#legend,#credit{display:none}}
