@font-face{font-family:Instrument Sans;src:url(../fonts/instrument-sans-latin.woff2)format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(../fonts/jetbrains-mono-latin.woff2)format("woff2");font-weight:400 600;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-display:"Instrument Sans", -apple-system, BlinkMacSystemFont, "SF Pro Display", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--s0:2px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:32px;--s8:48px;--s9:64px;--s10:80px;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:22px;--r-xl:28px;--r-2xl:36px;--r-pill:999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--dur-instant:.12s;--dur-fast:.2s;--dur:.32s;--dur-slow:.65s;--dur-cinematic:1.1s;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}:root,[data-theme=dark]{--bg:#030508;--bg-grad:radial-gradient(ellipse 130% 100% at 50% -20%, #0a1220 0%, #05070d 48%, #020306 100%);--text-strong:#f8fafc;--text:#dce4f0;--muted:#8b97ab;--faint:#4a5568;--accent:#5eb8ff;--accent-2:#00e5ff;--accent-soft:#5eb8ff24;--accent-glow:#5eb8ff59;--on-accent:#031018;--glass-bg:#080c16e0;--glass-bg-strong:#060a12f0;--glass-border:#ffffff17;--glass-hi:#ffffff0d;--hairline:#ffffff12;--dotline:#ffffff1c;--shadow-sm:0 4px 20px -4px #00000073;--shadow:0 20px 60px -16px #000000a6, 0 2px 8px #00000059;--shadow-lg:0 32px 90px -20px #000000bf, 0 8px 24px #0006;--glow:0 0 48px var(--accent-glow), 0 0 1px #5eb8ff80;--vignette:#0000008c;--aurora:radial-gradient(ellipse 80% 50% at 20% 0%, #5eb8ff14, transparent 60%), radial-gradient(ellipse 60% 40% at 80% 10%, #00e5ff0f, transparent 55%);--surface-input:#ffffff09;--surface-hover:#ffffff0f;--dot-dim:#2c3a4f;--visa-free:#34d399;--visa-evisa:#fbbf24;--visa-required:#f87171;--visa-home:#64748b}[data-theme=light]{--bg:#eef2f8;--bg-grad:radial-gradient(ellipse 130% 100% at 50% -20%, #fff 0%, #eef3fa 50%, #e4ebf5 100%);--text-strong:#0a1420;--text:#1e3044;--muted:#5c6b7d;--faint:#94a3b8;--accent:#0071e3;--accent-2:#00a8c8;--accent-soft:#0071e31a;--accent-glow:#0071e338;--on-accent:#fff;--glass-bg:#fcfdffed;--glass-bg-strong:#fffffff7;--glass-border:#0c224017;--glass-hi:#ffffffd9;--hairline:#0c224014;--dotline:#0c224024;--shadow-sm:0 4px 16px -4px #1834601f;--shadow:0 20px 50px -18px #18346038, 0 2px 8px #1834600f;--shadow-lg:0 28px 70px -22px #18346047;--glow:0 0 40px var(--accent-glow);--vignette:#1e375a1f;--aurora:radial-gradient(ellipse 80% 50% at 20% 0%, #0071e312, transparent 60%), radial-gradient(ellipse 60% 40% at 80% 10%, #00a8c80d, transparent 55%);--surface-input:#0c224009;--surface-hover:#0c22400f;--dot-dim:#aebccd;--visa-free:#16a34a;--visa-evisa:#d97706;--visa-required:#dc2626;--visa-home:#94a3b8}html,body,#root{width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--text);font-family:var(--font-display);font-feature-settings:"ss01", "cv01";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background-color var(--dur-slow) var(--ease-out), color var(--dur-slow) var(--ease-out)}::selection{background:var(--accent-soft);color:var(--text-strong)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-xs)}.info-panel,.dock-sheet,.launcher-pop{scrollbar-width:thin;scrollbar-color:var(--hairline) transparent}.info-panel::-webkit-scrollbar{width:4px}.dock-sheet::-webkit-scrollbar{width:4px}.info-panel::-webkit-scrollbar-thumb{background:var(--hairline);border-radius:var(--r-pill)}.t-hero{font-family:var(--font-display);letter-spacing:-.048em;color:var(--text-strong);font-size:clamp(56px,10vw,112px);font-weight:650;line-height:.94}.t-hero-accent{background:linear-gradient(135deg, var(--text-strong) 20%, var(--accent) 80%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.t-subtitle{letter-spacing:-.015em;color:var(--muted);font-size:clamp(17px,2.4vw,22px);font-weight:400;line-height:1.45}.t-section{letter-spacing:.28em;text-transform:uppercase;font-size:10px;font-weight:600;font-family:var(--font-mono);color:var(--accent)}.t-mode{letter-spacing:-.022em;color:var(--text-strong);font-size:15px;font-weight:600}.t-label{letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:600;font-family:var(--font-mono);color:var(--muted)}.t-tooltip{letter-spacing:-.01em;font-size:12px;font-weight:550}.t-card-value{letter-spacing:-.015em;color:var(--text);font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.t-body{color:var(--muted);letter-spacing:-.008em;font-size:13.5px;font-weight:400;line-height:1.6}.t-metric{letter-spacing:-.04em;color:var(--text-strong);font-variant-numeric:tabular-nums;font-size:clamp(28px,5vw,36px);font-weight:650;line-height:1}.glass{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--shadow);transition:background-color var(--dur-slow) var(--ease-out), border-color var(--dur-slow) var(--ease-out), box-shadow var(--dur-slow) var(--ease-out), transform var(--dur-fast) var(--ease-out)}.glass-pill{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--r-pill);box-shadow:var(--shadow);transition:background-color var(--dur-slow) var(--ease-out), border-color var(--dur-slow) var(--ease-out), transform var(--dur-fast) var(--ease-out)}.glass-float{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg)}.chrome-layer{z-index:50;pointer-events:none;position:fixed;inset:0}.chrome-layer>*{pointer-events:auto}.aurora{z-index:1;pointer-events:none;background:var(--aurora);opacity:.9;transition:opacity var(--dur-slow) var(--ease-out);animation:aurora-drift 22s var(--ease-smooth) infinite alternate;position:fixed;inset:0}@keyframes aurora-drift{0%{opacity:.72;transform:translate(-2%,-1%)scale(1.03)}to{opacity:1;transform:translate(2%,1.5%)scale(1.07)}}.scene-tooltip{pointer-events:none}.el-tooltip{font-family:var(--font-display);background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--r-md);box-shadow:var(--shadow);padding:var(--s2) var(--s3);color:var(--text-strong)}.el-tooltip b{font-weight:600}.el-tooltip small{font-family:var(--font-mono);letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-top:2px;font-size:9.5px;display:block}.starfield{z-index:0;pointer-events:none;position:fixed;inset:0}.star{fill:#fff}@keyframes twinkle{0%,to{opacity:var(--base-op,.5)}50%{opacity:.06}}@keyframes ring-pulse{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(1.7)}}.sky{z-index:0;pointer-events:none;background:radial-gradient(60% 50% at 50% 8%,#0071e317,#0000 70%),radial-gradient(40% 30% at 80% 80%,#00a8c812,#0000 70%);position:fixed;inset:0}.info-panel{top:calc(var(--safe-top) + var(--s5));right:calc(var(--safe-right) + var(--s5));width:min(320px, calc(100vw - var(--s6) * 2));max-height:calc(100vh - var(--safe-top) - var(--safe-bottom) - 120px);padding:var(--s5);z-index:50;border-radius:var(--r-xl);position:fixed;overflow:hidden auto}.info-panel:before{content:"";border-radius:inherit;background:linear-gradient(160deg, var(--glass-hi), transparent 40%, transparent 60%, color-mix(in srgb, var(--accent) 20%, transparent));-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.panel-handle{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;width:100%;min-height:44px;padding:10px 0 6px;display:none}.panel-handle-bar{border-radius:var(--r-pill);background:var(--hairline);width:40px;height:4px;margin:0 auto var(--s4);transition:background-color var(--dur-fast), width var(--dur-fast);display:block}.info-panel.sheet.peek .panel-handle-bar{background:var(--accent);width:52px}.panel-divider{background:linear-gradient(90deg, transparent, var(--hairline), transparent);height:1px;margin:var(--s4) 0}.stat-row{justify-content:space-between;align-items:baseline;gap:var(--s3);padding:var(--s2) 0;border-bottom:1px dotted var(--dotline);display:flex}.stat-row:last-child{border-bottom:none}.stat-label{color:var(--muted);letter-spacing:-.012em;font-size:13px}.stat-value{color:var(--text);text-align:right;font-variant-numeric:tabular-nums;letter-spacing:-.015em;font-size:14px;font-weight:600}.panel-title{color:var(--text-strong);letter-spacing:-.025em;font-size:18px;font-weight:650;line-height:1.2}.panel-sub{color:var(--muted);letter-spacing:-.008em;margin-top:var(--s1);font-size:13px;line-height:1.55}.location-chip{align-items:center;gap:var(--s3);padding:var(--s3);margin-bottom:var(--s4);border-radius:var(--r-md);background:var(--surface-input);border:1px solid var(--hairline);display:flex}.el-select{background:var(--surface-input);border:1px solid var(--glass-border);border-radius:var(--r-sm);width:100%;color:var(--text);font-family:var(--font-display);cursor:pointer;appearance:none;transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast), box-shadow var(--dur-fast);padding:12px 14px;font-size:13.5px;font-weight:550}.el-select:hover{border-color:color-mix(in srgb, var(--accent) 50%, transparent)}.el-select:focus-visible{box-shadow:0 0 0 3px var(--accent-soft)}.ts-card{border-radius:var(--r-md);background:var(--surface-input);border:1px solid var(--hairline);padding:12px 14px}.cmp-row{border-radius:var(--r-sm);transition:background-color var(--dur-fast) var(--ease-out);margin:0 -10px;padding:8px 10px}.cmp-row:hover{background:var(--surface-input)}.discover-card{border-radius:var(--r-md);background:linear-gradient(150deg, color-mix(in srgb, var(--sx,var(--accent)) 12%, transparent), var(--surface-input) 55%);border:1px solid color-mix(in srgb, var(--sx,var(--accent)) 28%, transparent);padding:14px 15px;position:relative;overflow:hidden}.discover-card:before{content:"";background:linear-gradient(90deg, transparent, var(--sx,var(--accent)), transparent);opacity:.7;height:2px;position:absolute;inset:0 0 auto}.discover-stat{border-top:1px dotted var(--dotline);justify-content:space-between;align-items:baseline;gap:10px;padding:6px 0;display:flex}.discover-stat .stat-value{font-family:var(--font-mono);text-align:right}.discover-orb{border-radius:var(--r-pill);width:64px;height:64px;color:var(--accent);background:radial-gradient(circle at 50% 40%, var(--accent-soft), transparent 70%);border:1px solid color-mix(in srgb, var(--accent) 26%, transparent);box-shadow:var(--glow);place-items:center;margin:0 auto;display:grid}.discover-btn{justify-content:center;align-items:center;gap:8px;display:inline-flex}.discover-btn:active{transform:translateY(0)scale(.98)}.el-range{appearance:none;border-radius:var(--r-pill);background:linear-gradient(90deg, var(--accent), var(--accent-2));width:100%;height:3px}.el-range::-webkit-slider-thumb{appearance:none;background:var(--bg);border:2.5px solid var(--accent);cursor:pointer;width:20px;height:20px;box-shadow:var(--glow);transition:transform var(--dur-fast) var(--ease-spring);border-radius:50%}.el-range::-webkit-slider-thumb:hover{transform:scale(1.15)}.el-range::-webkit-slider-thumb:active{transform:scale(1.28)}.el-range::-moz-range-thumb{background:var(--bg);border:2.5px solid var(--accent);cursor:pointer;border-radius:50%;width:20px;height:20px}.btn-primary{border-radius:var(--r-pill);background:linear-gradient(135deg, var(--accent), var(--accent-2));color:var(--on-accent);font-family:var(--font-display);letter-spacing:-.015em;cursor:pointer;transition:transform var(--dur) var(--ease-spring), box-shadow var(--dur) var(--ease-out), filter var(--dur-fast);box-shadow:var(--glow);border:none;padding:15px 32px;font-size:15px;font-weight:650;position:relative}.btn-primary:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff2e,#0000 50%);position:absolute;inset:0}.btn-primary:hover{filter:brightness(1.06);box-shadow:var(--glow), var(--shadow-sm);transform:translateY(-2px)scale(1.02)}.btn-primary:active{transform:scale(.97)}.btn-ghost{border-radius:var(--r-md);background:var(--surface-input);border:1px solid var(--glass-border);width:100%;color:var(--text-strong);font-family:var(--font-display);cursor:pointer;transition:border-color var(--dur-fast), background-color var(--dur-fast), transform var(--dur-fast) var(--ease-spring);padding:12px;font-size:13.5px;font-weight:600}.btn-ghost:hover{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:var(--surface-hover);transform:translateY(-1px)}.btn-ghost:active{transform:scale(.98)}.btn-gradient{border-radius:var(--r-md);background:linear-gradient(135deg, var(--accent-soft), color-mix(in srgb, var(--accent-2) 12%, transparent));border:none;border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);width:100%;color:var(--accent);font-family:var(--font-display);cursor:pointer;transition:transform var(--dur-fast) var(--ease-spring), box-shadow var(--dur-fast);padding:12px;font-size:13.5px;font-weight:600}.btn-gradient:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.icon-btn{border-radius:var(--r-pill);cursor:pointer;background:var(--glass-bg);border:1px solid var(--glass-border);width:42px;height:42px;color:var(--text-strong);box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease-spring), color var(--dur-fast), border-color var(--dur-fast), box-shadow var(--dur-fast);flex:none;place-items:center;display:grid}.icon-btn:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:var(--shadow);transform:translateY(-2px)}.icon-btn:active{transform:scale(.92)}.landing{z-index:100;padding:calc(var(--safe-top) + var(--s4)) calc(var(--safe-right) + var(--s5)) calc(var(--safe-bottom) + var(--s5)) calc(var(--safe-left) + var(--s5));pointer-events:auto;flex-direction:column;justify-content:space-between;align-items:stretch;display:flex;position:fixed;inset:0;overflow:hidden}.landing-atmosphere{z-index:0;pointer-events:none;background:radial-gradient(ellipse 90% 70% at 50% 32%, color-mix(in srgb, var(--accent) 12%, transparent) 0%, transparent 58%), radial-gradient(ellipse 50% 40% at 50% 28%, transparent 0%, transparent 100%);position:absolute;inset:0}.landing-scrim{z-index:1;pointer-events:none;background:radial-gradient(55% 48% at 50% 30%,#0000 0% 42%,#0305088c 100%),linear-gradient(#03050826 0%,#0000 28%,#030508b8 72%,#030508f0 100%);position:absolute;inset:0}[data-theme=light] .landing-scrim{background:radial-gradient(55% 48% at 50% 30%,#0000 0% 42%,#eef2f873 100%),linear-gradient(#ffffff1a 0%,#0000 28%,#eef2f8bf 72%,#eef2f8f5 100%)}.landing-orbit-ring{border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);width:min(72vw,520px);height:min(72vw,520px);box-shadow:0 0 80px color-mix(in srgb, var(--accent) 8%, transparent), inset 0 0 60px color-mix(in srgb, var(--accent) 4%, transparent);pointer-events:none;z-index:1;opacity:.7;animation:landing-ring-breathe 6s var(--ease-smooth) infinite;border-radius:50%;position:absolute;top:14%;left:50%;transform:translate(-50%)}.landing-orbit-ring:before{content:"";border-radius:inherit;background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 35%, transparent), transparent 40%, transparent 60%, color-mix(in srgb, var(--accent-2) 25%, transparent)) border-box;-webkit-mask-composite:xor;opacity:.6;border:1px solid #0000;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:padding-box,border-box;mask-clip:padding-box,border-box;-webkit-mask-origin:padding-box,border-box;mask-origin:padding-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes landing-ring-breathe{0%,to{opacity:.65;transform:translate(-50%)scale(1)}50%{opacity:.85;transform:translate(-50%)scale(1.02)}}.landing-top{z-index:3;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:relative}.landing-brand{align-items:center;gap:var(--s3);display:flex}.landing-brand-mark{background:linear-gradient(145deg, var(--accent), var(--accent-2));width:44px;height:44px;color:var(--on-accent);box-shadow:var(--glow);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.landing-brand-text{flex-direction:column;gap:1px;line-height:1.1;display:flex}.landing-wordmark{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-strong);font-size:22px;font-weight:650}.landing-brand-sub{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:9.5px;font-weight:600}.landing-theme{width:42px;height:42px}.landing-stage{z-index:3;border-radius:var(--r-2xl);align-self:center;width:min(560px,100%);margin-top:auto;position:relative;overflow:hidden}.landing-stage:before{content:"";border-radius:inherit;background:linear-gradient(165deg, color-mix(in srgb, var(--accent) 35%, transparent), transparent 35%, transparent 65%, color-mix(in srgb, var(--accent-2) 20%, transparent));-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.landing-stage-inner{padding:var(--s6) var(--s7);text-align:center}.landing-eyebrow{font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--s4);font-size:10px;font-weight:600}.landing-headline{gap:var(--s1);margin-bottom:var(--s4);flex-direction:column;display:flex}.landing-headline-line{font-family:var(--font-display);letter-spacing:-.042em;color:var(--text-strong);font-size:clamp(36px,7.5vw,52px);font-weight:650;line-height:1.02;display:block}.landing-headline-accent{background:linear-gradient(120deg, var(--accent) 0%, var(--accent-2) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-lede{letter-spacing:-.012em;color:var(--muted);max-width:440px;margin:0 auto var(--s6);font-size:clamp(15px,2.2vw,17px);font-weight:400;line-height:1.55}.landing-capability{min-height:52px;margin-bottom:var(--s6);align-items:center;gap:var(--s3);flex-direction:column;display:flex}.landing-capability-inner{justify-content:center;align-items:center;gap:var(--s3);flex-wrap:wrap;display:flex}.landing-cap-tag{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);padding:4px 10px;font-size:9px;font-weight:600}.landing-cap-text{letter-spacing:-.015em;color:var(--text);font-size:14px;font-weight:550}.landing-cap-dots{gap:6px;display:flex}.landing-cap-dot{background:var(--hairline);width:6px;height:6px;transition:background-color var(--dur-fast), transform var(--dur-fast) var(--ease-spring);border-radius:50%}.landing-cap-dot.active{background:var(--accent);box-shadow:0 0 10px var(--accent-glow);transform:scale(1.2)}.landing-actions{align-items:center;gap:var(--s3);flex-direction:column;display:flex}.landing-cta{justify-content:center;align-items:center;gap:var(--s2);min-width:220px;padding:16px 28px;display:inline-flex}.landing-kbd-hint{font-family:var(--font-mono);letter-spacing:.04em;color:var(--faint);font-size:11px;font-weight:500}.landing-kbd-hint kbd{background:var(--surface-input);border:1px solid var(--hairline);color:var(--muted);border-radius:5px;margin:0 2px;padding:2px 7px;font-family:inherit;font-size:10px;display:inline-block}.landing-footer{z-index:3;padding-top:var(--s4);flex-shrink:0;justify-content:center;display:flex;position:relative}.landing-live{align-items:center;gap:var(--s2);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-size:10px;font-weight:600;display:inline-flex}.landing-live-dot{width:6px;height:6px;animation:pulse-dot 2.4s var(--ease-smooth) infinite;background:#34d399;border-radius:50%;box-shadow:0 0 10px #34d39980}@keyframes pulse-dot{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;box-shadow:0 0 12px var(--accent-glow);transform:scale(1.15)}}.grid-overlay{display:none}.dock{left:50%;bottom:calc(var(--safe-bottom) + var(--s5));z-index:55;align-items:center;gap:var(--s2);max-width:calc(100vw - var(--s6));flex-direction:column;display:flex;position:fixed;transform:translate(-50%)}.dock-bar{align-items:center;gap:var(--s1);max-width:100%;padding:var(--s2);border-radius:var(--r-2xl);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);display:flex}.dock-launch{align-items:center;gap:var(--s3);border-radius:var(--r-xl);cursor:pointer;min-width:0;transition:background-color var(--dur-fast);background:0 0;border:none;flex:auto;padding:7px 12px 7px 8px;display:flex}.dock-launch:hover{background:var(--surface-hover)}.dock-launch:active{transform:scale(.99)}.dock-launch-icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.dock-launch-text{text-align:left;flex-direction:column;gap:1px;min-width:0;line-height:1.12;display:flex}.dock-launch-name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:650;overflow:hidden}.dock-launch-hint{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:600}.dock-launch-grid{color:var(--muted);margin:0 var(--s2) 0 var(--s1);flex-shrink:0}.dock--compact .dock-bar{min-width:230px;padding:var(--s1) var(--s2);gap:var(--s1)}.dock-tabs{border-radius:var(--r-pill);background:var(--surface-input);gap:2px;padding:3px;display:flex}.dock-tab{border-radius:var(--r-pill);color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:color var(--dur-fast), background-color var(--dur-fast), transform var(--dur-fast) var(--ease-spring);background:0 0;border:none;padding:6px 14px;font-size:9.5px;font-weight:600}.dock-tab:hover{color:var(--text)}.dock-tab.active{background:var(--glass-bg-strong);color:var(--accent);box-shadow:var(--shadow-sm)}.dock-modes{min-width:0;padding:0 var(--s1);scrollbar-width:none;-ms-overflow-style:none;align-items:center;gap:2px;max-width:min(520px,100vw - 140px);display:flex;overflow-x:auto}.dock-modes::-webkit-scrollbar{display:none}.dock-mode{width:52px;height:52px;padding:var(--s1);border-radius:var(--r-md);color:var(--muted);font-family:var(--font-display);letter-spacing:-.01em;text-align:center;cursor:pointer;transition:color var(--dur-fast), transform var(--dur-fast) var(--ease-spring), background-color var(--dur-fast);background:0 0;border:none;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:3px;font-size:9px;font-weight:600;line-height:1.15;display:flex;position:relative}.dock-mode:hover{color:var(--text-strong);background:var(--surface-hover);transform:translateY(-3px)scale(1.05)}.dock-mode.active{color:var(--accent);background:var(--accent-soft);transform:translateY(-4px)scale(1.08)}.dock-mode.active:after{content:"";background:var(--accent);width:4px;height:4px;box-shadow:0 0 10px var(--accent-glow);border-radius:50%;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.dock-divider{background:var(--hairline);width:1px;height:28px;margin:0 var(--s1);flex-shrink:0}.dock-theme{width:40px;height:40px;box-shadow:none!important;background:0 0!important;border:none!important}.dock-theme:hover{background:var(--surface-hover)!important}.launcher-group-label{letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:600;font-family:var(--font-mono);color:var(--muted);margin-bottom:var(--s2)}.launcher-item{min-height:56px;padding:var(--s2) var(--s1);border-radius:var(--r-sm);background:var(--surface-input);color:var(--muted);font-family:var(--font-display);letter-spacing:-.01em;text-align:center;cursor:pointer;transition:color var(--dur-fast), background-color var(--dur-fast), border-color var(--dur-fast), transform var(--dur-fast) var(--ease-spring);border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:10.5px;font-weight:600;display:flex}.launcher-item:hover{color:var(--text-strong);border-color:var(--glass-border);transform:translateY(-2px)}.launcher-item.active{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.wonder-card{border-radius:var(--r-md);min-height:128px;padding:var(--s4);transition:transform var(--dur-fast) var(--ease-spring);align-items:flex-end;display:flex;position:relative;overflow:hidden}.wonder-card:hover{transform:scale(1.02)}.wonder-card-emoji{opacity:.92;filter:drop-shadow(0 6px 16px #0000004d);pointer-events:none;font-size:56px;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-58%)}.wonder-card-title{z-index:1;width:100%;position:relative}.timeline-chart{margin-top:var(--s2);display:block}.app-header{top:calc(var(--safe-top) + var(--s5));left:calc(var(--safe-left) + var(--s5));z-index:50;align-items:center;gap:var(--s3);padding:var(--s2) var(--s4) var(--s2) var(--s2);opacity:.92;transition:opacity var(--dur-fast), transform var(--dur-fast) var(--ease-out);display:flex;position:fixed}.app-header:hover{opacity:1}.header-mark{background:linear-gradient(145deg, var(--accent), var(--accent-2));width:34px;height:34px;color:var(--on-accent);box-shadow:var(--glow);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.gx-marker{pointer-events:none;width:0;height:0;position:relative}.gx-core{background:var(--c);width:9px;height:9px;box-shadow:0 0 14px 3px var(--c);border-radius:50%;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.gx-ring{border:1.5px solid var(--c);width:11px;height:11px;animation:gx-pulse 2.6s var(--ease-out) infinite;border-radius:50%;position:absolute;top:0;left:0}.gx-impact .gx-core{width:12px;height:12px;box-shadow:0 0 20px 5px var(--c)}.gx-impact .gx-ring{border-width:2px;animation-duration:1.5s}.gx-chip{white-space:nowrap;border-radius:var(--r-pill);font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-strong);background:var(--glass-bg-strong);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow);padding:4px 10px;font-size:11px;font-weight:600;position:absolute;top:9px;left:0;transform:translate(-50%)}@keyframes gx-pulse{0%{opacity:.75;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(3.6)}}.toast{top:calc(var(--safe-top) + 72px);z-index:70;letter-spacing:-.012em;color:var(--text-strong);white-space:nowrap;max-width:calc(100vw - var(--s6));text-overflow:ellipsis;padding:10px 20px;font-size:13.5px;font-weight:600;position:fixed;left:50%;overflow:hidden;transform:translate(-50%)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.zoom-btn:disabled{opacity:.5;cursor:default}.zoom-locate{color:var(--accent)}.vignette{z-index:2;pointer-events:none;background:radial-gradient(ellipse 85% 80% at 50% 42%, transparent 48%, var(--vignette) 100%);transition:background var(--dur-slow) var(--ease-out);position:fixed;inset:0}.zoom-cluster{left:calc(var(--safe-left) + var(--s5));bottom:calc(var(--safe-bottom) + var(--s5));z-index:50;padding:var(--s2);flex-direction:column;align-items:center;gap:2px;width:48px;display:flex;position:fixed}.zoom-btn{cursor:pointer;border-radius:var(--r-pill);width:36px;height:36px;color:var(--text-strong);transition:color var(--dur-fast), transform var(--dur-fast) var(--ease-spring), background-color var(--dur-fast);background:0 0;border:none;place-items:center;display:grid}.zoom-btn:hover{color:var(--accent);background:var(--surface-hover)}.zoom-btn:active{transform:scale(.86)}.zoom-div{background:var(--hairline);width:50%;height:1px}.map-view{z-index:60;background:var(--bg);position:fixed;inset:0}.map-view canvas{outline:none}.map-grade{z-index:2;pointer-events:none;background:radial-gradient(90% 85% at 50% 45%,#0000 55%,#03060c6b 100%),linear-gradient(#03060c47 0%,#0000 18% 82%,#03060c57 100%);position:absolute;inset:0}.map-back{top:calc(var(--safe-top) + var(--s5));left:calc(var(--safe-left) + var(--s5));z-index:5;align-items:center;gap:var(--s2);border-radius:var(--r-pill);cursor:pointer;color:#fff;min-height:44px;font-family:var(--font-display);letter-spacing:-.012em;transition:transform var(--dur-fast) var(--ease-spring), background-color var(--dur-fast);background:#0a0e16d6;border:1px solid #ffffff29;padding:10px 18px 10px 14px;font-size:14px;font-weight:600;display:inline-flex;position:absolute;box-shadow:0 8px 26px -8px #000000b3,0 0 0 1px #00000047}.map-back:hover{background:#121824eb;transform:translate(-3px)}.map-place{top:calc(var(--safe-top) + var(--s5));z-index:5;align-items:center;gap:var(--s2);border-radius:var(--r-pill);color:#f3f6fb;max-width:min(70vw,420px);font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;background:#0a0e16c7;border:1px solid #ffffff24;padding:9px 16px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 8px 26px -10px #000000b3}.map-place-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 10px 1px var(--accent-glow);border-radius:50%;flex-shrink:0}.maplibregl-ctrl-group{overflow:hidden;background:var(--glass-bg-strong)!important;border:1px solid var(--glass-border)!important;border-radius:var(--r-md)!important;box-shadow:var(--shadow)!important}.maplibregl-ctrl-group button+button{border-top:1px solid var(--hairline)!important}.maplibregl-ctrl-attrib{font-family:var(--font-mono);font-size:10px}@media (width<=768px){.landing{padding:calc(var(--safe-top) + var(--s3)) calc(var(--safe-right) + var(--s4)) calc(var(--safe-bottom) + var(--s3)) calc(var(--safe-left) + var(--s4))}.landing-orbit-ring{width:min(88vw,400px);height:min(88vw,400px);top:10%}.landing-stage-inner{padding:var(--s5) var(--s5)}.landing-headline-line{font-size:clamp(32px,9vw,44px)}.landing-brand-sub,.landing-kbd-hint{display:none}.landing-footer{padding-top:var(--s2)}.info-panel.sheet{padding:0 var(--s5) var(--s5);overscroll-behavior:contain;touch-action:pan-y;will-change:transform;overflow:hidden auto;top:auto!important;right:calc(var(--safe-right) + var(--s2))!important;left:calc(var(--safe-left) + var(--s2))!important;bottom:calc(var(--safe-bottom) + 72px)!important;border-radius:var(--r-2xl)!important;width:auto!important;max-height:none!important}.info-panel.sheet.peek{overflow:hidden}.panel-handle{z-index:1;padding:var(--s3) 0 var(--s2);background:var(--glass-bg-strong);touch-action:none;cursor:grab;display:block;position:sticky;top:0}.panel-handle:active{cursor:grabbing}.dock{left:calc(var(--safe-left) + var(--s2));right:calc(var(--safe-right) + var(--s2));bottom:calc(var(--safe-bottom) + var(--s3));max-width:none;transform:none}.dock-bar{width:100%;padding:var(--s2) var(--s3);border-radius:var(--r-xl);justify-content:space-between}.dock-tabs{flex:1;justify-content:center}.dock-tab{text-align:center;flex:1;padding:6px 10px;font-size:8.5px}.dock-modes{flex:1;justify-content:flex-start;max-width:none}.dock-mode{width:46px;height:46px;font-size:8px}.zoom-cluster{display:none}.t-hero{font-size:clamp(48px,13vw,76px)}.app-header{top:calc(var(--safe-top) + var(--s3));left:calc(var(--safe-left) + var(--s3));padding:var(--s2) var(--s3) var(--s2) var(--s2)}.app-header .header-tagline{display:none}}@media (width>=769px) and (width<=1100px){.info-panel{width:min(280px, calc(100vw - var(--s8)))}}@media (width>=769px) and (height<=600px){.info-panel{top:calc(var(--safe-top) + var(--s3));max-height:calc(100vh - var(--safe-top) - 96px)}.zoom-cluster{display:none}}@media (width<=768px) and (height<=500px){.info-panel.sheet{left:auto!important;right:calc(var(--safe-right) + var(--s2))!important;bottom:calc(var(--safe-bottom) + var(--s2))!important;width:min(300px,52vw)!important;height:auto!important;max-height:calc(100vh - var(--safe-top) - var(--safe-bottom) - var(--s4))!important;overflow-y:auto!important;transform:none!important}.info-panel.sheet .panel-handle{display:none}}.landing-grain{z-index:2;pointer-events:none;opacity:.5;background-image:radial-gradient(#ffffff1a .5px,#0000 .7px);background-size:3px 3px;position:absolute;inset:0}[data-theme=light] .landing-grain{opacity:.25}.landing-rings{z-index:1;pointer-events:none;perspective:1200px;position:absolute;inset:0}.landing-ring{border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:50%;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.landing-ring:after{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 12px 1px var(--accent-glow);border-radius:50%;position:absolute;top:-3px;left:50%;transform:translate(-50%)}.landing-ring--inner{opacity:.8;border-style:dashed;width:min(56vw,420px);height:min(56vw,420px);animation:60s linear infinite ring-spin}.landing-ring--mid{opacity:.62;width:min(78vw,590px);height:min(78vw,590px);animation:95s linear infinite reverse ring-spin}.landing-ring--mid:after{background:var(--accent-2);width:5px;height:5px;box-shadow:0 0 12px 1px color-mix(in srgb, var(--accent-2) 60%, transparent)}.landing-ring--outer{opacity:.38;border-style:dashed;width:min(104vw,820px);height:min(104vw,820px);animation:150s linear infinite ring-spin}.landing-ring--outer:after{opacity:.8;width:4px;height:4px}@keyframes ring-spin{to{transform:translate(-50%,-50%)rotate(360deg)}}.landing-orbit{transform-style:preserve-3d;pointer-events:none;position:absolute;top:42%;left:50%}.landing-orbit--a{width:min(92vw,720px);height:min(92vw,720px);transform:translate(-50%,-50%)rotateX(73deg)rotate(-12deg)}.landing-orbit--b{width:min(84vw,650px);height:min(84vw,650px);transform:translate(-50%,-50%)rotateX(62deg)rotate(58deg)}.landing-orbit-path{border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);border-radius:50%;animation:28s linear infinite orbit-spin;position:absolute;inset:0}.landing-orbit--b .landing-orbit-path{border-color:color-mix(in srgb, var(--accent-2) 24%, transparent);animation:40s linear infinite reverse orbit-spin}.landing-orbit-sat{background:radial-gradient(circle at 35% 30%, #fff, var(--accent) 72%);width:9px;height:9px;box-shadow:0 0 16px 2px var(--accent-glow);border-radius:50%;position:absolute;top:-5px;left:50%;transform:translate(-50%)}.landing-orbit--b .landing-orbit-sat{background:radial-gradient(circle at 35% 30%, #fff, var(--accent-2) 72%);box-shadow:0 0 16px 2px color-mix(in srgb, var(--accent-2) 55%, transparent)}@keyframes orbit-spin{to{transform:rotate(360deg)}}[data-theme=light] .landing-ring{border-color:color-mix(in srgb, var(--accent) 46%, transparent)}[data-theme=light] .landing-ring--inner{opacity:.95}[data-theme=light] .landing-ring--mid{opacity:.75}[data-theme=light] .landing-ring--outer{opacity:.5}[data-theme=light] .landing-orbit-path{border-color:color-mix(in srgb, var(--accent) 42%, transparent)}[data-theme=light] .landing-orbit--b .landing-orbit-path{border-color:color-mix(in srgb, var(--accent-2) 40%, transparent)}[data-theme=light] .landing-ring:after{box-shadow:0 0 12px 1px var(--accent-glow), 0 0 0 1px #0a142833}[data-theme=light] .landing-atmosphere{background:radial-gradient(ellipse 90% 70% at 50% 32%, color-mix(in srgb, var(--accent) 18%, transparent) 0%, transparent 58%), radial-gradient(ellipse 50% 40% at 50% 28%, transparent 0%, transparent 100%)}.landing-frame{inset:calc(var(--safe-top) + 14px) calc(var(--safe-right) + 14px) calc(var(--safe-bottom) + 14px) calc(var(--safe-left) + 14px);z-index:3;pointer-events:none;position:absolute}.landing-corner{border:1.5px solid color-mix(in srgb, var(--accent) 40%, transparent);opacity:.55;width:18px;height:18px;position:absolute}.landing-corner.tl{border-bottom:none;border-right:none;border-top-left-radius:4px;top:0;left:0}.landing-corner.tr{border-bottom:none;border-left:none;border-top-right-radius:4px;top:0;right:0}.landing-corner.bl{border-top:none;border-right:none;border-bottom-left-radius:4px;bottom:0;left:0}.landing-corner.br{border-top:none;border-left:none;border-bottom-right-radius:4px;bottom:0;right:0}.landing-content{z-index:3;flex-direction:column;flex:1;justify-content:space-between;display:flex;position:relative}.landing-hero{z-index:3;text-align:center;flex-direction:column;align-self:center;align-items:center;width:min(640px,100%);margin-top:auto;padding-bottom:clamp(56px,12vh,150px);display:flex;position:relative}.landing-eyebrow{align-items:center;gap:var(--s2);margin-bottom:var(--s4);display:inline-flex}.landing-eyebrow-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 10px var(--accent-glow);animation:pulse-dot 2.4s var(--ease-smooth) infinite;border-radius:50%}.landing-title{text-align:center;font-family:var(--font-display);letter-spacing:-.046em;color:var(--text-strong);margin-bottom:var(--s4);text-wrap:balance;font-size:clamp(38px,7vw,66px);font-weight:600;line-height:1.02}.landing-title-word{margin:0 .13em;display:inline-block}.landing-title-break{width:100%;height:0;display:block}.landing-title-word.is-accent{background:linear-gradient(108deg, var(--accent) 0%, var(--accent-2) 60%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-sub{min-height:22px;margin-bottom:var(--s7);justify-content:center;display:flex}.landing-sub-text{letter-spacing:-.01em;color:var(--muted);font-size:15px;font-weight:450}.landing-cta-wrap{display:inline-flex}.landing-enter{align-items:center;gap:var(--s3);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);border-radius:var(--r-pill);background:color-mix(in srgb, var(--accent) 8%, var(--glass-bg));-webkit-backdrop-filter:blur(20px)saturate(180%);color:var(--text-strong);cursor:pointer;font-family:var(--font-display);letter-spacing:-.01em;box-shadow:0 8px 30px -12px var(--accent-glow);transition:border-color var(--dur), background-color var(--dur), box-shadow var(--dur);padding:12px 12px 12px 24px;font-size:14.5px;font-weight:600;display:inline-flex;position:relative}.landing-enter:hover{border-color:color-mix(in srgb, var(--accent) 72%, transparent);background:color-mix(in srgb, var(--accent) 15%, var(--glass-bg));box-shadow:0 14px 48px -10px var(--accent-glow)}.landing-enter-label{z-index:1;position:relative}.landing-enter-arrow{background:linear-gradient(135deg, var(--accent), var(--accent-2));width:30px;height:30px;color:var(--on-accent);box-shadow:0 0 18px -2px var(--accent-glow);transition:transform var(--dur-fast) var(--ease-spring);border-radius:50%;place-items:center;display:grid}.landing-enter:hover .landing-enter-arrow{transform:translate(3px,-3px)}.landing-footer{justify-content:space-between;align-items:center}.landing-coords{font-family:var(--font-mono);letter-spacing:.14em;color:var(--faint);font-size:9.5px;font-weight:600}@media (width<=768px){.landing-ring--inner{width:min(78vw,360px);height:min(78vw,360px)}.landing-ring--mid{width:min(96vw,460px);height:min(96vw,460px)}.landing-ring--outer,.landing-orbit{display:none}.landing-title{font-size:clamp(34px,11vw,52px)}.landing-coords{display:none}.landing-footer{justify-content:center}}.click-hint{z-index:40;pointer-events:none;width:0;height:0;position:fixed;top:46%;left:50%}.click-hint-dot{background:radial-gradient(circle at 35% 30%, #fff, var(--accent) 70%);width:9px;height:9px;box-shadow:0 0 14px 3px var(--accent-glow), 0 0 0 1.5px #00000073;border-radius:50%;margin:-4.5px 0 0 -4.5px;position:absolute;top:0;left:0}.click-hint-ring{border:2px solid var(--accent);width:18px;height:18px;animation:click-pulse 2.6s var(--ease-out) infinite;border-radius:50%;margin:-9px 0 0 -9px;position:absolute;top:0;left:0;box-shadow:0 0 0 1px #00000059}.click-hint-ring:nth-of-type(3){animation-delay:1.3s}@keyframes click-pulse{0%{opacity:.85;transform:scale(.5)}to{opacity:0;transform:scale(3.6)}}.orbit-dock{left:50%;bottom:calc(var(--safe-bottom) + var(--s4));z-index:55;align-items:center;gap:var(--s2);max-width:calc(100vw - var(--s5));flex-direction:column-reverse;display:flex;position:fixed;transform:translate(-50%)}.orbit-groups{align-items:center;gap:var(--s1);border-radius:var(--r-pill);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm);padding:5px;display:flex}.orbit-group{border-radius:var(--r-pill);color:var(--muted);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:color var(--dur-fast), background-color var(--dur-fast);background:0 0;border:none;padding:6px 14px;font-size:9.5px;font-weight:600}.orbit-group:hover{color:var(--text)}.orbit-group.active{color:var(--accent);background:var(--accent-soft)}.orbit-sep{background:var(--hairline);width:1px;height:18px;margin:0 var(--s1)}.orbit-theme{width:30px!important;height:30px!important;box-shadow:none!important;background:0 0!important;border:none!important}.orbit-theme:hover{background:var(--surface-hover)!important}.orbit-arc{justify-content:center;align-items:flex-end;gap:var(--s2);padding:28px var(--s3) 4px;display:flex}.orbit-node{border:1px solid var(--glass-border);background:var(--glass-bg);width:50px;height:50px;color:var(--muted);cursor:pointer;transform:translateY(var(--lift,0px));box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease-spring), color var(--dur-fast), background-color var(--dur-fast), border-color var(--dur-fast), box-shadow var(--dur-fast);border-radius:50%;place-items:center;display:grid;position:relative}.orbit-node:hover{color:var(--text-strong);transform:translateY(calc(var(--lift,0px) - 6px)) scale(1.08);border-color:color-mix(in srgb, var(--accent) 40%, transparent)}.orbit-node.active{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 55%, transparent);transform:translateY(calc(var(--lift,0px) - 10px)) scale(1.12);box-shadow:0 0 26px -2px var(--accent-glow)}.orbit-node-label{white-space:nowrap;border-radius:var(--r-pill);font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-strong);background:var(--glass-bg-strong);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:opacity var(--dur-fast);padding:3px 9px;font-size:10.5px;font-weight:600;position:absolute;top:-24px;left:50%;transform:translate(-50%)}.orbit-node:hover .orbit-node-label,.orbit-node.active .orbit-node-label{opacity:1}@media (width<=768px){.orbit-dock{bottom:calc(var(--safe-bottom) + var(--s3));max-width:calc(100vw - var(--s4))}.orbit-arc{gap:var(--s1);padding:22px var(--s2) 2px}.orbit-node{width:44px;height:44px}.orbit-node-label{display:none}}.dock-gallery{width:32px!important;height:32px!important;box-shadow:none!important;color:var(--muted)!important;background:0 0!important;border:none!important}.dock-gallery:hover{background:var(--surface-hover)!important;color:var(--accent)!important}.gallery{z-index:90;background:color-mix(in srgb, var(--bg) 55%, transparent);-webkit-backdrop-filter:blur(10px)saturate(140%);justify-content:center;align-items:center;padding:clamp(12px,4vw,40px);display:flex;position:fixed;inset:0}.gallery-panel{border-radius:var(--r-2xl);flex-direction:column;width:min(960px,100%);max-height:min(86vh,760px);display:flex;overflow:hidden}.gallery-head{justify-content:space-between;align-items:flex-start;gap:var(--s4);padding:var(--s6) var(--s6) var(--s4);flex-shrink:0;display:flex}.gallery-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-strong);font-size:clamp(24px,3.6vw,34px);font-weight:650;line-height:1.05}.gallery-title em{color:var(--accent);font-style:normal}.gallery-sub{color:var(--muted);letter-spacing:-.005em;margin-top:6px;font-size:13.5px;line-height:1.45}.gallery-scroll{padding:0 var(--s6) var(--s6);gap:var(--s5);flex-direction:column;display:flex;overflow-y:auto}.gallery-group-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s3);font-size:10px;font-weight:600}.gallery-grid{gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.gallery-card{text-align:left;border:1px solid var(--glass-border);border-radius:var(--r-md);background:var(--surface-input);cursor:pointer;transition:transform var(--dur-fast) var(--ease-spring), border-color var(--dur-fast), box-shadow var(--dur-fast);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.gallery-card:hover{border-color:color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:var(--shadow);transform:translateY(-3px)}.gallery-card.active{border-color:color-mix(in srgb, var(--accent) 65%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 45%, transparent), var(--shadow-sm)}.gallery-badge{z-index:2;border-radius:var(--r-pill);font-family:var(--font-display);letter-spacing:-.01em;color:var(--accent);background:color-mix(in srgb, var(--accent) 13%, var(--glass-bg-strong));border:1px solid color-mix(in srgb, var(--accent) 32%, transparent);align-items:center;gap:4px;padding:3px 8px 3px 6px;font-size:10px;font-weight:600;display:inline-flex;position:absolute;top:8px;right:8px}.mode-prev{background:radial-gradient(ellipse 80% 120% at 50% 130%, color-mix(in srgb, var(--accent) 24%, transparent), transparent 70%), color-mix(in srgb, var(--accent) 5%, var(--surface-input));border-bottom:1px solid var(--hairline);place-items:center;height:78px;display:grid;overflow:hidden}.mp-svg{width:100%;height:100%;color:var(--accent)}.gallery-card-body{padding:var(--s3) var(--s4) var(--s4)}.gallery-card-head{align-items:center;gap:var(--s2);color:var(--accent);margin-bottom:5px;display:flex}.gallery-card-name{letter-spacing:-.01em;color:var(--text-strong);font-size:14.5px;font-weight:600}.gallery-card-blurb{color:var(--muted);margin-bottom:6px;font-size:12.5px;line-height:1.4}.gallery-card-eg{letter-spacing:-.005em;color:var(--accent);opacity:.85;font-size:11.5px;font-weight:550}@media (width<=768px){.gallery-panel{width:100%;max-height:92vh}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.gallery-head{padding:var(--s5) var(--s5) var(--s3)}.gallery-scroll{padding:0 var(--s5) var(--s5)}}.mp-ping,.mp-grow{transform-box:fill-box;transform-origin:50%}.mp-spin,.mp-bar,.mp-twinkle{transform-box:view-box}.mp-slide{animation:mp-slide 2.4s var(--ease-smooth) infinite alternate}@keyframes mp-slide{0%{transform:translate(-22px)}to{transform:translate(22px)}}.mp-ping{animation:mp-ping 2.6s var(--ease-out) infinite}@keyframes mp-ping{0%{opacity:.9;transform:scale(.32)}to{opacity:0;transform:scale(1.06)}}.mp-grow{animation:mp-grow 2.8s var(--ease-smooth) infinite}@keyframes mp-grow{0%,to{transform:scale(.6)}50%{transform:scale(1)}}.mp-bar{animation:mp-bar 2.2s var(--ease-smooth) infinite}@keyframes mp-bar{0%{transform:scaleY(.25)}50%{transform:scaleY(1)}to{transform:scaleY(.25)}}.mp-draw{stroke-dasharray:150;animation:mp-draw 2.8s var(--ease-smooth) infinite alternate}@keyframes mp-draw{0%{stroke-dashoffset:150px}to{stroke-dashoffset:0}}.mp-plane{animation:3.2s linear infinite mp-plane}@keyframes mp-plane{0%{offset-distance:0%}to{offset-distance:100%}}.mp-spin{animation:9s linear infinite mp-spin}@keyframes mp-spin{to{transform:rotate(360deg)}}.mp-twinkle{animation:mp-twinkle 2s var(--ease-smooth) infinite}@keyframes mp-twinkle{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}.mp-fill{fill:var(--dot-dim);animation:mp-fill 2.6s var(--ease-smooth) infinite alternate}@keyframes mp-fill{0%{fill:var(--dot-dim)}to{fill:var(--visa-free)}}.mp-pop{animation:mp-pop 2.4s var(--ease-smooth) infinite}@keyframes mp-pop{0%,to{opacity:.3}50%{opacity:.9}}.app-shell{display:contents}.skeleton{border-radius:var(--r-xs);background:var(--surface-input);vertical-align:middle;animation:skeleton-pulse 1.5s var(--ease-smooth) infinite;display:inline-block}@keyframes skeleton-pulse{0%,to{opacity:.55}50%{opacity:.95}}.err-note{border-radius:var(--r-md);background:color-mix(in srgb, var(--visa-required) 8%, transparent);border:1px solid color-mix(in srgb, var(--visa-required) 26%, transparent);margin:10px 0;padding:11px 12px}.err-note p{color:var(--text);font-size:12.5px;line-height:1.55}.err-retry,.inline-retry{border-radius:var(--r-xs);border:1px solid var(--glass-border);background:var(--surface-input);color:var(--accent);font-family:var(--font-display);cursor:pointer;transition:border-color var(--dur-fast), background-color var(--dur-fast);align-items:center;gap:5px;margin-top:8px;padding:4px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.err-retry:hover,.inline-retry:hover{border-color:color-mix(in srgb, var(--accent) 50%, transparent)}.inline-retry{margin-top:0;padding:2px 7px;font-size:12px}.conn-banner{top:calc(var(--safe-top) + var(--s3));z-index:300;border-radius:var(--r-pill);background:var(--glass-bg-strong);border:1px solid color-mix(in srgb, var(--visa-required) 35%, var(--glass-border));max-width:min(92vw,560px);box-shadow:var(--shadow);color:var(--text-strong);align-items:center;gap:9px;padding:9px 14px;font-size:12.5px;line-height:1.4;display:flex;position:fixed;left:50%;translate:-50%}.conn-banner svg{color:var(--visa-required);flex:none}.conn-retry{border-radius:var(--r-xs);border:1px solid var(--glass-border);background:var(--surface-input);color:var(--accent);font-family:var(--font-display);cursor:pointer;margin-left:4px;padding:3px 9px;font-size:11.5px;font-weight:600}.fatal{z-index:999;padding:var(--s6);background:var(--bg-grad,#05070b);place-items:center;display:grid;position:fixed;inset:0}.fatal-inner{text-align:center;max-width:30rem}.fatal-mark{color:var(--accent);margin-bottom:var(--s4);font-size:34px}.fatal-title{letter-spacing:-.02em;color:var(--text-strong);font-size:22px;font-weight:650}.fatal-body{margin-top:var(--s3);color:var(--muted);font-size:14px;line-height:1.65}.fatal-btn{margin-top:var(--s5);width:auto!important;padding:11px 22px!important}.fatal-details{margin-top:var(--s5);text-align:left}.fatal-details summary{color:var(--muted);cursor:pointer;font-size:12px}.fatal-details pre{margin-top:var(--s2);padding:var(--s3);border-radius:var(--r-sm);background:var(--surface-input);font-family:var(--font-mono);color:var(--muted);white-space:pre-wrap;word-break:break-word;font-size:11.5px}.cmdk-scrim{z-index:400;padding:max(12vh, var(--s7)) var(--s4) var(--s4);background:#02050a8c;justify-content:center;display:flex;position:fixed;inset:0}.cmdk{border-radius:var(--r-lg);background:var(--glass-bg-strong);border:1px solid var(--glass-border);width:min(560px,100%);height:fit-content;box-shadow:var(--shadow-lg);overflow:hidden}.cmdk-field{align-items:center;gap:var(--s3);padding:var(--s4) var(--s5);border-bottom:1px solid var(--hairline);color:var(--muted);display:flex}.cmdk-input{min-width:0;color:var(--text-strong);font-family:var(--font-display);letter-spacing:-.01em;background:0 0;border:none;outline:none;flex:1;font-size:15px}.cmdk-input::placeholder{color:var(--muted)}.cmdk-kbd{font-family:var(--font-mono);letter-spacing:.04em;border-radius:var(--r-xs);border:1px solid var(--glass-border);color:var(--muted);padding:3px 6px;font-size:10px}.cmdk-list{max-height:46vh;padding:var(--s2);list-style:none;overflow-y:auto}.cmdk-empty{padding:var(--s5);text-align:center;color:var(--muted);font-size:13px;line-height:1.6}.cmdk-empty b{color:var(--text-strong);font-weight:600}.cmdk-row{align-items:center;gap:var(--s3);border-radius:var(--r-sm);width:100%;color:var(--muted);text-align:left;cursor:pointer;transition:background-color var(--dur-instant), color var(--dur-instant);background:0 0;border:none;padding:10px 12px;display:flex}.cmdk-row.active{background:var(--accent-soft);color:var(--accent)}.cmdk-label{color:var(--text-strong);font-size:13.5px;font-weight:550}.cmdk-row.active .cmdk-label{color:var(--accent)}.cmdk-hint{padding-left:var(--s3);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:55%;margin-left:auto;font-size:11.5px;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.gallery-card:hover,.btn-gradient:hover,.discover-btn:active,.zoom-btn:hover,.icon-btn:hover,.dock-mode:hover{transform:none!important}.skeleton{opacity:.7;animation:none!important}}
