@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700&family=Inter:wght@400;500;600;700&family=Noto+Sans+Symbols+2&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0b0a08;--surface:#17140f;--surface-2:#211c14;--surface-3:#2a2318;--line:#e8be5b33;--gold:#e8be5b;--gold-bright:#ffd978;--gold-soft:#a78036;--text:#fff8e8;--muted:#a9a08f;--board-light:#d8bd87;--board-dark:#79582d;--target:#d9b24d;--danger:#e46e60;--shadow:0 24px 70px #0000007a}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--background)}body{background:radial-gradient(circle at 50% -20%, #e8be5b24, transparent 34rem), var(--background);min-width:320px;color:var(--text);margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.site{--accent:var(--gold);--accent-bright:var(--gold-bright);--accent-soft:var(--gold-soft);--accent-rgb:232, 190, 91;min-height:100vh}.theme-neon-blauw{--accent:#57d9ff;--accent-bright:#9aebff;--accent-soft:#1e7f9b;--accent-rgb:87, 217, 255;--board-light:#a8c8d1;--board-dark:#22536a;--target:#57d9ff}.theme-klassiek-groen{--accent:#82c899;--accent-bright:#b4e6c5;--accent-soft:#3b7650;--accent-rgb:130, 200, 153;--board-light:#d9d5ba;--board-dark:#4f765b;--target:#82c899}.theme-luxe-paars{--accent:#c99aff;--accent-bright:#e0c1ff;--accent-soft:#7542aa;--accent-rgb:201, 154, 255;--board-light:#c8b5ce;--board-dark:#5f3a6d;--target:#c99aff}.topbar{z-index:20;border-bottom:1px solid rgba(var(--accent-rgb), .16);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0b0a08db;justify-content:space-between;align-items:center;min-height:74px;padding:12px clamp(18px,4vw,58px);display:flex;position:sticky;top:0}.brand{color:var(--text);letter-spacing:.13em;align-items:center;gap:11px;font-family:Cinzel,Georgia,serif;font-size:clamp(.85rem,2vw,1.08rem);font-weight:700;text-decoration:none;display:inline-flex}.brand span{color:var(--accent-bright);filter:drop-shadow(0 0 12px rgba(var(--accent-rgb), .25));font-family:Georgia,serif;font-size:1.75rem}.actions{align-items:center;gap:9px;display:flex}.actions select,.actions button,.actions a,.panel-buttons button{border:1px solid rgba(var(--accent-rgb), .2);min-height:40px;color:var(--text);background:#ffffff09;border-radius:9px;padding:0 14px;text-decoration:none;transition:border-color .16s,background .16s,transform .16s}.actions button:hover,.actions select:hover,.actions a:hover,.panel-buttons button:hover{border-color:rgba(var(--accent-rgb), .52);background:rgba(var(--accent-rgb), .08)}.online-top-link{align-items:center;font-weight:700;display:inline-flex;color:var(--accent-bright)!important}.online-shell,.online-game-shell{--accent:var(--gold);--accent-bright:var(--gold-bright);--accent-soft:var(--gold-soft);--accent-rgb:232, 190, 91;background:radial-gradient(circle at 50% -10%, #e8be5b1f, transparent 34rem), var(--background);min-height:100vh}.online-header{background:#0b0a08e6;border-bottom:1px solid #e8be5b26;justify-content:space-between;align-items:center;min-height:74px;padding:12px clamp(18px,4vw,58px);display:flex}.online-header nav{align-items:center;gap:20px;display:flex}.online-header nav a,.online-header nav strong,.online-header .nav-button{color:var(--muted);font-size:.83rem;text-decoration:none}.online-header nav strong,.online-header nav a:hover,.online-header .nav-button:hover{color:var(--gold-bright)}.online-header .nav-button{background:0 0;border:0;padding:0}.online-hero{justify-content:space-between;align-items:center;gap:28px;width:min(1180px,100% - 36px);margin:0 auto;padding:clamp(36px,7vw,82px) 0 32px;display:flex}.online-hero h1,.auth-card h1,.online-card h2,.online-match-panel h1{margin:0;font-family:Cinzel,Georgia,serif}.online-hero h1{font-size:clamp(2rem,5vw,3.8rem)}.online-hero>div>p:last-child{color:var(--muted)}.rating-card{text-align:right;background:#e8be5b0e;border:1px solid #e8be5b3d;border-radius:15px;min-width:230px;padding:20px 24px;display:grid}.rating-card span{color:var(--gold);letter-spacing:.18em;font-size:.65rem;font-weight:800}.rating-card strong{color:var(--gold-bright);font-family:Cinzel,serif;font-size:2.5rem}.rating-card small{color:var(--muted);font-size:.72rem}.notification-pill{color:var(--gold-bright);border:1px solid #e8be5b47;border-radius:999px;margin-top:14px;padding:7px 11px;font-size:.76rem;display:inline-flex}.profile-editor{gap:12px;display:grid}.profile-editor label{color:var(--muted);gap:6px;font-size:.78rem;display:grid}.profile-editor input,.profile-editor select{border:1px solid var(--line);width:100%;min-height:42px;color:var(--text);background:#0d0c09;border-radius:9px;padding:0 12px}.avatar-picker{flex-wrap:wrap;gap:8px;display:flex}.avatar-picker button{border:1px solid var(--line);width:42px;height:42px;color:var(--text);background:#ffffff09;border-radius:9px;font-size:1.25rem}.avatar-picker button.selected{border-color:var(--gold-bright);background:#e8be5b21}.online-dot{background:#777;border-radius:50%;width:7px;height:7px;display:inline-block}.online-dot.active{background:#53d68a;box-shadow:0 0 8px #53d68ab3}.joined-label{color:#75e6a5;border:1px solid #53d68a47;border-radius:9px;padding:9px 12px;display:inline-flex}.tournament-list{color:var(--muted);gap:7px;margin-top:16px;font-size:.82rem;display:grid}.premium-card{background:radial-gradient(circle at 90% 0, #c99aff1f, transparent 45%), var(--surface)}.online-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:min(1180px,100% - 36px);margin:0 auto;padding-bottom:80px;display:grid}.online-card{background:linear-gradient(145deg, #e8be5b09, transparent 45%), var(--surface);border:1px solid #e8be5b29;border-radius:17px;min-width:0;padding:clamp(22px,3vw,30px)}.online-card.featured{border-color:#e8be5b61}.online-card.wide{grid-column:1/-1}.online-card h2{margin-bottom:20px;font-size:clamp(1.25rem,3vw,1.65rem)}.online-card>small{color:var(--muted);margin-top:11px;line-height:1.5;display:block}.online-card label{color:var(--muted);gap:8px;margin-bottom:14px;font-size:.78rem;display:grid}.online-card input,.online-card select{width:100%;height:46px;color:var(--text);background:#0b0a08;border:1px solid #ffffff1c;border-radius:9px;outline:none;padding:0 13px}.online-card input:focus,.online-card select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #e8be5b1a}.online-card button,.online-main-button,.invite-box button,.panel-link{min-height:43px;color:var(--text);background:#ffffff09;border:1px solid #e8be5b38;border-radius:9px;padding:0 15px;text-decoration:none}.online-main-button{justify-content:center;align-items:center;width:100%;display:inline-flex}.online-input-row{grid-template-columns:1fr auto;gap:9px;display:grid}.player-result,.list-row{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;display:flex}.player-result span,.list-row span{min-width:0}.player-result strong,.player-result small,.list-row strong,.list-row small{display:block}.player-result small,.list-row small{color:var(--muted);margin-top:4px;font-size:.72rem}.player-result>div,.list-row>div{flex-shrink:0;gap:7px;display:flex}.online-empty{color:var(--muted);font-size:.84rem}.online-notice{width:min(1180px,100% - 36px);color:var(--gold-bright);text-align:left;background:#e8be5b14;border:1px solid #e8be5b45;border-radius:10px;margin:0 auto 18px;padding:12px 16px;display:block}.online-notice.success{color:#aaf5c9;background:#5be89714;border-color:#5be8974d}.matchmaking-card p{color:var(--muted);line-height:1.6}.leader-row{border-bottom:1px solid #ffffff0f;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.leader-row>strong{color:var(--gold)}.leader-row span,.leader-row small{display:block}.leader-row small{color:var(--muted);margin-top:3px;font-size:.7rem}.leader-row>b{color:var(--gold-bright)}.badge-list{flex-wrap:wrap;gap:9px;display:flex}.badge-list span{color:var(--gold-bright);background:#e8be5b0f;border:1px solid #e8be5b38;border-radius:999px;padding:9px 11px;font-size:.76rem}.games-table{gap:7px;display:grid}.games-table a{color:var(--text);border:1px solid #fff1;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;text-decoration:none;display:flex}.games-table a:hover{background:#e8be5b0a;border-color:#e8be5b59}.games-table small{color:var(--muted)}.auth-gate{align-content:start;display:grid}.online-brand{margin:24px clamp(18px,4vw,58px)}.auth-card{background:var(--surface);text-align:center;border:1px solid #e8be5b3d;border-radius:22px;width:min(600px,100% - 36px);margin:clamp(35px,10vw,100px) auto;padding:clamp(28px,6vw,55px)}.auth-card h1{font-size:clamp(1.8rem,5vw,3rem)}.auth-card p:not(.eyebrow){color:var(--muted);line-height:1.7}.auth-card>a:last-child{color:var(--muted);margin-top:18px;font-size:.8rem;display:block}.member-auth-card{background:linear-gradient(155deg, #e8be5b0f, transparent 42%), var(--surface);border:1px solid #e8be5b47;border-radius:22px;width:min(560px,100% - 36px);margin:clamp(22px,6vw,60px) auto 70px;padding:clamp(27px,5vw,46px);box-shadow:0 32px 90px #00000070}.member-auth-intro{text-align:center}.auth-emblem{object-fit:contain;filter:drop-shadow(0 14px 25px #e8be5b38);width:104px;height:104px;margin:-18px auto 4px;display:block}.member-auth-intro h1{margin:0;font-family:Cinzel,Georgia,serif;font-size:clamp(1.8rem,5vw,2.7rem)}.member-auth-intro>p:last-child{color:var(--muted);margin:12px auto 0;font-size:.88rem;line-height:1.65}.auth-tabs{background:#0b0a08;border:1px solid #ffffff14;border-radius:11px;grid-template-columns:1fr 1fr;margin:27px 0 22px;padding:4px;display:grid}.auth-tabs button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:8px;font-weight:700}.auth-tabs button.active{color:var(--gold-bright);background:#e8be5b21}.member-auth-form{gap:15px;display:grid}.member-auth-form label{color:#d7cebc;gap:7px;font-size:.78rem;font-weight:650;display:grid}.member-auth-form input{width:100%;height:49px;color:var(--text);background:#0b0a08;border:1px solid #ffffff1f;border-radius:9px;outline:none;padding:0 13px}.member-auth-form input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #e8be5b1a}.password-field{display:block;position:relative}.password-field input{padding-right:94px}.password-toggle{min-width:78px;height:36px;color:var(--gold-bright);background:#e8be5b14;border:1px solid #e8be5b38;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 9px;display:inline-flex;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.password-toggle:hover,.password-toggle:focus-visible{background:#e8be5b24;border-color:#e8be5b8c}.password-toggle span{font-size:.95rem;line-height:1}.password-toggle small{color:inherit;font-size:.67rem;font-weight:700}.auth-submit{border-radius:10px;width:100%;min-height:50px;margin-top:4px}.auth-submit:disabled{cursor:wait;opacity:.62}.auth-message{border:1px solid;border-radius:9px;margin:0;padding:11px 13px;font-size:.78rem;line-height:1.5}.auth-message.error{color:#ffb0a7;background:#e46e6014;border-color:#e46e6059}.auth-message.success{color:#a9e8bd;background:#5bbe7d14;border-color:#5bbe7d59}.auth-card-links{justify-content:space-between;gap:16px;margin-top:17px;display:flex}.auth-card-links button,.auth-card-links a{color:var(--muted);background:0 0;border:0;padding:0;font-size:.73rem;text-decoration:none}.auth-card-links button:hover,.auth-card-links a:hover{color:var(--gold-bright)}.secure-note{background:#e8be5b09;border:1px solid #e8be5b21;border-radius:11px;align-items:center;gap:11px;margin-top:27px;padding:15px;display:flex}.secure-note>span{width:30px;height:30px;color:var(--gold-bright);background:#e8be5b24;border-radius:50%;flex:0 0 30px;place-items:center;display:grid}.secure-note p,.secure-note strong,.secure-note small{margin:0;display:block}.secure-note strong{font-size:.78rem}.secure-note small{color:var(--muted);margin-top:4px;font-size:.68rem;line-height:1.45}.auth-signin-button{color:#171107;background:linear-gradient(135deg,#ffe39a,#b88731);border:1px solid #ffe39a;border-radius:13px;place-items:center;width:100%;min-height:78px;margin-top:24px;padding:13px 20px;text-decoration:none;transition:filter .16s,transform .16s;display:grid;box-shadow:0 12px 34px #e8be5b47}.auth-signin-button:hover{filter:brightness(1.08);transform:translateY(-1px)}.auth-signin-button>span{font-family:Georgia,serif;font-size:1.35rem;line-height:1}.auth-signin-button strong{font-size:1rem}.auth-signin-button small{opacity:.75;font-size:.7rem}.auth-steps{grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0 4px;display:grid}.auth-steps span{color:var(--muted);gap:6px;font-size:.68rem;display:grid}.auth-steps b{width:26px;height:26px;color:var(--gold-bright);border:1px solid #e8be5b59;border-radius:50%;place-items:center;margin:0 auto;display:grid}.online-match{grid-template-columns:minmax(0,720px) minmax(280px,370px);justify-content:center;gap:32px;width:min(1220px,100%);margin:0 auto;padding:28px 28px 60px;display:grid}.online-board-column{min-width:0}.online-match-panel{background:var(--surface);border:1px solid #e8be5b33;border-radius:18px;align-self:start;min-height:600px;margin-top:68px;padding:28px}.online-match-panel h1{min-height:64px;font-size:1.55rem}.invite-box{text-align:center;background:#e8be5b0e;border:1px solid #e8be5b40;border-radius:12px;gap:9px;margin-top:20px;padding:18px;display:grid}.invite-box span{color:var(--muted);letter-spacing:.17em;font-size:.64rem}.invite-box strong{color:var(--gold-bright);letter-spacing:.12em;font-family:Cinzel,serif;font-size:2.2rem}.invite-box p{color:var(--muted);margin:4px 0 0;font-size:.74rem;line-height:1.5}.game-reaction,.game-request,.replay-controls,.quick-reactions{background:#ffffff06;border:1px solid #e8be5b29;border-radius:10px;margin-top:14px;padding:12px}.game-reaction{justify-content:space-between;align-items:center;gap:10px;display:flex}.game-reaction span,.replay-controls>span,.quick-reactions>span{color:var(--muted);letter-spacing:.12em;font-size:.62rem}.game-request strong{margin-bottom:10px;display:block}.game-request>div,.replay-controls>div,.quick-reactions>div{flex-wrap:wrap;gap:7px;display:flex}.game-request button,.replay-controls button,.quick-reactions button{min-height:34px;color:var(--text);background:#ffffff09;border:1px solid #e8be5b33;border-radius:7px;padding:5px 9px;font-size:.7rem}.replay-controls strong{color:var(--gold-bright);margin:5px 0 9px;display:block}.quick-reactions>div{margin-top:8px}.created-game-banner{background:linear-gradient(135deg,#e8be5b24,#e8be5b0a);border:1px solid #e8be5b80;border-radius:16px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;width:min(1180px,100% - 40px);margin:0 auto 22px;padding:22px 26px;display:grid;box-shadow:0 18px 50px #00000040}.created-game-banner h2{margin:4px 0 5px}.created-game-banner p{color:var(--muted);margin:0}.created-game-code{color:var(--gold-bright);letter-spacing:.16em;font-family:Cinzel,serif;font-size:clamp(2rem,5vw,3.1rem)}.created-game-actions{gap:8px;min-width:180px;display:grid}.created-game-actions a{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.online-match-panel .move-list{height:190px}.panel-link{place-items:center;display:grid}@media (width<=930px){.online-match{grid-template-columns:minmax(0,720px)}.online-match-panel{min-height:0;margin-top:0}}@media (width<=720px){.online-header{flex-direction:column;align-items:flex-start;gap:10px}.online-header nav{justify-content:space-between;width:100%}.online-hero{flex-direction:column;align-items:stretch}.rating-card{text-align:left}.online-grid{grid-template-columns:1fr}.created-game-banner{text-align:center;grid-template-columns:1fr;gap:16px;width:calc(100% - 20px)}.created-game-actions{width:100%}.online-card.wide{grid-column:auto}.online-match{padding:12px 10px 45px}.player-result,.list-row,.games-table a{flex-direction:column;align-items:flex-start}}.primary{letter-spacing:.03em;box-shadow:0 8px 24px rgba(var(--accent-rgb), .15);font-weight:800;border:1px solid var(--accent-bright)!important;background:linear-gradient(135deg, var(--accent-bright), var(--accent-soft))!important;color:#171107!important}.primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.primary.small{min-width:112px}.landing-hero{background:linear-gradient(90deg, #0f0a05f7 0%, #120c06d6 38%, #140d0733 72%, #0e090580 100%), linear-gradient(0deg, var(--background) 0%, transparent 28%), url(/royal-chess-hero.png) center right / cover no-repeat;border-bottom:1px solid rgba(var(--accent-rgb), .22);align-items:center;min-height:min(720px,100vh - 74px);padding:clamp(72px,10vw,135px) max(24px,50vw - 590px);display:grid;position:relative;overflow:hidden}.landing-glow{background:rgba(var(--accent-rgb), .14);filter:blur(90px);pointer-events:none;border-radius:50%;width:34rem;height:34rem;position:absolute;inset:auto auto -12rem -8rem}.landing-content{z-index:2;width:min(650px,100%);position:relative}.landing-content h1{letter-spacing:-.04em;text-shadow:0 8px 35px #0000008c;margin:13px 0 22px;font-family:Cinzel,Georgia,serif;font-size:clamp(2.7rem,6.5vw,5.6rem);line-height:.98}.landing-content h1 em{color:var(--accent-bright);font-style:normal}.landing-lead{color:#d8cdb7;max-width:590px;font-size:clamp(1rem,2vw,1.2rem);line-height:1.75}.landing-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.landing-actions button,.landing-actions a{min-height:54px;color:var(--text);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#140f09a3;border:1px solid #ffffff30;border-radius:11px;justify-content:center;align-items:center;padding:0 22px;font-weight:750;text-decoration:none;display:inline-flex}.landing-actions a:hover{border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .1)}.landing-trust{color:#c0b49e;flex-wrap:wrap;gap:22px;margin-top:45px;font-size:.75rem;display:flex}.landing-trust span{align-items:center;gap:7px;display:inline-flex}.landing-trust b{color:var(--accent-bright);font-size:1.05rem}.hero-piece{z-index:1;color:#ffde8b14;filter:drop-shadow(0 20px 35px #0000004d);pointer-events:none;font-family:Georgia,serif;font-size:clamp(16rem,33vw,34rem);line-height:.8;position:absolute;bottom:-45px;right:clamp(-55px,3vw,40px)}.game{grid-template-columns:minmax(0,720px) minmax(280px,380px);justify-content:center;gap:clamp(20px,3vw,38px);width:min(100%,1240px);margin:0 auto;padding:clamp(22px,4vw,50px) clamp(14px,3vw,36px) 52px;display:grid}.board-column{min-width:0}.player{border:1px solid #0000;border-radius:13px;justify-content:space-between;align-items:center;min-height:68px;padding:10px 12px;transition:border-color .18s,background .18s;display:flex}.player.active{border-color:rgba(var(--accent-rgb), .24);background:rgba(var(--accent-rgb), .06)}.player>div{align-items:center;gap:11px;display:flex}.player .avatar{border:1px solid rgba(var(--accent-rgb), .35);background:var(--surface-2);width:42px;height:42px;color:var(--accent-bright);border-radius:50%;place-items:center;font-family:Cinzel,Georgia,serif;font-weight:700;display:grid}.player strong,.player small{display:block}.player strong{margin-bottom:4px;font-size:.96rem}.player small{color:var(--muted);font-size:.76rem}.player time{min-width:112px;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.05em;text-align:center;background:#050504;border:1px solid #ffffff14;border-radius:9px;padding:9px 13px;font-size:clamp(1.15rem,3vw,1.55rem);font-weight:700}.player.active time{border-color:rgba(var(--accent-rgb), .55);box-shadow:inset 0 0 16px rgba(var(--accent-rgb), .08);color:var(--accent-bright)}.chessboard{aspect-ratio:1;width:100%;box-shadow:var(--shadow), 0 0 0 1px rgba(var(--accent-rgb), .3);background:#2b2318;border:7px solid #2b2318;border-radius:8px;grid-template-rows:repeat(8,minmax(0,1fr));grid-template-columns:repeat(8,minmax(0,1fr));display:grid;position:relative;overflow:hidden}.square{border:0;border-radius:0;place-items:center;min-width:0;min-height:0;padding:0;line-height:1;display:grid;position:relative;container-type:size}.square.light{background:var(--board-light)}.square.dark{background:var(--board-dark)}.square>span{z-index:2;justify-content:center;align-items:center;width:100%;height:100%;font-family:"Noto Sans Symbols 2",DejaVu Sans,Segoe UI Symbol,sans-serif;font-size:clamp(1.75rem,72cqi,4.1rem);font-weight:400;line-height:1;transition:transform .12s;display:flex;position:relative}.square:hover>span{transform:scale(1.02)}.white-piece>span{color:#fff7df;-webkit-text-stroke:1px #302313b8;text-shadow:0 2px 3px #00000080}.black-piece>span{color:#18130d;-webkit-text-stroke:1px #fff4d733;text-shadow:0 2px 3px #00000061}.square.selected:after,.square.last:after{content:"";z-index:1;background:rgba(var(--accent-rgb), .42);position:absolute;inset:0}.square.last:after{background:rgba(var(--accent-rgb), .28)}.square.target i{z-index:3;aspect-ratio:1;pointer-events:none;background:#16120e73;border-radius:50%;width:21%;position:absolute}.square.target:has(span:not(:empty)) i{background:0 0;border:clamp(3px,.5vw,6px) solid #16120e61;width:82%}.panel{border:1px solid var(--line);background:linear-gradient(155deg, rgba(var(--accent-rgb), .055), transparent 42%), var(--surface);border-radius:18px;align-self:start;min-height:590px;margin-top:68px;padding:clamp(22px,3vw,32px);overflow:hidden;box-shadow:0 20px 60px #0000004d}.eyebrow{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;margin:0 0 10px;font-size:.68rem;font-weight:800}.panel h1,.about h2,.dialog h2,.promotion h2{margin:0;font-family:Cinzel,Georgia,serif;line-height:1.25}.panel h1{min-height:72px;font-size:clamp(1.25rem,2.4vw,1.7rem)}.divider{background:linear-gradient(90deg, rgba(var(--accent-rgb), .45), transparent);height:1px;margin:22px 0}.moves-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.moves-heading span{color:var(--muted);font-size:.75rem}.move-list{scrollbar-color:var(--accent-soft) transparent;height:315px;margin:4px -8px 20px;padding:4px 8px;overflow-y:auto}.empty{color:var(--muted);text-align:center;padding:32px 10px;font-size:.88rem}.move-row{border-bottom:1px solid #ffffff0e;grid-template-columns:32px 1fr 1fr;gap:8px;padding:9px 8px;font-size:.87rem;display:grid}.move-row span{color:var(--muted)}.move-row b{font-weight:600}.panel-buttons{grid-template-columns:1fr 1fr;gap:10px;display:grid}.panel-buttons .danger{color:#ffaaa0;border-color:#e46e6040}.panel-buttons button:disabled{cursor:not-allowed;opacity:.38}.about{border:1px solid rgba(var(--accent-rgb), .14);text-align:center;background:#ffffff05;border-radius:20px;width:min(100% - 36px,880px);margin:20px auto 80px;padding:clamp(28px,5vw,50px)}.about h2{margin-bottom:15px;font-size:clamp(1.55rem,4vw,2.4rem)}.about>p:not(.eyebrow){max-width:700px;color:var(--muted);margin:0 auto;line-height:1.75}.feature-list{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:26px;display:flex}.feature-list span{border:1px solid rgba(var(--accent-rgb), .17);background:rgba(var(--accent-rgb), .045);color:#d9d0bf;border-radius:999px;padding:9px 13px;font-size:.76rem}.creator-story{border:1px solid rgba(var(--accent-rgb), .22);background:linear-gradient(135deg, rgba(var(--accent-rgb), .075), transparent 44%), var(--surface);border-radius:24px;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);width:min(1180px,100% - 36px);margin:20px auto 100px;display:grid;overflow:hidden;box-shadow:0 30px 80px #00000047}.creator-mark{background:radial-gradient(circle, rgba(var(--accent-rgb), .18), transparent 58%), linear-gradient(145deg, #24190d, #0d0b08);place-items:center;min-height:450px;padding:40px;display:grid;position:relative;overflow:hidden}.creator-mark:before{content:"";border:1px solid rgba(var(--accent-rgb), .2);width:330px;height:330px;position:absolute;transform:rotate(45deg)}.creator-mark img{z-index:1;object-fit:contain;filter:drop-shadow(0 25px 38px #0000006b);width:min(270px,80%);max-height:330px;position:relative}.creator-mark span{z-index:2;color:var(--accent-bright);letter-spacing:.25em;font-size:.62rem;font-weight:800;position:absolute;bottom:25px}.creator-copy{align-self:center;padding:clamp(38px,6vw,78px)}.creator-copy h2,.section-heading h2,.final-cta h2{margin:8px 0 22px;font-family:Cinzel,Georgia,serif;font-size:clamp(2rem,4.5vw,3.8rem);line-height:1.06}.creator-copy h2 em{color:var(--accent-bright);font-style:normal}.creator-copy>p:not(.eyebrow){color:var(--muted);line-height:1.82}.creator-signature{border-top:1px solid rgba(var(--accent-rgb), .14);align-items:center;gap:13px;margin-top:30px;padding-top:22px;display:flex}.creator-signature>span{color:var(--accent-bright);font-family:Georgia,serif;font-size:2.1rem}.creator-signature strong,.creator-signature small{display:block}.creator-signature small{color:var(--muted);margin-top:4px;font-size:.7rem}.chess-legacy{width:min(1180px,100% - 36px);margin:0 auto 80px}.section-heading{text-align:center;max-width:730px;margin:0 auto 38px}.section-heading>p:last-child{color:var(--muted);line-height:1.75}.legacy-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.legacy-grid article{border:1px solid rgba(var(--accent-rgb), .16);background:linear-gradient(150deg, rgba(var(--accent-rgb), .06), transparent 55%), var(--surface);border-radius:18px;min-height:280px;padding:31px;position:relative;overflow:hidden}.legacy-grid article>span{color:rgba(var(--accent-rgb), .32);font-family:Cinzel,serif;font-size:.76rem;position:absolute;top:20px;right:22px}.legacy-grid article>b{color:var(--accent-bright);margin:24px 0 28px;font-family:Georgia,serif;font-size:3.2rem;font-weight:400;display:block}.legacy-grid h3{margin:0 0 12px;font-family:Cinzel,serif;font-size:1.25rem}.legacy-grid p{color:var(--muted);margin:0;font-size:.86rem;line-height:1.7}.chess-numbers{border-block:1px solid rgba(var(--accent-rgb), .18);grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;width:min(1180px,100% - 36px);margin:0 auto 90px;padding:30px;display:grid}.chess-numbers div{text-align:center;gap:7px;display:grid}.chess-numbers strong{color:var(--accent-bright);font-family:Cinzel,serif;font-size:clamp(2rem,5vw,3.4rem)}.chess-numbers span{color:var(--muted);font-size:.72rem}.chess-numbers i{background:rgba(var(--accent-rgb), .2);width:1px;height:54px}.royal-quote{border:1px solid rgba(var(--accent-rgb), .22);background:radial-gradient(circle at 85% 0, rgba(var(--accent-rgb), .12), transparent 43%), #12100c;text-align:center;border-radius:22px;width:min(950px,100% - 36px);margin:0 auto 90px;padding:clamp(40px,7vw,78px);position:relative;overflow:hidden}.quote-piece{color:rgba(var(--accent-rgb), .075);font-family:Georgia,serif;font-size:16rem;position:absolute;top:-70px;right:-20px}.royal-quote p{margin:0 auto 22px;font-family:Cinzel,Georgia,serif;font-size:clamp(1.35rem,3.2vw,2.2rem);line-height:1.45;position:relative}.royal-quote small{color:var(--accent);letter-spacing:.21em;font-size:.61rem;font-weight:800;position:relative}.final-cta{width:min(1180px,100% - 36px);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .28), 0 24px 70px #0000004d;background:linear-gradient(130deg,#30200f,#17110a 58%,#0c0b09);border-radius:23px;justify-content:space-between;align-items:center;gap:35px;margin:0 auto 80px;padding:clamp(35px,6vw,65px);display:flex}.final-cta h2{margin-bottom:10px}.final-cta p:not(.eyebrow){color:var(--muted);margin:0}.final-cta>div:last-child{gap:11px;min-width:260px;display:grid}.final-cta button,.final-cta a{border:1px solid rgba(var(--accent-rgb), .28);min-height:50px;color:var(--text);border-radius:10px;justify-content:center;align-items:center;padding:0 20px;font-weight:750;text-decoration:none;display:inline-flex}footer{border-top:1px solid rgba(var(--accent-rgb), .1);color:var(--muted);text-align:center;padding:25px 18px 40px;font-size:.78rem}footer span{color:var(--text);letter-spacing:.14em;margin-bottom:8px;font-family:Cinzel,serif;font-weight:700;display:block}footer p{margin:0}.footer-links,.club-footer,.auth-legal-links{flex-wrap:wrap;justify-content:center;gap:10px 20px;margin:14px 0;display:flex}.footer-links a,.club-footer a,.auth-legal-links a{color:var(--muted);font-size:.72rem;text-decoration:none}.footer-links a:hover,.club-footer a:hover,.auth-legal-links a:hover{color:var(--gold-bright)}.club-footer{border-top:1px solid var(--line);width:min(1180px,100% - 36px);margin:0 auto;padding:25px 0 45px}.auth-legal-links{margin:20px 0 0}.legal-shell{background:radial-gradient(circle at 50% 0,#e8be5b1a,transparent 28rem),var(--background);min-height:100vh}.legal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:74px;padding:12px clamp(18px,4vw,58px);display:flex}.legal-header>a:last-child{color:var(--muted);font-size:.78rem;text-decoration:none}.legal-document{background:linear-gradient(145deg,#e8be5b0a,transparent 34%),var(--surface);width:min(850px,100% - 36px);box-shadow:var(--shadow);border:1px solid #e8be5b30;border-radius:22px;margin:55px auto 70px;padding:clamp(28px,6vw,62px)}.legal-document h1{margin:8px 0 16px;font-family:Cinzel,serif;font-size:clamp(2.2rem,6vw,4rem)}.legal-intro{color:#d8cdb7;font-size:1.05rem;line-height:1.7}.legal-updated{color:var(--gold);letter-spacing:.08em;margin:20px 0 38px;font-size:.68rem;font-weight:700}.legal-document h2{margin:36px 0 10px;font-family:Cinzel,serif;font-size:1.2rem}.legal-document p,.legal-document li{color:var(--muted);font-size:.88rem;line-height:1.8}.legal-document li+li{margin-top:6px}.legal-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:12px 22px;padding:28px 20px 45px;display:flex}.legal-footer a{color:var(--muted);font-size:.72rem;text-decoration:none}.rules-grid{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 35px;display:grid}.rules-grid span{border:1px solid var(--line);background:#ffffff05;border-radius:12px;padding:18px;display:grid}.rules-grid b{color:var(--gold-bright);font-family:Georgia,serif;font-size:1.8rem}.rules-grid strong{margin:7px 0}.rules-grid small{color:var(--muted);line-height:1.5}.contact-form{border:1px solid var(--line);background:#0e0c09;border-radius:15px;gap:15px;margin:30px 0;padding:25px;display:grid}.contact-form label{color:#ded5c3;gap:7px;font-size:.78rem;font-weight:650;display:grid}.contact-form input,.contact-form select,.contact-form textarea{width:100%;color:var(--text);resize:vertical;background:#080706;border:1px solid #ffffff1f;border-radius:9px;outline:none;padding:12px 13px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #e8be5b1a}.contact-form button{border:1px solid var(--line);min-height:50px;color:var(--text);background:#ffffff0a;border-radius:10px;font-weight:800}.danger-form{border-color:#e46e6040}.danger-form button{color:#ffb0a7;background:#e46e601a;border-color:#e46e6080}.form-notice{background:#5bbe7d1a;border-radius:8px;padding:11px;color:#a9e8bd!important;margin:0!important}.form-notice.error{background:#e46e601a;color:#ffb0a7!important}.admin-shell{background:var(--background);min-height:100vh;padding-bottom:80px}.admin-shell>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:74px;padding:12px clamp(18px,4vw,58px);display:flex}.admin-shell>header>a:last-child{color:var(--muted);text-decoration:none}.admin-title,.admin-stats,.admin-section,.admin-error{width:min(1180px,100% - 36px);margin-inline:auto}.admin-title{padding:55px 0 25px}.admin-title h1{margin:5px 0;font-family:Cinzel,serif;font-size:clamp(2.2rem,6vw,4rem)}.admin-title>p:last-child{color:var(--muted)}.admin-stats{grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:24px;display:grid}.admin-stats div{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:6px;padding:18px;display:grid}.admin-stats strong{color:var(--gold-bright);font-size:1.7rem}.admin-stats span{color:var(--muted);font-size:.68rem}.admin-section{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-top:18px;padding:25px}.admin-section h2{font-family:Cinzel,serif}.admin-section article{border-top:1px solid #ffffff0f;justify-content:space-between;align-items:flex-start;gap:18px;padding:16px 0;display:flex}.admin-section small{color:var(--muted);margin-top:4px;display:block}.admin-section p{color:#d5ccbb;line-height:1.55}.admin-section article>div:last-child{gap:8px;display:flex}.admin-section button{border:1px solid var(--line);min-height:38px;color:var(--text);background:#ffffff09;border-radius:8px;padding:0 12px}.admin-section button.danger{color:#ffaaa0;border-color:#e46e6059}.overlay{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#030302d6;place-items:center;padding:22px;display:grid;position:fixed;inset:0;overflow-y:auto}.dialog,.promotion{border:1px solid rgba(var(--accent-rgb), .34);background:radial-gradient(circle at 50% 0, rgba(var(--accent-rgb), .14), transparent 45%), #15120e;border-radius:21px;width:min(100%,470px);padding:clamp(27px,6vw,44px);box-shadow:0 35px 100px #000000b3}.crown{color:var(--accent-bright);text-align:center;filter:drop-shadow(0 0 20px rgba(var(--accent-rgb), .22));margin-bottom:7px;font-family:Georgia,serif;font-size:3rem;line-height:1}.dialog>.eyebrow,.dialog h2,.promotion>.eyebrow,.promotion h2{text-align:center}.dialog h2,.promotion h2{margin-bottom:26px;font-size:clamp(1.7rem,5vw,2.25rem)}.dialog label{color:#d7cebc;gap:8px;margin:15px 0;font-size:.79rem;font-weight:650;display:grid}.dialog input,.dialog select{width:100%;height:48px;color:var(--text);background:#0b0a08;border:1px solid #ffffff1c;border-radius:9px;outline:none;padding:0 13px}.dialog input:focus,.dialog select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .1)}.dialog .primary{text-transform:uppercase;border-radius:9px;width:100%;height:52px;margin-top:12px}.play-choice{color:var(--muted);text-transform:uppercase;align-items:center;gap:10px;margin:13px 0;font-size:.7rem;display:flex}.play-choice:before,.play-choice:after{content:"";background:#ffffff1a;flex:1;height:1px}.online-entry-button{border:1px solid rgba(var(--accent-rgb), .42);background:rgba(var(--accent-rgb), .08);width:100%;min-height:48px;color:var(--accent-bright);border-radius:10px;justify-content:center;align-items:center;font-size:.86rem;font-weight:750;text-decoration:none;display:flex}.online-entry-button:hover{border-color:var(--accent-bright);background:rgba(var(--accent-rgb), .14)}.promotion{text-align:center}.promotion>div{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.promotion button{aspect-ratio:1;border:1px solid rgba(var(--accent-rgb), .25);background:var(--surface-2);color:#fff7df;text-shadow:0 2px 3px #000;border-radius:11px;font-family:"Noto Sans Symbols 2",DejaVu Sans,Segoe UI Symbol,sans-serif;font-size:clamp(2.4rem,11vw,4.1rem)}.promotion button:hover{border-color:var(--accent-bright);background:rgba(var(--accent-rgb), .12)}@media (width<=930px){.admin-stats{grid-template-columns:repeat(3,1fr)}.creator-story{grid-template-columns:1fr}.creator-mark{min-height:360px}.legacy-grid{grid-template-columns:1fr}.legacy-grid article{min-height:0}.final-cta{flex-direction:column;align-items:stretch}.final-cta>div:last-child{min-width:0}.game{grid-template-columns:minmax(0,720px)}.panel{min-height:0;margin-top:0}.move-list{height:220px}}@media (width<=680px){.rules-grid{grid-template-columns:1fr}.admin-stats{grid-template-columns:1fr 1fr}.admin-section article{flex-direction:column}.creator-story{margin-bottom:70px}.creator-mark{min-height:300px}.creator-mark img{max-height:245px}.creator-copy{padding:32px 24px 38px}.chess-numbers{grid-template-columns:1fr 1fr;gap:28px 10px}.chess-numbers i{display:none}.royal-quote{padding-inline:24px}.landing-hero{background-position:62%;min-height:650px;padding-top:88px}.landing-hero:after{content:"";background:#0907043d;position:absolute;inset:0}.landing-content{z-index:3}.landing-actions{flex-direction:column;align-items:stretch}.landing-actions button,.landing-actions a{width:100%}.landing-trust{gap:13px 18px}.topbar{flex-direction:column;align-items:flex-start;gap:9px;position:static}.actions{grid-template-columns:1fr auto auto;width:100%;display:grid}.actions select,.actions button{min-width:0;padding:0 10px;font-size:.76rem}.game{padding-top:10px}.player{min-height:58px;padding-inline:4px}.player .avatar{width:36px;height:36px}.player time{min-width:91px;padding-inline:8px}.chessboard{border-width:4px}.panel{border-radius:13px}.panel h1{min-height:auto}}@media (width<=430px){.actions{grid-template-columns:1fr 1fr}.actions select{grid-column:1/-1}.primary.small{min-width:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
