:root{--gold:#e2b95a;--red:#d9432f;--panel:#0c0a08c7;--text:#f3ead6;--muted:#b8ad98}*{box-sizing:border-box}html,body{height:100%;color:var(--text);background:#0b0a09;margin:0;font-family:Georgia,Times New Roman,serif;overflow:hidden}#game{cursor:crosshair;width:100%;height:100%;display:block;position:fixed;inset:0}#hud,#overlay{pointer-events:none;position:fixed;inset:0}#overlay{justify-content:center;align-items:center;display:flex}.loading{text-align:center;background:var(--panel);border:1px solid #e2b95a66;border-radius:6px;padding:40px 60px}.loading h1{letter-spacing:.12em;color:var(--gold);margin:0 0 10px;font-size:34px;font-weight:400}.loading p{color:var(--muted);margin:0}.hint{background:var(--panel);color:var(--muted);letter-spacing:.03em;border:1px solid #e2b95a59;border-radius:6px;padding:14px 22px;font-size:15px}.clickhint{background:var(--panel);color:var(--gold);letter-spacing:.12em;pointer-events:none;border:1px solid #e2b95a66;border-radius:6px;padding:12px 26px;position:fixed;bottom:18%;left:50%;transform:translate(-50%)}.stats{width:300px;position:absolute;top:18px;left:22px}.bar{background:#0000008c;border:1px solid #ffffff26;border-radius:3px;height:14px;margin-bottom:6px;position:relative;overflow:hidden}.bar i{width:100%;height:100%;transition:width .15s;display:block}.bar.hp i{background:linear-gradient(#e0533f,#9c2a1c)}.bar.st{height:8px}.bar.st i{background:linear-gradient(#e2c66a,#a8862b)}.bar.xp{height:8px}.bar.xp i{background:linear-gradient(#7fb8ff,#3a6fc0)}.bar b{color:#fff;text-shadow:0 1px 2px #000;letter-spacing:.05em;font-size:11px;font-weight:400;position:absolute;top:-1px;left:6px}.bar.xp b{font-size:10px;top:-4px}.gold{color:var(--gold);text-shadow:0 1px 3px #000;margin-top:2px;font-size:14px}.tracker{text-align:right;text-shadow:0 1px 3px #000;width:300px;position:absolute;top:18px;right:22px}.tracker .q{margin-bottom:10px}.tracker .q b{color:var(--gold);letter-spacing:.05em;font-size:14px;display:block}.tracker .q.main b{color:#ffd34d}.tracker .q span{color:var(--text);font-size:13px;display:block}.tracker .q span.ok{color:#5fd66d;opacity:.7;text-decoration:line-through}.prompt{background:var(--panel);color:var(--gold);border:1px solid #e2b95a66;border-radius:5px;padding:8px 18px;font-size:14px;position:absolute;bottom:24%;left:50%;transform:translate(-50%)}.toasts{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:14%;left:50%;transform:translate(-50%)}.toast{text-align:center;background:#0c0a08b3;border:1px solid #ffffff1f;border-radius:5px;padding:7px 16px;transition:opacity .3s;animation:.3s tin}.toast b{letter-spacing:.05em;font-size:15px;display:block}.toast span{color:var(--muted);font-size:12px;display:block}@keyframes tin{0%{opacity:0;transform:translateY(-8px)}}.slots{align-items:flex-end;gap:10px;display:flex;position:absolute;bottom:20px;right:22px}.slot{background:var(--panel);border:1px solid #e2b95a59;border-radius:6px;align-items:center;gap:8px;width:150px;padding:8px 10px;display:flex}.slot span{font-size:24px}.slot small{font-size:11px;line-height:1.2}.hint2{color:var(--muted);white-space:nowrap;letter-spacing:.04em;font-size:10px;position:absolute;bottom:-18px;right:0}.crosshair{color:#fff;text-shadow:0 0 6px #000;font-size:28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dmgvig{opacity:0;transition:opacity .2s;position:absolute;inset:0;box-shadow:inset 0 0 160px #c81e14cc}.fps{color:var(--muted);font-size:11px;position:absolute;bottom:14px;left:22px}.floater{text-shadow:0 1px 3px #000,0 0 6px #000;pointer-events:none;font-size:18px;font-weight:700;position:absolute;transform:translate(-50%,-50%)}.floater.big{font-size:26px}.dialogue{pointer-events:none;background:#0c0a08e6;border:1px solid #e2b95a80;border-radius:6px;width:min(720px,90vw);padding:16px 22px;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.dialogue b{color:var(--gold);letter-spacing:.08em}.dialogue p{margin:6px 0;font-size:15px;line-height:1.5}.dialogue small{color:var(--muted);font-size:11px}#overlay .panel{pointer-events:auto;background:#0e0c09f5;border:1px solid #e2b95a73;border-radius:8px;flex-direction:column;gap:12px;width:min(880px,94vw);max-height:88vh;padding:18px 22px;display:flex;position:relative}.ph{border-bottom:1px solid #e2b95a40;align-items:baseline;gap:14px;padding-bottom:8px;display:flex}.ph h2{letter-spacing:.1em;color:var(--gold);margin:0;font-weight:400}.ph span{color:var(--muted);flex:1;font-size:13px}.ph .x{color:var(--text);cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:4px;padding:2px 8px}.eq{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.eqslot{background:#ffffff0a;border:1px solid #ffffff14;border-radius:5px;min-height:48px;padding:6px 8px}.eqslot small{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:10px;display:block}.eqslot b{font-size:12px;font-weight:400}.list{flex-direction:column;flex:1;gap:5px;min-height:0;display:flex;overflow-y:auto}.item{background:#ffffff08;border:1px solid;border-radius:5px;align-items:center;gap:10px;padding:6px 10px;display:flex}.item .ic{text-align:center;width:32px;font-size:22px}.item .nm{flex:1}.item .nm b{font-size:14px;font-weight:400;display:block}.item .nm small{color:var(--muted);font-size:11px}.item .act{align-items:center;gap:5px;display:flex}.item .act em{color:#5fd66d;margin-right:4px;font-size:11px}.panel button{color:var(--text);cursor:pointer;background:#e2b95a1f;border:1px solid #e2b95a66;border-radius:4px;padding:4px 10px;font-family:inherit;font-size:12px}.panel button:hover{background:#e2b95a4d}.pf{color:var(--muted);border-top:1px solid #e2b95a33;align-items:center;gap:10px;padding-top:8px;font-size:11px;display:flex}.tip{background:#000000e6;border:1px solid #e2b95a66;border-radius:5px;max-width:320px;padding:10px 14px;font-size:12px;position:absolute;bottom:60px;right:24px}.tip div{margin:2px 0}.cols{grid-template-columns:1.3fr 1fr;gap:18px;min-height:0;display:grid;overflow-y:auto}.cols h3{letter-spacing:.1em;color:var(--gold);text-transform:uppercase;margin:0 0 8px;font-size:14px;font-weight:400}.jq{background:#ffffff05;border:1px solid #ffffff14;border-radius:5px;margin-bottom:8px;padding:8px 12px}.jq.main{border-color:#ffd34d66}.jq.done{opacity:.55}.jq b{color:var(--gold);font-weight:400}.jq p{color:var(--muted);margin:4px 0;font-size:13px;line-height:1.45}.jq ul{margin:4px 0;padding-left:18px;font-size:13px}.jq li.ok{color:#5fd66d;text-decoration:line-through}.jq small{color:var(--muted);font-size:11px}.ms{border-bottom:1px solid #ffffff0f;padding:5px 8px}.ms b{font-size:13px;font-weight:400}.ms.ok b{color:#5fd66d}.ms small{color:var(--muted);font-size:11px;display:block}.muted{color:var(--muted)}#touch{pointer-events:none;z-index:20;position:fixed;inset:0}#touch .joy{pointer-events:auto;touch-action:none;background:#00000059;border:2px solid #e2b95a80;border-radius:50%;width:130px;height:130px;position:absolute;bottom:26px;left:26px}#touch .knob{background:#e2b95acc;border-radius:50%;width:56px;height:56px;margin:-28px 0 0 -28px;position:absolute;top:50%;left:50%;box-shadow:0 2px 8px #00000080}#touch .tbtns{pointer-events:auto;grid-template-columns:repeat(2,68px);gap:12px;display:grid;position:absolute;bottom:26px;right:22px}#touch .tb{width:68px;height:68px;color:var(--gold);letter-spacing:.08em;touch-action:none;-webkit-user-select:none;user-select:none;background:#00000073;border:2px solid #e2b95a8c;border-radius:50%;font-family:inherit;font-size:13px}#touch .tb.big{width:84px;height:84px;font-size:15px}#touch .tb.small{width:54px;height:54px;font-size:12px}#touch .tb.on{color:#1b1408;background:#e2b95a8c}#touch .ttop{pointer-events:auto;gap:8px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}body.touch .slots .hint2,body.touch .fps{display:none}body.touch .slots{bottom:214px;right:12px}body.touch .slot{width:120px;padding:6px 8px}body.touch .slot span{font-size:18px}body.touch .slot small{font-size:10px}body.touch .tracker{width:46vw;font-size:12px;top:74px}body.touch .tracker .q b{font-size:12px}body.touch .tracker .q span{font-size:11px}body.touch .tracker .q:nth-child(n+3){display:none}body.touch .stats{width:44vw;top:74px;left:12px}body.touch .dialogue{width:92vw;padding:10px 14px;top:22vh;bottom:auto}body.touch .dialogue p{font-size:13px}body.touch .toasts{top:24vh}body.touch .prompt{bottom:34vh}body.touch .clickhint{display:none}@media (orientation:landscape){body.touch .tracker{width:38vw;top:12px}body.touch .stats{top:12px}body.touch .slots{bottom:120px;right:200px}body.touch .dialogue{width:60vw;top:auto;bottom:6vh}}body.touch #overlay .panel{max-height:92vh;padding:12px}body.touch .eq{grid-template-columns:repeat(4,1fr)}.topbar{align-items:center;gap:10px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.compass{background:var(--panel);white-space:nowrap;border:1px solid #e2b95a66;border-radius:20px;align-items:center;gap:8px;max-width:360px;padding:5px 14px 5px 10px;font-size:13px;display:flex;overflow:hidden}.compass .arrow{color:var(--gold);font-size:16px;transition:transform .15s;display:inline-block}.compass small{color:var(--muted)}.hbtn{pointer-events:auto;background:var(--panel);color:var(--gold);letter-spacing:.1em;cursor:pointer;border:1px solid #e2b95a73;border-radius:20px;padding:6px 12px;font-family:inherit;font-size:12px}.hbtn:hover{background:#e2b95a33}.hbtn.on{color:#062226;background:#4fd9dd;border-color:#4fd9dd}.hbtn.glow{border-color:#4fd9dd;animation:1.2s infinite alternate glow;box-shadow:0 0 14px #4fd9ddcc}@keyframes glow{0%{box-shadow:0 0 6px #4fd9dd66}to{box-shadow:0 0 18px #4fd9dd}}.sp{color:#4fd9dd}.autostat{color:#4fd9dd;text-shadow:0 1px 3px #000;font-size:12px;display:none;position:absolute;top:58px;left:50%;transform:translate(-50%)}.banner{pointer-events:none;opacity:0;justify-content:center;display:flex;position:absolute;top:30%;left:0;right:0}.banner.show{animation:3.4s forwards bnr}@keyframes bnr{0%{opacity:0;transform:scale(.85)}8%{opacity:1;transform:scale(1.02)}12%{transform:scale(1)}85%{opacity:1}to{opacity:0;transform:translateY(-14px)}}.bn{text-align:center;padding:18px 60px;position:relative;overflow:hidden}.bn small{color:var(--c);letter-spacing:.4em;text-transform:uppercase;font-size:12px;display:block}.bn h1{letter-spacing:.06em;color:#fff;text-shadow:0 0 20px var(--c), 0 2px 6px #000;margin:4px 0;font-size:42px;font-weight:400}.bn p{color:var(--text);text-shadow:0 1px 4px #000;margin:0;font-size:15px}.bn .line{background:linear-gradient(90deg, transparent, var(--c), transparent);width:0;height:2px;margin:12px auto 0;animation:1.2s .2s forwards line}@keyframes line{to{width:100%}}.bn .rays{background:conic-gradient(from 0deg, transparent 0 20deg, color-mix(in srgb, var(--c) 18%, transparent) 20deg 30deg, transparent 30deg 60deg, color-mix(in srgb, var(--c) 18%, transparent) 60deg 70deg, transparent 70deg 100deg, color-mix(in srgb, var(--c) 18%, transparent) 100deg 110deg, transparent 110deg 140deg, color-mix(in srgb, var(--c) 18%, transparent) 140deg 150deg, transparent 150deg 180deg, color-mix(in srgb, var(--c) 18%, transparent) 180deg 190deg, transparent 190deg 220deg, color-mix(in srgb, var(--c) 18%, transparent) 220deg 230deg, transparent 230deg 260deg, color-mix(in srgb, var(--c) 18%, transparent) 260deg 270deg, transparent 270deg 300deg, color-mix(in srgb, var(--c) 18%, transparent) 300deg 310deg, transparent 310deg 360deg);z-index:-1;animation:12s linear infinite spin;position:absolute;inset:-60%;-webkit-mask:radial-gradient(circle,#000 0,#0000 60%);mask:radial-gradient(circle,#000 0,#0000 60%)}@keyframes spin{to{transform:rotate(360deg)}}.tracker .q.more{color:var(--muted);font-size:12px}.item .cat{color:var(--gold);text-transform:capitalize;font-style:normal}.panel.skills .branches{grid-template-columns:repeat(3,1fr);gap:14px;min-height:0;display:grid;overflow-y:auto}.branch{border:1px solid color-mix(in srgb, var(--c) 40%, transparent);background:color-mix(in srgb, var(--c) 5%, transparent);border-radius:8px;padding:10px}.branch h3{color:var(--c);letter-spacing:.1em;margin:0;font-weight:400}.branch p{color:var(--muted);margin:4px 0 10px;font-size:12px}.node{text-align:left;width:100%;color:var(--text);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:6px;align-items:center;gap:10px;margin-bottom:8px;padding:8px 10px;font-family:inherit;display:flex;position:relative}.node .ni{text-align:center;width:30px;font-size:22px}.node .nt{flex:1}.node .nt b{font-size:14px;font-weight:400;display:block}.node .nt small{color:var(--muted);font-size:11px;line-height:1.3}.node .nc{color:var(--gold);white-space:nowrap;font-size:12px}.node.owned{border-color:var(--c);background:color-mix(in srgb, var(--c) 18%, transparent)}.node.owned .nc{color:var(--c)}.node.avail{border-color:var(--gold);animation:1.4s infinite alternate glow2;box-shadow:0 0 10px #e2b95a59}@keyframes glow2{to{box-shadow:0 0 18px #e2b95ab3}}.node.locked,.node.poor{opacity:.5;cursor:not-allowed}.node.locked:after{content:"🔒";font-size:11px;position:absolute;top:8px;right:10px}body.touch .topbar{gap:6px;top:10px}body.touch .compass{max-width:44vw;padding:4px 10px;font-size:11px}body.touch .hbtn{padding:5px 8px;font-size:10px}body.touch #touch .ttop{top:52px}body.touch .bn h1{font-size:28px}body.touch .bn{padding:12px 20px}body.touch .panel.skills .branches{grid-template-columns:1fr}
