:root{--gold: #f2cf7a;--gold-dim: #b8954a;--ink: #f4ede0;--ink-dim: #c9bfae;--glass: rgba(14, 12, 22, .62);--glass-strong: rgba(14, 12, 22, .86);--line: rgba(242, 207, 122, .22);--echo: #9fd8ff;--serif: "Cormorant Garamond", Georgia, serif;--title: "Cinzel", "Trajan Pro", Georgia, serif;--ui: "Inter", system-ui, sans-serif;--panel: rgba(22, 17, 26, .84);--panel-line: rgba(242, 207, 122, .26);--text: #f3eee0}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#07060a;color:var(--ink);font-family:var(--ui);overflow:hidden}button{font-family:var(--ui);cursor:pointer}#app{position:fixed;top:0;right:0;bottom:0;left:0}#flash{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;transition:opacity .9s ease-out;mix-blend-mode:screen;z-index:2}#fade{position:absolute;top:0;right:0;bottom:0;left:0;background:#07060a;pointer-events:none;opacity:0;transition:opacity .45s ease}#fade.on{opacity:1}.xpbar{height:7px;background:#ffffff14;border-radius:4px;margin:6px 0 4px;overflow:hidden;border:1px solid rgba(242,207,122,.18)}.xpbar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold-dim),var(--gold));box-shadow:0 0 10px #f2cf7a80}.trait-row{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:14px;color:var(--ink-dim);border-bottom:1px solid rgba(255,255,255,.05)}.trait-row b{color:var(--ink);min-width:1.2em;text-align:center;font-family:var(--title)}.trait-row .pips{flex:1;letter-spacing:3px;color:var(--gold);font-size:12px}.trait-row button,.hero-btn{background:#f2cf7a26;color:var(--gold);border:1px solid rgba(242,207,122,.4);border-radius:10px;padding:3px 10px;font-size:12px;cursor:pointer}.hero-btn.alt{background:#ffffff0f;color:var(--ink);border-color:#ffffff1a}.hero-h{margin:16px 0 4px;font-family:var(--title);font-size:12px;letter-spacing:.16em;color:var(--gold);text-transform:uppercase;display:flex;align-items:center;gap:10px}.fr-box{padding:10px 12px 12px;margin-top:4px;border-radius:14px;background:linear-gradient(180deg,#f2cf7a14,#f2cf7a05);border:1px solid rgba(242,207,122,.22)}.fr-box p{margin:0 0 8px}.fr-link{width:100%;box-sizing:border-box;font-family:var(--ui);font-size:14px;color:#fff8e6;background:#00000059;border:1px solid rgba(242,207,122,.3);border-radius:10px;padding:8px 10px;text-align:left}.fr-btns{display:flex;gap:8px;margin:8px 0 10px}.fr-btns .hero-btn{flex:1 1 0;margin:0;min-height:38px;font-size:14px}.fr-progress{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-family:var(--serif);font-size:16px;color:#fff8e6}.fr-progress small{font-family:var(--ui);font-size:12px;color:var(--ink-dim)}.fr-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:6px 0 10px}.fr-bar i{height:8px;border-radius:4px;background:#ffffff14;border:1px solid rgba(242,207,122,.18)}.fr-bar i.on{background:linear-gradient(90deg,var(--gold-dim),var(--gold));box-shadow:0 0 10px #f2cf7a80}.fr-steps{list-style:none;margin:0 0 8px;padding:0;font-family:var(--serif);font-size:15px;color:var(--ink-dim)}.fr-steps li{display:flex;gap:8px;padding:2px 0}.fr-steps li i{font-style:normal;color:var(--gold-dim)}.fr-steps li.got{color:#fff3cf}.fr-steps li.got i{color:var(--gold);text-shadow:0 0 8px rgba(242,207,122,.6)}.fr-company{font-family:var(--serif);color:#cfe8ff}.fr-rule{font-size:13px}.hero-h:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(242,207,122,.4),transparent)}.item-row .btns{display:flex;gap:6px}#hud{position:absolute;z-index:4;top:0;left:0;right:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"place menu" "sky sky";align-items:start;gap:6px 16px;padding:max(14px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 18px max(20px,env(safe-area-inset-left));pointer-events:none;background:linear-gradient(to bottom,rgba(7,6,12,.8),rgba(7,6,12,.4) 60%,transparent)}#place{grid-area:place;min-width:0;pointer-events:none}#region{font-family:var(--title);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 6px rgba(0,0,0,.8)}#room-name{margin:2px 0 0;font-family:var(--title);font-weight:500;font-size:28px;line-height:1.15;letter-spacing:.05em;color:#fff8e6;text-shadow:0 2px 14px rgba(0,0,0,.85),0 0 30px rgba(0,0,0,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#sky{grid-area:sky;display:flex;gap:8px;font-size:12px;color:var(--text);min-width:0}#sky span{font-family:var(--ui);background:var(--panel);padding:4px 11px;border-radius:20px;border:1px solid var(--panel-line);white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#sky #weather.viola{color:#e2b6ff;border-color:#b06cff;box-shadow:0 0 14px #b06cff99}#menu{grid-area:menu;display:flex;gap:6px;pointer-events:auto}#menu button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;background:var(--panel);color:var(--text);border:1px solid var(--panel-line);padding:7px 11px;border-radius:12px;font-size:12px;transition:all .15s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#menu button:hover,#menu button.on{border-color:var(--gold);color:var(--gold);box-shadow:0 0 14px #f2cf7a33}#menu button em{font-style:normal}#menu button.pulse{animation:pulse 1.6s ease-in-out 3}@keyframes pulse{50%{box-shadow:0 0 0 6px #f2cf7a40;border-color:var(--gold)}}#toasts{position:absolute;top:calc(var(--log-top, 50vh) + 10px);left:calc(var(--log-left, 20px) + 10px);width:calc(var(--log-w, 540px) - 20px);display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;z-index:5}.toast{font-family:var(--serif);font-size:18px;line-height:1.35;color:var(--text);text-align:center;background:var(--panel);border:1px solid var(--panel-line);padding:10px 18px;border-radius:14px;animation:toastIn .5s ease,toastOut .6s ease 6.4s forwards;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.toast.history{border-color:var(--gold);color:var(--gold);box-shadow:0 0 30px #f2cf7a40;font-size:20px}.toast.history:before{content:attr(data-label);display:block;font-family:var(--title);font-size:11px;letter-spacing:.25em;margin-bottom:4px;color:var(--gold-dim)}.toast.viola{border-color:#b06cff;color:#e8ccff;box-shadow:0 0 40px #b06cff73}@keyframes toastIn{0%{opacity:0;transform:translateY(-12px)}}@keyframes toastOut{to{opacity:0;transform:translateY(-8px)}}#log-wrap{position:absolute;z-index:3;left:max(20px,env(safe-area-inset-left));bottom:calc(var(--bottom-h, 130px) + var(--kb, 0px) + 8px);width:min(540px,42vw);max-height:min(60vh,calc(100% - var(--hud-h, 90px) - var(--bottom-h, 130px) - var(--kb, 0px) - 32px));display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--panel-line);border-radius:18px;box-shadow:0 18px 50px #00000080,inset 0 1px #ffffff0f;backdrop-filter:blur(14px) saturate(1.1);-webkit-backdrop-filter:blur(14px) saturate(1.1);overflow:hidden;transition:max-height .25s ease}#log-wrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse at 50% 0%,rgba(242,207,122,.07),transparent 60%)}#log-toggle{flex:0 0 auto;display:block;width:100%;height:18px;padding:0;border:0;background:transparent;cursor:pointer;font-size:0}#log-toggle:before{content:"";display:block;width:38px;height:4px;margin:7px auto 0;border-radius:4px;background:#f2cf7a59;transition:background .15s}#log-toggle:hover:before{background:var(--gold)}#log{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 18px 12px;scrollbar-width:thin;scrollbar-color:rgba(242,207,122,.25) transparent}#log-wrap.compact{max-height:92px}.line{font-family:var(--serif);font-size:18.5px;line-height:1.5;color:var(--text);margin:0;padding:7px 0;white-space:pre-line;animation:lineIn .35s ease;overflow-wrap:anywhere}.line+.line{border-top:1px solid rgba(255,255,255,.05)}@keyframes lineIn{0%{opacity:0;transform:translateY(6px)}}.line.title{font-family:var(--title);font-size:17px;letter-spacing:.1em;color:var(--gold);padding:16px 0 4px;border-top:1px solid rgba(242,207,122,.22)!important;text-shadow:0 0 18px rgba(242,207,122,.25)}.line.title:before{content:"❧ ";opacity:.7}.line.title:first-child{padding-top:2px;border-top:0!important}.line.title+.line{border-top:0}.line.narr{color:var(--text)}.line.input{font-family:var(--ui);font-size:14px;line-height:1.4;color:#fff6dc;background:#a06e1e52;border:1px solid rgba(242,207,122,.25);margin:8px 0 6px 48px;padding:6px 12px;border-radius:14px 14px 4px;text-align:right;border-top-width:1px}.line.input+.line,.line+.line.input{border-top-color:transparent}.line.npc,.line.echo{padding:9px 0 9px 12px;border-left:2px solid var(--gold);overflow:hidden}.line .portrait{float:left;width:54px;height:54px;border-radius:50%;object-fit:cover;object-position:center 20%;margin:2px 12px 4px 0;border:2px solid var(--gold-dim);box-shadow:0 0 14px #f2cf7a4d;background:#1b1420}.line .who{display:block;font-family:var(--ui);font-style:normal;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:2px}.line.echo{border-left-color:var(--echo);color:#e6f5ff;font-style:italic}.line.echo .portrait{border-color:var(--echo);box-shadow:0 0 14px var(--echo)}.line.echo .who{color:var(--echo)}.line.echo.alert{background:linear-gradient(90deg,rgba(159,216,255,.12),transparent)}.line.people{font-family:var(--ui);font-size:13px;line-height:1.45;color:var(--ink-dim)}.line.people:first-line{color:#e9e2d0}.line.gain{font-family:var(--ui);font-size:13px;color:#b8f2a8}.line.history{color:var(--gold);padding:10px 12px;margin:6px 0;border:1px solid rgba(242,207,122,.55);border-radius:12px;background:#3c2c0e73}.line.history:before{content:attr(data-label) "  ";font-family:var(--title);font-size:12px;letter-spacing:.2em}.line.discovery{padding-left:12px;border-left:2px solid #7fe0ff;color:#e2f8ff}.line.whisper{font-style:italic;color:#ddd3f5}.line.chronicle{font-size:16px;color:#f0e2bd}.line.self{color:#fff;font-style:italic}.line.sys{font-family:var(--ui);font-size:13px;line-height:1.45;color:#cfc8ff}.line.move{font-family:var(--ui);font-size:12px;color:var(--ink-dim);padding:4px 0}.line.others{font-family:var(--ui);font-size:14px;color:#d9e7ff}.line.others b{color:#9fc6ff}.line.world{color:#fff3d0;padding-left:12px;border-left:2px solid #ffb347}.line.ooc{font-family:var(--ui);font-size:13px;color:#aab}.line.ooc b{color:#ddd}.line.overheard{opacity:.85}.line .heard{font-family:var(--ui);font-size:11px;color:var(--ink-dim)}#bottom{position:absolute;z-index:4;left:0;right:0;bottom:var(--kb, 0px);padding:10px max(20px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:linear-gradient(to top,rgba(7,6,12,.92),rgba(7,6,12,.6) 70%,transparent)}#exits{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}#exits:empty,#quick:empty{display:none}#exits button{display:inline-flex;align-items:center;gap:6px;font-family:var(--serif);font-size:15px;font-weight:600;min-height:34px;background:linear-gradient(180deg,#4a341cd9,#2c1e10e6);color:#ffe9b0;border:1px solid rgba(242,207,122,.35);border-radius:8px 14px 14px 8px;padding:4px 12px 4px 8px;box-shadow:0 4px 12px #0006,inset 0 1px #ffe9b026;transition:all .15s}#exits button:before{content:"➜";color:var(--gold);font-size:12px}#exits button b{font-family:var(--ui);color:var(--gold);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:600}#exits button.locked{color:#aaa;border-style:dashed;opacity:.8}#exits button.locked:before{content:"🔒";font-size:11px}#exits button:hover{border-color:var(--gold);transform:translateY(-1px)}#input-bar{display:flex;gap:8px;align-items:center;background:var(--glass-strong);border:1px solid var(--line);border-radius:18px;padding:7px;box-shadow:0 10px 40px #00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#input{flex:1;background:none;border:0;outline:0;color:var(--ink);font-family:var(--serif);font-size:20px;padding:8px 6px;min-width:0}#input::placeholder{color:#f4ede066;font-style:italic}#mic,#send{width:46px;height:46px;border-radius:14px;border:0;font-size:19px;color:#1b1420;background:var(--gold);flex-shrink:0}#mic{background:#ffffff1a;color:#fff}#mic.rec{background:#e0455a;animation:rec 1s ease-in-out infinite}@keyframes rec{50%{box-shadow:0 0 0 8px #e0455a40}}#echo-chip{display:flex;align-items:center;gap:7px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:var(--ink);border-radius:14px;padding:0 12px;height:46px;font-size:13px;flex-shrink:0}#echo-chip i{width:14px;height:14px;border-radius:50%;background:var(--echo);box-shadow:0 0 12px var(--echo)}#echo-chip.alert{border-color:var(--echo);animation:pulseEcho 1.2s ease-in-out infinite}@keyframes pulseEcho{50%{box-shadow:0 0 0 6px #9fd8ff40}}#panel{position:absolute;top:calc(var(--hud-h, 76px) + 6px);right:max(20px,env(safe-area-inset-right));bottom:calc(var(--bottom-h, 120px) + var(--kb, 0px) + 8px);width:min(420px,calc(100vw - 40px));background:#16111aed;border:1px solid var(--panel-line);border-radius:18px;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 20px 60px #0000008c;transition:transform .3s,opacity .3s;z-index:6}#panel.hidden{transform:translate(30px);opacity:0;pointer-events:none}#panel header{display:flex;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}#panel h2{margin:0;font-family:var(--title);font-weight:500;font-size:18px;color:var(--gold);letter-spacing:.06em}#panel-close{margin-left:auto;background:none;border:0;color:var(--ink-dim);font-size:18px}#panel-body{overflow-y:auto;padding:14px 18px 20px;scrollbar-width:thin;scrollbar-color:rgba(242,207,122,.25) transparent}.entry{font-family:var(--serif);font-size:17px;line-height:1.35;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06)}.entry small{display:block;font-family:var(--ui);font-size:11px;color:var(--gold-dim);letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px}.entry.primato{color:#fff3d0}.entry.primato small:after{content:" · ✦";color:var(--gold)}.mystery{border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 14px;margin-bottom:10px;background:#ffffff08}.mystery h3{margin:0;font-family:var(--title);font-size:15px;font-weight:500;letter-spacing:.04em}.mystery .st{display:inline-block;margin-top:6px;font-size:11px;letter-spacing:.18em;font-weight:600;color:#ff8a8a}.mystery.solved .st{color:#9fe6a0}.mystery p{margin:6px 0 0;font-family:var(--serif);font-size:16px;color:var(--ink-dim)}.mystery .by{font-size:12px;color:var(--gold);margin-top:4px}.mystery .bar{height:6px;background:#ffffff14;border-radius:4px;margin-top:8px;overflow:hidden}.mystery .bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold-dim),var(--gold))}.mystery.unsolved-big{border-color:#b06cff80;box-shadow:0 0 20px #b06cff26}.item-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06);font-family:var(--serif);font-size:18px}.item-row button{background:#ffffff0f;color:var(--ink);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:4px 10px;font-size:12px}.stat{display:flex;justify-content:space-between;font-size:14px;color:var(--ink-dim);padding:6px 0}.stat b{color:var(--ink)}.stat.points{color:var(--gold);border:1px solid rgba(242,207,122,.4);border-radius:10px;padding:8px 12px;margin-top:10px;background:#f2cf7a14}.echo-portrait{width:130px;height:130px;border-radius:50%;margin:6px auto 12px;border:2px solid var(--gold-dim);background-repeat:no-repeat;box-shadow:0 0 40px var(--echo);animation:breathe 3s ease-in-out infinite}.center{text-align:center}.muted{color:var(--ink-dim);font-family:var(--serif);font-size:16px}.hero-head{display:flex;gap:14px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--line)}.hero-pic{position:relative;flex:0 0 auto;width:96px;height:120px;border-radius:14px;overflow:hidden;border:2px solid var(--gold-dim);background:radial-gradient(ellipse at 50% 30%,#f2cf7a38,#140e1ee6 70%);box-shadow:0 8px 24px #00000080,inset 0 0 20px #0006;display:grid;place-items:center}.hero-pic img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 15%}.hero-pic.none img{display:none}.hero-pic .sil{font-size:40px;filter:drop-shadow(0 0 12px rgba(242,207,122,.5));opacity:.9}.hero-pic:not(.none) .sil{display:none}.hero-pic .lv{position:absolute;right:-2px;bottom:-2px;width:30px;height:30px;border-radius:12px 0 10px;display:grid;place-items:center;font-style:normal;font-family:var(--title);font-weight:700;font-size:14px;color:#1b1420;background:linear-gradient(180deg,#ffe9a8,var(--gold));box-shadow:0 0 12px #f2cf7a80}.hero-id{flex:1;min-width:0}.hero-origin{font-family:var(--title);font-size:16px;color:#fff8e6;letter-spacing:.06em}.hero-lv{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:2px}.hero-xp{font-size:12px;color:var(--ink-dim)}.gender{display:flex;gap:4px;margin-top:6px}.gender button{width:26px;height:24px;padding:0;border-radius:8px;background:#ffffff0d;color:var(--ink-dim);border:1px solid rgba(255,255,255,.1);font-size:13px}.gender button.on{color:var(--gold);border-color:var(--gold-dim)}.hero-pic.none+.hero-id .gender{display:none}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 8px;border-radius:12px;border:1px solid rgba(242,207,122,.22);background:linear-gradient(180deg,#ffffff0a,#0003);box-shadow:inset 0 0 14px #0006;text-align:center;min-height:92px}.slot i{font-style:normal;font-size:24px;opacity:.45;filter:grayscale(1)}.slot.full{border-color:var(--gold);box-shadow:inset 0 0 14px #0006,0 0 16px #f2cf7a40}.slot.full i{opacity:1;filter:none;text-shadow:0 0 12px rgba(242,207,122,.6)}.slot small{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dim)}.slot b{font-family:var(--serif);font-weight:600;font-size:13px;line-height:1.15;color:var(--ink);overflow-wrap:anywhere}.slot:not(.full) b{color:#f4ede04d}#story{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#07060ad9;z-index:30;padding:20px}#story.hidden{display:none}.story-card{display:flex;flex-direction:column;align-items:center;gap:14px;height:100%;justify-content:center}#story-canvas{height:min(78vh,900px);width:auto;aspect-ratio:9 / 16;border-radius:18px;box-shadow:0 30px 80px #0009}.story-actions{display:flex;gap:10px}.story-actions button{background:var(--gold);color:#1b1420;border:0;padding:11px 20px;border-radius:12px;font-weight:600}.story-actions button:last-child{background:#ffffff1a;color:var(--ink)}#ctx-menu{position:fixed;z-index:40;min-width:210px;max-width:300px;max-height:60vh;overflow-y:auto;background:var(--glass-strong);border:1px solid var(--gold-dim);border-radius:16px;padding:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 16px 50px #0009;animation:lineIn .18s ease}#ctx-menu.hidden{display:none}#ctx-menu .ctx-title{font-family:var(--title);color:var(--gold);font-size:14px;letter-spacing:.05em;padding:6px 10px 8px;border-bottom:1px solid var(--line);margin-bottom:4px}#ctx-menu button{display:flex;align-items:center;gap:10px;width:100%;text-align:start;background:none;border:0;color:var(--ink);font-family:var(--serif);font-size:18px;padding:9px 10px;border-radius:10px}#ctx-menu button:hover{background:#f2cf7a24;color:#fff}#ctx-menu button span{width:22px;text-align:center;font-size:16px}#quick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}#quick button{font-size:13px;background:#3c2c0e99;color:#ffe9b0;border:1px solid rgba(242,207,122,.35);border-radius:20px;padding:6px 13px;min-height:32px;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}#quick button:hover{border-color:var(--gold);background:#5a4014cc}html,body{overscroll-behavior:none;-webkit-text-size-adjust:100%}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media(max-width:760px){#hud{grid-template-columns:minmax(0,1fr);grid-template-areas:"place" "sky" "menu";gap:6px;padding:max(8px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) 12px max(10px,env(safe-area-inset-left))}#region{font-size:10px;letter-spacing:.22em}#room-name{font-size:21px}#sky{gap:6px;font-size:11px;overflow-x:auto;scrollbar-width:none;pointer-events:auto}#sky::-webkit-scrollbar{display:none}#sky span{padding:3px 9px}#menu{gap:5px}#menu button{flex:1 1 0;min-width:0;min-height:40px;padding:6px 0;font-size:16px;border-radius:12px}#menu button em{display:none}#lang-btn em{display:inline!important;font-size:11px;margin-left:-2px}#log-wrap{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));width:auto;height:min(27vh,calc(100% - var(--hud-h, 120px) - var(--bottom-h, 130px) - var(--kb, 0px) - 70px));max-height:none;min-height:84px;border-radius:16px}#log-wrap.compact{height:84px}#log{padding:0 14px 8px}.line{font-size:16.5px;line-height:1.48}.line .portrait{width:44px;height:44px}.line.input{margin-left:32px}#bottom{padding:6px max(8px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}#quick,#exits{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-bottom:6px;padding-bottom:1px}#quick::-webkit-scrollbar,#exits::-webkit-scrollbar{display:none}#quick button,#exits button{flex:0 0 auto;white-space:nowrap}#exits button{font-size:14px;min-height:32px}#input-bar{gap:6px;padding:5px;border-radius:16px}#input{font-size:17px;padding:8px 4px}#mic,#send,#echo-chip{height:42px}#mic,#send{width:42px}#echo-chip{padding:0 10px}#echo-chip span{display:none}#panel{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));width:auto}.toast{font-size:15px;line-height:1.3;padding:7px 12px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;animation:toastIn .4s ease,toastOut .5s ease 4.2s forwards}.toast.history{font-size:16px;-webkit-line-clamp:3;line-clamp:3}#ctx-menu button{padding:11px 10px}#story-canvas{height:min(70vh,900px);max-width:92vw}.hero-pic{width:80px;height:100px}}@media(max-width:760px)and (max-height:780px)and (orientation:portrait){#log-wrap{height:min(23vh,calc(100% - var(--hud-h, 120px) - var(--bottom-h, 130px) - var(--kb, 0px) - 70px))}}@media(max-height:500px){#log-wrap{max-height:calc(100% - var(--hud-h, 90px) - var(--bottom-h, 120px) - var(--kb, 0px) - 24px)}#exits,#quick{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}}#overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 30%,#1e1a3cd1,#04040cf0);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:ovIn .8s ease-out}@keyframes ovIn{0%{opacity:0}to{opacity:1}}#overlay .ov-card{max-width:min(520px,90vw);text-align:center;padding:34px 30px;border-radius:22px;background:#100e1ed9;border:1px solid rgba(242,207,122,.3);box-shadow:0 30px 80px #0009}#overlay .ov-moon{font-size:54px;color:#cfe3ff;text-shadow:0 0 30px #9fd8ff;animation:breathe 4s ease-in-out infinite}#overlay h2{font-family:var(--title);font-weight:500;color:var(--gold);letter-spacing:.08em;margin:10px 0 8px}#overlay p{font-family:var(--serif);font-size:19px;line-height:1.4;color:var(--ink);margin:0 0 20px}#overlay button{background:#f2cf7a29;color:var(--gold);border:1px solid var(--gold);border-radius:30px;padding:11px 30px;font-family:var(--title);font-size:16px;letter-spacing:.06em;cursor:pointer}#overlay button:hover{background:#f2cf7a4d}.path-pick{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}.hero-btn.dark{background:#783cc82e;color:#dcc4ff;border-color:#b06cff80}.stat.path.luce b{color:#ffe9b0}.stat.path.ombra b{color:#c9a0ff}.report{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06);font-family:var(--serif);font-size:16px}.report small{display:block;color:var(--ink-dim);font-family:var(--ui);font-size:11px}.report .btns{display:flex;gap:6px;margin-top:6px}.entry.caduto{color:#e2d2ff}.entry.caduto small{color:#b993ff}#gods-btn span{color:#ffd27a}#scene{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;isolation:isolate;background:#07060a;--px: 0%;--py: 0%;--pb: 1;--ps: 1;--wb: 1;--ws: 1;--db: 1}#scene>*{position:absolute;pointer-events:none}#scene>.layer,#scene>.grade,#scene>.wgrade,#scene>.fog,#scene>.fx,#scene>.vignette,#scene>.bolt{top:0;right:0;bottom:0;left:0}.layer{opacity:0;transition:opacity .9s ease;transform:translate(var(--px),var(--py)) scale(1.06);will-change:transform,opacity;filter:brightness(calc(var(--pb) * var(--wb) * var(--db))) saturate(calc(var(--ps) * var(--ws)))}.layer.on{opacity:1}.layer img{width:100%;height:100%;object-fit:cover;object-position:center 42%;display:block;animation:drift 52s ease-in-out infinite alternate}.layer.alt img{animation-name:driftAlt;animation-duration:60s}@keyframes drift{0%{transform:scale(1) translate(0)}to{transform:scale(1.07) translate(-1.2%,.8%)}}@keyframes driftAlt{0%{transform:scale(1.06) translate(1%)}to{transform:scale(1) translateY(-.6%)}}.grade,.wgrade{opacity:0;transition:opacity 1.4s ease,background 1.4s ease}#scene[data-phase=alba]{--pb: .96;--ps: 1.05}#scene[data-phase=alba] .grade{opacity:1;mix-blend-mode:soft-light;background:linear-gradient(180deg,#ffb078e6,#ff826e8c 55%,#50286e99)}#scene[data-phase=tramonto]{--pb: .86;--ps: 1.12}#scene[data-phase=tramonto] .grade{opacity:1;mix-blend-mode:multiply;background:linear-gradient(180deg,#ff9650bf,#dc5a5a8c 55%,#3c1e50bf)}#scene[data-phase=notte]{--pb: .62;--ps: .78}#scene[data-phase=notte] .grade{opacity:1;mix-blend-mode:multiply;background:linear-gradient(180deg,#283c8ce6,#18246ed9 60%,#141846e6)}#scene[data-place=in][data-phase=notte]{--pb: .8}#scene[data-place=in][data-phase=notte] .grade{opacity:.55}#scene[data-place=cave]{--ps: .95}#scene[data-place=cave][data-phase=notte]{--pb: .9}#scene[data-place=cave] .grade{opacity:0!important}#scene[data-biome=memory_garden]{--pb: 1.04;--ps: 1.15}#scene[data-biome=memory_garden] .grade{opacity:0!important}#scene[data-dark=on]{--db: .14}#scene[data-dark=on] .vignette{background:radial-gradient(ellipse at center,transparent 20%,rgba(0,0,0,.95) 75%)}#scene[data-dark=see]{--db: .6;--ps: .5}#scene[data-dark=see] .wgrade{opacity:1;mix-blend-mode:screen;background:#7850c859}#scene[data-weather=nuvoloso]{--wb: .9;--ws: .82}#scene[data-weather=pioggia]{--wb: .8;--ws: .7}#scene[data-weather=pioggia] .wgrade{opacity:1;mix-blend-mode:multiply;background:#7887a08c}#scene[data-weather=temporale]{--wb: .62;--ws: .6}#scene[data-weather=temporale] .wgrade{opacity:1;mix-blend-mode:multiply;background:#3c445abf}#scene[data-weather=nebbia]{--wb: .92;--ws: .75}#scene[data-weather=nebbia] .wgrade{opacity:1;mix-blend-mode:screen;background:#96a5be4d}#scene[data-weather=pioggia_viola]{--wb: .85}#scene[data-weather=pioggia_viola] .wgrade,#scene[data-weather=viola_in] .wgrade{opacity:1;mix-blend-mode:soft-light;background:radial-gradient(ellipse at 50% 20%,#be78fff2,#783cc8b3 70%)}.fog{opacity:0;transition:opacity 2s ease}.fog i{position:absolute;top:-20%;right:-50%;bottom:-20%;left:-50%;background:radial-gradient(ellipse at 30% 50%,rgba(235,240,250,.45),transparent 55%),radial-gradient(ellipse at 75% 40%,rgba(220,228,245,.35),transparent 50%);animation:fogDrift 70s linear infinite;filter:blur(30px)}.fog i+i{animation-duration:95s;animation-direction:reverse;opacity:.7}#scene[data-weather=nebbia] .fog{opacity:1}@keyframes fogDrift{0%{transform:translate(-8%)}to{transform:translate(8%)}}.vignette{background:radial-gradient(ellipse at center,transparent 55%,rgba(5,6,14,.55) 100%)}.bolt{background:#fff;opacity:0;mix-blend-mode:screen}.bolt.on{animation:bolt .7s ease-out}@keyframes bolt{0%{opacity:0}8%{opacity:.85}18%{opacity:.1}28%{opacity:.6}to{opacity:0}}.dragon{top:10%;left:-40%;width:60%;height:30%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),transparent 70%);opacity:0;filter:blur(14px)}.dragon.on{animation:dragon 3.2s ease-in-out}@keyframes dragon{0%{opacity:0;transform:translate(0) skew(-8deg)}15%{opacity:1}to{opacity:0;transform:translate(260%) skew(-8deg)}}#scene.shake{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:none}20%{transform:translate(var(--shake, 5px),calc(var(--shake, 5px) * -.6))}45%{transform:translate(calc(var(--shake, 5px) * -.8),var(--shake, 5px))}70%{transform:translate(calc(var(--shake, 5px) * .5),calc(var(--shake, 5px) * .4))}}.moon{top:calc(var(--hud-h, 90px) + 4vh);right:7vw;width:58px;height:58px;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 40% 38%,#fffbea,#efe2b4 55%,#cdbd8a);box-shadow:0 0 40px 10px #fff4c847,0 0 90px 30px #fff4c81f;mix-blend-mode:screen;transition:opacity 1.4s}.moon[hidden]{display:none}.moon i{position:absolute;top:-4%;right:-4%;bottom:-4%;left:-4%;border-radius:50%;background:#08102a;transform:translate(var(--mx, 100%));transition:transform 1.4s}#scene[data-moon=piena] .moon i{--mx: 104%}#scene[data-moon="gibbosa crescente"] .moon i{--mx: -70%}#scene[data-moon="gibbosa calante"] .moon i{--mx: 70%}#scene[data-moon="primo quarto"] .moon i{--mx: -50%}#scene[data-moon="ultimo quarto"] .moon i{--mx: 50%}#scene[data-moon=crescente] .moon i{--mx: -28%}#scene[data-moon=calante] .moon i{--mx: 28%}#scene[data-moon="gibbosa crescente"] .moon,#scene[data-moon="gibbosa calante"] .moon{box-shadow:0 0 30px 6px #fff4c838}#cast{position:absolute;z-index:3;left:var(--cast-left, 20px);right:max(20px,env(safe-area-inset-right));bottom:var(--cast-bottom, 140px);display:flex;align-items:flex-end;gap:10px;pointer-events:none}#cast.empty{display:none}#cast .row{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:14px 4px 4px;pointer-events:auto;max-width:100%}#cast .row::-webkit-scrollbar{display:none}#cast .card{position:relative;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;width:86px;padding:6px 4px 7px;border-radius:16px;background:linear-gradient(180deg,#1a1624c7,#0c0a14db);border:1px solid rgba(242,207,122,.22);color:var(--ink);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 10px 28px #00000073;transition:transform .18s,border-color .18s,box-shadow .3s;cursor:pointer;font-family:var(--ui)}#cast button.card:hover{transform:translateY(-4px);border-color:var(--gold)}#cast .card b{font-family:var(--serif);font-weight:600;font-size:14px;line-height:1.1;color:#fff8e6;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:6px}#cast .card small{font-size:10px;letter-spacing:.04em;color:var(--ink-dim);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:12px}#cast .card.npc small{color:var(--gold-dim)}#cast .pic{width:56px;height:56px;border-radius:50%;overflow:hidden;border:2px solid rgba(242,207,122,.45);background:#ffffff0d;display:grid;place-items:center;box-shadow:0 4px 14px #00000080}#cast .pic img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}#cast .pic.ico{font-size:26px;border-color:color-mix(in srgb,var(--c) 60%,#fff 10%);background:radial-gradient(circle at 35% 30%,#ffffff2e,color-mix(in srgb,var(--c) 35%,transparent) 70%)}#cast .card.object .pic,#cast .card.item .pic{border-radius:14px}#cast .card.player{border-color:color-mix(in srgb,var(--c) 55%,transparent)}#cast .card.player .pic{border-color:var(--c);box-shadow:0 0 14px color-mix(in srgb,var(--c) 45%,transparent)}#cast .card.player.party{box-shadow:0 0 18px #9fd8ff59}#cast .card.more{width:auto;min-width:54px;cursor:default;color:var(--ink-dim)}#cast .card.glow{border-color:var(--glow);box-shadow:0 0 22px color-mix(in srgb,var(--glow) 55%,transparent);animation:castGlow 1.6s ease-in-out infinite}@keyframes castGlow{50%{box-shadow:0 0 34px color-mix(in srgb,var(--glow) 80%,transparent)}}#cast .card.glow .pic:after{content:"✦";position:absolute;top:2px;right:6px;color:var(--glow);font-size:14px;text-shadow:0 0 8px var(--glow)}#cast .bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:max-content;max-width:220px;white-space:normal;text-align:center;font-family:var(--serif);font-size:15px;line-height:1.25;color:#1b1420;background:#fdf6e6;padding:6px 10px;border-radius:12px;box-shadow:0 4px 14px #00000059;animation:lineIn .25s ease;pointer-events:none}#cast .bubble:after{content:"";position:absolute;top:100%;left:50%;margin-left:-6px;border:6px solid transparent;border-top-color:#fdf6e6}.echo-card{position:relative;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;width:112px;padding:8px 6px;border-radius:20px;background:linear-gradient(180deg,#14182ccc,#0a0c1ae6);border:1px solid color-mix(in srgb,var(--c) 45%,transparent);color:var(--ink);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 12px 32px #00000080,0 0 24px color-mix(in srgb,var(--c) 22%,transparent);pointer-events:auto;cursor:pointer;font-family:var(--ui);transition:transform .18s}.echo-card:hover{transform:translateY(-3px)}.echo-card[hidden]{display:none}.echo-card .pic{position:relative;width:82px;height:82px;border-radius:50%;overflow:hidden;background:#0a0c1a;animation:breathe 3.6s ease-in-out infinite}.echo-card .pic img{width:100%;height:100%;object-fit:cover;object-position:center 35%;display:block;transition:opacity .3s}.echo-card .ring{position:absolute;top:2px;left:50%;width:94px;height:94px;margin-left:-47px;pointer-events:none}.echo-card .ring svg{width:100%;height:100%;transform:rotate(-90deg)}.echo-card .ring circle{fill:none;stroke:#ffffff1a;stroke-width:4}.echo-card .ring .val{stroke:var(--c);stroke-linecap:round;stroke-dasharray:289;stroke-dashoffset:289;transition:stroke-dashoffset 1s ease;filter:drop-shadow(0 0 4px var(--c))}.echo-card .nm{margin-top:10px;font-family:var(--title);font-size:13px;letter-spacing:.04em;color:#fff8e6;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.echo-card .st{font-size:10px;color:var(--c);letter-spacing:.04em;min-height:12px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.echo-card .q{position:absolute;top:-8px;right:-4px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-family:var(--title);font-size:16px;color:#1b1420;background:var(--c);box-shadow:0 0 14px var(--c);opacity:0;transform:scale(.4);transition:all .3s cubic-bezier(.3,1.6,.5,1)}.echo-card.alert .q{opacity:1;transform:scale(1);animation:bob 1s ease-in-out infinite}.echo-card[data-pose=sniff] .pic{animation:sniff .7s ease-in-out infinite}.echo-card[data-pose=found] .pic{animation:found .6s cubic-bezier(.3,1.6,.5,1);box-shadow:0 0 30px var(--c)}.echo-card[data-pose=sleep] .pic{animation:breathe 5.5s ease-in-out infinite;filter:brightness(.6) saturate(.7)}.echo-card[data-pose=sleep]:after{content:"z z";position:absolute;top:4px;right:10px;font-family:var(--serif);font-style:italic;font-size:14px;color:var(--c);animation:zz 2.4s ease-in-out infinite}@keyframes sniff{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-3px) rotate(-4deg)}75%{transform:translate(3px) rotate(4deg)}}@keyframes found{0%{transform:scale(.9)}60%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes zz{0%,to{opacity:.2;transform:translateY(0)}50%{opacity:1;transform:translateY(-6px)}}@keyframes breathe{50%{transform:scale(1.05)}}@keyframes bob{50%{transform:translateY(-6px)}}@media(max-width:760px){#cast{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));gap:6px}#cast .row{padding:10px 2px 2px;gap:6px}#cast .card{width:66px;padding:4px 3px 5px;border-radius:13px}#cast .pic{width:40px;height:40px}#cast .pic.ico{font-size:20px}#cast .card b{font-size:12px;margin-top:4px}.echo-card{width:80px;padding:5px 4px;border-radius:15px}.echo-card .pic{width:52px;height:52px}.echo-card .ring{width:62px;height:62px;margin-left:-31px;top:0}.echo-card .nm{font-size:11px;margin-top:6px}.moon{width:40px;height:40px;right:6vw}}@media(prefers-reduced-motion:reduce){.layer,.layer img,.fog i,.echo-card .pic,#cast .card.glow{animation:none!important;transition:none}.layer{transform:none}}#cast .card.player.asleep{opacity:.62;filter:saturate(.45) brightness(.8);border-style:dashed}#cast .card.player.asleep:hover{opacity:.9}#cast .card.player .zz{position:absolute;right:-2px;top:-4px;font-style:normal;font-size:16px;filter:drop-shadow(0 0 4px rgba(0,0,0,.8));animation:zz 2.6s ease-in-out infinite}@keyframes zz{0%,to{transform:translateY(0);opacity:.85}50%{transform:translateY(-4px);opacity:1}}#cast .card.player.dark .pic img,.echo-card.dark .pic img{filter:hue-rotate(220deg) saturate(.7) brightness(.72) contrast(1.15)}#cast .card.player.dark .pic{box-shadow:0 0 14px #783cc88c;border-color:#6b3fb0}.echo-card.dark{border-color:#8c50e699;box-shadow:0 12px 32px #00000080,0 0 24px #783cc859}.echo-card.dark .ring .val{stroke:#9b6bff}@media(prefers-reduced-motion:reduce){#cast .card.player .zz{animation:none}}#scene>.figs,#scene>.figs-ui{top:0;right:0;bottom:0;left:0}#scene>.figs{transform:translate(calc(var(--px) * 1.3),calc(var(--py) * 1.15));filter:brightness(calc(var(--pb) * var(--wb) * var(--db) * var(--fb, 1))) saturate(calc(var(--ps) * var(--ws)));transition:opacity .9s ease}#scene>.figs.in,#scene>.figs.out{opacity:0}#scene>.figs-ui{z-index:1;transform:translate(calc(var(--px) * 1.3),calc(var(--py) * 1.15))}#scene{--rim: rgba(255, 246, 225, .22);--amb: transparent}#scene[data-phase=alba]{--rim: rgba(255, 186, 140, .55);--amb: rgba(255, 170, 130, .3)}#scene[data-phase=tramonto]{--rim: rgba(255, 140, 70, .6);--amb: rgba(230, 110, 70, .42)}#scene[data-phase=notte]{--rim: rgba(130, 160, 255, .5);--amb: rgba(40, 60, 150, .6);--fb: 1.08}#scene[data-place=in][data-phase=notte],#scene[data-phase=notte][data-lamps="1"]{--rim: rgba(255, 170, 90, .55);--amb: rgba(70, 60, 140, .45)}#scene[data-place=in]:not([data-phase=notte]){--rim: rgba(255, 190, 120, .4)}#scene[data-place=cave]{--amb: rgba(40, 50, 90, .35)}#scene[data-dark=on]{--rim: transparent}#scene[data-dark=see]{--rim: rgba(170, 120, 255, .5);--amb: rgba(90, 50, 170, .45)}.fig{position:absolute;left:0;top:0;padding:0;margin:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;pointer-events:auto;opacity:0;transition:opacity .5s ease;-webkit-tap-highlight-color:transparent;outline:none;touch-action:manipulation}.fig.ready{opacity:1}.fig>.step,.fig .pose,.fig .idle{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:var(--ax, 50%) var(--ay, 100%)}.fig .idle{will-change:transform;animation:figBreathe var(--br, 4s) ease-in-out var(--bd, 0s) infinite,figSway var(--sw, 7s) ease-in-out var(--sd, 0s) infinite,figGlance var(--gl, 13s) ease-in-out var(--gd, 0s) infinite}.fig img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.fig .lit{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,var(--rim) 0%,transparent 42%,transparent 72%,color-mix(in srgb,var(--rim) 45%,transparent) 100%),linear-gradient(var(--amb),var(--amb));mix-blend-mode:soft-light;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;pointer-events:none}.fig .shadow{position:absolute;left:var(--ax, 50%);top:var(--ay, 100%);width:74%;height:calc(var(--fw, 100px) * .13);transform:translate(-50%,-55%);border-radius:50%;background:radial-gradient(closest-side,rgba(8,6,12,.6),rgba(8,6,12,.28) 55%,transparent);pointer-events:none}.fig:hover .idle img,.fig:focus-visible .idle img{filter:drop-shadow(0 0 1.5px rgba(255,244,205,.95)) drop-shadow(0 0 9px rgba(242,207,122,.65))}.fig.glow .idle img{filter:drop-shadow(0 0 2px var(--glow)) drop-shadow(0 0 14px var(--glow));animation:figGlow 1.6s ease-in-out infinite}@keyframes figGlow{50%{opacity:.86}}@keyframes figBreathe{0%,to{scale:1 1}50%{scale:1.006 1.017}}@keyframes figSway{0%,to{rotate:-.45deg}50%{rotate:.55deg}}@keyframes figGlance{0%,76%,to{transform:none}81%,91%{transform:skew(calc(var(--gx, 1) * -1.3deg)) translate(calc(var(--gx, 1) * .7%))}}.fig.walking>.step{animation:figStep .46s ease-in-out infinite}@keyframes figStep{0%,to{translate:0 0;rotate:0deg}25%{translate:0 -2.4%;rotate:-1.2deg}50%{translate:0 0}75%{translate:0 -2.4%;rotate:1.2deg}}.fig.party:before{content:"⚑";position:absolute;left:var(--ax, 50%);top:-4px;transform:translate(-50%,-100%);font-size:15px;color:#9fd8ff;text-shadow:0 0 8px rgba(159,216,255,.85);pointer-events:none}.fig.echo.dark .idle img,.fig.dark .pet img{filter:hue-rotate(220deg) saturate(.7) brightness(.72) contrast(1.15)}.fig.asleep .pose{rotate:-90deg;translate:calc(var(--fh) * .42) calc(var(--fw) * -.38);filter:saturate(.45) brightness(.72)}.fig.asleep .idle{animation:figBreathe 5.5s ease-in-out var(--bd, 0s) infinite}.fig.asleep .shadow{width:calc(var(--fh) * .9);left:calc(var(--ax, 50%) - var(--fh) * .04)}.fig.echo .idle,.fig .pet img{animation:figBreathe 2.8s ease-in-out var(--bd, 0s) infinite,figSwish 4.2s ease-in-out var(--sd, 0s) infinite;transform-origin:50% 100%}@keyframes figSwish{0%,55%,to{transform:none}62%{transform:skew(2.4deg)}70%{transform:skew(-1.8deg)}78%{transform:skew(1deg)}}.fig.echo[data-kind=lucciola]{--lift: .55}.fig.echo[data-kind=gufo]{--lift: .2}.fig.echo[data-kind=lucciola] .pose,.fig.echo[data-kind=gufo] .pose{translate:0 calc(var(--lift) * -100%)}.fig.echo[data-kind=lucciola] .idle,.fig.echo[data-kind=gufo] .idle,.fig .pet[data-kind=lucciola] img,.fig .pet[data-kind=gufo] img{animation:figHover 3.4s ease-in-out var(--bd, 0s) infinite,figBreathe 2.6s ease-in-out infinite}.fig.echo[data-kind=lucciola] .idle:before{content:"";position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,230,128,.55),transparent);animation:figHalo 2.2s ease-in-out infinite}@keyframes figHover{0%,to{translate:0 0}50%{translate:0 -8%}}@keyframes figHalo{50%{opacity:.45}}.fig.echo[data-pose=sniff] .pose{scale:1.03 .9;animation:figSniff .8s ease-in-out infinite}.fig.echo[data-pose=sniff][data-kind=lucciola] .pose,.fig.echo[data-pose=sniff][data-kind=gufo] .pose{translate:0 calc(var(--lift) * -45%)}@keyframes figSniff{0%,to{rotate:0deg}30%{rotate:3.5deg}65%{rotate:-2deg}}.fig.echo>.step.hop{animation:figHop .75s cubic-bezier(.3,1.4,.5,1)}@keyframes figHop{0%,to{translate:0 0;scale:1 1}15%{scale:1.06 .9}45%{translate:0 -22%;scale:.97 1.05}80%{translate:0 0;scale:1.04 .95}}.fig.echo[data-pose=sleep] .pose{scale:1.08 .74;translate:0 0;filter:brightness(.7) saturate(.7)}.fig.echo[data-pose=sleep] .idle{animation:figBreathe 5.5s ease-in-out infinite}.fig .pet{position:absolute;pointer-events:none}.fig .pet img{opacity:0;transition:opacity .4s}.fig .pet.ready img{opacity:1}.fig .pet[data-kind=lucciola]{translate:0 -45%}.fig .pet[data-kind=gufo]{translate:0 -15%}.fui{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none}.fui .tag{position:absolute;left:0;bottom:6px;transform:translate(-50%);white-space:nowrap;font-family:var(--serif);font-weight:600;font-size:14px;color:#fff8e6;background:#0c0a14b8;border:1px solid rgba(242,207,122,.35);padding:2px 9px;border-radius:10px;opacity:0;transition:opacity .2s}.fui.hover .tag{opacity:1}.fui.hover .bubble{bottom:36px}.fui .zz{position:absolute;left:calc(var(--fh, 100px) * -.22);top:calc(var(--fh, 100px) - var(--fw, 40px) * 1.05 - 22px);font-style:normal;font-size:18px;filter:drop-shadow(0 0 4px rgba(0,0,0,.8));animation:zz 2.6s ease-in-out infinite}.fui .bubble{position:absolute;left:0;bottom:6px;transform:translate(calc(-50% + var(--bx, 0px)),var(--by, 0px));width:max-content;max-width:min(240px,70vw);white-space:normal;text-align:center;font-family:var(--serif);font-size:15px;line-height:1.25;color:#1b1420;background:#fdf6e6;padding:6px 11px;border-radius:13px;box-shadow:0 4px 16px #0006;opacity:0;transition:opacity .25s}.fui .bubble.on{opacity:1}.fui .bubble:after{content:"";position:absolute;top:100%;left:calc(50% - var(--bx, 0px));margin-left:-6px;border:6px solid transparent;border-top-color:#fdf6e6}.fui .bubble.act{font-style:italic;background:#e9e2f4;color:#2a2236}.fui .bubble.act:after{border-top-color:#e9e2f4}@media(max-width:760px){.fui .bubble{font-size:13.5px;max-width:min(200px,62vw);padding:5px 9px}.fui .tag{font-size:12.5px}}@media(prefers-reduced-motion:reduce){.fig .idle,.fig.walking>.step,.fig.echo>.step.hop,.fig.echo[data-pose] .pose,.fig .pet img,.fig.glow .idle img,.fig.echo[data-kind] .idle,.fig.echo[data-kind=lucciola] .idle:before,.fui .zz{animation:none!important}.fig,.fig .pet img,#scene>.figs{transition-duration:.3s}}#intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#000;overflow:hidden;overflow:clip}#intro.hidden{display:none}.kb{position:absolute;top:-6%;right:-6%;bottom:-6%;left:-6%;background-size:cover;background-position:center;opacity:0;transition:opacity 1.6s ease;will-change:transform}.kb.show,.title-screen .kb{opacity:1}.kb-in{animation:kbIn 22s ease-out forwards}.kb-out{animation:kbOut 22s ease-out forwards}.kb-left{animation:kbLeft 22s ease-out forwards}.kb-right{animation:kbRight 22s ease-out forwards}@keyframes kbIn{0%{transform:scale(1.02)}to{transform:scale(1.16) translate(-1%,-1%)}}@keyframes kbOut{0%{transform:scale(1.18)}to{transform:scale(1.02)}}@keyframes kbLeft{0%{transform:scale(1.12) translate(3%)}to{transform:scale(1.12) translate(-3%)}}@keyframes kbRight{0%{transform:scale(1.12) translate(-3%)}to{transform:scale(1.12) translate(3%)}}.kb.stranger{top:8%;right:30%;bottom:8%;left:30%;background-repeat:no-repeat;border-radius:50%;filter:drop-shadow(0 0 60px rgba(242,207,122,.25));mask-image:radial-gradient(circle,#000 52%,transparent 72%);-webkit-mask-image:radial-gradient(circle,#000 52%,transparent 72%)}.vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 35%,rgba(0,0,0,.85) 100%)}.veil{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 40%,#1e123c8c,#050409eb 75%)}.title-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;cursor:pointer}.title-screen .rain{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.drop{position:absolute;top:-12%;width:1.5px;height:80px;background:linear-gradient(transparent,#d6a0ffd9);border-radius:1px;animation:drop linear infinite;filter:drop-shadow(0 0 4px rgba(190,120,255,.9))}@keyframes drop{to{transform:translate(-40px,125vh)}}.title-wrap{position:relative;text-align:center;z-index:2;padding:40px 80px}.title-wrap:before{content:"";position:absolute;top:-40px;right:-120px;bottom:-40px;left:-120px;z-index:-1;background:radial-gradient(ellipse at center,rgba(6,4,14,.72),transparent 70%)}.pre{font-family:var(--title);letter-spacing:.6em;font-size:13px;color:var(--gold-dim);opacity:0;animation:fadeUp 1.2s ease .4s forwards}.mega{margin:0;font-family:var(--title);font-weight:700;font-size:clamp(72px,15vw,190px);letter-spacing:.14em;line-height:1;background:linear-gradient(180deg,#fffbe9 10%,#f2cf7a 50%,#8a6420 95%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 40px rgba(242,207,122,.45));opacity:0;animation:megaIn 2.2s cubic-bezier(.2,.8,.2,1) .6s forwards}@keyframes megaIn{0%{opacity:0;letter-spacing:.5em;filter:blur(14px) drop-shadow(0 0 0 transparent)}to{opacity:1;letter-spacing:.14em;filter:blur(0) drop-shadow(0 6px 40px rgba(242,207,122,.45))}}.sub{font-family:var(--title);letter-spacing:.4em;font-size:clamp(11px,1.5vw,16px);color:#e8dcc0;margin-top:6px;opacity:0;animation:fadeUp 1.4s ease 1.6s forwards}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.press{margin-top:56px;font-family:var(--title);letter-spacing:.35em;font-size:15px;color:#fff;animation:blink 1.6s ease-in-out infinite 2.4s;opacity:0}@keyframes blink{0%,to{opacity:.15}50%{opacity:1}}.press.hidden,.menu.hidden{display:none}.title-screen.flashed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;animation:flashOut 1.2s ease forwards;pointer-events:none;z-index:5}@keyframes flashOut{0%{opacity:.9}to{opacity:0}}.menu{margin-top:42px;display:flex;flex-direction:column;align-items:center;gap:12px}.menu button{min-width:320px;font-family:var(--title);font-size:19px;letter-spacing:.12em;color:#f4ede0;background:#0a08128c;border:1px solid rgba(242,207,122,.3);border-radius:14px;padding:14px 28px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;animation:fadeUp .6s ease forwards;transition:all .2s}.menu button:hover,.menu button:focus{outline:none;color:#1b1420;background:linear-gradient(180deg,#ffe9a8,var(--gold));border-color:var(--gold);transform:scale(1.04);box-shadow:0 0 40px #f2cf7a66}.ticker{position:absolute;left:0;right:0;bottom:0;height:42px;background:#050409c7;border-top:1px solid rgba(242,207,122,.25);overflow:hidden;z-index:3}.ticker-track{display:inline-block;white-space:nowrap;padding-left:100%;line-height:42px;font-family:var(--serif);font-size:17px;color:#e8dcc0;animation:ticker 60s linear infinite}.ticker-track b{color:var(--gold);font-weight:600}.ticker-track b.live{color:#7dffa0}.ticker-track .sep{color:var(--gold-dim);margin:0 22px}@keyframes ticker{to{transform:translate(-100%)}}.mute{position:absolute;top:18px;right:18px;z-index:4;background:#0a081280;border:1px solid rgba(255,255,255,.15);border-radius:50%;width:44px;height:44px;font-size:18px;color:#fff}.corner{position:absolute;left:20px;top:20px;font-family:var(--title);font-size:11px;letter-spacing:.25em;color:#f2cf7a99;z-index:3}.story-screen{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;transition:opacity .7s}.story-screen.out{opacity:0}.panel-stack{position:absolute;top:0;right:0;bottom:0;left:0}.letterbox{position:absolute;left:0;right:0;height:9vh;background:#000;z-index:2}.letterbox.top{top:0}.letterbox.bottom{bottom:0}.narration{position:absolute;left:0;right:0;bottom:11vh;z-index:3;display:flex;justify-content:center;padding:0 6vw}.narration p{margin:0;max-width:980px;text-align:center;white-space:pre-line;font-family:var(--serif);font-size:clamp(22px,2.7vw,36px);line-height:1.35;color:#fff8e6;text-shadow:0 2px 6px #000,0 0 30px rgba(0,0,0,.9);padding:18px 28px;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),transparent 75%)}.skip{position:absolute;right:22px;top:calc(9vh + 14px);z-index:6;background:#00000080;color:#e8dcc0;border:1px solid rgba(255,255,255,.2);border-radius:22px;padding:7px 16px;font-size:13px;min-height:44px;min-width:88px;cursor:pointer;touch-action:manipulation}@media(max-width:600px){.skip{right:12px;padding:10px 18px;font-size:15px}}.hint{position:absolute;right:22px;bottom:calc(9vh + 12px);z-index:4;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#ffffff59}.finale{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;z-index:5;animation:fadeIn .6s ease}.finale:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;animation:flashOut 1.4s ease forwards;pointer-events:none}.finale .mega,.finale .sub{position:relative;z-index:2}.finale .reveal{animation:megaIn 1.6s cubic-bezier(.2,.8,.2,1) forwards}.finale .reveal2{animation:fadeUp 1.2s ease .9s forwards}@keyframes fadeIn{0%{opacity:0}}.wizard{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;transition:opacity .9s,transform .9s}.wizard.out{opacity:0;transform:scale(1.06)}.wz-top{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:22px 30px}.wz-logo{font-family:var(--title);font-size:22px;letter-spacing:.3em;color:var(--gold)}.dots{display:flex;gap:8px}.dots i{width:34px;height:4px;border-radius:2px;background:#ffffff26;transition:background .4s}.dots i.done{background:var(--gold-dim)}.dots i.on{background:var(--gold);box-shadow:0 0 10px var(--gold)}.wz-stage{position:relative;z-index:2;flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:0 24px;overflow-y:auto}.wz-stage>:first-child{margin-top:auto}.wz-stage>:last-child{margin-bottom:auto}.wz-stage.in>*{animation:fadeUp .6s ease both}.wz-stage.in>*:nth-child(2){animation-delay:.08s}.wz-stage.in>*:nth-child(3){animation-delay:.16s}.wz-stage.in>*:nth-child(4){animation-delay:.24s}.wz-stage.shake{animation:shake .4s}@keyframes shake{25%{transform:translate(-10px)}75%{transform:translate(10px)}}.wz-q{font-family:var(--title);font-size:clamp(30px,4.6vw,56px);color:#fff8e6;text-shadow:0 4px 30px rgba(0,0,0,.8)}.wz-hint{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--ink-dim);margin:8px 0 30px}.wz-input{width:min(560px,90vw);background:#ffffff0d;border:0;border-bottom:2px solid var(--gold-dim);color:#fff;font-family:var(--serif);font-size:44px;text-align:center;padding:10px;outline:none;transition:border-color .3s}.wz-input:focus{border-color:var(--gold)}.wz-input.small{font-size:22px;margin-top:18px}.wz-input.bad{border-color:#ffb38a}.wz-err{width:min(560px,90vw);margin:14px auto 0;font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.35;color:#ffb38a;text-shadow:0 2px 14px rgba(0,0,0,.85);animation:wzErr .4s ease-out}.wz-err:before{content:"✦ ";color:var(--gold);font-style:normal}@keyframes wzErr{0%{opacity:0;transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){.wz-err{animation:none}}.cards{display:grid;gap:14px;width:min(1100px,94vw)}.cards.origins{grid-template-columns:repeat(3,1fr)}.cards.echoes{display:flex;flex-wrap:wrap;justify-content:center;width:min(1180px,96vw);padding:10px 0 18px}.cards.echoes .card{flex:0 1 calc((100% - 42px)/4);max-width:290px;padding:12px 12px 16px}@media(max-width:800px){.cards.origins{grid-template-columns:repeat(2,1fr)}.cards.echoes .card{flex-basis:calc((100% - 14px)/2)}}.card{background:#0e0a1ab3;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:20px 16px;color:var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .25s;text-align:center}.card:hover{transform:translateY(-4px);border-color:#f2cf7a80}.card.sel{border-color:var(--gold);background:#3c2c0e8c;box-shadow:0 0 0 1px var(--gold),0 14px 50px #f2cf7a40;transform:translateY(-6px)}.card .ico{font-size:38px}.card h4{margin:8px 0 0;font-family:var(--title);font-weight:500;font-size:18px;letter-spacing:.05em}.card p{margin:8px 0 0;font-family:var(--serif);font-size:17px;line-height:1.3;color:var(--ink-dim)}.card small{display:block;margin-top:10px;font-size:12px;letter-spacing:.06em;color:var(--gold)}.card.echo .orb{width:74px;height:74px;border-radius:50%;margin:6px auto 12px;background:radial-gradient(circle at 35% 30%,#fff,var(--c) 50%,transparent 75%);box-shadow:0 0 40px var(--c);animation:breathe 3s ease-in-out infinite}.card.echo.sel .orb{animation:breathe 1.2s ease-in-out infinite;box-shadow:0 0 70px var(--c)}.big-orb{width:140px;height:140px;border-radius:50%;margin-bottom:24px;background:radial-gradient(circle at 35% 30%,#fff,var(--c) 50%,transparent 75%);box-shadow:0 0 90px var(--c);animation:breathe 2.4s ease-in-out infinite}.quests{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:900px}.quest{background:#0e0a1ab3;color:var(--ink);border:1px solid rgba(255,255,255,.14);border-radius:30px;padding:12px 22px;font-family:var(--serif);font-size:20px;transition:all .2s}.quest:hover{border-color:#f2cf7a80}.quest.sel{border-color:var(--gold);color:var(--gold);background:#3c2c0e8c}.oath{max-width:680px;padding:40px 46px;border-radius:20px;background:linear-gradient(180deg,#281e0ed9,#0e0a1ae6);border:1px solid var(--gold-dim);box-shadow:0 0 80px #f2cf7a2e}.oath-seal{font-size:40px;color:var(--gold);text-shadow:0 0 20px var(--gold)}.oath-title{font-family:var(--title);letter-spacing:.4em;color:var(--gold);margin:6px 0 18px}.oath p{font-family:var(--serif);font-size:28px;line-height:1.45;margin:0}.oath .oath-small{font-size:17px;color:var(--ink-dim);margin-top:20px;font-style:italic}.wz-nav{position:relative;z-index:2;display:flex;justify-content:space-between;padding:22px 30px 34px}.wz-nav button{font-family:var(--title);font-size:17px;letter-spacing:.1em;background:#0a081299;color:var(--ink);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:13px 26px}.wz-nav .next{color:#1b1420;background:linear-gradient(180deg,#ffe9a8,var(--gold));border:0;box-shadow:0 8px 30px #f2cf7a4d}.wz-nav .next.final{animation:pulseGold 1.6s ease-in-out infinite;font-size:19px;padding:15px 34px}@keyframes pulseGold{50%{box-shadow:0 0 0 10px #f2cf7a26,0 8px 40px #f2cf7a80}}.lang-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.lang-wrap{position:relative;z-index:2;text-align:center;padding:20px}.lang-logo{font-family:Cinzel,serif;font-weight:700;font-size:clamp(56px,10vw,120px);letter-spacing:.16em;background:linear-gradient(180deg,#fffbe9 10%,#f2cf7a 50%,#8a6420 95%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 40px rgba(242,207,122,.45));animation:fadeUp 1.2s ease both}.lang-q{font-family:Cormorant Garamond,"Noto Serif SC",serif;font-size:17px;line-height:1.7;color:#e8dcc0;margin:6px 0 30px;opacity:.85;animation:fadeUp 1.2s ease .3s both}.lang-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;max-width:980px;margin:0 auto}@media(max-width:760px){.lang-grid{grid-template-columns:repeat(2,1fr)}}.lang-grid button{display:flex;align-items:center;justify-content:center;gap:10px;font-size:20px;color:#f4ede0;background:#0e0a1ab8;border:1px solid rgba(242,207,122,.25);border-radius:16px;padding:16px 12px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .2s;animation:fadeUp .6s ease both;font-family:Cormorant Garamond,"Noto Serif SC","Noto Serif JP",Amiri,serif}.lang-grid button:nth-child(n){animation-delay:calc(.4s + var(--i, 0) * .05s)}.lang-grid button:hover{transform:translateY(-4px) scale(1.04);border-color:var(--gold);background:#3c2c0eb3;box-shadow:0 0 40px #f2cf7a4d}.lang-grid .flag{font-size:28px}.lang-pill{position:absolute;top:18px;right:74px;z-index:4;background:#0a08128c;border:1px solid rgba(255,255,255,.18);border-radius:22px;height:44px;padding:0 16px;color:#fff;font-size:14px}.lang-pill:hover{border-color:var(--gold)}.oath .oath-quest{font-style:italic;color:var(--gold);font-size:24px;margin-top:14px}[dir=rtl] .wz-nav{flex-direction:row-reverse}[dir=rtl] .mute{right:auto;left:18px}[dir=rtl] .lang-pill{right:auto;left:74px}.card.echo .echo-art{width:100%;aspect-ratio:3 / 2;border-radius:12px;margin-bottom:8px;background-repeat:no-repeat;background-color:#0e0a1a;box-shadow:0 0 26px color-mix(in srgb,var(--c) 70%,transparent)}.card.echo h4{color:color-mix(in srgb,var(--c) 55%,#fff8e6)}.card.echo p{font-size:15.5px}.card.echo.sel .echo-art{box-shadow:0 0 50px var(--c)}.big-orb{background-repeat:no-repeat;width:200px;height:200px;border:3px solid var(--c);flex-shrink:0}.mute,.lang-pill{top:max(18px,env(safe-area-inset-top))}.corner{top:max(20px,env(safe-area-inset-top))}.wz-top{padding-top:max(22px,env(safe-area-inset-top))}.wz-nav{padding-bottom:max(34px,env(safe-area-inset-bottom))}.ticker{bottom:env(safe-area-inset-bottom)}@media(max-width:600px){.title-wrap{padding:40px 16px;max-width:100vw}.mega{font-size:clamp(40px,14vw,190px)}.pre{font-size:11px;letter-spacing:.32em}.sub{letter-spacing:.28em}.press{font-size:13px;letter-spacing:.22em}.corner{display:none}.title-wrap:before{top:-40px;right:-20px;bottom:-40px;left:-20px}.menu button{min-width:min(320px,86vw);font-size:17px;padding:14px 18px}.wz-top,.wz-nav{padding-left:16px;padding-right:16px}.wz-nav button{padding:13px 18px}.wz-input{font-size:34px}.oath{padding:26px 20px}.oath p{font-size:22px}.cards{gap:10px}.card{padding:14px 10px}.card p{font-size:15px}.cards.echoes .card{flex-basis:calc((100% - 10px)/2);padding:8px 8px 12px}.card.echo h4{font-size:15px}.card.echo p{font-size:13px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.card.echo.sel p{-webkit-line-clamp:unset}.wz-hint{font-size:18px;margin-bottom:18px}.wz-err{font-size:17px}.big-orb{width:160px;height:160px}.lang-grid{gap:8px}.lang-grid button{font-size:18px;padding:13px 8px}}.cards.origins.dark{grid-template-columns:repeat(4,1fr)}.wz-dark{display:flex;flex-direction:column;align-items:center;gap:2px;margin:18px 0 10px;font-family:var(--serif);color:#c9a0ff}.wz-dark b{font-family:var(--title);font-weight:500;letter-spacing:.3em;text-transform:uppercase;font-size:14px}.wz-dark span{font-style:italic;font-size:16px;color:var(--ink-dim)}.card.dark{background:#160a24c7;border-color:#b06cff47}.card.dark h4{color:#dcc4ff}.card.dark small{color:#c9a0ff}.card.dark.sel{border-color:#b06cff;background:#30144cb3;box-shadow:0 0 0 1px #b06cff,0 14px 50px #b06cff4d}.wz-age{margin-top:22px;padding-top:16px;border-top:1px solid rgba(242,207,122,.25)}.wz-age-q{font-family:var(--serif);font-size:22px;color:#fff8e6}.wz-age-b{display:flex;flex-wrap:wrap;gap:10px 12px;justify-content:center;margin:10px 0 6px}.wz-age-b .age{min-width:96px;background:#0e0a1ab3;color:var(--ink);border:1px solid rgba(255,255,255,.18);border-radius:30px;padding:9px 22px;font-family:var(--serif);font-size:20px;cursor:pointer}.wz-age-b .age.sel{border-color:var(--gold);color:var(--gold);background:#3c2c0e8c}.wz-age-h{font-size:14px;color:var(--ink-dim);font-style:italic}.wz-age-h.err{color:#ffb38a}.wz-hard{display:flex;gap:10px;align-items:flex-start;justify-content:center;text-align:left;margin-top:14px;cursor:pointer;font-family:var(--serif)}.wz-hard.hidden{display:none}.wz-hard input{margin-top:5px;accent-color:#b06cff}.wz-hard b{display:block;font-size:17px;color:#e8d8ff}.wz-hard small{display:block;font-size:13px;color:var(--ink-dim);max-width:440px}@media(max-width:800px){.cards.origins.dark{grid-template-columns:repeat(2,1fr)}.oath .wz-age-q{font-size:18px}}.acct-ov{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) 14px max(16px,env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 30%,#1e1a3cdb,#04040cf2);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);overflow-y:auto;animation:acctIn .35s ease-out}@keyframes acctIn{0%{opacity:0}to{opacity:1}}.acct-card{width:min(460px,100%);max-height:100%;overflow-y:auto;box-sizing:border-box;padding:22px 22px 18px;border-radius:20px;background:linear-gradient(180deg,#1c1834f7,#0c0a18f7);border:1px solid rgba(242,207,122,.35);box-shadow:0 24px 70px #0009,inset 0 1px #ffffff0f;color:var(--ink, #f4ede0);font-family:var(--ui, system-ui, sans-serif);text-align:center}.acct-card h2{margin:4px 0 8px;font-family:var(--title, serif);font-size:21px;color:var(--gold, #f2cf7a);letter-spacing:.04em}.acct-card p{margin:6px 0;font-size:15px;line-height:1.45;color:var(--ink-dim, #c9bfae)}.acct-moon{font-size:28px;color:var(--gold, #f2cf7a);text-shadow:0 0 18px rgba(242,207,122,.6)}.acct-code{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:14px 0 10px}.acct-code span{padding:7px 11px;border-radius:10px;background:#f2cf7a1f;border:1px solid rgba(242,207,122,.45);font:600 18px/1.1 ui-monospace,Cascadia Mono,Menlo,Consolas,monospace;color:#fff3cf;letter-spacing:.02em;-webkit-user-select:all;user-select:all}.acct-code span.num{background:#8cb4ff24;border-color:#a0c4ff80;color:#dfe9ff}.acct-warn{padding:9px 12px;border-radius:12px;background:#ffaa5a1f;border:1px solid rgba(255,170,90,.35);color:#ffe2bf!important;font-weight:600}.acct-small{font-size:13px!important;opacity:.9}.acct-small a{color:var(--gold, #f2cf7a)}.acct-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:12px 0 6px}.acct-row button{flex:1 1 0;min-width:96px;min-height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#ffffff12;color:var(--ink, #f4ede0);font-size:14px;cursor:pointer}.acct-row button:hover,.acct-row button:focus-visible{background:#ffffff21}.acct-qr{margin:8px auto 4px}.acct-qr-img{width:min(210px,60vw);margin:0 auto;padding:10px;border-radius:12px;background:#fff}.acct-qr-img svg{display:block;width:100%;height:auto}.acct-btns{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:14px}.acct-main{min-width:70%;min-height:46px;padding:0 20px;border-radius:14px;border:1px solid rgba(242,207,122,.7);background:linear-gradient(180deg,#f6d98c,#d8ae55);color:#1d1406;font:700 16px/1 var(--ui, system-ui, sans-serif);cursor:pointer;box-shadow:0 6px 22px #f2cf7a40}.acct-main:disabled{opacity:.6;cursor:wait}.acct-link{background:none;border:none;color:var(--ink-dim, #c9bfae);text-decoration:underline;font-size:14px;cursor:pointer;padding:6px}.acct-form input,.acct-form textarea{width:100%;box-sizing:border-box;margin-top:10px;padding:12px 14px;border-radius:12px;border:1px solid rgba(242,207,122,.4);background:#00000059;color:#fff;font:500 17px/1.35 ui-monospace,Cascadia Mono,Menlo,Consolas,monospace;resize:none;text-align:center}.acct-form input:focus,.acct-form textarea:focus{outline:2px solid rgba(242,207,122,.7);outline-offset:1px}.acct-err{color:#ffb4a8!important;font-weight:600}.acct-note{font-size:13px!important;color:#ffe2bf!important}.acct-inv{margin:12px 0;padding:10px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.acct-inv small{color:var(--ink-dim, #c9bfae)}.acct-box{margin:4px 0 6px}.acct-box .hero-btn,.acct-bell{min-height:36px;font-size:13px}.acct-need-msg{margin:4px 0 8px;padding:8px 10px;border-radius:10px;background:#ffaa5a1a;border:1px solid rgba(255,170,90,.3);color:#ffe2bf;font-size:13px;line-height:1.4}.acct-dev .acct-this{font-size:12px;color:var(--gold, #f2cf7a);font-weight:600}#menu [data-panel=hero].acct-need{position:relative}#menu [data-panel=hero].acct-need:after{content:"";position:absolute;top:4px;inset-inline-end:4px;width:9px;height:9px;border-radius:50%;background:#ff9a3c;box-shadow:0 0 8px #ff9a3ce6}.title-screen .notice{margin-top:14px;font-size:14px;color:#ffe2bf;text-shadow:0 1px 6px rgba(0,0,0,.9)}.title-screen .notice a{color:var(--gold, #f2cf7a)}@media(max-width:420px){.acct-card{padding:18px 14px 14px}.acct-code span{font-size:16px;padding:6px 8px}}
