:root{--bg:#0b0720;--panel:#15102f;--line:#3a2f6b;--gold:#e8b94a;--gold2:#fff1b8;--text:#f3efff;--mute:#a79fd0;--free:#4fb6ff;--up:#ffb02e}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,Segoe UI,Roboto,sans-serif}
a{color:var(--gold2)}header{position:sticky;top:0;z-index:20;display:flex;gap:16px;align-items:center;padding:8px 16px;background:rgba(11,7,32,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--gold);font-weight:700;letter-spacing:.3px}.brand img{border-radius:8px}
.search{position:relative;flex:1;min-width:200px;max-width:420px}.search input{width:100%;padding:9px 14px;border-radius:22px;border:1px solid var(--line);background:#120c2b;color:var(--text);font-size:15px}
#results{position:absolute;top:44px;left:0;right:0;background:var(--panel);border:1px solid var(--line);border-radius:12px;max-height:60vh;overflow:auto;box-shadow:0 12px 40px #000a}
#results a{display:flex;justify-content:space-between;gap:8px;padding:9px 14px;text-decoration:none;color:var(--text)}#results a:hover,#results a:focus{background:#241b4f}#results small{color:var(--mute)}
nav{display:flex;gap:14px;margin-left:auto;flex-wrap:wrap}nav a{color:var(--text);text-decoration:none;font-size:14px;opacity:.85}nav a:hover{opacity:1;color:var(--gold)}
.stage{position:relative;width:min(100vw,calc((100vh - 56px) * 1.7857));aspect-ratio:2000/1120;margin:0 auto;background:#0b0720 url(img/plate-2k.webp) center/100% 100% no-repeat}
@media (min-width:1700px){.stage{background-image:url(img/plate.webp)}}
.world{position:absolute;width:11%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;display:block;outline:none;transition:box-shadow .25s,transform .25s}
.world:hover,.world:focus-visible{box-shadow:0 0 0 3px #ffffff55,0 0 42px 14px rgba(255,200,90,.65);transform:translate(-50%,-50%) scale(1.07)}
.wlabel{position:absolute;transform:translate(-50%,-50%);padding:2px 12px;background:#1a0f3b;border-radius:8px;font-weight:600;font-size:clamp(11px,1.15vw,22px);white-space:nowrap;pointer-events:none;text-shadow:0 1px 6px #000}
.world.dim,.wlabel.dim{opacity:.18}
.valuebar{position:absolute;left:50%;top:67.5%;transform:translateX(-50%);display:flex;gap:2px;background:rgba(21,16,47,.88);border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:clamp(11px,1vw,16px)}
.valuebar div{padding:8px 22px;text-align:center}.valuebar b{display:block;color:var(--gold);font-size:1.5em}.valuebar span{color:var(--mute)}
#voice{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);width:52px;height:52px;border-radius:50%;border:2px solid var(--gold);background:#1d1440;color:var(--gold);cursor:pointer;z-index:30;display:grid;place-items:center}
#voice.on{background:var(--gold);color:#201400;animation:pulse 1s infinite}@keyframes pulse{50%{box-shadow:0 0 0 12px #e8b94a33}}
#toast{position:fixed;left:50%;bottom:76px;transform:translateX(-50%);background:var(--panel);border:1px solid var(--gold);padding:10px 18px;border-radius:12px;z-index:40}
.page{max-width:1280px;margin:0 auto;padding:20px 16px 110px}
.sec{display:grid;grid-template-columns:minmax(200px,340px) 1fr;gap:24px;align-items:start}
@media(max-width:800px){.sec{grid-template-columns:1fr}.robot{max-height:300px;margin:auto}}
.robot{width:100%;height:auto;max-height:620px;object-fit:contain;filter:drop-shadow(0 10px 30px #000a)}
h1{margin:.2em 0 .1em;font-size:clamp(26px,3.4vw,42px);color:var(--gold)}h2{margin:1.2em 0 .4em;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.sub{color:var(--mute);margin:0 0 8px}
.row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}@media(max-width:700px){.row{grid-template-columns:repeat(2,1fr)}}
.app{background:var(--panel);border:2px solid var(--line);border-radius:16px;padding:14px 8px;text-align:center;cursor:pointer;color:var(--text);font:inherit;transition:.2s}
.app:hover{border-color:#7a66d6}.app[aria-pressed=true]{border-color:var(--gold);box-shadow:0 0 22px #e8b94a44}
.app img,.logo-fallback{width:56px;height:56px;object-fit:contain;border-radius:12px;background:#fff;padding:6px;margin:0 auto 8px;display:block}.logo-fallback{display:grid;place-items:center;color:#222;font-weight:800;font-size:22px}
.app span{display:block;font-size:13.5px;line-height:1.25;word-break:break-word}
.upgrade{display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:linear-gradient(135deg,#2a1457,#14102f);border:2px solid var(--up);border-radius:18px;padding:16px 20px}
.uplanet{width:84px;height:84px;border-radius:50%;flex:none;background:radial-gradient(circle at 32% 28%,#fff6c9,#ffb02e 38%,#a2480b 75%,#4b1c05);box-shadow:0 0 30px #ffb02e88}
.upgrade .meta{flex:1;min-width:220px}.upgrade h3{margin:0;font-size:20px}.price{font-size:26px;color:var(--gold);font-weight:800}
.btn{display:inline-block;background:var(--gold);color:#201400;border:0;border-radius:12px;padding:11px 22px;font-weight:700;font-size:15px;cursor:pointer;text-decoration:none}.btn:hover{filter:brightness(1.1)}.btn.ghost{background:transparent;color:var(--gold);border:1px solid var(--gold)}
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}@media(max-width:700px){.cmp{grid-template-columns:1fr}}
.col{border-radius:16px;padding:16px 18px;background:var(--panel);border:2px solid var(--line)}.col.free{border-color:var(--free)}.col.up{border-color:var(--up)}
.col h3{margin:0 0 6px;font-size:14px;letter-spacing:.14em}.col.free h3{color:var(--free)}.col.up h3{color:var(--up)}.col ul{margin:6px 0;padding-left:20px}.col li{margin:4px 0}.col li b{text-transform:capitalize}
.credits{margin-top:10px;font-size:13px;color:var(--mute)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;margin:14px 0}
table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--gold);font-size:13px;letter-spacing:.08em;text-transform:uppercase}td.p{font-weight:800;color:var(--gold2);white-space:nowrap}
.tiers{overflow-x:auto}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
input.f,select.f{width:100%;padding:10px 12px;margin:6px 0 12px;border-radius:10px;border:1px solid var(--line);background:#120c2b;color:var(--text);font:inherit}
.theme{display:flex;gap:10px;flex-wrap:wrap}.theme button{width:46px;height:46px;border-radius:50%;border:2px solid #fff3;cursor:pointer}
.pre{white-space:pre-wrap;background:#0d0926;border-radius:10px;padding:12px;font:13px/1.5 ui-monospace,Consolas,monospace;overflow:auto}
.ok{color:#6be58a}.warn{color:var(--up)}
#ram{position:relative}#ramb{display:flex;align-items:center;gap:8px;background:#120c2b;color:var(--text);border:1px solid var(--line);border-radius:18px;padding:5px 12px;font:12px system-ui;cursor:pointer}
#ramb i{width:54px;height:6px;background:#2a2150;border-radius:3px;overflow:hidden;display:block}#ramb u{display:block;height:100%;width:0;transition:width .6s}
#ramp{position:absolute;right:0;top:36px;width:300px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;z-index:50;font-size:13px}
.tk{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px solid #2a2150}.tk em{font-style:normal}.tk em.done,.tk em.running{color:#6be58a}.tk em.paused{color:var(--up)}.tk em.stopped{color:#ff5a5a}
.spinner{position:absolute;border-radius:50%;transform:translate(-50%,-50%);margin:0;animation:gspin .65s ease-in-out forwards;will-change:transform;z-index:5;pointer-events:none;box-shadow:0 0 40px 10px rgba(255,200,90,.7)}
@keyframes gspin{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg) scale(1.25)}}
