:root{--ink:#07100c;--ink-2:#0b1711;--paper:#f1ecdf;--paper-dim:#f1ecdfa8;--paper-faint:#f1ecdf61;--lime:#d8ff5f;--lime-dim:#d8ff5f29;--orange:#ff8a4c;--line:#f1ecdf24;--line-strong:#f1ecdf42;--panel:#060f0ab8;--panel-solid:#08120df2;--sans:"Inter", "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--display:"Arial Black", "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif;--mono:"SFMono-Regular", "Cascadia Code", "Roboto Mono", Consolas, "Liberation Mono", monospace;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html,body{background:var(--ink);min-height:100%;color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior:none;margin:0;overflow:hidden}body{cursor:default}button,input,select{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}kbd{border:1px solid var(--line-strong);min-width:20px;height:20px;color:var(--paper);font-family:var(--mono);letter-spacing:.04em;background:#ffffff0d;border-bottom-width:2px;border-radius:5px;justify-content:center;align-items:center;padding:0 6px;font-size:10px;line-height:1;display:inline-flex}#scene{touch-action:none;outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}#ui{z-index:10;pointer-events:none;position:fixed;inset:0}.vignette{z-index:1;pointer-events:none;background:radial-gradient(at 50% 48%,#0000 42%,#03080629 72%,#03080685 100%);position:absolute;inset:0}.hud{z-index:20;opacity:1;pointer-events:none;transition:opacity .5s var(--ease);position:absolute;inset:0}.hud.is-hidden{opacity:0;pointer-events:none}.hud.is-hidden .hud-top,.hud.is-hidden .hud-bottom,.hud.is-hidden .pause{pointer-events:none}.hud-top{pointer-events:auto;justify-content:space-between;align-items:flex-start;gap:18px;padding:clamp(14px,2.2vw,24px);display:flex;position:absolute;top:0;left:0;right:0}.hud-brand{color:#f1ecdfd1;height:34px;font-family:var(--mono);letter-spacing:.18em;align-items:center;gap:10px;font-size:11px;display:inline-flex}.hud-logo{background:#d8ff5f14;border:1px solid #d8ff5fb3;width:20px;height:20px;position:relative;box-shadow:inset -6px -6px #d8ff5f1f}.hud-logo:after{content:"";background:var(--lime);opacity:.8;position:absolute;inset:5px}.hud-status{align-items:center;gap:8px;display:flex}.chip{border:1px solid var(--line);background:var(--panel);height:34px;color:var(--paper-dim);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;-webkit-backdrop-filter:blur(14px);border-radius:999px;align-items:center;gap:8px;padding:0 13px;font-size:11px;display:inline-flex}.chip-button{transition:border-color .2s,color .2s}.chip-button:hover{border-color:var(--line-strong);color:var(--paper)}.profile-chip{color:var(--lime);background:#d8ff5f14;border-color:#d8ff5f57;gap:7px}.profile-chip>span:first-child{letter-spacing:.02em;border:1px solid #d8ff5f5c;border-radius:3px;place-items:center;min-width:21px;height:17px;font-size:10px;display:inline-grid}.profile-chip:hover{color:var(--paper);background:#d8ff5f24;border-color:#d8ff5fa6}.chip .dot{background:var(--paper-faint);border-radius:50%;width:5px;height:5px}.chip .dot.live{background:var(--lime);box-shadow:0 0 10px #d8ff5fb3}.clock{letter-spacing:.04em;gap:10px;font-size:11px}.clock #clock{color:var(--paper);font-variant-numeric:tabular-nums}.clock #day-phase{color:var(--paper-faint);letter-spacing:.12em;font-size:10px}.icon-button{border:1px solid var(--line);background:var(--panel);width:34px;height:34px;color:var(--paper-dim);font-family:var(--mono);-webkit-backdrop-filter:blur(14px);border-radius:50%;place-items:center;padding:0;font-size:13px;line-height:1;transition:color .2s,border-color .2s,background .2s;display:grid}.icon-button:hover{border-color:var(--line-strong);color:var(--paper)}.crosshair{border:1px solid #f1ecdf5c;border-radius:50%;width:18px;height:18px;transition:border-color .2s,transform .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.crosshair span{background:var(--lime);border-radius:50%;width:3px;height:3px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.crosshair.is-active{border-color:var(--lime);transform:translate(-50%,-50%)scale(1.25)}.prompt{color:var(--paper);letter-spacing:.02em;-webkit-backdrop-filter:blur(14px);background:#060f0ad1;border:1px solid #d8ff5f38;border-radius:999px;align-items:center;gap:10px;padding:9px 16px 9px 10px;font-size:12px;transition:opacity .18s,transform .18s;display:flex;position:absolute;bottom:clamp(96px,14vh,140px);left:50%;transform:translate(-50%)}.prompt kbd{color:var(--lime);border-color:#d8ff5f66}.prompt.is-hidden{opacity:0;transform:translate(-50%,8px)}.toast{border:1px solid var(--line);border-left:2px solid var(--lime);max-width:min(420px,100vw - 40px);color:var(--paper);font-family:var(--mono);letter-spacing:.03em;opacity:0;pointer-events:none;transition:opacity .25s, transform .25s var(--ease);-webkit-backdrop-filter:blur(14px);background:#060f0ae6;border-radius:4px;padding:10px 16px;font-size:11px;line-height:1.6;position:absolute;top:clamp(70px,10vh,96px);left:50%;transform:translate(-50%,-8px)}.toast.is-on{opacity:1;transform:translate(-50%)}.hud-bottom{pointer-events:auto;justify-content:space-between;align-items:flex-end;gap:18px;padding:clamp(14px,2.2vw,24px);display:flex;position:absolute;bottom:0;left:0;right:0}.hud-hint{color:var(--paper-faint);font-family:var(--mono);letter-spacing:.06em;flex-wrap:wrap;gap:8px 14px;font-size:11px;display:flex}.hud-hint span{align-items:center;gap:6px;display:inline-flex}.hud-hint kbd{min-width:18px;height:18px;padding:0 5px;font-size:10px}.hud-badges{align-items:center;gap:8px;display:flex}.hud-badges .chip{height:28px;padding:0 10px;font-size:10px}.pause{pointer-events:auto;border:1px solid var(--line);color:var(--paper);text-align:center;-webkit-backdrop-filter:blur(16px);background:#060f0ae6;border-radius:10px;flex-direction:column;gap:6px;padding:18px 24px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pause b{font-size:13px;font-weight:600}.pause span{color:var(--paper-faint);font-family:var(--mono);letter-spacing:.04em;font-size:11px}.is-hidden{pointer-events:none}.pause.is-hidden{display:none}.compass-chip{gap:8px;padding-left:8px}.compass-rose{background:#d8ff5f0f;border:1px solid #d8ff5f52;border-radius:50%;place-items:center;width:20px;height:20px;transition:transform .18s linear;display:grid}.compass-rose i{border-right:3px solid #0000;border-bottom:7px solid var(--lime);border-left:3px solid #0000;width:0;height:0;margin-top:-3px}.compass-text{flex-direction:column;gap:1px;line-height:1;display:flex}.compass-text b{color:var(--paper);letter-spacing:.1em;font-size:11px}.compass-text small{color:var(--paper-faint);letter-spacing:.08em;font-size:9px}.touch{z-index:30;pointer-events:none;display:none;position:absolute;inset:0}.touch.is-active{display:block}.stick{left:max(22px, env(safe-area-inset-left));bottom:max(28px, calc(env(safe-area-inset-bottom) + 16px));-webkit-backdrop-filter:blur(8px);pointer-events:auto;touch-action:none;background:#060f0a47;border:1px solid #f1ecdf33;border-radius:50%;width:112px;height:112px;position:absolute}.stick:before,.stick:after{content:"";background:#f1ecdf1f;position:absolute}.stick:before{height:1px;top:50%;left:18px;right:18px}.stick:after{width:1px;top:18px;bottom:18px;left:50%}.stick-knob,#stick-knob{background:#d8ff5fd9;border-radius:50%;width:46px;height:46px;transition:transform 80ms linear;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 24px #d8ff5f47}.touch-actions{right:max(20px, env(safe-area-inset-right));bottom:max(26px, calc(env(safe-area-inset-bottom) + 14px));pointer-events:auto;align-items:flex-end;gap:10px;display:flex;position:absolute}.touch-button{width:62px;height:62px;color:var(--paper);font-family:var(--mono);-webkit-backdrop-filter:blur(10px);touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#060f0a80;border:1px solid #f1ecdf40;border-radius:50%;place-items:center;font-size:18px;display:grid}.touch-button:active,.touch-button.is-down{background:var(--lime);color:#101a08}.touch-interact{width:54px;height:54px;color:var(--lime);border-color:#d8ff5f73;font-size:13px}.touch-small{letter-spacing:.06em;width:44px;height:44px;font-size:9px}.scope{z-index:60;pointer-events:none;animation:scope-in .26s var(--ease) both;position:fixed;inset:0}@keyframes scope-in{0%{opacity:0}to{opacity:1}}.scope-mask{background:radial-gradient(circle at 50% 50%, transparent 0, transparent 30vmin, #030805b8 46vmin, #030805f5 62vmin, var(--ink) 74vmin);position:absolute;inset:0}.scope-mask:after{content:"";border:1px solid #d8ff5f47;border-radius:50%;width:60vmin;height:60vmin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 40px #d8ff5f14}.scope-reticle{width:34px;height:34px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.scope-reticle span{background:#d8ff5f9e;position:absolute}.scope-reticle span:first-child{width:1px;height:100%;top:0;left:50%;transform:translate(-50%)}.scope-reticle span:last-child{width:100%;height:1px;top:50%;left:0;transform:translateY(-50%)}.scope-hud{border:1px solid #d8ff5f38;border-left:2px solid var(--lime);-webkit-backdrop-filter:blur(10px);background:#060f0ad1;border-radius:10px;width:min(340px,34vw);padding:18px 20px 20px;position:absolute;bottom:max(20px,5vh);left:max(20px,4vw);box-shadow:0 18px 40px -24px #000000e6}.scope-kicker{font-family:var(--mono);letter-spacing:.16em;color:#d8ff5fb8;margin:0 0 10px;font-size:10px}.scope-index{font-family:var(--mono);letter-spacing:.1em;color:#d8ff5fdb;margin:0 0 6px;font-size:11px}.scope-title{font-family:var(--display);letter-spacing:-.01em;color:var(--paper);text-wrap:balance;margin:0 0 10px;font-size:19px;line-height:1.3}.scope-body{color:var(--paper-dim);margin:0 0 12px;font-size:13px;line-height:1.68}.scope-tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.scope-tags li{border:1px solid var(--line-strong);font-family:var(--mono);letter-spacing:.04em;color:var(--paper-dim);border-radius:4px;padding:3px 8px;font-size:10px}.scope-prompt{color:var(--paper-dim);margin:0 0 10px;font-size:13px;line-height:1.6}.scope-index-list ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.scope-index-list li{color:var(--paper-dim);align-items:baseline;gap:10px;font-size:12px;display:flex}.scope-index-list li span:first-child{font-family:var(--mono);letter-spacing:.1em;color:#d8ff5fcc;font-size:10px}.scope-index-list li.is-open{color:#ffffff57}.scope-index-list li.is-open span:first-child{color:#ffffff4d}.scope-index-list li.is-linked{color:#ffffffeb}.scope-index-list li.is-linked span:first-child{color:#d8ff5fe6}.scope-count{font-family:var(--mono);letter-spacing:.08em;color:var(--paper-dim);margin:0 0 10px;font-size:11px}.scope-count span{color:#d8ff5fe6}.scope-exit{font-family:var(--mono);letter-spacing:.06em;color:var(--paper-faint);align-items:center;gap:8px;font-size:11px;display:flex;position:absolute;bottom:max(20px,5vh);right:max(20px,4vw)}@media (max-width:720px){.scope-mask{background:radial-gradient(circle at 50% 42%, transparent 0, transparent 26vmin, #030805bd 40vmin, var(--ink) 58vmin)}.scope-mask:after{width:52vmin;height:52vmin}.scope-hud{width:auto;padding:14px 16px 16px;bottom:12px;left:12px;right:12px}.scope-title{font-size:17px}.scope-exit{display:none}}.start{z-index:50;pointer-events:auto;transition:opacity .65s var(--ease), visibility .65s;background:radial-gradient(at 78% 42%,#d8ff5f0f,#0000 30%),linear-gradient(90deg,#040a07f7 0%,#040a07e6 32%,#040a0794 58%,#040a071f 84%,#040a0705 100%);grid-template-rows:auto 1fr auto;gap:24px;padding:clamp(20px,3.4vw,48px);display:grid;position:absolute;inset:0;overflow:hidden}.start.is-leaving{opacity:0;visibility:hidden;pointer-events:none}.start-grid{opacity:.22;background-image:linear-gradient(to right, var(--line) 1px, transparent 1px), linear-gradient(to bottom, var(--line) 1px, transparent 1px);pointer-events:none;background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 68%);mask-image:linear-gradient(90deg,#000,#0000 68%)}.start:after{content:"";opacity:.045;pointer-events:none;mix-blend-mode:overlay;background-image:repeating-linear-gradient(0deg,#0000 0 2px,#ffffffb3 2px 3px);position:absolute;inset:0}.start-top,.start-bottom{z-index:2;color:var(--paper-faint);font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;font-size:11px;display:flex;position:relative}.start-top b{color:var(--paper);font-weight:500}.start-top-right{align-items:center;gap:10px;display:inline-flex}.start-top-right i{background:var(--lime);width:5px;height:5px;box-shadow:0 0 12px var(--lime);border-radius:50%}.start-body{z-index:2;align-self:center;width:min(760px,62vw);padding-bottom:2vh;position:relative}.start-body>*{opacity:0;animation:rise 1s var(--ease) forwards}.start-body>:first-child{animation-delay:80ms}.start-body>:nth-child(2){animation-delay:.16s}.start-body>:nth-child(3){animation-delay:.26s}.start-body>:nth-child(4){animation-delay:.34s}.start-body>:nth-child(5){animation-delay:.42s}.start-body>:nth-child(6){animation-delay:.5s}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}.eyebrow{color:var(--lime);font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:12px;margin:0 0 clamp(16px,2.4vh,30px);font-size:10px;display:flex}.eyebrow:before{content:"";background:var(--lime);width:26px;height:1px}.start-title{color:var(--paper);font-family:var(--display);letter-spacing:-.075em;text-transform:uppercase;margin:0;font-size:clamp(58px,11.2vw,172px);font-weight:900;line-height:.78}.start-title span{display:block}.start-title .outline{color:#0000;-webkit-text-stroke:1.5px var(--paper);text-stroke:1.5px var(--paper);transform:translate(clamp(10px,3vw,54px))}.start-lede{max-width:520px;color:var(--paper-dim);letter-spacing:.01em;margin:clamp(22px,3.2vh,38px) 0 0;font-size:clamp(14px,1.22vw,17px);line-height:1.9}.start-lede-small{color:var(--paper-faint);margin-top:10px;font-size:clamp(12px,1vw,14px)}.start-lede kbd{min-width:18px;height:18px;color:var(--lime);border-color:#d8ff5f57;padding:0 5px;font-size:9px}.start-actions{flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:clamp(26px,4vh,44px);display:flex}.btn-primary{background:var(--lime);color:#101a08;min-height:58px;font-family:var(--sans);letter-spacing:.01em;transition:transform .3s var(--ease), box-shadow .3s var(--ease), opacity .3s;border:0;border-radius:999px;align-items:center;gap:18px;padding:8px 10px 8px 24px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 0 #d8ff5f47}.btn-primary:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 14px 40px -12px #d8ff5f8c}.btn-primary:disabled{cursor:progress;opacity:.6}.btn-arrow{width:40px;height:40px;color:var(--lime);transition:transform .3s var(--ease);background:#101a08;border-radius:50%;place-items:center;font-size:17px;display:grid}.btn-primary:not(:disabled):hover .btn-arrow{transform:translate(3px)}.btn-link{border-bottom:1px solid var(--line-strong);color:var(--paper-dim);font-family:var(--mono);letter-spacing:.08em;align-items:center;gap:8px;padding-bottom:3px;font-size:11px;transition:color .2s,border-color .2s;display:inline-flex}button.btn-link{text-align:left;background:0 0;border-top:0;border-left:0;border-right:0;padding-top:0;padding-left:0;padding-right:0}.btn-link:hover{color:var(--lime);border-color:var(--lime)}.start-meta{border-top:1px solid var(--line);flex-wrap:wrap;gap:0;margin:clamp(30px,5vh,54px) 0 0;padding:16px 0 0;list-style:none;display:flex}.start-meta li{color:var(--paper-dim);font-family:var(--mono);letter-spacing:.06em;align-items:baseline;gap:9px;padding-right:clamp(18px,3vw,40px);font-size:10px;display:flex}.start-meta li+li{border-left:1px solid var(--line);padding-left:clamp(18px,3vw,40px)}.start-meta b{color:var(--lime);font-weight:500}.start-bottom{align-items:flex-end}.sheet{z-index:70;border:1px solid var(--line);background:var(--panel-solid);opacity:1;width:min(380px,100vw - 24px);transition:opacity .25s var(--ease), transform .25s var(--ease);-webkit-backdrop-filter:blur(22px);pointer-events:auto;border-radius:16px;padding:22px;position:absolute;top:clamp(62px,9vh,78px);bottom:clamp(12px,2vh,24px);right:clamp(12px,2vw,24px);overflow:auto;transform:none;box-shadow:0 30px 80px -30px #000c}.sheet.is-hidden{opacity:0;pointer-events:none;transform:translate(24px)}.sheet-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.sheet-kicker{color:var(--lime);font-family:var(--mono);letter-spacing:.18em;font-size:8px}.sheet-head h2{letter-spacing:-.03em;margin:4px 0 0;font-size:24px;font-weight:600}.sheet-body{flex-direction:column;gap:20px;display:flex}.field{color:var(--paper-dim);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;flex-direction:column;gap:9px;font-size:11px;display:flex}.field>span{justify-content:space-between;align-items:center;gap:10px;display:flex}.field output{color:var(--paper);letter-spacing:.02em}.field-row{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}input[type=range]{width:100%;height:22px;accent-color:var(--lime);cursor:pointer;margin:0}select{border:1px solid var(--line);min-width:128px;color:var(--paper);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--mono);background:#ffffff0a;border-radius:6px;outline:none;padding:8px 10px;font-size:10px}select option{background:var(--panel-solid);color:var(--paper)}select:focus{border-color:#d8ff5f80}.weather-buttons{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.play-buttons{grid-template-columns:repeat(2,1fr)}.mini-button.is-active{color:var(--lime);border-color:#d8ff5f73}.weather-buttons button{border:1px solid var(--line);height:34px;color:var(--paper-dim);font-family:var(--mono);background:0 0;border-radius:6px;font-size:10px;transition:background .2s,color .2s,border-color .2s}.weather-buttons button:hover{border-color:var(--line-strong);color:var(--paper)}.weather-buttons button.is-active{border-color:var(--lime);background:var(--lime);color:#101a08}.mini-button{border:1px solid var(--line);color:var(--paper-dim);font-family:var(--mono);letter-spacing:.08em;background:#ffffff0a;border-radius:6px;padding:8px 12px;font-size:11px;transition:color .2s,border-color .2s}.mini-button:hover{border-color:var(--line-strong);color:var(--paper)}.mini-button.danger{color:#ff8a4ce6;border-color:#ff8a4c47;align-self:flex-start}.mini-button.danger:hover{border-color:#ff8a4c99}.sheet-divider{background:var(--line);height:1px}.sheet-note{color:var(--paper-faint);margin:0;font-size:10px;line-height:1.8}.map-panel{z-index:75;-webkit-backdrop-filter:blur(12px);pointer-events:auto;background:#040a07d6;place-items:center;padding:clamp(10px,3vw,34px);display:grid;position:fixed;inset:0}.map-shell{border:1px solid var(--line);background:var(--panel-solid);border-radius:18px;flex-direction:column;width:min(1120px,100%);max-height:100%;display:flex;overflow:hidden;box-shadow:0 40px 120px -40px #000000e6}.map-topbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px clamp(16px,2.4vw,26px);display:flex}.map-topbar-title{align-items:center;gap:10px;display:flex}.map-topbar h2{font-family:var(--mono);letter-spacing:.16em;margin:0;font-size:12px;font-weight:600}.map-live-dot{background:var(--lime);border-radius:50%;width:6px;height:6px;box-shadow:0 0 10px #d8ff5fb3}.map-progress{color:var(--paper-dim);font-family:var(--mono);letter-spacing:.08em;align-items:center;gap:14px;font-size:11px;display:flex}.map-progress b{color:var(--lime);font-weight:600}.map-close{border:1px solid var(--line);height:32px;color:var(--paper-dim);font-family:var(--mono);letter-spacing:.08em;background:0 0;border-radius:6px;align-items:center;gap:8px;padding:0 12px;font-size:11px;transition:color .2s,border-color .2s;display:inline-flex}.map-close:hover{border-color:var(--line-strong);color:var(--paper)}.map-body{grid-template-columns:minmax(0,1fr) 292px;gap:clamp(14px,2.4vw,28px);padding:clamp(14px,2.4vw,26px);display:grid;overflow:auto}.map-canvas{aspect-ratio:1;border:1px solid var(--line);background:radial-gradient(circle at 50% 30%,#d8ff5f0d,#0000 60%),linear-gradient(160deg,#0b1d18,#0a1512 60%,#0d1d17);border-radius:12px;min-width:0;position:relative;overflow:hidden}.map-grid{background-image:linear-gradient(90deg,#f1ecdf0d 1px,#0000 1px),linear-gradient(#f1ecdf0d 1px,#0000 1px);background-size:10% 10%;position:absolute;inset:0}.map-zone{border:1px solid var(--zone-color);background:color-mix(in srgb, var(--zone-color) 12%, transparent);border-radius:4px;transition:background .2s;position:absolute}.map-zone.is-overlay{background:0 0;border-style:dashed}.map-zone.is-stamped{background:color-mix(in srgb, var(--zone-color) 26%, transparent)}.map-zone-index{color:var(--zone-color);font-family:var(--mono);letter-spacing:.08em;opacity:.8;font-size:9px;position:absolute;top:4px;left:6px}.map-zone-label{color:var(--zone-color);white-space:nowrap;background:#07100ca8;border-radius:3px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;line-height:1.3;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-zone-label i{color:var(--lime);font-size:10px;font-style:normal}.map-player{color:var(--paper);font-family:var(--mono);letter-spacing:.1em;pointer-events:none;align-items:center;gap:4px;font-size:8px;display:flex;position:absolute;transform:translate(-50%,-50%)}.map-player i{border:1px solid var(--ink);background:var(--lime);border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #d8ff5f38,0 0 14px #d8ff5fcc}.map-player b{font-weight:600}.map-north{color:#f1ecdf80;font-family:var(--mono);letter-spacing:.14em;font-size:10px;position:absolute;top:10px;right:12px}.map-legend{flex-direction:column;gap:12px;min-width:0;display:flex}.map-legend-kicker{color:var(--lime);font-family:var(--mono);letter-spacing:.18em;margin:0;font-size:9px}.map-legend ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.map-legend li{color:var(--paper-faint);border-radius:6px;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:6px 8px;transition:background .2s,color .2s;display:grid}.map-legend li.is-stamped{color:var(--paper);background:#f1ecdf0a}.map-legend-index{font-family:var(--mono);font-size:10px}.map-legend-name{flex-direction:column;min-width:0;font-size:12px;display:flex}.map-legend-name small{color:var(--paper-faint);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.map-legend-stamp{color:var(--paper-faint);font-family:var(--mono);text-align:center;font-size:12px}.map-legend li.is-stamped .map-legend-stamp{color:var(--lime)}.map-legend-note{color:var(--paper-faint);margin:0;font-size:10px;line-height:1.7}.map-legend-note b{color:var(--paper);font-weight:600}.reading-panel{z-index:74;pointer-events:auto;background:linear-gradient(#0000,#040a072e 48%,#040a07d1);align-items:flex-end;padding:clamp(14px,3vw,34px);display:flex;position:fixed;inset:0}.reading-card{border:1px solid var(--line);border-left:2px solid var(--lime);background:var(--panel-solid);border-radius:12px;width:min(560px,100%);padding:clamp(18px,2.6vw,28px);box-shadow:0 40px 100px -40px #000000e6}.reading-topbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.reading-kicker{color:var(--lime);font-family:var(--mono);letter-spacing:.18em;font-size:9px}.reading-close{border:1px solid var(--line);height:28px;color:var(--paper-dim);font-family:var(--mono);letter-spacing:.06em;background:0 0;border-radius:5px;align-items:center;gap:7px;padding:0 10px;font-size:10px;display:inline-flex}.reading-close:hover{border-color:var(--line-strong);color:var(--paper)}.reading-close kbd{height:16px;font-size:9px}.reading-label{color:var(--paper-faint);font-family:var(--mono);letter-spacing:.1em;margin:0 0 6px;font-size:10px}.reading-card h2{letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(22px,3vw,30px);font-weight:600;line-height:1.2}.reading-body{color:var(--paper-dim);margin:0 0 16px;font-size:13px;line-height:1.85}.reading-tags{flex-wrap:wrap;gap:6px;margin:0 0 20px;padding:0;list-style:none;display:flex}.reading-tags li{border:1px solid var(--line);color:var(--paper-dim);font-family:var(--mono);letter-spacing:.04em;border-radius:999px;padding:4px 9px;font-size:10px}.reading-foot{border-top:1px solid var(--line);color:var(--paper-faint);font-family:var(--mono);letter-spacing:.12em;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;font-size:9px;display:flex}.reading-foot button{color:var(--lime);font-family:var(--mono);letter-spacing:.08em;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:10px;display:inline-flex}.photo-ui{z-index:66;pointer-events:none;position:fixed;inset:0}.photo-frame span{border:2px solid #f1ecdfb8;width:clamp(28px,5vw,54px);height:clamp(28px,5vw,54px);position:absolute}.photo-frame span:first-child{border-bottom:0;border-right:0;top:clamp(18px,4vh,40px);left:clamp(18px,4vw,40px)}.photo-frame span:nth-child(2){border-bottom:0;border-left:0;top:clamp(18px,4vh,40px);right:clamp(18px,4vw,40px)}.photo-frame span:nth-child(3){border-top:0;border-right:0;bottom:clamp(18px,4vh,40px);left:clamp(18px,4vw,40px)}.photo-frame span:nth-child(4){border-top:0;border-left:0;bottom:clamp(18px,4vh,40px);right:clamp(18px,4vw,40px)}.photo-hud{text-align:center;position:absolute;top:clamp(22px,4.4vh,46px);left:50%;transform:translate(-50%)}.photo-kicker{color:var(--lime);font-family:var(--mono);letter-spacing:.2em;margin:0 0 4px;font-size:10px}.photo-meta{color:var(--paper-dim);font-family:var(--mono);letter-spacing:.1em;margin:0;font-size:10px}.photo-actions{pointer-events:auto;align-items:center;gap:14px;display:flex;position:absolute;bottom:clamp(26px,4.4vh,46px);left:50%;transform:translate(-50%)}.photo-shutter{height:44px;color:var(--paper);font-family:var(--mono);letter-spacing:.08em;-webkit-backdrop-filter:blur(14px);background:#060f0ad1;border:1px solid #d8ff5f66;border-radius:999px;align-items:center;gap:9px;padding:0 20px 0 10px;font-size:11px;display:inline-flex}.photo-shutter>span{border:2px solid var(--lime);background:var(--lime);border-radius:50%;width:26px;height:26px;box-shadow:inset 0 0 0 3px #060f0ae6}.photo-shutter:hover{border-color:var(--lime)}.photo-exit{border:1px solid var(--line);height:36px;color:var(--paper-dim);font-family:var(--mono);letter-spacing:.08em;background:#060f0ab8;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:11px;display:inline-flex}.photo-exit:hover{border-color:var(--line-strong);color:var(--paper)}.piano-ui{z-index:64;pointer-events:none;flex-direction:column;align-items:center;gap:9px;display:flex;position:fixed;bottom:clamp(92px,13vh,124px);left:50%;transform:translate(-50%)}.piano-head{text-align:center}.piano-kicker{color:var(--lime);font-family:var(--mono);letter-spacing:.2em;margin:0 0 3px;font-size:10px}.piano-hint{color:var(--paper-dim);font-family:var(--mono);letter-spacing:.08em;margin:0;font-size:10px}.piano-keys{border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);pointer-events:auto;background:#060f0ac7;border-radius:8px;gap:4px;padding:8px 10px 6px;display:flex}.piano-key{color:#1a201e;width:clamp(42px,5.4vw,58px);height:62px;font-family:var(--mono);transform-origin:top;transition:transform .12s var(--ease), background .12s, box-shadow .12s;background:linear-gradient(#f1ecdf,#d7d1c2);border:1px solid #f1ecdf3d;border-radius:0 0 6px 6px;flex-direction:column;justify-content:space-between;align-items:center;padding:8px 0 6px;display:flex}.piano-key:hover{background:linear-gradient(#fbf7ea,#e3ddcd)}.piano-key.is-active{background:linear-gradient(#e9ffb0,#c8e77a);transform:translateY(4px)scaleY(.95);box-shadow:0 0 18px #d8ff5f59}.piano-note{letter-spacing:.06em;font-size:13px;font-weight:700}.piano-key kbd{color:#1a201eb3;background:#1a201e0f;border-color:#1a201e47;min-width:16px;height:16px;padding:0 4px;font-size:9px}.piano-exit{border:1px solid var(--line);height:30px;color:var(--paper-dim);font-family:var(--mono);letter-spacing:.08em;pointer-events:auto;background:#060f0ab8;border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:10px;display:inline-flex}.piano-exit:hover{border-color:var(--line-strong);color:var(--paper)}.piano-exit kbd{min-width:17px;height:17px;padding:0 4px;font-size:9px}.help{z-index:70;border:1px solid var(--line);background:var(--panel-solid);opacity:1;width:min(400px,100vw - 24px);transition:opacity .25s var(--ease), transform .25s var(--ease);-webkit-backdrop-filter:blur(22px);pointer-events:auto;border-radius:16px;flex-direction:column;display:flex;position:absolute;top:clamp(62px,9vh,78px);bottom:clamp(12px,2vh,24px);right:clamp(12px,2vw,24px);transform:none;box-shadow:0 30px 80px -30px #000c}.help.is-hidden{opacity:0;pointer-events:none;transform:translate(24px)}.help-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 22px 16px;display:flex}.help-kicker{color:var(--lime);font-family:var(--mono);letter-spacing:.18em;font-size:8px}.help-head h2{letter-spacing:-.03em;margin:4px 0 0;font-size:24px;font-weight:600}.help-body{overscroll-behavior:contain;flex-direction:column;flex:1;gap:24px;padding:20px 22px;display:flex;overflow-y:auto}.help-group-kicker{color:var(--paper-faint);font-family:var(--mono);letter-spacing:.18em;margin:0 0 4px;font-size:8px}.help-group h3{letter-spacing:-.01em;margin:0 0 12px;font-size:15px;font-weight:600}.help-rows{flex-direction:column;gap:9px;margin:0;display:flex}.help-row{align-items:center;gap:12px;min-height:22px;display:flex}.help-row dt{flex:none;gap:4px;min-width:84px;display:flex}.help-row dd{color:var(--paper-dim);margin:0;font-size:12px;line-height:1.5}.help-note{color:var(--paper-dim);margin:0 0 8px;font-size:12px;line-height:1.75}.help-note-quiet{color:var(--paper-faint);font-family:var(--mono);letter-spacing:.06em;margin:0;font-size:10px}.help-count{color:var(--lime)}.help-count-sep{color:var(--paper-faint);margin:0 6px}.help-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 22px 18px;display:flex}.help-foot-hint{color:var(--paper-faint);font-family:var(--mono);letter-spacing:.06em;align-items:center;gap:5px;font-size:10px;display:flex}@media (max-width:720px){.help{width:auto;max-height:calc(100dvh - 16px);inset:auto 8px 8px}.help-head{padding:16px 16px 12px}.help-head h2{font-size:20px}.help-body{gap:20px;padding:16px}.help-row dt{min-width:72px}.help-foot{padding:12px 16px 14px}}.noscript,.webgl-error{z-index:60;background:var(--ink);color:var(--paper);text-align:center;place-items:center;padding:32px;display:grid;position:fixed;inset:0;overflow-y:auto}.webgl-error-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 28px;margin-top:28px;display:flex}.webgl-error-actions p{margin:0}.webgl-error-actions .btn-primary{min-height:52px}.noscript{z-index:100}@media (max-width:900px){.start{background:linear-gradient(#040a07eb 0%,#040a07c7 55%,#040a0773 100%)}.start-body{align-self:end;width:min(620px,100%);padding-bottom:5vh}.start-title{font-size:clamp(56px,16vw,112px)}.start-grid{background-size:48px 48px;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.hud-hint span:nth-child(n+4){display:none}}@media (max-width:640px){.start{background:linear-gradient(#040a07ed,#040a07f9 55%,#040a07fe);gap:14px;padding:18px;overflow-y:auto}.start-body{padding-bottom:8px}.start-meta{flex-wrap:wrap;gap:8px 0;display:flex}.start-top{font-size:10px}.start-top-right{display:none}.start-title{font-size:clamp(52px,18vw,92px);line-height:.82}.start-title .outline{-webkit-text-stroke-width:1px;transform:translate(8px)}.start-lede{font-size:13px;line-height:1.8}.start-lede br{display:none}.start-lede-small{font-size:11px}.start-actions{gap:14px;margin-top:22px}.btn-primary{min-height:52px;padding-left:20px}.btn-arrow{width:36px;height:36px}.start-meta{margin-top:26px;padding-top:12px}.start-meta li{font-size:11px}.start-meta li:nth-child(3){display:flex}.start-bottom{display:none}.hud-top,.hud-bottom{padding:12px}.hud-brand span:last-child,.profile-chip>span:last-child{display:none}.profile-chip{padding:0 9px}.view-chip>span:last-child{display:none}.view-chip{padding:0 10px}.hud-hint{display:none}.hud-badges{position:absolute;bottom:132px;left:12px}.hud-badges .chip:first-child,.clock #day-phase{display:none}.prompt{font-size:11px;bottom:150px}.pause{padding:14px 18px}.sheet{border-radius:14px;width:auto;max-height:78vh;inset:auto 10px 10px}.map-body{grid-template-columns:minmax(0,1fr)}.map-legend{order:2}.map-topbar{padding:12px 14px}.reading-panel{padding:10px}}@media (hover:none) and (pointer:coarse){.hud-hint{display:none}#scene{cursor:default}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.profile-panel{--profile-bg:#06100b;--profile-panel:#0b1811db;--profile-card:#f1ecdf0b;--profile-card-strong:#f1ecdf13;--profile-line:#f1ecdf21;--profile-line-strong:#d8ff5f57;--profile-lime:#d8ff5f;--profile-orange:#ff8a4c;--profile-text:#f1ecdf;--profile-muted:#f1ecdfab;--profile-faint:#f1ecdf66;z-index:90;color:var(--profile-text);pointer-events:auto;opacity:1;transition:opacity .32s var(--ease), visibility .32s;background:radial-gradient(at 76% 4%,#d8ff5f17,#0000 34%),radial-gradient(at 12% 100%,#ff8a4c0e,#0000 30%),linear-gradient(135deg,#040a07fa,#07110bf5);position:absolute;inset:0;overflow:hidden}.profile-panel:before{content:"";pointer-events:none;opacity:.17;background-image:linear-gradient(90deg,#f1ecdf26 1px,#0000 1px),linear-gradient(#f1ecdf26 1px,#0000 1px);background-size:76px 76px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(115deg,#000,#0000 58%);mask-image:linear-gradient(115deg,#000,#0000 58%)}.profile-panel.is-hidden{display:none}.profile-shell{opacity:1;grid-template-rows:auto minmax(0,1fr);width:min(100%,1500px);height:100%;margin:0 auto;padding:0 clamp(18px,3.4vw,54px);display:grid;position:relative;transform:none}.profile-panel.is-open .profile-shell{animation:profile-enter .45s var(--ease) both}@keyframes profile-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.profile-topbar{z-index:2;border-bottom:1px solid var(--profile-line);justify-content:space-between;align-items:center;gap:18px;min-height:64px;display:flex;position:relative}.profile-topbar-title{min-width:0;color:var(--profile-muted);font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;font-size:10px;display:flex}.profile-topbar-version{color:var(--profile-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-live-dot{background:var(--profile-lime);border-radius:50%;flex:none;width:6px;height:6px;box-shadow:0 0 12px #d8ff5fcc}.profile-close{border:1px solid var(--profile-line);height:34px;color:var(--profile-muted);font-family:var(--mono);letter-spacing:.08em;background:#ffffff09;border-radius:999px;flex:none;align-items:center;gap:10px;padding:0 10px 0 14px;font-size:11px;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.profile-close:hover{border-color:var(--profile-line-strong);color:var(--profile-text);background:#d8ff5f14}.profile-close kbd{border-color:var(--profile-line);height:18px;color:var(--profile-lime)}.profile-layout{grid-template-columns:minmax(220px,292px) minmax(0,1fr);min-height:0;display:grid}.profile-aside{border-right:1px solid var(--profile-line);scrollbar-width:thin;scrollbar-color:#d8ff5f4d transparent;flex-direction:column;gap:clamp(22px,3.1vh,36px);min-height:0;padding:clamp(26px,4.2vh,52px) clamp(22px,2.4vw,36px) 24px 0;display:flex;overflow-y:auto}.profile-identity{position:relative}.profile-monogram{width:58px;height:58px;color:var(--profile-lime);font-family:var(--display);letter-spacing:-.08em;background:#d8ff5f12;border:1px solid #d8ff5f75;flex-direction:column;justify-content:center;align-items:center;margin-bottom:24px;font-size:18px;font-weight:900;line-height:.9;display:flex;box-shadow:inset -9px -9px #d8ff5f12}.profile-monogram span:last-child{color:var(--profile-text);letter-spacing:.04em;font-size:12px}.profile-identity-kicker,.profile-kicker,.profile-card-kicker{color:var(--profile-lime);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:10px;line-height:1.5}.profile-identity h1{color:var(--profile-text);font-family:var(--display);letter-spacing:-.08em;margin:12px 0 0;font-size:clamp(44px,4.6vw,68px);font-weight:900;line-height:.92}.profile-identity-role{color:var(--profile-text);letter-spacing:.01em;margin:12px 0 0;font-size:13px;font-weight:600}.profile-status{color:var(--profile-muted);font-family:var(--mono);letter-spacing:.04em;align-items:center;gap:8px;margin:14px 0 0;font-size:11px;display:flex}.profile-status i{background:var(--profile-lime);border-radius:50%;width:6px;height:6px;box-shadow:0 0 10px #d8ff5fb3}.profile-identity-note{color:var(--profile-muted);margin:22px 0 0;font-size:13px;line-height:1.85}.profile-nav{gap:3px;display:grid}.profile-nav button{min-height:38px;color:var(--profile-muted);letter-spacing:.02em;text-align:left;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:12px;padding:7px 10px;font-size:13px;font-weight:560;transition:color .2s,background .2s,border-color .2s;display:flex}.profile-nav button>span:first-child{color:var(--profile-faint);font-family:var(--mono);letter-spacing:.08em;font-size:10px}.profile-nav button:hover{border-color:var(--profile-line);color:var(--profile-text);background:#ffffff09}.profile-nav button.is-active{color:var(--profile-lime);background:#d8ff5f17;border-color:#d8ff5f47}.profile-nav button.is-active>span:first-child{color:var(--profile-lime)}.profile-nav-arrow{color:var(--profile-faint);font-family:var(--mono);opacity:0;margin-left:auto;font-size:11px;transition:opacity .2s,transform .2s;transform:translate(-4px)}.profile-nav button:hover .profile-nav-arrow,.profile-nav button.is-active .profile-nav-arrow{opacity:1;transform:none}.profile-aside-footer{border-top:1px solid var(--profile-line);color:var(--profile-faint);font-family:var(--mono);letter-spacing:.06em;flex-direction:column;gap:8px;margin-top:auto;padding-top:18px;font-size:11px;display:flex}.profile-aside-contact{color:var(--profile-lime);font-family:var(--mono);letter-spacing:.08em;background:0 0;border:0;align-self:flex-start;padding:0;font-size:11px}.profile-aside-contact:hover{color:var(--profile-text)}.profile-main{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d8ff5f42 transparent;min-width:0;overflow-y:auto}.profile-main-inner{width:min(100%,980px);margin:0 auto;padding:clamp(30px,6vh,74px) clamp(4px,2.2vw,34px) 34px clamp(20px,4vw,70px)}.profile-view{animation:profile-view-enter .32s var(--ease) both}@keyframes profile-view-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.profile-heading{max-width:780px}.profile-heading h2{color:var(--profile-text);font-family:var(--display);letter-spacing:-.065em;text-wrap:balance;margin:16px 0 0;font-size:clamp(32px,4.5vw,66px);font-weight:900;line-height:.98}.profile-lede{max-width:700px;color:var(--profile-muted);margin:24px 0 0;font-size:clamp(13px,1.2vw,16px);line-height:1.9}.profile-two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.profile-card{border:1px solid var(--profile-line);background:var(--profile-card);padding:clamp(20px,2.6vw,32px)}.profile-card h3{color:var(--profile-text);letter-spacing:-.045em;margin:9px 0 0;font-size:clamp(19px,2vw,26px);font-weight:650;line-height:1.16}.profile-card p:not(.profile-card-kicker):not(.profile-privacy-note){color:var(--profile-muted);margin:14px 0 0;font-size:13px;line-height:1.85}.profile-card-note{color:var(--profile-faint)!important;font-size:11px!important}.profile-list{gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.profile-list li{color:var(--profile-muted);padding-left:17px;font-size:13px;line-height:1.75;position:relative}.profile-list li:before{content:"";border:1px solid var(--profile-lime);background:#d8ff5f2e;width:5px;height:5px;position:absolute;top:.72em;left:0}.profile-list--compact{gap:7px;margin-top:14px}.profile-list--compact li{font-size:11px;line-height:1.7}.profile-tags{flex-wrap:wrap;gap:6px;margin-top:18px;display:flex}.profile-tags span{border:1px solid var(--profile-line);min-height:24px;color:var(--profile-muted);font-family:var(--mono);letter-spacing:.03em;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;display:inline-flex}.profile-tags--large{gap:8px;margin-top:22px}.profile-tags--large span{min-height:32px;color:var(--profile-lime);font-family:var(--sans);border-color:#d8ff5f3d;padding:5px 12px;font-size:11px;font-weight:600}.profile-inline-actions{flex-wrap:wrap;gap:9px;margin-top:24px;display:flex}.profile-action{background:var(--profile-lime);color:#101a08;min-height:38px;font-family:var(--mono);letter-spacing:.04em;border:1px solid #d8ff5f73;border-radius:3px;justify-content:center;align-items:center;gap:9px;padding:7px 13px;font-size:11px;font-weight:700;transition:background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.profile-action:hover{background:var(--profile-text);border-color:var(--profile-text);transform:translateY(-1px)}.profile-action--quiet{border-color:var(--profile-line);color:var(--profile-muted);background:0 0}.profile-action--quiet:hover{border-color:var(--profile-line-strong);color:var(--profile-text);background:#d8ff5f14}.profile-overview-bottom{background:linear-gradient(115deg, #d8ff5f13, transparent 48%), var(--profile-card);justify-content:space-between;align-items:flex-end;gap:24px;margin-top:14px;display:flex}.profile-overview-bottom h3{margin-top:10px}.profile-overview-bottom p{max-width:600px}.profile-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:clamp(30px,5vh,52px);display:grid}.profile-project-card{border:1px solid var(--profile-line);background:linear-gradient(160deg, #ffffff09, transparent 50%), var(--profile-card);flex-direction:column;min-width:0;padding:clamp(20px,2.5vw,30px);display:flex}.profile-project-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-project-index{color:var(--profile-lime);font-family:var(--mono);letter-spacing:.08em;font-size:10px}.profile-project-category{color:var(--profile-faint);font-family:var(--mono);letter-spacing:.04em;text-align:right;font-size:11px}.profile-project-card h3{color:var(--profile-text);letter-spacing:-.05em;margin:16px 0 0;font-size:clamp(21px,2.2vw,30px);font-weight:650;line-height:1.1}.profile-project-summary{color:var(--profile-muted);margin:15px 0 0;font-size:13px;line-height:1.8}.profile-project-card .profile-tags{margin-top:auto;padding-top:18px}.profile-archive{margin-top:14px}.profile-archive-list{background:var(--profile-line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:22px;display:grid}.profile-archive-item{background:var(--profile-bg);min-width:0;padding:17px}.profile-archive-item h4{color:var(--profile-text);letter-spacing:-.02em;margin:0;font-size:13px;font-weight:650}.profile-archive-item p{color:var(--profile-muted);margin:10px 0 0;font-size:11px;line-height:1.75}.profile-archive-item span{color:var(--profile-lime);font-family:var(--mono);margin-top:14px;font-size:10px;line-height:1.6;display:block}.profile-timeline{border-top:1px solid var(--profile-line);gap:0;margin-top:clamp(30px,5vh,52px);display:grid}.profile-timeline-item{border-bottom:1px solid var(--profile-line);grid-template-columns:150px minmax(0,1fr);gap:clamp(18px,4vw,44px);padding:clamp(22px,3.4vw,34px) 0;display:grid}.profile-timeline-period{color:var(--profile-faint);font-family:var(--mono);letter-spacing:.04em;font-size:10px;line-height:1.6}.profile-timeline-body h3{color:var(--profile-text);letter-spacing:-.045em;margin:5px 0 0;font-size:clamp(20px,2.2vw,30px);font-weight:650;line-height:1.15}.profile-timeline-summary{color:var(--profile-muted);margin:13px 0 0;font-size:13px;line-height:1.8}.profile-education-list{background:var(--profile-line);gap:1px;margin-top:20px;display:grid}.profile-education-item{background:var(--profile-bg);justify-content:space-between;align-items:baseline;gap:18px;padding:14px 0;display:flex}.profile-education-item div{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.profile-education-item strong{color:var(--profile-text);font-size:13px;font-weight:600}.profile-education-item span,.profile-education-item time{color:var(--profile-faint);font-size:10px}.profile-education-item time{font-family:var(--mono);flex:none;font-size:10px}.profile-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:clamp(30px,5vh,52px);display:grid}.profile-skill-card{border:1px solid var(--profile-line);background:var(--profile-card);min-width:0;padding:20px}.profile-skill-card h3{color:var(--profile-text);letter-spacing:-.02em;margin:0;font-size:15px;font-weight:600}.profile-principles{color:var(--profile-muted);gap:11px;margin:18px 0 0;padding:0 0 0 18px;font-size:13px;line-height:1.7;display:grid}.profile-principles li::marker{color:var(--profile-lime);font-family:var(--mono);font-size:10px}.profile-contact-card{background:radial-gradient(ellipse at 82% 10%, #d8ff5f26, transparent 40%), linear-gradient(135deg, #d8ff5f17, transparent 55%), var(--profile-card-strong);border:1px solid #d8ff5f4d;margin-top:clamp(30px,5vh,52px);padding:clamp(24px,4vw,48px)}.profile-contact-card h3{color:var(--profile-text);font-family:var(--display);letter-spacing:-.06em;margin:14px 0 0;font-size:clamp(30px,4vw,54px);font-weight:900;line-height:.98}.profile-contact-card>p:not(.profile-card-kicker){color:var(--profile-muted);margin:14px 0 0;font-size:13px;line-height:1.8}.profile-email{border:1px solid var(--profile-line);background:#0000002e;flex-direction:column;align-items:flex-start;gap:8px;max-width:640px;margin-top:28px;padding:18px;display:flex}.profile-email.is-compact{background:0 0;border:0;margin-top:0;padding:0}.profile-email-label{color:var(--profile-faint);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.profile-email-address{max-width:100%;color:var(--profile-lime);font-family:var(--mono);letter-spacing:.01em;overflow-wrap:anywhere;text-align:left;background:0 0;border:0;padding:0;font-size:clamp(16px,2.1vw,24px);font-weight:600}.profile-email-address:hover{color:var(--profile-text)}.profile-email-actions{flex-wrap:wrap;gap:8px;margin-top:5px;display:flex}.profile-email-status{color:var(--profile-faint);font-family:var(--mono);letter-spacing:.03em;font-size:11px}.profile-contact-meta{background:var(--profile-line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:30px;display:grid}.profile-contact-meta div{background:#06100b9e;min-width:0;padding:14px}.profile-contact-meta span{color:var(--profile-faint);font-family:var(--mono);letter-spacing:.08em;font-size:11px;display:block}.profile-contact-meta strong{color:var(--profile-text);margin-top:6px;font-size:11px;font-weight:550;line-height:1.55;display:block}.profile-privacy-note{border-left:1px solid var(--profile-line-strong);max-width:760px;color:var(--profile-faint);margin:22px 0 0;padding-left:14px;font-size:10px;line-height:1.8}.profile-foot{border-top:1px solid var(--profile-line);color:var(--profile-faint);font-family:var(--mono);letter-spacing:.08em;justify-content:space-between;align-items:center;gap:18px;margin-top:clamp(38px,7vh,70px);padding-top:16px;font-size:11px;display:flex}.profile-foot button{color:var(--profile-muted);font-family:var(--mono);letter-spacing:.06em;background:0 0;border:0;padding:0;font-size:11px;transition:color .2s}.profile-foot button:hover{color:var(--profile-lime)}.profile-panel :focus-visible{outline:2px solid var(--profile-lime);outline-offset:3px}.profile-panel button,.profile-panel a{-webkit-tap-highlight-color:transparent}@media (max-width:1040px){.profile-shell{padding:0 clamp(14px,2.6vw,28px)}.profile-layout{grid-template-columns:minmax(190px,236px) minmax(0,1fr)}.profile-aside{padding-right:18px}.profile-main-inner{padding-left:28px;padding-right:8px}.profile-project-grid{grid-template-columns:1fr}}@media (max-width:820px){.profile-panel{overscroll-behavior:contain;overflow-y:auto}.profile-shell{height:auto;min-height:100%;padding:0 16px;display:block}.profile-topbar{z-index:3;-webkit-backdrop-filter:blur(14px);background:#06100bf0;min-height:58px;position:sticky;top:0}.profile-layout{display:block}.profile-aside{border-right:0;border-bottom:1px solid var(--profile-line);padding:24px 0 18px;display:block;overflow:visible}.profile-monogram{width:50px;height:50px;margin:0;font-size:15px;position:absolute;top:24px;right:0}.profile-monogram span:last-child{font-size:10px}.profile-identity-kicker{padding-right:62px}.profile-identity h1{font-size:clamp(42px,9vw,62px)}.profile-identity-note{max-width:540px;margin-top:16px}.profile-nav{z-index:2;-webkit-backdrop-filter:blur(14px);scrollbar-width:none;background:#06100bf0;gap:6px;margin-top:20px;padding:8px 0;display:flex;position:sticky;top:58px;overflow-x:auto}.profile-nav::-webkit-scrollbar{display:none}.profile-nav button{border-color:var(--profile-line);border-radius:999px;gap:7px;min-width:max-content;min-height:34px;padding:7px 11px}.profile-nav-arrow,.profile-aside-footer{display:none}.profile-main{scroll-margin-top:118px;overflow:visible}.profile-main-inner{width:100%;padding:30px 0 24px}.profile-heading h2{font-size:clamp(30px,7.4vw,52px)}.profile-two-col,.profile-skill-grid,.profile-archive-list{grid-template-columns:1fr}.profile-timeline-item{grid-template-columns:1fr;gap:12px}.profile-timeline-period{order:2}}@media (max-width:560px){.profile-topbar-title{letter-spacing:.1em;gap:7px;font-size:10px}.profile-topbar-version{display:none}.profile-close{height:32px;padding-left:11px}.profile-close kbd{display:none}.profile-card{padding:18px}.profile-project-grid{gap:10px}.profile-project-card{padding:18px}.profile-project-top{flex-direction:column;align-items:flex-start;gap:5px}.profile-project-category{text-align:left}.profile-overview-bottom{flex-direction:column;align-items:flex-start}.profile-contact-meta{grid-template-columns:1fr}.profile-education-item{flex-direction:column;align-items:flex-start;gap:7px}.profile-email{padding:14px}.profile-email-address{font-size:16px}.profile-foot{flex-direction:column;align-items:flex-start;gap:10px}.profile-contact-card h3{font-size:32px}}@media (prefers-reduced-motion:reduce){.profile-panel *,.profile-panel :before,.profile-panel :after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
