@font-face{font-family:NB Akademie;src:url(/assets/fonts/nb_akademie_light-webfont.woff2) format("woff2"),url(/assets/fonts/nb_akademie_light-webfont.woff) format("woff");font-weight:300;font-display:swap}@font-face{font-family:NB Akademie;src:url(/assets/fonts/nb_akademie_medium-webfont.woff2) format("woff2"),url(/assets/fonts/nb_akademie_medium-webfont.woff) format("woff");font-weight:500;font-display:swap}@font-face{font-family:GT Sectra Fine;src:url(/assets/fonts/GT-Sectra-Fine-Book.woff2) format("woff2"),url(/assets/fonts/GT-Sectra-Fine-Book.woff) format("woff");font-weight:400;font-display:swap}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden;background:#050712;color:#f7ecd2;font-family:NB Akademie,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}button,a{font:inherit}body.is-pointing-skill{cursor:pointer}.app-shell{position:relative;width:100%;height:100%;overflow:hidden;background:radial-gradient(circle at 52% 52%,rgba(242,207,132,.08),transparent 25%),radial-gradient(circle at 24% 34%,rgba(75,237,162,.055),transparent 31%),radial-gradient(circle at 73% 32%,rgba(255,93,168,.052),transparent 29%),#050712}.app-shell:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:radial-gradient(circle at center,transparent 0%,transparent 48%,rgba(0,0,0,.54) 100%),linear-gradient(180deg,#05071214,#0507126b)}.galaxy-canvas{position:fixed!important;top:0;right:0;bottom:0;left:0;z-index:1;width:100%!important;height:100%!important;touch-action:none}.top-nav,.hud,.detail-panel,.gesture-hint{transition:opacity .26s ease,transform .26s ease}.top-nav{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:20px 32px;pointer-events:none}.top-nav a{color:#f8ecd29e;text-decoration:none;pointer-events:auto;letter-spacing:.05em}.brand{color:#ffefcde6!important;font-family:GT Sectra Fine,serif;font-size:18px}.nav-links{display:flex;gap:28px;font-size:14px}.hud{position:fixed;top:70px;left:32px;right:32px;z-index:9;display:flex;justify-content:space-between;align-items:flex-start;gap:18px;pointer-events:none}.hud-copy{display:flex;align-items:baseline;gap:14px;max-width:none;min-width:260px}.eyebrow{order:2;margin:0;color:#b5bed8b8;font-size:12px;font-weight:500;letter-spacing:.28em;text-transform:none}.hud h1{margin:0;color:#ffda84fa;font-family:GT Sectra Fine,serif;font-size:30px;font-weight:400;line-height:1;text-shadow:0 0 22px rgba(242,207,132,.24)}.hud-copy p:last-child{display:none}.hud-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:flex-start;gap:7px;max-width:min(860px,64vw);pointer-events:auto}.chip-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.chip{min-height:32px;border:1px solid rgba(186,197,226,.19);border-radius:9px;padding:0 15px;color:#cad1e8bd;background:#070a147a;box-shadow:inset 0 1px #ffffff09,0 10px 26px #0000002e;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);cursor:pointer;font-size:13px;letter-spacing:.04em}.chip.is-active,.chip[aria-pressed=true],.chip:hover{border-color:#ffd77e80;color:#ffe49cfa;background:#f2b95429}.utility{color:#9cc8ffcc}.atlas-stats{min-height:32px;margin:0 0 0 8px;display:inline-flex;align-items:center;color:#b5bed8bd;font-size:13px;letter-spacing:.04em;white-space:nowrap}.skill-beacon{position:relative;width:calc(14px * var(--beacon-scale));height:calc(14px * var(--beacon-scale));opacity:.68;pointer-events:none;transform:translate(-50%,-50%);filter:drop-shadow(0 0 9px color-mix(in srgb,var(--skill-color) 64%,transparent));transition:opacity .16s ease,transform .16s ease,filter .16s ease}.skill-beacon:before,.skill-beacon:after{content:"";position:absolute;left:50%;top:50%;width:100%;height:1px;border-radius:999px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--skill-color) 62%,white),transparent);transform:translate(-50%,-50%)}.skill-beacon:after{width:1px;height:100%;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--skill-color) 62%,white),transparent)}.skill-beacon:before{box-shadow:0 0 10px color-mix(in srgb,var(--skill-color) 68%,transparent)}.skill-beacon.is-active,.skill-beacon.is-hovered{opacity:1;transform:translate(-50%,-50%) scale(1.52);filter:drop-shadow(0 0 14px color-mix(in srgb,var(--skill-color) 78%,transparent))}.skill-beacon.is-filtered{opacity:.16}.skill-label{display:grid;place-items:center;min-width:0;border:0;padding:0;color:color-mix(in srgb,var(--skill-color) 72%,rgba(255,238,190,.72));background:transparent;box-shadow:none;cursor:pointer;text-shadow:0 0 5px rgba(0,0,0,.96),0 0 9px color-mix(in srgb,var(--skill-color) 42%,transparent);white-space:nowrap;opacity:.62;transition:opacity .18s ease,color .18s ease,transform .18s ease}.skill-label span{display:block;font-size:11px;font-weight:500;letter-spacing:.02em}.skill-label.is-active{color:#ffd46f;opacity:1;transform:translateY(-9px) scale(1.42);text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 8px rgba(255,207,112,.92),0 0 18px color-mix(in srgb,var(--skill-color) 54%,transparent)}.skill-label:hover,.skill-label:focus-visible{color:#ffe2a0;opacity:1;outline:0;transform:translateY(-6px) scale(1.22);text-shadow:0 1px 2px rgba(0,0,0,.94),0 0 8px rgba(255,210,126,.82),0 0 15px color-mix(in srgb,var(--skill-color) 46%,transparent)}.skill-label.is-filtered{opacity:.1}.group-ribbon{display:grid;gap:4px;min-width:158px;color:#ffefcc8c;pointer-events:none;text-shadow:0 0 18px rgba(0,0,0,.82);transition:opacity .18s ease}.group-ribbon strong{color:color-mix(in srgb,var(--group-color) 80%,#fff6d8);font-size:13px;font-weight:500;letter-spacing:.16em}.group-ribbon span{color:#e8ddc85c;font-size:11px;letter-spacing:.05em}.group-ribbon.is-filtered{opacity:.1}.detail-panel{position:fixed;right:36px;bottom:36px;z-index:10;width:min(390px,calc(100vw - 72px));border:1px solid rgba(242,207,132,.18);border-radius:12px;padding:20px 22px 22px;background:linear-gradient(180deg,#080c18ad,#070a1475);box-shadow:0 26px 90px #0000005c,inset 0 1px #ffffff0a;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.detail-panel.is-idle{opacity:0;transform:translateY(12px);pointer-events:none}.detail-group{margin:0 0 8px;color:#82ddc9c7;font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.detail-panel h2{margin:0;color:#fff3d6fa;font-family:GT Sectra Fine,serif;font-size:31px;font-weight:400;line-height:1.05}.detail-quote{margin:13px 0 0;color:#ffe5a5e6;font-size:15px;line-height:1.75}.detail-body{margin:11px 0 0;color:#eee4cfcc;font-size:14px;line-height:1.85;letter-spacing:.02em}.tag-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.tag-list span{border:1px solid rgba(255,238,190,.16);border-radius:999px;padding:5px 9px;color:#fff2d69e;background:#ffffff09;font-size:12px}.gesture-hint{position:fixed;left:36px;bottom:34px;z-index:10;margin:0;color:#f7ecd15c;font-size:12px;letter-spacing:.08em;pointer-events:none}.is-ui-hidden .top-nav,.is-ui-hidden .hud,.is-ui-hidden .gesture-hint,.is-ui-hidden .detail-panel.is-idle{opacity:0;transform:translateY(-8px);pointer-events:none}@media(max-width:860px){.top-nav{padding:18px}.nav-links{display:none}.hud{top:62px;left:16px;right:16px;display:block}.hud-copy{max-width:100%;min-width:0}.hud h1{font-size:28px}.hud-copy p:last-child{display:none}.hud-actions{justify-content:flex-start;gap:7px;margin-top:12px}.chip-row{justify-content:flex-start;gap:7px}.chip{min-height:31px;padding:0 11px;font-size:12px}.atlas-stats{min-height:28px;margin-left:0;font-size:12px}.skill-label span{font-size:13px}.group-ribbon span{display:none}.detail-panel{left:12px;right:12px;bottom:12px;width:auto;max-height:42vh;overflow:auto;padding:18px}.detail-panel.is-idle{opacity:0;transform:translateY(18px);pointer-events:none}.detail-panel h2{font-size:25px}.detail-body,.detail-quote{font-size:13px;line-height:1.72}.gesture-hint{left:16px;bottom:16px;font-size:11px}}
