@font-face{font-family:system-local;src:local("Segoe UI")}*{box-sizing:border-box}html{color-scheme:dark}body{--bg:#0c0e1c;--panel:#111427;--line:#24283e;--text:#e9ebf4;--muted:#8489a8;--accent:#ff9274;--tile:42px;margin:0;background:var(--bg);color:var(--text);font-family:Segoe UI,Malgun Gothic,system-ui,sans-serif;font-size:14px;line-height:1.5}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 45% 30%,#171b32aa,transparent 65%),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:auto,60px 60px,60px 60px;pointer-events:none}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.4}button{border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent)}button{transition:background .16s,color .16s,transform .16s}button:active{transform:translateY(1px)}[hidden]{display:none!important}.topbar{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:48px;max-width:1600px;padding:0 48px;margin:auto}.logo{display:flex;align-items:center;gap:12px}.logo svg{width:38px;height:38px;stroke:var(--accent);stroke-width:2;fill:var(--accent)}.logo svg .shine{fill:var(--bg);stroke:none}.logo>span{font-size:24px;font-weight:900;letter-spacing:-1.2px;line-height:1.05}.logo-light{color:var(--accent);font-weight:500}.logo small{display:block;font-size:11px;letter-spacing:3px;font-weight:500;color:var(--muted);margin-top:6px}.header-nav{display:flex;gap:28px;align-items:center;margin-left:auto}.header-nav button{background:none;padding:8px 0;color:#a4a8c1;font-size:14px}.header-nav button:hover{color:var(--accent)}.nav-icon{color:var(--accent);margin-right:6px}.studio-link{font-size:12px;font-weight:800;letter-spacing:1.5px}.studio-link span{color:var(--muted);padding-left:4px}.connection{font-family:monospace;font-size:12px;color:var(--muted);border-left:1px solid var(--line);padding-left:24px;display:flex;gap:8px;align-items:center}.connection i,.eyebrow i,.field-footer i,.board-status i{height:6px;width:6px;border-radius:50%;background:#eeae64;display:inline-block}.connection i.online{background:var(--accent);box-shadow:0 0 9px #ff927440}.shell{max-width:1496px;margin:0 auto;padding:34px 48px 0}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:25px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--accent);display:inline-flex;gap:8px;align-items:center}.eyebrow i{background:var(--accent)}h1{font-size:28px;letter-spacing:-1px;margin:7px 0 0;font-weight:650}.skin-switch,.segmented{display:flex;gap:3px;background:#080a16;border:1px solid var(--line);padding:4px;border-radius:7px}.skin-switch button,.segmented button{padding:8px 16px;background:none;border-radius:4px;font-size:13px;color:var(--muted)}.skin-switch .selected,.segmented .selected{background:#242840;color:var(--accent)}.arena-layout{display:grid;grid-template-columns:230px minmax(380px,1fr) 268px;gap:20px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}.setup-panel{padding:22px}.panel-cap{display:flex;justify-content:space-between;align-items:center;font-family:monospace;font-size:10px;letter-spacing:1.6px;color:var(--muted);margin-bottom:26px}.cap-number{color:#494f6e;font-size:12px}.field-label{font-weight:650;display:block;font-size:13px;margin-bottom:9px}.name-field{display:flex;align-items:center;border:1px solid #34384e;border-radius:6px;padding:0 12px;height:43px;background:#0d1020;gap:8px}.name-field span{color:var(--accent)}.name-field input{width:100%;color:var(--text);background:transparent;border:none;outline:none;min-width:0}.difficulty-label{margin-top:24px}.difficulty{display:grid;gap:8px}.difficulty button{display:flex;align-items:center;gap:12px;background:#16192d;border:1px solid #2a2e45;border-radius:7px;text-align:left;padding:12px 13px}.difficulty button:hover{background:#20243a}.difficulty .selected{border-color:#ff927482;background:#191d34}.level-icon{font-size:25px;color:var(--muted)}.difficulty .selected .level-icon{color:var(--accent)}.difficulty strong{font-size:14px;display:block;font-weight:650}.difficulty small{font-size:11px;color:var(--muted);font-family:monospace;letter-spacing:.2px}.difficulty i{margin-left:auto;border:1px solid #4f546f;width:12px;height:12px;border-radius:50%}.difficulty .selected i{border:3px solid #191d34;background:var(--accent);outline:1px solid var(--accent)}.primary-start{display:flex;align-items:center;justify-content:space-between;background:var(--accent);color:#111529;border-radius:6px;font-size:14px;font-weight:800;padding:15px 14px;width:100%;margin-top:24px;box-shadow:0 4px 20px #ff927410}.primary-start:hover,.board-start:hover{background:#a4b0f7}.match-note{font-size:11px;text-align:center;color:var(--muted);margin:9px 0 15px}.single-start{display:flex;justify-content:space-between;border:1px solid #34384e;background:transparent;border-radius:6px;padding:12px;width:100%;font-size:13px}.single-start:hover{background:#1c213b}.single-start span{color:var(--accent)}.leave-game{width:100%;background:none;color:#eaa384;font-size:13px;padding-top:16px}.divider{height:1px;background:var(--line);margin:25px 0 20px}.rule-title{font-size:13px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.rule-title>span{font:9px monospace;color:#6d728f}.rule-line{display:flex;align-items:center;gap:12px;margin-top:17px}.rule-symbol{color:var(--accent);font-size:22px;display:grid;place-items:center;width:32px;height:32px;background:#ff92740a;border-radius:6px}.rule-symbol.amber{color:#f6cc82;background:#f6cc820a}.rule-symbol.red{color:#f39493;background:#f394930a}.rule-line p{margin:0;font-size:12px;color:var(--muted);line-height:1.6}.rule-line strong{color:#bdc1d5;font-size:12px;font-weight:500}.server-seal{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:#0d1020;border-radius:6px;padding:11px 5px;margin-top:26px;font-size:10px;color:var(--muted)}.server-seal svg{width:14px;fill:none;stroke:#ff9274;stroke-width:1.6}.game-panel{padding:0 25px 15px;min-height:655px;position:relative}.game-top{height:65px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:13px}.game-top>div{display:flex;align-items:center;gap:10px}.mode-tag{background:#ff927415;color:var(--accent);font:10px monospace;letter-spacing:1px;border:1px solid #ff927430;border-radius:3px;padding:4px 7px}.match-tag{font:9px monospace;letter-spacing:1px;color:#656b8c}.hud{display:flex;align-items:center;justify-content:space-between;max-width:420px;margin:21px auto 10px}.hud>div{min-width:100px}.hud-label{display:block;font:10px monospace;letter-spacing:1.7px;color:var(--muted);margin-bottom:2px}.digital{font:34px Consolas,monospace;letter-spacing:1px;font-weight:400}.hud-time{text-align:right}.hud-time .digital{color:var(--accent)}#face-button{width:49px;height:49px;background:#1b1f35;border:1px solid #3e4360;border-radius:10px;color:var(--accent);font-size:25px}#face-button:hover{background:#2c314d}.game-info{display:flex;justify-content:space-between;max-width:420px;margin:14px auto 15px;font-size:12px}#lives-label{color:#f49191;letter-spacing:3px}#lives-label span{letter-spacing:0;color:var(--muted);font-size:10px;margin-left:5px}#combo-label{font:10px monospace;color:#727898;letter-spacing:1px}#combo-label b{color:#f6cc82;font-weight:500;font-size:15px;padding-left:5px}.board-scroll{position:relative;overflow:auto;max-width:100%;min-height:384px;padding:4px;scrollbar-color:#3b4161 #0d1020;scrollbar-width:thin}.board{display:grid;grid-template-columns:repeat(var(--cols,9),var(--tile));gap:3px;width:max-content;margin:auto;padding:7px;border:1px solid #2e3248;background:#0b0e1d;border-radius:7px;touch-action:pan-x pan-y}.cell{width:var(--tile);height:var(--tile);padding:0;background:linear-gradient(145deg,#22263f,#1a1e34);border:1px solid #30354f;border-radius:4px;position:relative;font-family:Consolas,monospace;font-size:calc(var(--tile)*.49);font-weight:600;user-select:none;-webkit-user-select:none;touch-action:pan-x pan-y;transition:background .1s}.cell.closed:after{content:"";position:absolute;inset:6px;border-left:1px solid #6a709012;border-top:1px solid #6a709012;pointer-events:none}.cell.closed:hover{background:#33395b;border-color:#7886d6}.cell.open{background:#12162a;border-color:#20243b;color:#7487f5}.cell.n0{color:transparent}.cell.n1{color:#7a8eff}.cell.n2{color:#ff9274}.cell.n3{color:#f39c84}.cell.n4{color:#bba5f1}.cell.n5{color:#eda0c7}.cell.n6{color:#6072d6}.cell.n7{color:#fff}.cell.n8{color:#bec1d2}.cell.flag{background:#383043;color:#8d9cf2}.cell.mine,.cell.exploded{color:#ff9d88;background:#663631;border-color:#c87561}.cell.new-open{animation:cell-reveal .28s ease-out}.cell.focused{outline:2px solid var(--accent);z-index:1}.start-overlay{position:absolute;inset:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:7px;background:linear-gradient(#0c0f21a8,#0c0f21e8);backdrop-filter:blur(1.5px)}.start-emblem{width:58px;height:58px;display:grid;place-items:center;background:#ff92740b;color:var(--accent);border:1px solid #ff92743a;border-radius:14px;font-size:36px;margin-bottom:19px;box-shadow:0 0 40px #ff927410;transform:rotate(-8deg)}.start-overlay .eyebrow{font-size:9px;letter-spacing:1.7px}.start-overlay h2{font-size:26px;margin:9px 0 8px;font-weight:600}.start-overlay p{font-size:13px;color:#a6abc8;line-height:1.8;margin:0 0 19px}.board-start{background:var(--accent);color:#111529;min-width:210px;border-radius:5px;padding:12px 17px;font-size:13px;font-weight:800;display:flex;gap:26px;justify-content:space-between}.start-overlay small{font-size:10px;color:#707695;margin-top:12px}.board-status{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:11px;color:var(--muted);margin-top:20px}.board-status>div{display:flex;align-items:center;gap:8px}.board-status i{background:var(--accent);flex:none}.board-status strong{font:11px monospace;color:#c4c7da;white-space:nowrap}.progress-track{height:3px;background:#262a41;overflow:hidden;border-radius:10px;margin-top:11px}.progress-track>div{background:var(--accent);height:100%;width:0;transition:width .25s;box-shadow:0 0 10px var(--accent)}.board-controls{display:flex;align-items:center;justify-content:space-between;margin:18px 0 16px}.board-controls button{font-size:11px;padding:7px 9px;background:#1a1e33;color:#9398b6;border:1px solid var(--line);border-radius:4px}.board-controls button.active{background:#242841;border-color:var(--accent);color:var(--accent)}.zoom-controls{display:flex;gap:8px;align-items:center;font:10px monospace;color:var(--muted)}.zoom-controls button{font-size:14px;padding:3px 9px}.control-hint{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;color:#6d7291;font-size:10px}.control-hint span{white-space:nowrap}kbd{font:9px Malgun Gothic,sans-serif;background:#181c30;border:1px solid #2c3046;border-radius:3px;padding:2px 4px;margin-right:4px}.rivals-panel{padding:22px 19px 15px}.rivals-panel .panel-cap{margin-bottom:20px}.player-count{color:var(--accent);letter-spacing:0;font:12px monospace;background:#ff92740b;padding:3px 6px;border-radius:3px}.field-subheading h2{font-size:14px;font-weight:650;margin:0 0 5px}.field-subheading>span{font-size:11px;color:var(--muted)}.rivals{margin-top:18px;display:grid;gap:7px}.rival{display:flex;align-items:center;gap:9px;min-height:43px;position:relative;border:1px solid #242840;border-radius:5px;padding:5px 7px;background:#13162a}.rival.self{border-color:#ff927466;background:#171b32}.rival.dead{opacity:.48}.rival-place{font:11px monospace;color:#686e8f;width:14px;text-align:center}.rival.self .rival-place{color:var(--accent)}.rival-preview{display:grid;grid-template-columns:repeat(6,3px);gap:1px;padding:3px;flex:none}.rival-preview i{width:3px;height:3px;background:#2a2f4b}.rival-preview i.v1{background:#363c5f}.rival-preview i.v2{background:#4d599c}.rival-preview i.v3{background:#ff9274}.rival-info{min-width:0;flex:1}.rival-name{font-size:11px;display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rival-name>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-badge,.you-badge{font:8px monospace;border:1px solid #40445b;color:#8186a1;padding:0 3px;border-radius:2px;flex:none}.you-badge{color:var(--accent);border-color:#ff92744a}.rival-progress{height:2px;background:#22263f;border-radius:4px;margin-top:5px}.rival-progress>div{height:100%;background:#5f668b;transition:width .2s}.self .rival-progress>div{background:var(--accent)}.rival-percent{font:10px monospace;color:#8186a5;flex:none}.rival.waiting{border-style:dashed;opacity:.55;min-height:38px;background:transparent}.rival.waiting .rival-name{color:#666c8e}.rival.waiting .rival-preview i{background:#23273b}.field-footer{display:flex;align-items:center;gap:7px;border-top:1px solid var(--line);margin-top:20px;padding-top:15px;color:var(--muted);font-size:10px}.field-footer i{background:var(--accent);width:5px;height:5px}.footer{display:flex;align-items:center;justify-content:space-between;color:#52587d;font-size:10px;gap:12px;padding:22px 0 28px}.footer>span:first-child{font:10px monospace;letter-spacing:1px}.footer-slash{color:#383d5b;padding:0 10px}.footer button{background:none;padding:0;color:#787e9f;font-size:11px}.countdown{position:absolute;inset:0;background:#0a0d1fdd;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;z-index:3}.countdown strong{font:100px Consolas,monospace;color:var(--accent)}.countdown span{color:#acb0c7;font-size:14px}.jammed{position:absolute;inset:0;background:#eea65718;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;box-shadow:inset 0 0 60px #eea65728}.jammed strong{font:36px monospace;font-weight:800;color:#ffd28c;text-shadow:0 0 20px #fbad57}.jammed span{font-size:11px;background:#111427df;padding:5px 12px;border-radius:4px;color:#ffd28c}.modal{border:1px solid #3c415d;border-radius:14px;background:#13172c;color:var(--text);width:min(620px,calc(100% - 28px));padding:35px;max-height:90dvh;box-shadow:0 20px 100px #0008}.modal::backdrop{background:#060815bf;backdrop-filter:blur(7px)}.close-dialog{position:absolute;right:14px;top:12px;font-size:25px;line-height:1;width:30px;height:30px;border-radius:4px;background:transparent;color:var(--muted)}.modal h2{font-size:27px;letter-spacing:-1px;margin:11px 0 7px}.modal h2>span{float:right;color:var(--accent)}.modal-intro{font-size:13px;color:var(--muted)}.rank-filters{display:flex;gap:10px;margin:25px 0 20px}.rank-filters select{min-width:85px;color:#dcdeea;background:#14182e;border:1px solid #353a54;padding:8px;border-radius:5px;font-size:12px}.rank-filters .segmented{margin-right:auto}.rank-filters .segmented button{font-size:12px;padding:7px 14px}.rank-table{width:100%;border-collapse:collapse;font-size:13px}.rank-table th{text-align:left;font-size:11px;font-weight:500;color:var(--muted);padding:10px 7px;border-bottom:1px solid #40455e}.rank-table td{padding:11px 7px;border-bottom:1px solid var(--line)}.rank-table th:last-child,.rank-table td:last-child{text-align:right}.rank-table .me{background:#ff927413;color:var(--accent)}.rank-empty{text-align:center;padding:40px 10px;border:1px dashed #3c415d;border-radius:8px;color:#abb0cc}.rank-empty strong{font-size:17px;display:block;color:#d5d8e8}.rank-empty p{font-size:13px;color:var(--muted)}.rank-audit{font-size:10px;color:var(--muted);margin-top:20px}.result-modal{text-align:center;width:min(520px,calc(100% - 28px))}.result-icon{font-size:55px;color:#f2ca84;margin-top:10px}.result-modal h2{font-size:31px}.result-modal>p{font-size:13px;color:#9ea3c2}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;border:1px solid #34384d;border-radius:8px;padding:18px 8px;margin:24px 0 14px}.result-stats span{font-size:11px;color:var(--muted);display:block}.result-stats strong{font:23px Consolas,monospace;display:block;margin-top:4px;color:var(--accent)}.result-verified{font-size:11px!important;color:#a0a5c2!important}.result-standings{max-height:140px;overflow:auto;text-align:left;margin:18px 0}.result-row{display:flex;gap:12px;align-items:center;padding:6px 8px;font-size:11px;color:#9298b8}.result-row strong{flex:1;font-weight:500;color:var(--text)}.result-row.me{background:#ff927418;border-radius:4px;color:var(--accent)}.result-actions{display:flex;gap:10px;margin-top:20px}.result-actions .primary-start{margin:0;justify-content:center}.result-actions .single-start{width:130px;justify-content:center;align-items:center}.help-modal p,.help-modal li{color:#adb2cd;font-size:14px;line-height:1.9}.help-modal ul{padding-left:19px}.help-modal li{margin-bottom:12px}.help-modal strong{color:var(--accent);font-weight:600}.help-example{display:flex;justify-content:center;gap:4px;margin:25px}.help-example span{width:50px;height:50px;display:grid;place-items:center;background:#262b48;border:1px solid #444a6b;border-radius:4px;color:var(--accent);font:28px monospace}.help-example .help-number{background:#151933;color:#7a8eff}.help-note{border-top:1px solid var(--line);padding-top:16px;font-size:12px;color:var(--muted)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#252a44;color:#eaebf3;padding:12px 20px;box-shadow:0 8px 35px #0006;border:1px solid #686e8f;border-radius:7px;font-size:13px;z-index:20;max-width:90%;text-align:center}#effects{position:fixed;inset:0;pointer-events:none;z-index:10;width:100%;height:100%}.hit{animation:board-hit .32s ease-in-out}.pulse-flash{animation:pulse-flash .45s ease-out}@keyframes cell-reveal{0%{background:#7283e0;transform:scale(.9)}to{transform:scale(1)}}@keyframes board-hit{25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}@keyframes pulse-flash{0%{box-shadow:0 0 0 2px #f4bd76,inset 0 0 25px #f4bd7650}to{box-shadow:none}}body[data-skin=classic]{--bg:#dadada;--panel:#c0c0c0;--line:#9a9a9a;--text:#1d1d1d;--muted:#575757;--accent:#081b88;color-scheme:light}body[data-skin=classic]:before{background:none}body[data-skin=classic] .panel{border-radius:0;border:3px outset #e0e0e0}body[data-skin=classic] .board{gap:0;border:3px inset #e4e4e4;border-radius:0;background:silver;padding:0}body[data-skin=classic] .cell{border-radius:0;background:silver;border:3px outset #eee;transition:none}body[data-skin=classic] .cell.closed:after{display:none}body[data-skin=classic] .cell.open{border:1px solid #8f8f8f;background:silver}body[data-skin=classic] .cell.flag{background:silver;color:#c90000}body[data-skin=classic] .cell.n1{color:#0000cd}body[data-skin=classic] .cell.n2{color:#7b32a8}body[data-skin=classic] .cell.n3{color:#d00000}body[data-skin=classic] .cell.n4{color:navy}body[data-skin=classic] .cell.n5{color:maroon}body[data-skin=classic] .cell.n6{color:#996014}body[data-skin=classic] .cell.n7{color:#111}body[data-skin=classic] .cell.n8{color:#555}body[data-skin=classic] .cell.mine,body[data-skin=classic] .cell.exploded{color:#000;background:#f44;border:1px solid #888}body[data-skin=classic] .digital{background:#1b1111;color:#ff3434;padding:0 6px;border:2px inset #999}body[data-skin=classic] #face-button{background:silver;border:3px outset #eee;border-radius:0;color:#111}body[data-skin=classic] .hud{background:#b8b8b8;border:3px inset #ddd;padding:10px;max-width:450px}body[data-skin=classic] .name-field,body[data-skin=classic] .skin-switch,body[data-skin=classic] .server-seal,body[data-skin=classic] .rival,body[data-skin=classic] .board-controls button,body[data-skin=classic] .segmented{background:#cacaca;border-color:#999}body[data-skin=classic] .difficulty button{background:#c8c8c8;border:2px outset #ddd}body[data-skin=classic] .difficulty .selected{background:#b8bddc;border:2px inset #ddd}body[data-skin=classic] .primary-start,body[data-skin=classic] .board-start{background:#223394;color:#fff;border:2px outset #6f7bbf;border-radius:0;box-shadow:none}body[data-skin=classic] .single-start{border-color:#888}body[data-skin=classic] .rule-line strong,body[data-skin=classic] .rival-name,body[data-skin=classic] .header-nav button{color:#333}body[data-skin=classic] .rival.self,body[data-skin=classic] .skin-switch .selected,body[data-skin=classic] .segmented .selected{background:#b8bddc}body[data-skin=classic] .start-overlay{background:#c0c0c0e0;backdrop-filter:none;border-radius:0}body[data-skin=classic] .start-overlay p,body[data-skin=classic] .start-overlay small{color:#404040}body[data-skin=classic] .start-emblem{color:#333;background:silver;border:3px outset #eee;box-shadow:none;border-radius:0;transform:none}body[data-skin=classic] .modal{background:silver;border:3px outset #eee;border-radius:0}body[data-skin=classic] .modal p,body[data-skin=classic] .modal li,body[data-skin=classic] .result-row,body[data-skin=classic] .result-row strong{color:#333}body[data-skin=classic] .modal select{background:#ddd;color:#111}body[data-skin=classic] .countdown{background:#c0c0c0e8}body[data-skin=classic] .countdown span{color:#333}body[data-skin=classic] .hud-label,body[data-skin=classic] .board-controls button{color:#444}body[data-skin=classic] .cell.new-open{animation:none}body[data-skin=classic] #lives-label{color:#b22020}body[data-skin=classic] .toast{background:#ddd;color:#111;border-color:#555}@media(min-width:1500px){.arena-layout{grid-template-columns:240px minmax(500px,1fr) 290px}.rival-name{font-size:12px}.rival{min-height:44px}.shell{padding-top:40px}}@media(max-width:1200px){.shell{padding:28px 25px 0}.topbar{padding:0 25px;gap:25px}.arena-layout{grid-template-columns:200px minmax(330px,1fr) 224px;gap:13px}.setup-panel{padding:18px 15px}.game-panel{padding-left:16px;padding-right:16px}.rivals-panel{padding:20px 13px}.difficulty button{padding:10px}.rule-title>span{display:none}body{--tile:36px}.board-scroll{min-height:330px}.game-panel{min-height:623px}.rival{gap:5px}.rival-preview{padding:2px}.page-heading h1{font-size:25px}}@media(max-width:970px){.arena-layout{grid-template-columns:190px minmax(300px,1fr)}.rivals-panel{grid-column:1/-1}.rivals{grid-template-columns:repeat(4,1fr)}.rivals-panel .panel-cap{margin-bottom:10px}.field-subheading{display:flex;gap:20px;align-items:center}.rivals{margin-top:12px}.rivals-panel{padding:16px}.game-panel{min-height:650px}body{--tile:40px}.board-scroll{min-height:366px}.topbar{height:74px}.header-nav{gap:20px}.connection{padding-left:15px}.footer>span:nth-child(2){display:none}}@media(max-width:650px),(max-width:970px)and (max-height:500px){.topbar{padding:0 16px;gap:12px;height:68px}.logo svg{width:30px;height:30px}.logo>span{font-size:19px}.logo small{font-size:8px;letter-spacing:2px;margin-top:4px}.header-nav{gap:15px}.header-nav button{font-size:12px}.header-nav button .nav-icon,.studio-link{display:none}.connection{border:none;padding:0;font-size:0;gap:0}.connection i{width:7px;height:7px}.shell{padding:22px 14px 0}.page-heading{align-items:center;gap:10px;margin-bottom:17px}.page-heading h1{font-size:20px}.eyebrow{font-size:9px;letter-spacing:1.7px}.skin-switch button{font-size:11px;padding:6px 9px}.arena-layout{grid-template-columns:minmax(0,1fr);gap:14px}.setup-panel{padding:15px;display:grid;grid-template-columns:1fr 1fr;gap:10px;overflow:visible}.setup-panel .panel-cap,.difficulty-label,.setup-panel .divider,.rule-title,.rule-line,.server-seal,.match-note{display:none}.field-label{margin:0;font-size:11px;grid-column:1/-1}.name-field{grid-column:1/-1;height:38px}.difficulty{grid-column:1/-1;display:flex;gap:6px;margin-top:2px}.difficulty button{flex:1;padding:8px 7px;gap:5px}.difficulty .level-icon{font-size:20px}.difficulty strong{font-size:12px}.difficulty small{font-size:9px;letter-spacing:-.4px}.difficulty i{display:none}.primary-start{margin:0;padding:11px 10px;font-size:12px}.single-start{padding:10px;font-size:11px;align-items:center}.leave-game{grid-column:1/-1;padding:5px;font-size:12px}.game-panel{min-height:0;padding:0 13px 15px;grid-row:2}.game-top{height:50px}.match-tag{font-size:8px;letter-spacing:0}.hud{margin:17px auto 10px;max-width:350px}.digital{font-size:29px}.hud>div{min-width:95px}.hud-label{font-size:9px}#face-button{width:42px;height:42px;font-size:23px}.game-info{margin:12px auto;max-width:350px}.board-scroll{min-height:320px;padding:2px}body{--tile:33px}.board{gap:3px;padding:5px}.cell{border-radius:3px}.rivals-panel{grid-column:1;grid-row:3}.rivals{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.rival{padding:5px 4px;gap:4px;min-height:42px}.rival-preview{display:none}.rival-name{font-size:10px;gap:3px}.rival-percent{font-size:9px}.rival-place{font-size:10px;width:10px}.rival-info{min-width:0}.ai-badge,.you-badge{font-size:7px}.rival.waiting{min-height:34px}.field-subheading h2{font-size:13px}.field-subheading>span{font-size:10px}.footer{padding:18px 0;font-size:9px}.footer>span:first-child{font-size:8px;letter-spacing:.3px}.footer-slash{padding:0 3px}.footer button{font-size:10px}.control-hint{gap:6px;font-size:9px}.board-status{font-size:10px;margin-top:15px}.board-controls{margin:14px 0}.board-controls button{font-size:10px;padding:6px}.zoom-controls{gap:6px}.start-overlay h2{font-size:24px}.start-emblem{width:45px;height:45px;font-size:29px;margin-bottom:13px}.start-overlay p{font-size:12px}.start-overlay small{font-size:9px}.modal{padding:25px 20px}.modal h2{font-size:24px}.rank-filters{gap:6px;flex-wrap:wrap}.rank-filters select{font-size:11px;min-width:76px}.rank-filters .segmented button{padding:7px 10px}.rank-table{font-size:12px}.modal .eyebrow{font-size:10px}.help-modal li,.help-modal p{font-size:13px}.result-actions .primary-start{padding:14px}.control-hint kbd{font-size:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.board-surface{position:relative;width:max-content;margin:auto;isolation:isolate}.crystal-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-x pan-y;border-radius:10px}.webgl-ready[data-skin=neon] .board{opacity:0}.webgl-ready[data-skin=classic] .crystal-canvas{display:none}.webgl-ready[data-skin=neon] .board-surface{filter:drop-shadow(0 12px 14px #0008)}.webgl-ready[data-skin=neon] .board-scroll{background:radial-gradient(ellipse at center,#7287ff0b,transparent 65%)}.start-overlay,.countdown{z-index:4}.jammed{z-index:3}.crystal-canvas{z-index:2}.board-surface .board{position:relative;z-index:1}.webgl-ready[data-skin=neon] .start-overlay{background:linear-gradient(#0c0f214d,#0c0f21c9);backdrop-filter:none}.webgl-ready[data-skin=neon] .start-emblem{box-shadow:0 0 30px #ff927425,inset 0 0 22px #ff927418;background:#778af714}.webgl-ready[data-skin=neon] .cell:focus-visible{outline:none}body[data-skin=neon] .hud-time .digital{text-shadow:0 0 20px #ff927432}body[data-skin=neon] .logo svg{filter:drop-shadow(0 0 6px #ff927435)}body[data-skin=neon] #face-button{box-shadow:inset 0 0 15px #ff92740b,0 0 18px #ff92740b}.board-surface:not(.crystal-active) .crystal-canvas{display:none}body[data-skin=neon] .cell.new-open{animation:glass-reveal .46s cubic-bezier(.2,.7,.3,1) var(--reveal-delay,0ms) both}body[data-skin=neon] .cell.new-open:before{content:"";position:absolute;inset:1px;border-radius:3px;border:1px solid #adb9ff;pointer-events:none;animation:glass-reveal-shine .46s ease-out var(--reveal-delay,0ms) both}@keyframes glass-reveal{0%{background:#323b6e;box-shadow:inset 0 0 12px #acb8ff6b;transform:scale(.97)}30%{background:#414d8e;box-shadow:inset 0 0 14px #a6b3ff66;transform:scale(1.035)}to{background:#12162a;box-shadow:none;transform:scale(1)}}@keyframes glass-reveal-shine{0%{opacity:0}20%{opacity:.9}to{opacity:0}}body[data-skin=neon]:not(.webgl-ready) .cell.closed{background:linear-gradient(145deg,#aab7ff2b,#34408438,#181e40b0 50%,#3d4ead4d 80%,#99a8ff33);border-color:#7687e970;box-shadow:inset 0 0 9px #c0c9ff29,0 0 5px #7287ff28,0 4px #0b102c;border-radius:7px}body[data-skin=neon]:not(.webgl-ready) .cell.closed:after{inset:3px;border:1px solid #9aa9ff45;border-radius:4px}.crystal-badge{font:9px monospace;color:#8390d9;border:1px solid #7283e53a;background:#7283e509;padding:4px 6px;border-radius:3px;letter-spacing:.8px}.mobile-lobby{display:none}#flag-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:168px;min-height:56px;padding:10px 14px;border:2px solid #525776;border-radius:8px;background:#20253f;color:#e9ebf4;font-size:16px;font-weight:700;touch-action:manipulation}.flag-label{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.flag-icon{font-size:24px;line-height:1}#flag-state{min-width:52px;padding:5px 9px;border-radius:5px;background:#101429;color:#aeb2ca;font:800 15px Consolas,monospace;text-align:center}#flag-toggle.active,#flag-toggle[aria-pressed=true]{background:#b62534;border-color:#ff8590;color:#fff}#flag-toggle.active #flag-state{background:#fff;color:#a51b2a}body[data-skin=classic] #flag-toggle{background:#cacaca;color:#222;border-color:#888}body[data-skin=classic] #flag-state{background:#e7e7e7;color:#444}body[data-skin=classic] #flag-toggle.active{background:#b62534;border-color:#ed7180;color:#fff}body[data-skin=classic] #flag-toggle.active #flag-state{background:#fff;color:#a51b2a}body[data-skin=classic] .result-verified{color:#242c57!important}@media(max-width:650px),(max-width:970px)and (max-height:500px){.topbar{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.shell{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));padding-bottom:env(safe-area-inset-bottom)}.page-heading{flex-wrap:wrap}.skin-switch{flex:none}.difficulty button{min-width:0;justify-content:center;text-align:center;min-height:48px}.difficulty .level-icon{display:none}.difficulty small{display:block;white-space:nowrap}.game-active .page-heading,.game-active .setup-panel{display:none}.game-active .shell{padding-top:12px}.game-active .game-panel{grid-row:1}.game-panel{display:flex;flex-direction:column;scroll-margin-top:8px}.game-top{order:0;flex:none;gap:6px}.game-top>div{gap:6px;min-width:0}#round-label{white-space:nowrap}.match-tag{margin-left:auto}.mobile-lobby{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;background:#1a1e33;color:var(--text);border:1px solid var(--line);border-radius:4px;font-size:11px}.hud{order:1;width:100%}.hud>div{min-width:0}.game-info{order:2;width:100%}.toast{order:3;position:static;transform:none;max-width:100%;padding:8px 10px;margin:4px 0;box-shadow:none;font-size:11px;overflow-wrap:anywhere}.board-controls{order:4;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:8px 0 12px}.board-controls button{min-height:44px;padding:5px;min-width:0}#flag-toggle{grid-column:1 / -1;grid-row:1;min-height:60px;padding:12px 16px;font-size:17px}#sound-toggle{grid-column:2;grid-row:2}.zoom-controls{grid-column:1;grid-row:2}.zoom-controls{gap:4px;justify-content:center}.zoom-controls button{width:44px;flex:none}.zoom-controls span{min-width:29px;text-align:center}.board-scroll{order:5;min-height:0;max-height:clamp(140px,calc(100dvh - 390px),520px);flex:none;overscroll-behavior:contain}.board-status{order:6}.progress-track{order:7}.control-hint{order:8;margin-top:12px}.start-emblem,.start-overlay small{display:none}.start-overlay h2{font-size:22px;margin:6px 0}.start-overlay p{font-size:11px;line-height:1.5;margin-bottom:10px}.board-start{min-height:44px}.countdown strong{font-size:64px}.countdown span{padding:0 12px;text-align:center;font-size:11px}.close-dialog{position:sticky;top:0;float:right;margin:-10px -6px 0 0;right:auto;min-width:44px;height:44px;background:var(--panel);z-index:1}.modal{overscroll-behavior:contain}.rank-table{table-layout:fixed}.rank-table th,.rank-table td{overflow-wrap:anywhere;padding-left:4px;padding-right:4px}.rank-table th:nth-child(2){width:40%}.result-stats>div{min-width:0}.result-stats strong{font-size:clamp(16px,5vw,23px);overflow-wrap:anywhere}.result-row strong{min-width:0;overflow-wrap:anywhere}body[data-skin=classic] .mobile-lobby{background:#cacaca;border-color:#999}}@media(max-width:970px)and (max-height:500px){.game-top{height:44px}.hud{margin:8px auto 4px}.game-info{margin:4px auto}.digital{font-size:25px}.board-controls{grid-template-columns:minmax(0,1fr) auto auto;margin:4px 0 8px}#flag-toggle{grid-column:1;grid-row:1;min-height:56px}.zoom-controls{grid-column:2;grid-row:1}#sound-toggle{grid-column:3;grid-row:1;padding:5px 12px}.board-scroll{max-height:clamp(100px,calc(100dvh - 260px),260px)}.board-status{margin-top:8px}.control-hint{display:none}}.language-switch{display:flex;flex:none;gap:2px;padding:3px;border:1px solid var(--line);border-radius:6px;background:var(--panel)}.language-switch button{padding:7px 9px;border-radius:3px;background:transparent;color:var(--muted);font-size:11px;white-space:nowrap;min-height:32px}.language-switch button.selected{background:#ff927420;color:var(--accent)}.language-switch button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body[data-skin=classic] .language-switch button.selected{background:#b8bddc}html[lang=en] .page-heading h1{font-size:clamp(20px,2.4vw,32px)}html[lang=en] .control-hint{flex-wrap:wrap}html[lang=en] .game-top{gap:8px}html[lang=en] .field-subheading{flex-wrap:wrap;gap:8px}@media(max-width:970px){.topbar{gap:14px}.header-nav{gap:16px}.connection{padding-left:10px;font-size:10px}}@media(max-width:650px),(max-width:970px)and (max-height:500px){.topbar{height:auto;min-height:68px;flex-wrap:wrap;gap:8px 10px;padding-top:8px;padding-bottom:8px}.header-nav{gap:12px;margin-left:auto}.language-switch{margin-left:auto}.language-switch button{padding:6px 8px;min-height:32px}.connection{padding:0;margin-left:0}html[lang=en] .page-heading h1{font-size:20px}html[lang=en] .difficulty strong{font-size:11px}html[lang=en] .difficulty small{font-size:8px}html[lang=en] .game-top>div{flex-wrap:wrap;gap:4px}html[lang=en] #round-label{font-size:11px}html[lang=en] .field-subheading{gap:5px}html[lang=en] .rival-percent{font-size:8px}html[lang=en] .board-status>div{min-width:0}html[lang=en] .control-hint{gap:6px 10px}}body[data-skin=neon]{--bg: #101116;--panel: #191b23;--line: #30333f;--text: #f2f1ef;--muted: #a0a3b3;--accent: #ff9274;--blue: #a5afff}body{-webkit-font-smoothing:antialiased}body[data-skin=neon]:before{background:radial-gradient(ellipse at 52% 0,#30344a38,transparent 65%)}button:disabled{opacity:.42}.skip-link{position:fixed;top:-70px;left:16px;z-index:30;padding:12px 20px;background:var(--accent);color:#241714;border-radius:6px}.skip-link:focus{top:12px}.topbar{height:76px;gap:26px;padding:0 36px}.logo{gap:11px;flex:none}.logo svg{width:35px;height:35px}body[data-skin=neon] .logo svg{filter:none}.logo>span{font-size:24px;font-weight:850;letter-spacing:-1.1px}.logo-light{font-weight:850}.logo small{font-size:9px;letter-spacing:2px;margin-top:7px}.header-nav{gap:24px}.header-nav button{padding:10px 0;font-size:12px;min-height:40px}.nav-icon{color:var(--muted)}.studio-link{font-size:10px}.connection{font:10px Consolas,monospace;gap:7px;border:0;padding:0;white-space:nowrap}body[data-skin=neon] .connection i.online{background:var(--blue);box-shadow:0 0 0 3px #a5afff12}.shell{max-width:1480px;padding:30px 36px 0}.page-heading{gap:24px;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:1.8px}.page-heading h1{font-size:clamp(26px,2.8vw,38px);letter-spacing:-1.6px;line-height:1.25;margin-top:8px;font-weight:800}.heading-note{color:var(--muted);margin:10px 0 0;font-size:12px}.view-settings{display:flex;align-items:center;gap:13px;flex:none}.view-label{font-size:10px;color:var(--muted)}.skin-switch,.segmented{border-radius:8px}.skin-switch button,.segmented button{padding:8px 14px;border-radius:5px;font-size:12px}body[data-skin=neon] .skin-switch,body[data-skin=neon] .segmented{background:#14161d}body[data-skin=neon] .skin-switch .selected,body[data-skin=neon] .segmented .selected{background:#333747;color:#e2e4ff}.arena-layout{grid-template-columns:242px minmax(340px,1fr) 248px;gap:18px}.panel{border-radius:14px;min-width:0}.setup-panel{padding:22px 20px}.panel-cap{font:10px Consolas,monospace;letter-spacing:1.5px;margin-bottom:13px}.cap-number{color:var(--accent);letter-spacing:0;font-size:10px}.panel-title{font-size:17px;letter-spacing:-.5px;margin:0 0 23px;font-weight:700}.field-label{font-size:12px;margin-bottom:8px}.name-field{border-radius:7px;height:42px;gap:9px}body[data-skin=neon] .name-field{border-color:#3a3e4d;background:#14161d}.name-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #ff927412}.name-field span{color:var(--muted)}.name-field input{font-size:13px}.difficulty-label{margin-top:20px}.difficulty{gap:7px}.difficulty button{gap:10px;border-radius:8px;padding:10px;min-height:60px}body[data-skin=neon] .difficulty button{background:#20232e;border-color:var(--line)}body[data-skin=neon] .difficulty button:hover:not(:disabled){background:#2c2f3b;border-color:#555969}body[data-skin=neon] .difficulty .selected{border-color:#ff927455;background:#ff927412}.difficulty button>span:nth-child(2){min-width:0}.level-icon{font-size:24px;line-height:1;flex:none}.difficulty strong{font-size:13px}.difficulty small{font:10px/1.5 Segoe UI,Malgun Gothic,sans-serif;white-space:nowrap;letter-spacing:0}.difficulty i{width:11px;height:11px;flex:none}body[data-skin=neon] .difficulty .selected i{border-color:#362927}.primary-start,.board-start{gap:12px;border-radius:7px;font-size:13px;padding:14px;min-height:48px;box-shadow:none}body[data-skin=neon] .primary-start,body[data-skin=neon] .board-start{color:#291b17}.primary-start{margin-top:20px}body[data-skin=neon] .primary-start:hover:not(:disabled),body[data-skin=neon] .board-start:hover:not(:disabled){background:#ffb39b;box-shadow:0 4px 22px #ff92741a}.match-note{font-size:10px;margin:8px 0 14px}.single-start{align-items:center;gap:8px;border-radius:7px;padding:11px;min-height:43px;font-size:12px}body[data-skin=neon] .single-start{border-color:#3a3e4d}body[data-skin=neon] .single-start:hover{background:#20232e}.leave-game{font-size:12px;padding:14px 0 0}.divider{margin:22px 0 17px}.rule-title{font-size:12px}.rule-line{gap:10px;margin-top:15px}.rule-symbol{font-size:18px;width:28px;height:30px;flex:none;background:transparent}body[data-skin=neon] .rule-symbol:not(.amber):not(.red){color:var(--blue)}.rule-line p{font-size:10px;line-height:1.8}.rule-line strong{font-size:11px}.server-seal{border:0;border-top:1px solid var(--line);background:transparent;border-radius:0;padding:17px 0 0;margin-top:20px}body[data-skin=neon] .server-seal svg{stroke:var(--blue)}.game-panel{padding:0 22px 18px;min-height:0}body[data-skin=neon] .game-panel{background:linear-gradient(145deg,#1c1f29,var(--panel) 55%);border-color:#3a3e4e}.game-top{height:55px;gap:8px;font-size:12px}.mode-tag{border-radius:4px}.match-tag{font:9px Consolas,monospace;letter-spacing:.6px;color:var(--muted);text-align:right}.hud{max-width:400px;margin:18px auto 8px}.hud-label{font:9px Consolas,monospace;letter-spacing:1.6px;margin-bottom:4px}.digital{font:34px/1.1 Consolas,monospace;letter-spacing:-1px;font-variant-numeric:tabular-nums}body[data-skin=neon] .hud-time .digital{color:#d7dcff;text-shadow:none}#face-button{width:45px;height:45px;border-radius:12px}body[data-skin=neon] #face-button{background:#292d3b;border-color:#454b63;color:var(--blue);box-shadow:none}body[data-skin=neon] #face-button:hover{background:#373d53}.game-info{max-width:400px;margin:14px auto}#combo-label{font-family:Consolas,monospace;color:var(--muted)}.board-scroll{min-height:350px;border-radius:9px;scrollbar-color:#555b7b #14161d}.board-scroll.is-complete{box-shadow:0 0 0 2px #efca7d,0 0 32px #efca7d45;animation:board-complete 2.2s ease-out both}.completion-notice{position:fixed;z-index:12;pointer-events:none;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:8px;min-width:210px;max-width:calc(100vw - 32px);padding:23px 30px;border:1px solid #ffe3a6;border-radius:18px;background:linear-gradient(145deg,#282737f5,#15171ff5);box-shadow:0 14px 48px #0006,0 0 35px #ffd78035;color:#ffe2a0;text-align:center;animation:completion-pop 2.2s ease both}.completion-check{display:grid;place-items:center;width:44px;height:44px;margin-bottom:2px;border:1px solid #f4d491;border-radius:50%;background:#f4d49115;font-size:27px}.completion-notice strong{font-size:28px;line-height:1.2;letter-spacing:-.6px}.completion-notice small{color:#dedbd2;font:11px/1.4 Consolas,monospace}body[data-skin=classic] .completion-notice{color:#76521c;background:linear-gradient(145deg,#fff9e9,#fffdf6);border-color:#ba8d3c;box-shadow:0 12px 36px #0003,0 0 25px #c9a65345}body[data-skin=classic] .completion-check{border-color:#ba8d3c;background:#e8c67725}body[data-skin=classic] .completion-notice small{color:#675d4a}@keyframes board-complete{0%{box-shadow:0 0 0 2px #fff0b2,0 0 40px #efca7d75}65%{box-shadow:0 0 0 2px #efca7d,0 0 26px #efca7d35}to{box-shadow:0 0 0 1px #efca7d00,0 0 12px #efca7d00}}@keyframes completion-pop{0%{opacity:0;transform:translate(-50%,-42%) scale(.88)}12%,82%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-58%) scale(.98)}}.start-overlay{inset:0;padding:20px}body[data-skin=neon] .start-overlay,body.webgl-ready[data-skin=neon] .start-overlay{background:linear-gradient(#15172099,#151720ef 85%);backdrop-filter:none}.start-emblem{width:66px;height:66px;margin-bottom:15px;transform:none;border:0;background:transparent;box-shadow:none}body.webgl-ready[data-skin=neon] .start-emblem{box-shadow:none;background:transparent}.start-emblem svg{width:66px;height:66px;overflow:visible}body[data-skin=neon] .start-overlay .eyebrow{color:#d1d6f5}.start-overlay h2{font-size:29px;letter-spacing:-.9px;margin:9px 0;font-weight:800}.start-overlay p{font-size:12px;line-height:1.8;margin-bottom:20px}body[data-skin=neon] .start-overlay p{color:#c3c5d2}.board-start{min-width:215px}body[data-skin=neon] .start-overlay small{color:var(--muted)}.board-status{margin-top:18px}.board-status>div{min-width:0}body[data-skin=neon] .board-status i,body[data-skin=neon] .progress-track>div{background:var(--blue);box-shadow:none}.board-controls{gap:10px;margin:17px 0 14px}.board-controls button{min-height:36px;padding:7px 10px;border-radius:6px}body[data-skin=neon] .board-controls button{background:#20232e;color:#c4c7d6;border-color:var(--line)}.board-controls button:hover{border-color:#69708a}.zoom-controls{font-family:Consolas,monospace;gap:6px}.zoom-controls button{font-size:16px;padding:3px 10px}#flag-toggle{min-width:132px;min-height:42px;padding:8px 10px;border-width:1px;font-size:12px;gap:12px}.flag-icon{font-size:19px}#flag-state{min-width:33px;padding:4px 6px;font-size:11px}body[data-skin=neon] #flag-state{background:#14161d;color:#bec3d9}body[data-skin=neon] #flag-toggle.active{background:#503332;border-color:#ff9274;color:#ffe0d5}body[data-skin=neon] #flag-toggle.active #flag-state{background:var(--accent);color:#291b17}.control-hint{gap:11px;font-size:9px;color:var(--muted)}body[data-skin=neon] kbd{background:#20232e;border-color:#393d4d;color:#c0c4d5}.rivals-panel{padding:22px 17px 17px}.rivals-panel .panel-cap{margin-bottom:19px}.player-count{font:11px Consolas,monospace;padding:4px 6px;border-radius:4px}body[data-skin=neon] .player-count{color:var(--blue);background:#a5afff0c}.field-subheading h2{font-size:15px;font-weight:700;letter-spacing:-.4px;margin-bottom:6px}.rivals{margin-top:19px;gap:6px}.rival{gap:8px;min-height:43px;border-radius:6px;padding:7px}body[data-skin=neon] .rival{border-color:#303441;background:#14161d}body[data-skin=neon] .rival.self{border-color:#ff927455;background:#ff927412}.rival-place{font:10px Consolas,monospace;color:var(--muted);width:15px;flex:none}.rival-preview{padding:2px}body[data-skin=neon] .rival-preview i{background:#30364b}body[data-skin=neon] .rival-preview i.v1{background:#515a88}body[data-skin=neon] .rival-preview i.v2{background:#7e89c6}body[data-skin=neon] .rival-preview i.v3{background:#bdc5ff}.rival-name{gap:4px}.ai-badge[data-tier]{font-size:8px;line-height:1.5}.ai-badge[data-tier=novice]{color:#8bc6b0;border-color:#527e6e}.ai-badge[data-tier=regular]{color:#adbaf2;border-color:#697bab}.ai-badge[data-tier=skilled]{color:#efcc88;border-color:#9c7c49}body[data-skin=classic] .ai-badge[data-tier=novice]{color:#266546;border-color:#56806b}body[data-skin=classic] .ai-badge[data-tier=regular]{color:#3d518a;border-color:#7184b4}body[data-skin=classic] .ai-badge[data-tier=skilled]{color:#79551c;border-color:#a3844d}.rival-progress{margin-top:6px}body[data-skin=neon] .rival-progress>div{background:#8a95cf}body[data-skin=neon] .self .rival-progress>div{background:var(--accent)}.rival-percent{font-family:Consolas,monospace;color:var(--muted)}.rival.waiting{opacity:1;font-size:10px;color:var(--muted)}body[data-skin=neon] .rival.waiting{background:transparent}.rival.waiting .rival-preview{display:none}.rival.waiting .rival-name{font-size:10px;color:var(--muted)}.is-waiting .rivals{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.rivals-panel.is-solo .rivals{grid-template-columns:minmax(0,1fr)}.is-waiting .rival{min-height:48px;gap:6px}body[data-skin=neon] .is-waiting .your-seat{border-color:#ff927455;background:#ff927412}.is-waiting .your-seat .rival-name,.is-waiting .your-seat .rival-place{color:var(--accent)}.field-guide{display:none;border-top:1px solid var(--line);padding-top:21px;margin-top:23px}.is-waiting .field-guide{display:block}.field-guide-mark{color:#a5afff;font:800 27px Consolas,monospace;letter-spacing:-1px}.field-guide-mark span{font-size:8px;letter-spacing:.7px;font-weight:400;color:var(--muted);margin-left:6px}.field-guide h3{font-size:12px;font-weight:600;margin:11px 0 7px}.field-guide p{margin:0;font-size:11px;color:var(--muted);line-height:1.8}.field-footer{align-items:flex-start;line-height:1.7}.field-footer i{margin-top:5px;flex:none}body[data-skin=neon] .field-footer i{background:var(--blue)}.footer{color:var(--muted);padding:23px 0 27px}.footer>span:first-child{font:9px Consolas,monospace;letter-spacing:.8px}.footer button{color:#bdc1d2;padding:8px 0}.footer button span{color:var(--accent);padding-left:8px}body[data-skin=neon] .countdown{background:#131620ef}.countdown strong{font-family:Consolas,monospace}.modal{border-radius:16px;padding:34px}body[data-skin=neon] .modal{background:var(--panel);border-color:#454b60}.modal::backdrop{background:#090a10bf;backdrop-filter:blur(8px)}.close-dialog{width:36px;height:36px;border-radius:6px}body[data-skin=neon] .close-dialog{background:#20232e}.modal h2{font-size:28px;margin-top:12px}.modal-intro,.rank-empty p,.rank-audit,.result-modal>p{line-height:1.8}body[data-skin=neon] .modal select{background:#20232e;border-color:#454b60}body[data-skin=neon] .result-stats{background:#14161d;border-color:#3e4356}body[data-skin=neon] .result-verified{color:var(--blue)!important}body[data-skin=neon] .help-modal p,body[data-skin=neon] .help-modal li{color:#c0c3d3}body[data-skin=neon] .toast{background:#2b3043;border-color:#737da3}body[data-skin=classic] .heading-note,body[data-skin=classic] .field-guide-mark,body[data-skin=classic] .footer,body[data-skin=classic] .footer button{color:#454545}body[data-skin=classic] .start-emblem{border:0;background:transparent}body[data-skin=classic] .leave-game{color:#634329}body[data-skin=classic] .board-status strong,body[data-skin=classic] .rank-empty strong{color:#333}body[data-skin=classic] kbd{color:#333;background:#d7d7d7;border-color:#999}body[data-skin=classic] .server-seal svg{stroke:#34458b}body[data-skin=classic] #combo-label b{color:#725116}.battle-rules>summary{cursor:pointer;list-style:none;min-height:32px}.battle-rules>summary::-webkit-details-marker{display:none}.battle-rules>summary:after{content:"+";margin-left:auto;color:var(--muted);font-size:18px;font-weight:400}.battle-rules[open]>summary:after{content:"\2212"}.battle-rules>summary>span{margin-left:10px}.battle-rules>summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.game-active .heading-note{display:none}.game-active .page-heading{margin-bottom:20px}.game-active .page-heading h1{font-size:28px}body[data-skin=neon] .cell.n1{color:#8dbbff}body[data-skin=neon] .cell.n2{color:#d0aeff}body[data-skin=neon] .cell.n6{color:#efd190}@media(min-width:1450px){.arena-layout{grid-template-columns:260px minmax(420px,1fr) 272px;gap:22px}.setup-panel{padding:24px}.rivals-panel{padding:24px 20px 20px}}@media(max-width:1150px){.topbar{padding:0 24px;gap:18px}.shell{padding:26px 24px 0}.arena-layout{grid-template-columns:218px minmax(310px,1fr) 215px;gap:13px}.setup-panel{padding:20px 15px}.game-panel{padding-left:16px;padding-right:16px}.rivals-panel{padding:20px 13px 16px}.view-label,.rival-preview{display:none}}@media(max-width:970px){.arena-layout{grid-template-columns:220px minmax(0,1fr)}.rivals-panel{grid-column:1 / -1}.rivals,.is-waiting .rivals{grid-template-columns:repeat(4,minmax(0,1fr))}.rivals-panel .panel-cap{margin-bottom:10px}.rivals{margin-top:13px}.rivals-panel.is-waiting .field-guide{display:none}.topbar{height:70px}}@media(max-width:650px),(max-width:970px)and (max-height:500px){.topbar{padding:10px max(16px,env(safe-area-inset-left));gap:8px 10px;height:auto}.logo svg{width:28px;height:28px}.logo>span{font-size:20px}.logo small{font-size:8px;letter-spacing:1.2px;margin-top:5px}.header-nav{gap:14px}.header-nav button{font-size:11px}.connection{display:none}.language-switch{margin-left:0}.shell{padding:24px max(14px,env(safe-area-inset-left)) env(safe-area-inset-bottom)}.page-heading{gap:16px;margin-bottom:18px;align-items:center}.page-heading h1,html[lang=en] .page-heading h1{font-size:27px;letter-spacing:-1px}.heading-note{font-size:11px;margin-top:8px}.view-settings{width:100%;justify-content:flex-end}.view-label{display:inline;margin-right:auto}.skin-switch button{font-size:11px;padding:7px 12px;min-height:36px}.arena-layout{grid-template-columns:minmax(0,1fr);gap:14px}.setup-panel{padding:16px}.battle-rules{display:none}.panel-title{grid-column:1 / -1;margin:0 0 4px;font-size:16px}.field-label{margin:0;font-size:11px}.difficulty-label{display:block;margin-top:5px}.difficulty{gap:7px}.difficulty button{padding:9px 5px;min-height:58px}.difficulty strong{font-size:12px}.difficulty small,html[lang=en] .difficulty small{font-size:9px}.primary-start{margin:4px 0 0;font-size:12px;padding:12px 10px}.single-start{margin-top:4px;font-size:11px;padding:10px}.leave-game{padding:5px}.game-panel{padding:0 12px 16px}.game-top{height:50px;font-size:11px}.match-tag{font-size:8px;letter-spacing:0}.hud{margin:16px auto 8px;max-width:350px}.digital{font-size:30px}#face-button{width:42px;height:42px;font-size:23px}.game-info{margin:12px auto;max-width:350px}.board-controls{gap:8px;margin:8px 0 12px}.board-controls button{min-height:44px}#flag-toggle{min-height:56px;padding:10px 14px;font-size:15px}#flag-state{min-width:45px;font-size:13px}.flag-icon{font-size:22px}.board-scroll{min-height:0}body:not(.game-active) .board-scroll{min-height:300px;max-height:360px}body:not(.game-active) .board-controls,body:not(.game-active) .game-info,body:not(.game-active) .control-hint{display:none}.start-overlay{padding:12px}.start-emblem{display:grid;width:48px;height:48px;margin-bottom:11px}.start-emblem svg{width:48px;height:48px}.start-overlay h2{font-size:25px}.start-overlay p{font-size:11px;margin-bottom:15px}.board-status{font-size:10px;margin-top:14px}.rivals-panel{grid-column:1;grid-row:3;padding:17px 13px}.rivals,.is-waiting .rivals{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.rival{padding:6px;gap:4px}.rival-name{font-size:10px;gap:3px}.rival-percent{font-size:9px}.rival-place{width:12px}.is-waiting .rival{min-height:38px}.field-subheading{flex-direction:column;align-items:flex-start;gap:4px}.field-subheading h2{font-size:13px}.field-subheading>span{font-size:10px}.footer{padding:14px 0 20px;gap:8px}.footer>span:first-child{font-size:8px;letter-spacing:0}.footer-slash{padding:0 4px}.footer button{font-size:10px}.modal{padding:25px 20px}.modal h2{font-size:24px}.close-dialog{width:44px;height:44px}}@media(max-width:350px){.difficulty small,html[lang=en] .difficulty small{font-size:8px}.topbar{row-gap:5px}.language-switch{margin-left:auto}.page-heading h1,html[lang=en] .page-heading h1{font-size:24px}}@media(max-width:970px)and (max-height:500px){.game-active .hud{margin:8px auto 4px}.game-active .game-info{margin:4px auto}.game-active .board-controls{margin:4px 0 8px}.game-active .board-scroll{max-height:clamp(100px,calc(100dvh - 260px),260px)}}.tutorial-modal{width:min(540px,calc(100% - 28px))}.tutorial-modal h2{margin:8px 0 14px}.tut-steps{display:flex;gap:8px;margin-bottom:16px}.tut-dot{width:34px;height:6px;padding:0;border-radius:3px;background:#2c3150;position:relative}.tut-dot:before{content:"";position:absolute;inset:-12px -2px}.tut-dot.current{background:var(--accent)}.tut-text{font-size:14px;line-height:1.8;color:#c0c3d3;margin:0 0 18px;min-height:5.4em}.tut-board{display:grid;grid-template-columns:repeat(5,var(--tile));gap:4px;justify-content:center;--tile: 48px;margin:0 auto 14px}.tut-board .cell{font-size:22px}.tut-board .cell.tut-hint{box-shadow:0 0 0 2px var(--accent),0 0 16px #ff927466;animation:tut-pulse 1.3s ease-in-out infinite;z-index:1}.tut-board .cell.mine{background:#663631;border-color:#c87561;color:#ff9d88}@keyframes tut-pulse{50%{box-shadow:0 0 0 4px var(--accent),0 0 26px #ff927499}}.tut-message{text-align:center;font-size:13px;min-height:2.6em;margin:0 0 12px;color:#adb2cd}.tut-message.good{color:#8fe0a8}.tut-message.bad{color:#ff9d88}.tut-tools{display:flex;gap:10px;justify-content:center;margin-bottom:18px;flex-wrap:wrap}.tut-toggle,.tut-retry{background:#1b2040;border:1px solid #34384e;border-radius:7px;padding:10px 16px;font-size:12px;min-height:40px}.tut-toggle{display:flex;gap:10px;align-items:center}.tut-toggle strong{color:var(--muted)}.tut-toggle.active{border-color:var(--accent)}.tut-toggle.active strong{color:var(--accent)}.tut-nav{display:flex;gap:10px}.tut-nav .single-start,.tut-nav .primary-start{margin:0;flex:1;justify-content:center;align-items:center;gap:8px}.tut-nav .primary-start{flex:1.4;justify-content:space-between}.tut-nav .primary-start.ready{animation:tut-ready 1.4s ease-in-out infinite}@keyframes tut-ready{50%{box-shadow:0 0 0 4px #ff927433}}.tut-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.tut-card{background:#0d1124;border:1px solid #2c3150;border-radius:10px;padding:14px}.tut-card h3{margin:0 0 10px;font-size:14px;color:var(--accent)}.tut-row{display:flex;flex-direction:column;gap:2px;margin-bottom:10px;font-size:12px;color:#adb2cd}.tut-row kbd{align-self:flex-start;font-size:11px;padding:3px 7px;margin:0}.tutorial-link{display:block;margin:14px auto 0;background:none;border:1px solid #ff927466;color:var(--accent);padding:9px 16px;border-radius:999px;font-size:12px;font-weight:700}.tutorial-link:hover{background:#ff92741a}.help-tutorial{margin:6px 0 18px;justify-content:center;color:var(--accent);border-color:#ff927466}body.tutorial-new #tutorial-open{color:var(--accent)}body.tutorial-new #tutorial-open:after{content:"NEW";font-size:9px;font-weight:800;letter-spacing:1px;background:var(--accent);color:#291b17;border-radius:3px;padding:1px 5px;margin-left:6px}@media(max-width:520px){.tut-board{--tile: 44px}.tut-summary{grid-template-columns:1fr}.tut-nav{flex-direction:column-reverse}}@media(prefers-reduced-motion:reduce){.tut-board .cell.tut-hint,.tut-nav .primary-start.ready{animation:none}}body[data-skin=classic] .tut-text,body[data-skin=classic] .tut-message,body[data-skin=classic] .tut-row{color:#333}body[data-skin=classic] .tut-card{background:#d7d7d7;border-color:#999}body[data-skin=classic] .tut-toggle,body[data-skin=classic] .tut-retry{background:#ddd;color:#111;border-color:#999}body[data-skin=classic] .tutorial-link{color:#a03000;border-color:#a03000}
