:root{
  --ink:#eef2f4;--muted:#9bacb8;--night:#091017;--panel:#101d27e8;--panel2:#152632;
  --gold:#efc45b;--gold2:#b77b1d;--gold3:#ffe6a1;--blue:#2e83d4;--blue2:#70c9ff;
  --red:#bf443d;--red2:#ff8c82;--neutral:#666f73;--green:#55c77a;--danger:#e45f55;
}
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100vh;background:#081017;color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif;overflow-x:hidden}button,input{font:inherit}.hidden{display:none!important}
.world-bg{position:fixed;inset:0;z-index:-2;overflow:hidden;background:radial-gradient(circle at 58% 17%,#6c5738 0,#273545 23%,#0c151e 59%,#060b10 100%)}
.world-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0001 0,#0007 78%,#020508 100%),radial-gradient(circle at 20% 30%,transparent 0 25%,#0004 80%)}
.moon{position:absolute;width:420px;height:420px;border-radius:50%;right:12%;top:-255px;background:radial-gradient(circle at 50% 80%,#e9c87833,#b8873822 40%,transparent 70%);filter:blur(3px)}
.mountains{position:absolute;left:-5%;right:-5%;bottom:0;height:54%;opacity:.65;clip-path:polygon(0 66%,7% 49%,13% 63%,21% 28%,29% 62%,38% 43%,45% 69%,54% 35%,61% 58%,70% 25%,76% 61%,86% 40%,100% 68%,100% 100%,0 100%)}
.mountains.back{bottom:8%;background:#1b2a33;filter:blur(1px);opacity:.55}.mountains.front{height:46%;background:#0c171e;opacity:.92;transform:scaleX(1.06)}
.mist{position:absolute;left:0;right:0;bottom:10%;height:24%;background:radial-gradient(ellipse at 50% 50%,#aec3ca12,transparent 70%);filter:blur(20px)}
.app-shell{width:min(1180px,94vw);margin:auto;padding:22px 0 56px;position:relative}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px}.brand{display:flex;align-items:center;gap:13px;border:0;background:transparent;color:inherit;padding:0;cursor:pointer;text-align:left}.crest{width:58px;height:58px;border:1px solid #e7c56b80;background:linear-gradient(145deg,#2a3131,#111a20);clip-path:polygon(50% 0,91% 15%,84% 79%,50% 100%,16% 79%,9% 15%);display:grid;place-items:center;filter:drop-shadow(0 8px 12px #0008)}.crest span{font-size:31px;color:var(--gold);text-shadow:0 2px 8px #000}.brand-copy{display:grid}.brand-copy strong{font-family:Georgia,serif;font-size:30px;letter-spacing:2px;color:#f6d982;text-shadow:0 2px 6px #000}.brand-copy small{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#c8b77b;margin-top:2px}.top-actions{display:flex;align-items:center;gap:10px}.icon-btn{width:42px;height:42px;border:1px solid #3a4f5d;background:#101d27c9;border-radius:11px;color:#d9c98f;cursor:pointer;font-weight:800}.profile-card{padding:9px 13px;border:1px solid #354d5e;background:#101d27de;border-radius:11px;display:flex;align-items:center;gap:10px}.profile-card .avatar-sm{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#25394a}.profile-card b{font-size:14px}.profile-card small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.screen{margin-top:40px;animation:screenIn .3s ease both}@keyframes screenIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.eyebrow{font-size:11px;letter-spacing:2.5px;color:#d8bd71;font-weight:900;text-transform:uppercase}.game-card{background:linear-gradient(180deg,#152733ee,#0d1923f5);border:1px solid #385162;border-radius:20px;box-shadow:0 28px 90px #0008, inset 0 1px #ffffff08}.login-screen{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:56px;min-height:590px}.hero-copy h1{font-family:Georgia,serif;font-size:clamp(44px,6vw,75px);line-height:.98;margin:14px 0 22px;text-shadow:0 6px 24px #000}.hero-copy h1 span{color:var(--gold3)}.hero-copy>p{max-width:650px;color:#c2cdd3;font-size:19px;line-height:1.55}.hero-features{display:flex;gap:9px;flex-wrap:wrap;margin-top:27px}.hero-features span{border:1px solid #405565;background:#101c25b8;padding:8px 12px;border-radius:999px;color:#dce4e8;font-size:13px}.login-card{padding:32px;position:relative}.seal{width:70px;height:70px;margin:-68px auto 12px;background:linear-gradient(#f5d87c,#a86e1b);border:5px solid #18242c;border-radius:50%;display:grid;place-items:center;color:#2f210b;font-size:34px;box-shadow:0 8px 22px #0008}.login-card h2{text-align:center;font-family:Georgia,serif;font-size:27px;margin:8px 0}.login-card>p{text-align:center;color:var(--muted);font-size:14px;margin-bottom:25px}.login-card label{display:block;color:#cbd5da;font-size:12px;font-weight:800;margin:0 0 7px}.login-card input{width:100%;padding:14px 15px;border-radius:11px;border:1px solid #415867;background:#09131b;color:white;font-size:17px;outline:none}.login-card input:focus{border-color:#d6ad4c;box-shadow:0 0 0 3px #d6ad4c1c}.fineprint{display:block;text-align:center;color:#728895;font-size:10px;margin-top:14px}.btn{border-radius:11px;border:1px solid #465b69;padding:13px 16px;min-height:48px;color:white;font-weight:900;cursor:pointer;transition:.16s}.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn.gold{width:100%;margin-top:12px;background:linear-gradient(#f3d26e,#cb8e27);border-color:#f8da78;color:#2e1e08;box-shadow:0 5px 15px #0005}.btn.gold span{float:right}.btn.ghost{background:#0c1821}.menu-grid{display:grid;grid-template-columns:1fr 330px;gap:30px;max-width:900px;margin:75px auto}.menu-main h2{font-family:Georgia,serif;font-size:36px;margin:7px 0 24px}.mode-card{width:100%;display:grid;grid-template-columns:58px 1fr auto;align-items:center;text-align:left;gap:12px;border:1px solid #385064;background:linear-gradient(180deg,#162936,#0d1a24);border-radius:14px;padding:13px 16px;color:white;margin:10px 0;cursor:pointer;transition:.16s}.mode-card:hover:not(:disabled){transform:translateX(4px);border-color:#668096}.mode-card.primary-mode{background:linear-gradient(180deg,#f4d16d,#cf9128);border-color:#f9dd84;color:#2a1c08;box-shadow:0 12px 32px #0005}.mode-icon{font-size:27px;text-align:center}.mode-text{display:grid}.mode-text b{font-size:17px}.mode-text small{opacity:.68;margin-top:4px}.mode-arrow{font-size:22px;opacity:.7}.mode-card.disabled{opacity:.5;cursor:not-allowed}.kingdom-card{padding:24px;align-self:start}.mini-crown{font-size:42px;color:var(--gold);text-align:center}.kingdom-card h3{text-align:center;font-family:Georgia,serif;font-size:23px;margin:7px 0 23px}.rating-row{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #2d414e;padding-bottom:12px}.rating-row span{color:var(--muted)}.rating-row b{font-size:30px;color:#f5d77b}.division{display:flex;align-items:center;gap:10px;margin:14px 0}.division-dot{width:15px;height:15px;border-radius:50%;background:#aa6a39;box-shadow:0 0 0 4px #aa6a3922}.division small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.mini-map{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:20px 0}.mini-map i{height:35px;background:#344a55;border-radius:40% 25% 45% 30%;border:1px solid #596b72}.mini-map i:nth-child(1),.mini-map i:nth-child(4){background:#2669a2}.kingdom-card p{font-size:12px;line-height:1.5;color:var(--muted)}.search-stage{max-width:520px;margin:78px auto;text-align:center;padding:38px 44px}.search-orbit{width:180px;height:180px;margin:0 auto 25px;position:relative;border:1px solid #35536a;border-radius:50%;display:grid;place-items:center}.search-orbit:before,.search-orbit:after{content:"";position:absolute;border:1px solid #284761;border-radius:50%;inset:28px}.search-orbit:after{inset:56px}.planet{font-size:45px;filter:drop-shadow(0 0 14px #4a99d855)}.search-orbit .sweep{position:absolute;left:50%;top:50%;width:48%;height:2px;background:linear-gradient(90deg,#72c6ff,transparent);transform-origin:left;animation:spin 1.5s linear infinite}.search-orbit .o1,.search-orbit .o2{position:absolute;width:8px;height:8px;border-radius:50%;background:#f0c65e;top:25px;left:79px;box-shadow:0 0 10px #f0c65e}.search-orbit .o2{top:auto;left:auto;right:27px;bottom:47px;background:#5bb4f0}@keyframes spin{to{transform:rotate(360deg)}}.search-stage h2{font-family:Georgia,serif;font-size:30px;margin:8px 0}.search-stage>p{color:var(--muted)}.search-dots{display:flex;justify-content:center;gap:6px;margin:17px}.search-dots span{width:7px;height:7px;border-radius:50%;background:#78909d;animation:pulse 1s infinite}.search-dots span:nth-child(2){animation-delay:.15s}.search-dots span:nth-child(3){animation-delay:.3s}@keyframes pulse{50%{transform:translateY(-5px);background:#efc45b}}.search-actions{display:grid;grid-template-columns:1fr 110px;gap:9px;margin-top:25px}.search-actions .btn.gold{margin:0}
.game-screen{margin-top:18px}.battle-hud{display:grid;grid-template-columns:1fr 90px 1fr;gap:13px;align-items:center}.player-hud{background:linear-gradient(180deg,#142737,#0c1822);border:1px solid #365466;border-radius:14px;padding:12px 15px;display:grid;grid-template-columns:48px 1fr auto;gap:11px;align-items:center;box-shadow:0 10px 30px #0005}.player-hud.red{grid-template-columns:auto 1fr 48px;text-align:right}.player-hud.blue{border-color:#2d78b9}.player-hud.red{border-color:#9c4545}.avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:25px;border:2px solid #5783a5;background:#263b4c}.red .avatar{border-color:#a85b55;background:#472c2a}.player-name{font-weight:900}.player-meta{color:var(--muted);font-size:11px;margin-top:3px}.land-count{font-family:Georgia,serif;font-size:23px;color:#e4c56b}.land-count small{display:block;font-family:Inter,sans-serif;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.round-medallion{width:74px;height:74px;border-radius:50%;margin:auto;background:radial-gradient(circle,#223342,#0b151d);border:2px solid #806c40;display:grid;place-items:center;align-content:center;box-shadow:0 8px 25px #0007}.round-medallion small{font-size:8px;letter-spacing:1.4px;color:#c5b174}.round-medallion b{font-size:26px;color:#f2d377}.game-status{text-align:center;margin:13px 0 10px}.turn-badge{display:inline-block;background:#276da6;border:1px solid #6bbbf0;color:white;font-size:9px;font-weight:900;letter-spacing:1.7px;border-radius:999px;padding:5px 9px;margin-bottom:6px}.turn-badge.enemy{background:#6c3333;border-color:#ae5d58}.parchment-message{width:max-content;max-width:85%;margin:auto;background:linear-gradient(90deg,#ccb479,#ecd9a8,#ccb479);color:#34240e;border-radius:4px;padding:9px 28px;font-family:Georgia,serif;font-weight:800;box-shadow:0 5px 14px #0005;position:relative}.parchment-message:before,.parchment-message:after{content:"";position:absolute;top:0;width:15px;height:100%;background:#b39a60}.parchment-message:before{left:-9px;clip-path:polygon(100% 0,100% 100%,0 77%,45% 50%,0 22%)}.parchment-message:after{right:-9px;clip-path:polygon(0 0,0 100%,100% 77%,55% 50%,100% 22%)}.scoreline{font-size:11px;color:#8fa2af;margin-top:7px}.map-frame{background:linear-gradient(#22251f,#161a17);border:1px solid #4a5147;border-radius:18px;padding:12px;box-shadow:0 24px 70px #0009}.map-toolbar{display:flex;justify-content:space-between;align-items:center;padding:3px 7px 9px;font-family:Georgia,serif;color:#dbc98f}.map-toolbar small{font-family:Inter,sans-serif;color:#85949a;font-size:10px}.realm-map{width:100%;height:auto;display:block;background:radial-gradient(circle at 47% 45%,#5b5942,#313a31 58%,#1d2722);border-radius:12px;overflow:hidden;box-shadow:inset 0 0 55px #000b}.territory-shape{stroke:#b9af91;stroke-width:3;vector-effect:non-scaling-stroke;cursor:default;transition:filter .18s,opacity .18s,stroke-width .18s}.territory-shape.neutral{fill:#666b65}.territory-shape.blue{fill:#2d75ad;stroke:#78c3f4}.territory-shape.red{fill:#a94740;stroke:#ef8e83}.territory-shape.available{cursor:pointer;stroke:#f6d266;stroke-width:7;filter:url(#glow)}.territory-shape.available:hover{filter:url(#glow) brightness(1.16)}.territory-shape.active{stroke:#fff0a3;stroke-width:8;filter:url(#glow)}.territory-text{pointer-events:none;text-anchor:middle;fill:#f4edd9;font-size:14px;font-weight:900;text-shadow:0 2px 3px #000}.territory-sub{pointer-events:none;text-anchor:middle;fill:#e7ddc7aa;font-size:9px}.castle-mark{pointer-events:none;text-anchor:middle;font-size:28px;filter:drop-shadow(0 2px 2px #0008)}.map-legend{display:flex;flex-wrap:wrap;gap:14px;padding:10px 7px 2px;color:#9caaa7;font-size:10px}.map-legend span{display:flex;align-items:center;gap:5px}.dot{width:9px;height:9px;border-radius:2px;background:#666b65;border:1px solid #999}.dot.blue{background:#2d75ad;border-color:#78c3f4}.dot.red{background:#a94740;border-color:#ef8e83}.ring{width:11px;height:11px;border-radius:50%;border:2px solid #f6d266}
.modal{position:fixed;inset:0;z-index:20;background:#02060bd9;display:grid;place-items:center;padding:18px;backdrop-filter:blur(8px)}.versus-card{width:min(760px,96vw);text-align:center}.crossed{font-size:56px;filter:drop-shadow(0 5px 12px #000)}.versus-grid{display:grid;grid-template-columns:1fr 110px 1fr;align-items:center;margin:25px 0}.vs-player{padding:25px 15px;border:1px solid #375163;background:#0f1d27dd;border-radius:17px}.vs-player .big-avatar{width:100px;height:100px;margin:auto;border-radius:50%;display:grid;place-items:center;font-size:52px;background:#243b4d;border:3px solid #4b93c8}.vs-player.right .big-avatar{background:#472d2b;border-color:#be625a}.vs-player b{display:block;font-size:23px;margin-top:11px}.vs-player small{color:#9cafba}.vs-mark{font-family:Georgia,serif;font-size:55px;color:#f4d16c;font-weight:900;text-shadow:0 3px 14px #000}.versus-load{height:4px;background:#22313a;border-radius:99px;overflow:hidden;max-width:480px;margin:auto}.versus-load i{display:block;height:100%;background:linear-gradient(90deg,#d5972f,#f8dc80);animation:loadvs 2.2s linear forwards}@keyframes loadvs{from{width:0}to{width:100%}}
.battle-question{width:min(760px,97vw)}.duel-strip{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;margin-bottom:9px}.duelist{display:flex;align-items:center;gap:8px;font-weight:900}.duelist.enemy{justify-content:flex-end}.duelist .face{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#20394c;border:2px solid #56a7df;font-size:23px}.duelist.enemy .face{background:#4a2d2b;border-color:#c25e56}.duelist small{display:block;font-size:10px;color:#a5b3bc;margin-top:2px}.duel-title{text-align:center}.duel-title span{display:block;font-size:26px}.duel-title b{font-family:Georgia,serif;color:#efd482;font-size:16px}.question-card{background:linear-gradient(145deg,#ead8ae,#cbb487);color:#2d251a;border:5px solid #6d5030;border-radius:16px;padding:25px;box-shadow:0 30px 90px #000;position:relative}.question-card:before{content:"";position:absolute;inset:6px;border:1px solid #7f643b55;border-radius:10px;pointer-events:none}.qmeta{display:flex;justify-content:space-between;align-items:start}.qmeta>span{background:#302920;color:#f2e3bf;border-radius:8px;padding:6px 12px;font-size:11px;font-weight:900;letter-spacing:.6px}.timer-ring{width:66px;height:66px;margin-top:-8px;border-radius:50%;border:4px solid #856d42;background:#f5e8c8;display:grid;place-items:center;align-content:center;box-shadow:0 5px 12px #0003}.timer-ring b{font-size:20px}.timer-ring small{font-size:8px;text-transform:uppercase}.timer-ring.warning{border-color:#bd473f;color:#9e2722;animation:timerPulse .6s infinite}@keyframes timerPulse{50%{transform:scale(1.05)}}.question-card h2{font-family:Georgia,serif;text-align:center;font-size:clamp(22px,3vw,29px);line-height:1.3;margin:6px 35px 22px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.answers button{min-height:57px;border-radius:9px;border:1px solid #ad9d80;background:linear-gradient(#faf6ed,#e8dfcf);color:#292118;font-weight:900;cursor:pointer;box-shadow:0 3px 7px #0002;transition:.13s}.answers button:hover:not(:disabled){transform:translateY(-2px);border-color:#7b633c}.answers button.selected{background:#e5be58;border-color:#8e6c20}.answers button.correct{background:#73ce87;border-color:#438a53}.answers button.wrong{background:#e48276;border-color:#a54239}.answers button:disabled{cursor:default}.timebar{height:9px;background:#514839;border-radius:99px;overflow:hidden;margin-top:18px}.timebar span{height:100%;display:block;background:linear-gradient(90deg,#4aaf72,#7cda8e);transition:width .3s linear}.answer-status{text-align:center;font-size:12px;font-weight:800;min-height:17px;margin:10px 0 0;color:#5e513d}
.result-card{width:min(610px,96vw);text-align:center;background:linear-gradient(180deg,#10202b,#0b141c);border:1px solid #465e6e;border-radius:22px;padding:30px;box-shadow:0 30px 90px #000;overflow:hidden;position:relative}.result-card:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:#ddaf3d22;top:-190px;left:calc(50% - 130px);box-shadow:0 0 80px #d39d2522}.result-icon{font-size:60px;color:#f1cb64;filter:drop-shadow(0 5px 12px #000)}.result-card h2{font-family:Georgia,serif;font-size:31px;margin:7px 0}.result-card>p{color:#bdc7cd}.answer-comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 12px}.answer-result{border:1px solid #314956;background:#0b1720;border-radius:12px;padding:14px;text-align:left}.answer-result b{display:block;margin-bottom:7px}.answer-result .ok{color:#65d085}.answer-result .bad{color:#e16e64}.answer-result small{display:block;color:#91a3ae;margin-top:5px}.correct-answer{background:#1a2c25;border:1px solid #39614a;color:#aee6bb;border-radius:9px;padding:9px 12px;font-size:12px}.result-progress{height:3px;background:#22313b;margin:23px -30px -30px}.result-progress i{display:block;height:100%;background:#e6bf58;animation:resultLoad 4.8s linear forwards}@keyframes resultLoad{from{width:0}to{width:100%}}.finish-card{width:min(500px,96vw);text-align:center;padding:34px}.finish-icon{font-size:72px}.finish-card h2{font-family:Georgia,serif;font-size:38px;margin:8px}.finish-card>p{color:#b1c0c9;line-height:1.5}.finish-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:22px 0}.finish-stats div{background:#0b1720;border:1px solid #2c414e;padding:13px;border-radius:10px}.finish-stats b{display:block;font-size:23px;color:#f0cf72}.finish-stats small{color:#8497a3}
@media(max-width:820px){.login-screen{grid-template-columns:1fr;gap:38px;min-height:0;margin-top:55px}.hero-copy{text-align:center}.hero-copy>p{margin-inline:auto}.hero-features{justify-content:center}.login-card{max-width:480px;width:100%;margin:auto}.menu-grid{grid-template-columns:1fr;max-width:620px;margin-top:45px}.kingdom-card{display:none}.map-toolbar small{display:none}.battle-hud{grid-template-columns:1fr 60px 1fr}.round-medallion{width:58px;height:58px}.player-hud{grid-template-columns:38px 1fr;padding:10px}.player-hud.red{grid-template-columns:1fr 38px}.player-hud .land-count{display:none}.avatar{width:36px;height:36px;font-size:20px}.brand-copy strong{font-size:24px}.crest{width:48px;height:48px}.crest span{font-size:26px}.brand-copy small{display:none}}
@media(max-width:600px){.app-shell{width:95vw;padding-top:10px}.topbar{min-height:55px}.screen{margin-top:25px}.hero-copy h1{font-size:43px}.hero-copy>p{font-size:16px}.profile-card{padding:6px 8px}.profile-card .avatar-sm{display:none}.icon-btn{width:38px;height:38px}.menu-main h2{font-size:30px}.mode-card{grid-template-columns:45px 1fr auto;padding:12px 11px}.search-stage{padding:28px 20px}.search-actions{grid-template-columns:1fr}.battle-hud{gap:5px}.player-hud{padding:8px}.player-name{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-meta{font-size:9px}.round-medallion{width:50px;height:50px}.round-medallion b{font-size:20px}.parchment-message{font-size:12px;padding:8px 18px}.map-frame{padding:7px}.realm-map{min-height:420px}.map-legend{gap:8px}.territory-text{font-size:11px}.territory-sub{display:none}.castle-mark{font-size:23px}.duel-strip{grid-template-columns:1fr .8fr 1fr}.duelist{font-size:11px}.duel-title b{display:none}.question-card{padding:18px 14px}.question-card h2{margin:3px 0 16px;font-size:21px}.answers{grid-template-columns:1fr}.answers button{min-height:48px}.timer-ring{width:55px;height:55px}.answer-comparison{grid-template-columns:1fr}.versus-grid{grid-template-columns:1fr 62px 1fr}.vs-player{padding:16px 8px}.vs-player .big-avatar{width:72px;height:72px;font-size:38px}.vs-player b{font-size:15px}.vs-mark{font-size:36px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}}

/* v0.4 — audio controls */
.audio-wrap{position:relative}.audio-panel{position:absolute;right:0;top:52px;width:270px;z-index:40;padding:14px;border:1px solid #405866;background:linear-gradient(180deg,#12222d,#0a141c);border-radius:14px;box-shadow:0 18px 50px #000b}.audio-panel:before{content:"";position:absolute;right:14px;top:-7px;width:12px;height:12px;background:#12222d;border-left:1px solid #405866;border-top:1px solid #405866;transform:rotate(45deg)}.audio-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.audio-panel-head b{font-family:Georgia,serif;color:#f2d27a;font-size:18px}.audio-panel-head small{color:#718793;font-size:10px}.audio-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;cursor:pointer}.audio-switch span{display:grid;gap:2px}.audio-switch b{font-size:13px}.audio-switch small{font-size:10px;color:#82949f}.audio-switch input{appearance:none;width:38px;height:22px;border-radius:999px;background:#34434b;position:relative;cursor:pointer;transition:.18s;border:1px solid #465b67}.audio-switch input:after{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;border-radius:50%;background:#aebbc2;transition:.18s}.audio-switch input:checked{background:#805f20;border-color:#c99a3a}.audio-switch input:checked:after{left:18px;background:#f6d676}.audio-range{width:100%;height:5px;accent-color:#d4a743;margin:0 0 5px}.audio-test{width:100%;margin-top:9px;border:1px solid #405765;background:#152935;color:#d7e3e8;border-radius:9px;padding:8px 10px;cursor:pointer;font-weight:800;font-size:11px}.audio-test:hover{border-color:#d0a64a;color:#f3d888}.icon-btn.audio-muted{color:#89979e;border-color:#33434d}.audio-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:60;background:#0b1720e8;border:1px solid #3b5666;color:#dbe5e9;padding:8px 13px;border-radius:999px;font-size:11px;box-shadow:0 8px 24px #0008;pointer-events:none}
@media(max-width:600px){.audio-panel{position:fixed;right:12px;top:66px;width:min(300px,calc(100vw - 24px))}.audio-panel:before{display:none}}


/* v0.5 — real geography, persistent rating, profile & leaderboard */
.profile-card{cursor:pointer}.menu-secondary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.mini-mode{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:9px;text-align:left;padding:11px 12px;border-radius:12px;border:1px solid #354e5e;background:#0e1c26;color:#e5edf0;cursor:pointer;transition:.15s}.mini-mode:hover{border-color:#d0aa50;transform:translateY(-1px)}.mini-mode>span{grid-row:1/3;font-size:23px;align-self:center}.mini-mode b{font-size:12px}.mini-mode small{font-size:9px;color:#8296a1;margin-top:2px}.league-progress{height:7px;border-radius:99px;background:#0a141b;border:1px solid #2c404c;overflow:hidden;margin:-4px 0 16px}.league-progress i{display:block;height:100%;width:10%;background:linear-gradient(90deg,#a97828,#f0ce69);transition:width .35s}.kingdom-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0}.kingdom-stats div{padding:9px 5px;border:1px solid #2f4552;border-radius:9px;background:#0a161e;text-align:center}.kingdom-stats b{display:block;color:#f0d071;font-size:17px}.kingdom-stats small{display:block;color:#7e919c;font-size:8px;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}
.meta-modal{width:min(640px,96vw);max-height:88vh;overflow:auto;padding:28px;position:relative}.meta-modal h2{font-family:Georgia,serif;font-size:30px;margin:6px 0 20px}.modal-close{position:absolute;right:14px;top:12px;width:36px;height:36px;border-radius:50%;border:1px solid #3a5260;background:#0b171f;color:#c9d6dc;font-size:25px;cursor:pointer}.leaderboard-list{display:grid;gap:6px}.leader-row{display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:9px;border:1px solid #2f4654;background:#0b1821;border-radius:10px;padding:10px 12px}.leader-row.me{border-color:#c39a42;background:#251f13}.leader-rank{font-size:18px;text-align:center;color:#d4bd79}.leader-name{display:grid}.leader-name b{font-size:13px}.leader-name small{color:#80939d;font-size:9px;margin-top:3px}.leader-rating{font-size:20px;color:#f1d173}.meta-loading,.empty-note{display:block;text-align:center;color:#8598a3;padding:18px}.profile-hero{display:flex;align-items:center;gap:16px;margin-bottom:20px}.profile-big-avatar{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;font-size:42px;background:#203b4c;border:3px solid #c7a44f}.profile-hero h2{margin:4px 0 3px}.profile-hero p{margin:0;color:#d3b867;font-size:12px}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.profile-stats div{border:1px solid #2e4552;background:#0a161e;border-radius:10px;text-align:center;padding:11px 5px}.profile-stats b{display:block;color:#f0ce6b;font-size:19px}.profile-stats small{display:block;color:#788d98;font-size:8px;text-transform:uppercase;margin-top:2px}.profile-modal h3{font-family:Georgia,serif;color:#ded4b8;font-size:16px;margin:19px 0 9px}.badges{display:flex;gap:7px;flex-wrap:wrap}.badges span{display:flex;align-items:center;gap:6px;border:1px solid #3c5360;background:#101d25;border-radius:999px;padding:7px 10px;font-size:10px}.badges i{font-style:normal;font-size:15px}.history-list{display:grid;gap:6px}.history-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #263944;padding:8px 2px}.history-row span{display:grid}.history-row span b{font-size:11px}.history-row small{font-size:8px;color:#788c97;margin-top:3px}.positive{color:#69d18a!important}.negative{color:#e36d65!important}.finish-stats{grid-template-columns:repeat(3,1fr)}
@media(max-width:820px){.menu-secondary{grid-template-columns:1fr 1fr}.meta-modal{max-height:84vh}.profile-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.menu-secondary{grid-template-columns:1fr}.finish-stats{grid-template-columns:1fr}.meta-modal{padding:22px 14px}.leader-row{grid-template-columns:36px 1fr auto}.profile-big-avatar{width:62px;height:62px;font-size:34px}}

/* v0.6 — fantasy kingdom map, private rooms, influence */
.fantasy-map{min-height:500px;background:#102631}.fantasy-map .sea{pointer-events:none}.fantasy-map .territory-shape{fill-opacity:.96;stroke:#d3c79f;stroke-width:2.3;filter:url(#shadow)}.fantasy-map .territory-shape.neutral{fill:#69715d;stroke:#c5b98e}.fantasy-map .territory-shape.blue{fill:#287cb7;stroke:#9ad8ff}.fantasy-map .territory-shape.red{fill:#aa4a42;stroke:#ffaaa1}.fantasy-map .territory-shape.available{stroke:#ffe078;stroke-width:6;filter:url(#glow) drop-shadow(0 5px 7px #0008)}.fantasy-map .territory-shape.active{stroke:#fff1a2;stroke-width:7}.fantasy-map .territory-text{font-size:13px;paint-order:stroke;stroke:#071016;stroke-width:4px;stroke-linejoin:round}.fantasy-map .territory-sub{font-size:8px;fill:#fff1c9;paint-order:stroke;stroke:#071016;stroke-width:3px;font-weight:800;letter-spacing:.5px}.fantasy-map .castle-mark{font-size:19px;fill:#ffe29a;paint-order:stroke;stroke:#061017;stroke-width:3px}.map-decoration{pointer-events:none}.river-line{fill:none;stroke:#83c8db;stroke-opacity:.7;stroke-width:8;stroke-linecap:round;filter:drop-shadow(0 2px 1px #08202a)}.river-line+*{pointer-events:none}.road-line{fill:none;stroke:#e1c98e;stroke-opacity:.42;stroke-width:3;stroke-dasharray:9 8;stroke-linecap:round}.mountain-rune{fill:#d9d2baaa;font-size:22px;letter-spacing:3px;filter:drop-shadow(0 2px 1px #000)}.forest-rune{fill:#183b2ecc;font-size:26px;letter-spacing:4px;filter:drop-shadow(0 2px 1px #000)}
.difficulty{margin-left:auto;margin-right:10px}.qmeta .difficulty.easy{background:#315c3e;color:#dff6df}.qmeta .difficulty.medium{background:#6c5425;color:#fff0bd}.qmeta .difficulty.hard{background:#74362f;color:#ffe2dd}
.friend-modal{width:min(680px,96vw)}.friend-intro{color:#91a4af;margin:-10px 0 18px;line-height:1.5}.friend-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.friend-box{min-width:0;border:1px solid #334c5b;background:#0b1821;border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px;align-items:stretch}.friend-box>b{font-family:Georgia,serif;color:#e8d49b;font-size:18px}.friend-box>small{color:#8297a2;min-height:28px}.friend-icon{font-size:30px}.friend-box input,.room-link-row input{width:100%;box-sizing:border-box;border:1px solid #3c5665;background:#09151d;color:#f2e8ce;border-radius:9px;padding:11px 12px;font-size:16px;outline:none}.friend-box input{text-transform:uppercase;letter-spacing:5px;text-align:center;font-weight:900}.friend-box input:focus,.room-link-row input:focus{border-color:#d1aa50;box-shadow:0 0 0 3px #d1aa501c}.room-waiting{text-align:center;padding:8px 0 4px}.room-waiting>small{display:block;color:#81949f;letter-spacing:2px;font-size:9px}.room-waiting>strong{display:block;font-family:Georgia,serif;font-size:46px;letter-spacing:8px;color:#f1cf71;margin:6px 0}.room-waiting>p{color:#b4c2c9}.room-link-row{display:grid;grid-template-columns:1fr auto;gap:7px;margin:15px auto 8px;max-width:540px}.room-link-row input{font-size:12px;color:#9db1bb}.room-link-row button{border:1px solid #c49b44;background:#2a2112;color:#efd17e;border-radius:9px;padding:0 13px;font-weight:900;cursor:pointer}.friend-error{min-height:18px;text-align:center;color:#e9877e;font-size:11px;margin:10px 0 0}.friend-modal .search-dots{margin:14px auto 0}
@media(max-width:820px){.fantasy-map{min-height:390px}.friend-grid{grid-template-columns:1fr}}
@media(max-width:600px){.fantasy-map{min-height:340px}.fantasy-map .territory-text{font-size:10px}.fantasy-map .territory-sub{display:none}.fantasy-map .castle-mark{font-size:16px}.river-line{stroke-width:6}.mountain-rune,.forest-rune{font-size:16px}.room-waiting>strong{font-size:36px;letter-spacing:5px}.room-link-row{grid-template-columns:1fr}.room-link-row button{min-height:42px}.qmeta{gap:6px}.qmeta>span{padding:5px 8px;font-size:9px}.difficulty{margin-left:0;margin-right:auto}}


/* v0.7 — живой бой */
.battle-ticker{margin:8px auto 0;max-width:740px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;border:1px solid #314b59;background:#0b1821cc;border-radius:10px;padding:7px 11px;min-height:42px}.battle-ticker>span{font-size:18px}.battle-ticker>b{font-size:11px;color:#e9d597;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.battle-ticker>small{color:#7f949f;font-size:9px}.streak-pill{display:inline-flex;align-items:center;gap:2px;margin-left:6px;padding:2px 6px;border:1px solid #7d4d20;background:#321b0c;border-radius:999px;color:#ffbf57;font-size:9px;font-weight:900;vertical-align:middle}.streak-pill.hot{animation:streakPulse .75s ease infinite alternate;box-shadow:0 0 14px #ff7a2b44}@keyframes streakPulse{to{transform:scale(1.08);box-shadow:0 0 20px #ff9c3566}}.turn-badge.turn-flash{animation:turnFlash .7s ease}@keyframes turnFlash{0%{transform:scale(.96);filter:brightness(1)}45%{transform:scale(1.08);filter:brightness(1.5)}100%{transform:none;filter:none}}.answer-hotkey{position:absolute;left:8px;top:8px;width:20px;height:20px;border-radius:5px;background:#0a151d99;border:1px solid #ffffff22;color:#9fb0ba;display:grid;place-items:center;font-size:9px;font-weight:900}.answers button{position:relative}.battle-log-pop{animation:tickerIn .28s ease both}@keyframes tickerIn{from{opacity:.2;transform:translateY(-4px)}to{opacity:1;transform:none}}@media(max-width:600px){.battle-ticker{grid-template-columns:24px 1fr}.battle-ticker>small{display:none}.battle-ticker>b{font-size:10px}.streak-pill{padding:1px 5px;font-size:8px}}


/* v0.8 — прогресс игрока */
.progression-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin:10px 0 14px}.progression-row>span{display:grid;text-align:center;min-width:54px}.progression-row b{font-size:11px;color:#f2d47e}.progression-row small{font-size:7px;color:#718691;text-transform:uppercase}.xp-track{height:8px;border-radius:99px;border:1px solid #314754;background:#09131a;overflow:hidden}.xp-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#43a0ca,#7ee0ff);box-shadow:0 0 10px #58c8f477;transition:width .35s}.match-rewards{margin:13px 0 0;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.match-rewards span{border:1px solid #5c4b27;background:#211b10;padding:7px 11px;border-radius:999px;color:#f1d279;font-weight:900;font-size:11px}.level-chip{display:inline-flex;align-items:center;border:1px solid #406070;background:#0a1b25;border-radius:999px;padding:3px 7px;color:#8fdcf6;font-size:9px;font-weight:900;margin-left:5px}


/* v0.9 — ежедневные задания */
.daily-card{border-top:1px solid #2b414e;margin-top:12px;padding-top:12px}.daily-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.daily-head b{font-size:11px;color:#ead390}.daily-head small{font-size:9px;color:#8ea1aa}.daily-tasks{display:grid;gap:5px}.daily-task{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:7px;border:1px solid #2a414e;background:#09161e;border-radius:8px;padding:6px 7px}.daily-task.done{border-color:#466846;background:#102116}.daily-task>span{font-size:14px}.daily-task div{display:grid;gap:3px}.daily-task b{font-size:9px;color:#cdd9de}.daily-task i{height:4px;border-radius:99px;background:#263a45;overflow:hidden}.daily-task i:after{content:"";display:block;height:100%;width:var(--p,0%);background:linear-gradient(90deg,#c28e36,#f0ce70)}.daily-task em{font-style:normal;font-size:8px;color:#d9bd70;white-space:nowrap}


/* v1.0 — карта знаний */
.knowledge-map{display:grid;grid-template-columns:1fr 1fr;gap:7px}.knowledge-row{border:1px solid #2e4552;background:#0a161e;border-radius:9px;padding:8px 9px}.knowledge-row header{display:flex;justify-content:space-between;gap:8px;align-items:center}.knowledge-row b{font-size:10px;color:#d8e1e5}.knowledge-row small{font-size:8px;color:#8ea1ab}.knowledge-bar{height:5px;background:#20333e;border-radius:99px;overflow:hidden;margin-top:6px}.knowledge-bar i{display:block;height:100%;background:linear-gradient(90deg,#bb8731,#f0cf72);width:var(--k,0%)}.knowledge-row.strong{border-color:#45634c}.knowledge-row.strong .knowledge-bar i{background:linear-gradient(90deg,#3d9b61,#79d996)}.knowledge-row.weak{border-color:#66413d}.knowledge-row.weak .knowledge-bar i{background:linear-gradient(90deg,#a44942,#e47769)}.knowledge-empty{grid-column:1/-1;color:#81949f;font-size:10px;text-align:center;padding:10px}@media(max-width:600px){.knowledge-map{grid-template-columns:1fr}}


/* v1.1 — классика и блиц */
.mode-selector{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.mode-choice{border:1px solid #334c5b;background:#0b1821;color:#dbe6ea;border-radius:11px;padding:9px 11px;text-align:left;cursor:pointer;display:grid;gap:3px;transition:.15s}.mode-choice b{font-size:11px}.mode-choice small{font-size:8px;color:#78909c}.mode-choice.active{border-color:#d0a84e;background:#251d10;box-shadow:inset 0 0 0 1px #d0a84e33}.mode-choice.active b{color:#f2d277}.mode-choice#blitzModeBtn.active{border-color:#75cdeb;background:#10232c}.mode-choice#blitzModeBtn.active b{color:#8ee5ff}.blitz-badge{color:#86e1ff!important;border-color:#3e7284!important;background:#0b2029!important}.map-toolbar b{color:#f1d477}@media(max-width:600px){.mode-selector{grid-template-columns:1fr}.mode-choice{padding:8px 10px}}

.mode-selector-note{margin:-2px 0 12px;color:#78909c;font-size:10px;line-height:1.35}

/* v1.2 — polish pass: карта, бой, результаты и лиги */
.map-frame{position:relative;overflow:hidden;border-color:#5a5a45;background:linear-gradient(180deg,#25271f,#121815);box-shadow:0 26px 80px #000a,inset 0 1px 0 #ffffff0a}
.map-frame:before{content:"";position:absolute;inset:45px 12px 42px;pointer-events:none;border-radius:12px;box-shadow:inset 0 0 70px #031018cc;z-index:2}
.fantasy-map .territory-shape{transition:filter .2s,opacity .2s,stroke-width .2s,fill .5s;transform-box:fill-box;transform-origin:center}
.territory-grain{pointer-events:none;fill:url(#landGrain);stroke:none;opacity:.72;mix-blend-mode:soft-light}
.fantasy-map .territory-shape.available{animation:attackablePulse 1.45s ease-in-out infinite alternate}
@keyframes attackablePulse{from{filter:url(#glow) drop-shadow(0 4px 5px #0008);stroke-opacity:.78}to{filter:url(#glow) drop-shadow(0 5px 9px #f4cf4c33) brightness(1.1);stroke-opacity:1}}
.fantasy-map .territory-shape.capture-blue{animation:captureBlue 1.55s cubic-bezier(.2,.8,.2,1)}
.fantasy-map .territory-shape.capture-red{animation:captureRed 1.55s cubic-bezier(.2,.8,.2,1)}
@keyframes captureBlue{0%{transform:scale(.96);fill:#fff4ad;filter:url(#glow) brightness(1.8)}35%{transform:scale(1.025);fill:#62c6ff;filter:url(#glow) brightness(1.35)}100%{transform:none}}
@keyframes captureRed{0%{transform:scale(.96);fill:#fff0ae;filter:url(#glow) brightness(1.8)}35%{transform:scale(1.025);fill:#ef766b;filter:url(#glow) brightness(1.35)}100%{transform:none}}
.map-capture-toast{position:absolute;z-index:6;left:50%;top:54%;transform:translate(-50%,-50%);min-width:210px;text-align:center;padding:11px 18px;border:1px solid #e2c66e;background:#0a151ddd;border-radius:12px;box-shadow:0 12px 45px #000b,0 0 30px #e3bd4d28;pointer-events:none;animation:captureToast 1.65s ease both}
.map-capture-toast.loss{border-color:#cf776f;box-shadow:0 12px 45px #000b,0 0 30px #d34e4328}.map-capture-toast b{display:block;font-family:Georgia,serif;font-size:15px;color:#f2d77e;letter-spacing:.7px}.map-capture-toast.loss b{color:#f0a099}.map-capture-toast small{display:block;margin-top:3px;color:#9eb0b8;font-size:9px}
@keyframes captureToast{0%{opacity:0;transform:translate(-50%,-44%) scale(.88)}14%{opacity:1;transform:translate(-50%,-50%) scale(1.03)}72%{opacity:1}100%{opacity:0;transform:translate(-50%,-58%) scale(.98)}}
.map-frame.map-impact{animation:mapImpact .38s ease}@keyframes mapImpact{0%,100%{transform:none}30%{transform:translateX(-3px)}60%{transform:translateX(3px)}}
.result-card.win{border-color:#967b38;box-shadow:0 28px 90px #000b,0 0 42px #d3af4230}.result-card.loss{border-color:#75423f;box-shadow:0 28px 90px #000b,0 0 42px #c54c4230}
.result-detail{margin:11px auto 0;max-width:520px;border-top:1px solid #ffffff12;padding-top:10px;color:#aebbc1;font-size:11px;line-height:1.45}.result-detail b{color:#f0d178}.result-detail .speed-win{color:#75dca0}.result-detail .speed-loss{color:#e98980}
.vs-countdown{width:58px;height:58px;margin:14px auto 6px;border-radius:50%;display:grid;place-items:center;border:1px solid #7f6b38;background:radial-gradient(circle,#2c2517,#0c151c);font-family:Georgia,serif;font-size:28px;color:#f1d376;box-shadow:0 0 25px #e6c34b1f}.vs-countdown.bump{animation:vsBump .45s ease}@keyframes vsBump{0%{transform:scale(.7);opacity:.25}55%{transform:scale(1.18);opacity:1}100%{transform:scale(1)}}
.profile-card,.kingdom-card,.profile-big-avatar{transition:border-color .25s,box-shadow .25s,background .25s}.profile-card.league-bronze,.kingdom-card.league-bronze{border-color:#805a36}.profile-card.league-silver,.kingdom-card.league-silver{border-color:#8899a6;box-shadow:0 14px 40px #a9c7d012}.profile-card.league-gold,.kingdom-card.league-gold{border-color:#caa549;box-shadow:0 14px 44px #e3bd4b1c}.profile-card.league-platinum,.kingdom-card.league-platinum{border-color:#52a8aa;box-shadow:0 14px 44px #56d9d31a}.profile-card.league-diamond,.kingdom-card.league-diamond{border-color:#7bbfe1;box-shadow:0 14px 48px #7bd8ff28}.profile-big-avatar.league-bronze{border-color:#9e6e42}.profile-big-avatar.league-silver{border-color:#b8c7d0;box-shadow:0 0 20px #b8d6e22b}.profile-big-avatar.league-gold{border-color:#e4bd54;box-shadow:0 0 24px #e4bd5440}.profile-big-avatar.league-platinum{border-color:#64d0cb;box-shadow:0 0 24px #64d0cb35}.profile-big-avatar.league-diamond{border-color:#8edfff;box-shadow:0 0 28px #8edfff55}
.finish-stats{grid-template-columns:repeat(4,1fr)}.finish-performance{margin:12px 0 4px;padding:10px 12px;border:1px solid #2f4653;background:#09161e;border-radius:10px;color:#8da0a9;font-size:10px;text-align:center}.finish-performance b{color:#efd075}
@media(max-width:720px){.finish-stats{grid-template-columns:repeat(2,1fr)}.map-capture-toast{top:51%;min-width:180px}.vs-countdown{width:50px;height:50px;font-size:24px}}

/* v1.3 — выбор темы */
.category-card{width:min(760px,calc(100vw - 28px));padding:34px 34px 28px;text-align:center;position:relative;overflow:hidden}
.category-card:before{content:"";position:absolute;inset:-40% 20% auto;height:230px;background:radial-gradient(circle,rgba(211,166,86,.16),transparent 68%);pointer-events:none}
.category-sigil{width:64px;height:64px;margin:0 auto 10px;display:grid;place-items:center;border:1px solid rgba(221,183,103,.45);border-radius:50%;background:rgba(15,25,32,.76);font-size:30px;box-shadow:0 0 30px rgba(210,166,80,.16)}
.category-card h2{margin:8px 0 6px;font-size:clamp(26px,4vw,40px)}
.category-land{margin:0 0 22px;color:var(--muted);font-size:15px}
.category-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 18px}
.category-choice{min-height:132px;padding:18px 12px;border:1px solid rgba(213,178,103,.25);border-radius:18px;background:linear-gradient(180deg,rgba(29,43,53,.96),rgba(15,25,32,.96));color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;cursor:pointer;transition:.18s ease;position:relative;overflow:hidden}
.category-choice:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 20%,rgba(224,183,91,.13),transparent 55%);opacity:.5}
.category-choice:hover,.category-choice:focus-visible{transform:translateY(-3px);border-color:rgba(235,197,112,.7);box-shadow:0 10px 26px rgba(0,0,0,.28),0 0 0 2px rgba(224,183,91,.08)}
.category-choice:disabled{opacity:.55;transform:none;cursor:default}
.category-choice .cat-icon{font-size:34px;line-height:1;position:relative}
.category-choice b{font-size:17px;position:relative}
.category-choice small{color:var(--muted);position:relative}
.category-choice .hotkey{position:absolute;top:9px;right:10px;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:rgba(255,255,255,.07);color:#d6c5a0;font-size:11px}
.category-timer{display:flex;justify-content:center;align-items:baseline;gap:7px;color:var(--muted);font-size:13px}.category-timer b{font-size:22px;color:#e7c575}.category-timer small{font-size:11px}
.category-hint{margin:11px 0 0;color:#70818a;font-size:12px}
.category-waiting #categoryChoices{opacity:.45;pointer-events:none}
@media(max-width:650px){.category-card{padding:26px 18px 22px}.category-choices{grid-template-columns:1fr;gap:9px}.category-choice{min-height:82px;display:grid;grid-template-columns:42px 1fr 24px;text-align:left;padding:12px 14px}.category-choice .cat-icon{font-size:28px}.category-choice .hotkey{position:static;grid-column:3;grid-row:1 / span 2}.category-choice small{grid-column:2}}
.category-wait-panel{grid-column:1/-1;min-height:120px;border:1px dashed rgba(213,178,103,.24);border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:rgba(9,17,22,.45)}
.category-wait-panel span{font-size:30px}.category-wait-panel b{font-size:16px}.category-wait-panel small{color:var(--muted)}
.category-choice.selected{border-color:#e7c575;box-shadow:0 0 0 2px rgba(231,197,117,.14),0 12px 30px rgba(0,0,0,.3)}

/* v1.4 online invite */
.invite-banner{margin:0 0 16px;padding:13px 15px;border:1px solid rgba(224,178,76,.45);border-radius:14px;background:linear-gradient(135deg,rgba(224,178,76,.13),rgba(97,53,24,.16));display:flex;flex-direction:column;gap:4px}
.invite-banner b{color:#f3cf79;font-size:14px;letter-spacing:.03em}.invite-banner small{color:#c9d3d7}.invite-banner span{font-weight:800;letter-spacing:.13em;color:#fff}

/* v1.5 — accounts */
.auth-card{max-width:430px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:18px 0 16px;padding:4px;border:1px solid #304957;border-radius:12px;background:#08141c}.auth-tab{border:0;border-radius:9px;padding:10px 12px;background:transparent;color:#8fa2ad;font-weight:900;cursor:pointer}.auth-tab.active{background:#21313b;color:#f1d37a;box-shadow:inset 0 0 0 1px #d5ae4b33}.auth-form{display:grid;gap:7px}.password-row{display:grid;grid-template-columns:1fr 46px;gap:7px}.password-row button{border:1px solid #415867;background:#0b1821;color:#d6c88f;border-radius:11px;cursor:pointer}.auth-error{min-height:18px!important;margin:2px 0 0!important;color:#e98b82!important;text-align:left!important;font-size:11px!important}.auth-divider{display:flex;align-items:center;gap:10px;margin:18px 0 13px;color:#6f8490;font-size:10px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#2b404c}.guest-form{display:grid;gap:7px}.guest-row{display:grid;grid-template-columns:1fr 100px;gap:7px}.guest-row .btn{min-height:49px;padding:10px}.guest-form>small{color:#70838e;font-size:10px;line-height:1.45}.logout-btn{font-size:18px}.profile-card .account-mark{display:inline-flex;align-items:center;gap:4px;color:#7bd6a1}.profile-card .guest-mark{display:inline-flex;align-items:center;gap:4px;color:#a8b6be}.mode-card.account-locked{opacity:.58}.mode-card.account-locked .mode-text small{color:#e6b66d}.guest-notice{margin:10px 0 14px;padding:10px 12px;border:1px solid #6e5b35;border-radius:11px;background:#1f1b12;color:#d6c692;font-size:11px;line-height:1.45}.guest-notice b{color:#f0cf74}
@media(max-width:600px){.auth-card{padding:26px 20px}.guest-row{grid-template-columns:1fr}.guest-row .btn{width:100%}.top-actions{gap:6px}}
