@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color:#f2f3ed;font-synthesis:none;text-rendering:optimizelegibility;--ink:#f2f3ed;--muted:#aab4ae;--panel:#202b27;--line:#39453f;--lime:#c6ed75;--dark:#303b36;--light:#e9eddb;--brown-dark:#815e45;--brown-light:#ecd5ac;background:#17201d;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:3px}button:disabled{opacity:.5;cursor:not-allowed}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:74px;padding:0 clamp(18px,5vw,72px);display:flex}.brand{color:var(--ink);letter-spacing:-.5px;align-items:center;gap:11px;font:800 20px Manrope,sans-serif;display:flex}.brand-icon{color:var(--lime);font-size:28px}.top-note{color:var(--muted);font-size:13px}.main{flex:1;width:min(1120px,100% - 36px);margin:auto}.home{grid-template-columns:1.05fr .95fr;align-items:center;gap:72px;padding:65px 0 75px;display:grid}.eyebrow{color:var(--lime);text-transform:uppercase;letter-spacing:1.7px;font-size:12px;font-weight:700}.hero h1{letter-spacing:-3px;margin:18px 0;font:800 clamp(42px,6vw,70px)/1.02 Manrope,sans-serif}.hero p{color:var(--muted);max-width:475px;font-size:17px;line-height:1.7}.actions{gap:11px;max-width:390px;margin-top:30px;display:grid}.btn{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:10px;padding:14px 18px;font-weight:700;transition:transform .16s,border-color .16s}.btn:hover{border-color:#718077;transform:translateY(-1px)}.btn-primary{background:var(--lime);color:#1b241e;border-color:var(--lime)}.btn-quiet{background:0 0}.btn-small{padding:9px 12px;font-size:13px}.hero-board{aspect-ratio:1;background:#29352f;border-radius:16px;padding:13px;transform:rotate(2deg);box-shadow:0 28px 80px #090e0c80}.mini-grid{border-radius:8px;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);height:100%;display:grid;overflow:hidden}.mini-grid span{place-items:center;font-size:clamp(18px,4vw,42px);display:grid}.mini-grid span:nth-child(16n+1),.mini-grid span:nth-child(16n+3),.mini-grid span:nth-child(16n+5),.mini-grid span:nth-child(16n+7),.mini-grid span:nth-child(16n+10),.mini-grid span:nth-child(16n+12),.mini-grid span:nth-child(16n+14),.mini-grid span:nth-child(16n+16){background:#63736a}.mini-grid span:nth-child(16n+2),.mini-grid span:nth-child(16n+4),.mini-grid span:nth-child(16n+6),.mini-grid span:nth-child(16n+8),.mini-grid span:nth-child(16n+9),.mini-grid span:nth-child(16n+11),.mini-grid span:nth-child(16n+13),.mini-grid span:nth-child(16n+15){background:#dfe4d1}.panel{border:1px solid var(--line);background:var(--panel);border-radius:18px;max-width:500px;margin:70px auto;padding:32px}.panel h1{margin:0 0 8px;font:700 29px Manrope}.panel p{color:var(--muted);line-height:1.55}.field{gap:7px;margin:22px 0;display:grid}.field label{color:var(--muted);font-size:13px;font-weight:700}.field input{border:1px solid var(--line);color:var(--ink);letter-spacing:2px;text-transform:uppercase;background:#17201d;border-radius:9px;padding:14px;font-size:18px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.error{min-height:20px;color:#ffaaa0!important}.game-layout{grid-template-columns:minmax(0,680px) minmax(260px,350px);align-items:start;gap:26px;padding:28px 0 45px;display:grid}.board-column{min-width:0}.game-heading{justify-content:space-between;align-items:center;gap:12px;margin:0 0 15px;display:flex}.game-heading h1{margin:0;font:700 22px Manrope}.status{color:var(--muted);margin-top:4px;font-size:14px}.board{aspect-ratio:1;background:#ddd;border-radius:9px;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);width:100%;display:grid;overflow:hidden;box-shadow:0 16px 45px #080d0b77}.square{background-color:var(--light);background-position:50%;background-size:cover;border:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative}.square.dark{background-color:var(--dark)}.theme-brown .square.light{background-color:var(--brown-light)}.theme-brown .square.dark{background-color:var(--brown-dark)}.square.last:before{content:"";background:#b6d9546b;position:absolute;inset:0}.piece{z-index:1;object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 1px #0003);width:88%;height:88%;position:relative}.legal-dot{z-index:2;pointer-events:none;background:#18231e61;border-radius:50%;width:23%;height:23%;position:absolute}.legal-capture{z-index:2;pointer-events:none;border:5px solid #25362c77;border-radius:50%;position:absolute;inset:4%}.coord{z-index:3;pointer-events:none;font:700 clamp(8px,1.3vw,12px) Manrope;position:absolute}.coord.rank{top:3px;left:4px}.coord.file{bottom:2px;right:4px}.side{gap:14px;display:grid}.card{border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:17px}.card h2{margin:0 0 13px;font:700 15px Manrope}.playerbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.pill{color:#d4e1d6;background:#334139;border-radius:30px;padding:5px 9px;font-size:11px;font-weight:700}.moves{grid-template-columns:36px 1fr 1fr;align-content:start;height:220px;font-size:13px;display:grid;overflow:auto}.moves span{border-bottom:1px solid #344039;padding:7px 5px}.moves .number{color:#84948a}.controls{grid-template-columns:1fr 1fr;gap:8px;display:grid}.control-caption{color:var(--muted);margin-bottom:12px;font-size:12px}.notice{color:#e2f3ca;background:#2a362d;border:1px solid #536249;border-radius:10px;padding:12px 14px;font-size:14px;line-height:1.45}.code{letter-spacing:5px;color:var(--lime);margin:10px 0 18px;font:800 29px Manrope}.foot{border-top:1px solid var(--line);color:#8e9c93;text-align:center;padding:22px clamp(18px,5vw,72px);font-size:11px;line-height:1.6}.modal-backdrop{z-index:10;background:#0009;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--line);border-radius:15px;width:min(390px,100%);padding:24px}.modal h2{margin:0 0 10px;font:700 21px Manrope}.modal p{color:var(--muted);line-height:1.5}.promo-options{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.promo-options button{border:1px solid var(--line);background:#17201d;border-radius:10px;padding:10px}.promo-options img{object-fit:contain;width:48px;height:48px}.hidden{display:none!important}.connection{align-items:center;gap:7px;display:inline-flex}.connection:before{content:"";background:#c6ed75;border-radius:50%;width:8px;height:8px}.room-input{text-transform:uppercase}@media (width<=800px){.home{grid-template-columns:1fr;gap:40px;padding-top:45px}.hero-board{grid-row:1;width:min(460px,85%);margin:auto}.hero{grid-row:2}.game-layout{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:18px}.game-layout .side{grid-template-columns:1fr 1fr}.game-layout .side .card:nth-child(2){grid-row:span 2}.board{max-width:680px;margin:auto}.game-heading{padding:0 2px}.panel{margin:35px auto}}@media (width<=540px){.topbar{height:62px}.top-note{font-size:11px}.main{width:calc(100% - 24px)}.home{padding:30px 0 45px}.hero h1{letter-spacing:-2px}.hero p{font-size:15px}.hero-board{width:95%;padding:8px}.game-layout .side{grid-template-columns:1fr}.game-layout .side .card:nth-child(2){grid-row:auto}.moves{height:130px}.game-heading h1{font-size:19px}.panel{padding:23px}.square.selected{box-shadow:inset 0 0 0 3px #c6ed75}}.brand-icon{object-fit:contain;width:27px;height:27px}.mini-grid img{object-fit:contain;width:88%;height:88%}.foot a{color:#c7d6cd;margin-left:5px}.square img{-webkit-user-select:none;user-select:none}.btn-small{min-height:42px}.square:disabled{opacity:1;cursor:default}.btn-primary{color:#111;background:#f4f4f4;border-color:#f4f4f4}.btn:hover{border-color:#999}.hero-board{background:#171717;transform:none;box-shadow:0 28px 80px #0009}.mini-grid{background-position:50%;background-size:100% 100%}.board-frame,.player-strip,.side .card{background:#1b1b1b;border-color:#383838}.card-title .connection,.card-title .connection.offline{color:#ccc}.connection:before{background:#ddd}@media (width<=600px){.square.selected{box-shadow:inset 0 0 0 3px #fff}}.game-layout{grid-template-columns:minmax(0,760px) minmax(290px,350px);gap:22px;width:min(1280px,100%);margin:0 auto;padding:24px 0 48px}.board-column{align-content:start;gap:0;display:grid}.game-heading{margin-bottom:14px}.game-heading .eyebrow{margin-bottom:4px;font-size:10px}.game-heading h1{font-size:clamp(18px,2vw,24px);line-height:1.25}.board-tools{align-items:center;gap:8px;display:flex}.board-tools label{color:var(--muted);font-size:12px}.board-tools select{background:var(--panel);border:1px solid var(--line);max-width:105px;height:42px;color:var(--ink);border-radius:8px;padding:0 8px}.board-tools .btn{min-height:42px;padding:8px 12px}.board{box-shadow:none;border-radius:5px;max-width:none}.player-strip{background:#252a26;border:1px solid #414941;border-radius:9px;align-items:center;gap:11px;min-height:58px;padding:8px 11px;display:flex}.player-opponent{margin-bottom:8px}.player-you{margin-top:8px}.player-avatar{object-fit:contain;background:#343b35;border-radius:7px;width:36px;height:36px;padding:3px}.player-copy{gap:2px;min-width:0;display:grid}.player-copy strong{color:#f4f5f1;font-size:13px;font-weight:700}.player-copy span{color:#aeb8b0;font-size:11px}.player-state{color:#c0c9c1;white-space:nowrap;background:#343b35;border-radius:6px;margin-left:auto;padding:5px 8px;font-size:11px;font-weight:700}.side{gap:12px}.side .card{background:#252a26;border-color:#414941;border-radius:10px;padding:16px}.side .card h2{margin:0;font-size:14px}.card-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.card-title .connection{color:#cde990;font-size:10px}.move-count{color:#98a49b;white-space:nowrap;font-size:10px}.moves-card .moves{grid-template-columns:44px 1fr 1fr;height:clamp(170px,32vh,340px)}.moves span{border-color:#3b433d;padding:8px 7px}.moves .number{text-align:right;color:#89968d}.controls-card .control-caption{line-height:1.5}.game-layout .notice{margin-bottom:10px}.game-layout .btn{border-radius:8px}@media (width<=980px){.game-layout{grid-template-columns:minmax(0,760px);justify-content:center;gap:14px}.side{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.game-layout .side .card:nth-child(2){grid-row:auto}.moves-card{grid-row:span 2}.moves-card .moves{height:220px}}@media (width<=600px){.game-layout{gap:11px;width:100%;padding:14px 0 32px}.game-heading{align-items:flex-end;gap:8px}.board-tools{gap:5px}.board-tools label{display:none}.board-tools select{max-width:90px;font-size:12px}.board-frame{border-radius:8px;padding:5px}.player-strip{min-height:50px;padding:6px 8px}.player-avatar{width:32px;height:32px}.player-state{padding:5px 6px;font-size:10px}.side{grid-template-columns:1fr}.moves-card{grid-row:auto}.moves-card .moves{height:150px}.game-layout .side .card:nth-child(2){grid-row:auto}}:root{color:#d6d2ca;--ink:#dedbd4;--muted:#aaa49b;--panel:#272624;--line:#3c3935;--lime:#d39942;--dark:#30302d;--light:#e2e4d6;--brown-dark:#88634e;--brown-light:#ead5b5;background:#171614}body{color:var(--ink);background:#171614}.topbar{background:#211f1d;border-bottom-color:#34322e;justify-content:flex-start;gap:28px;height:58px;padding:0 clamp(16px,2vw,30px)}.brand{color:#dedbd4;letter-spacing:0;gap:8px;font-size:20px}.brand-icon{filter:sepia(.24)saturate(.75);width:29px;height:29px}.site-nav{align-items:center;gap:23px;height:100%;display:flex}.site-nav a{color:#aaa49b;text-transform:uppercase;letter-spacing:.35px;border-bottom:2px solid #0000;align-items:center;height:100%;padding:0 2px;font-size:12px;font-weight:700;transition:color .15s,border-color .15s;display:flex}.site-nav a:hover,.site-nav a:focus-visible{color:#d8e9fa;border-bottom-color:#bd7b27}.main{width:min(1340px,100% - 36px)}.home{gap:clamp(36px,7vw,92px);padding:54px 0 68px}.hero h1{color:#e2ded7}.hero p{color:#b7b1a8}.hero-board{background:#242321;border:1px solid #393733;border-radius:10px;padding:10px;transform:none;box-shadow:0 18px 45px #0008}.mini-grid{border-radius:4px}.mini-grid span:nth-child(n){background:0 0!important}.btn{color:#c5ddf5;text-align:left;background:#34322f;border-color:#403e3a;border-radius:7px;min-height:50px;padding:13px 18px}.btn:hover{background:#3b3936;border-color:#55514b;transform:translateY(-1px)}.btn-primary{color:#1b1916;text-align:center;background:#bd8738;border-color:#bd8738}.btn-primary:hover{color:#171512;background:#d29a48;border-color:#d29a48}.btn-quiet{color:#70b3f3;text-align:left;background:0 0}.eyebrow,.code{color:#d39942}.panel,.card,.side .card,.board-frame,.player-strip{background:#272624;border-color:#3c3935;border-radius:8px}.panel{box-shadow:0 12px 36px #0003}.panel h1,.card h2,.game-heading h1{color:#e2ded7}.field input,.promo-options button,.board-tools select{color:#dedbd4;background:#1e1d1b;border-color:#41403c}.player-avatar,.player-state,.pill{color:#dedbd4;background:#393733}.player-copy strong{color:#dedbd4}.player-copy span,.move-count,.moves .number{color:#aaa49b}.card-title .connection,.connection:before{color:#d9bd8b;background:#d39942}.card-title .connection.offline{color:#bcb6ad}.connection.offline:before{background:#817b73}.moves span:nth-child(6n+1),.moves span:nth-child(6n+2),.moves span:nth-child(6n+3){background:#302e2b}.moves span{border-color:#403d39}.game-layout .notice,.notice{color:#ead6b5;background:#332c22;border-color:#675034}.square.selected{box-shadow:inset 0 0 0 5px #e3ae5b}.square.last:before{background:#d9b05a33}.square.check{box-shadow:inset 0 0 0 5px #c96559}.legal-dot{background:#25221f77}.legal-capture{z-index:0;border-color:#25221f77}.square.light .coord{color:#514d43}.square.dark .coord{color:#e7e3d9}.game-layout .btn-primary{color:#1b1916}.foot{color:#948e84}.foot a{color:#80baf0}.error{color:#edaaa0!important}@media (width<=600px){.topbar{gap:16px;height:56px;padding:0 12px}.brand{font-size:16px}.brand-icon{width:25px;height:25px}.site-nav{gap:14px}.site-nav a{font-size:10px}.main{width:calc(100% - 24px)}.home{padding:30px 0 45px}.square.selected{box-shadow:inset 0 0 0 3px #e3ae5b}}.topbar{gap:25px;padding:0 clamp(16px,1.5vw,26px)}.site-nav{gap:21px}.top-join{color:#fff;text-transform:uppercase;background:#2389dc;border-radius:6px;align-self:center;margin-left:auto;padding:10px 16px;font-size:12px;font-weight:700;box-shadow:0 2px 5px #0004}.top-join:hover{background:#3198e9}.lobby-page{width:min(1350px,100%);margin:0 auto;padding:20px 0 46px}.lobby-layout{grid-template-columns:minmax(220px,300px) minmax(450px,1fr) minmax(240px,300px);align-items:start;gap:14px;display:grid}.home-info{padding:18px 6px 0 0}.home-description{color:#c6c0b7;max-width:300px;margin:0;font-size:14px;line-height:1.55}.home-description a,.bottom-card-heading a{color:#80baf0}.home-info-note{color:#aaa49b;align-items:center;gap:12px;margin-top:26px;font-size:12px;display:flex}.note-icon{color:#d39942;font-size:25px}.home-info-note div{gap:4px;display:grid}.home-info-note strong{color:#d8d3cb;font-size:13px}.home-lobby{min-width:0}.lobby-tabs{align-items:stretch;gap:0;height:38px;display:flex}.lobby-tabs button{color:#aaa49b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:0 8px;font-size:12px;position:relative}.lobby-tabs button:hover{color:#dedbd4}.lobby-tabs button.active-tab{color:#cf6a37;border-bottom-color:#bc5c26}.lobby-tabs .lobby-settings{color:#aaa49b;flex:0 0 38px;place-items:center;font-size:18px;display:grid}.lobby-card{isolation:isolate;background:#262422;border:1px solid #332f2b;border-radius:8px;flex-direction:column;min-height:566px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 24px #0003}.lobby-card:before{z-index:-1;content:"♞";color:#fff;opacity:.025;pointer-events:none;place-items:center;font-size:clamp(220px,30vw,460px);line-height:1;display:grid;position:absolute;inset:40px 10% 30px}.lobby-heading{align-items:center;gap:15px;padding:18px 22px 16px;display:flex}.lobby-mark{color:#aaa49b;font-size:27px}.lobby-heading h1{color:#d8d3cb;margin:0;font-size:17px;font-weight:500}.lobby-heading p{color:#99938b;margin:5px 0 0;font-size:12px}.lobby-table{margin-top:2px}.lobby-table-head,.lobby-row{grid-template-columns:30px minmax(112px,1fr) minmax(85px,118px) minmax(55px,75px) 28px;align-items:center;gap:8px;display:grid}.lobby-table-head{color:#938d85;padding:0 16px 8px;font-size:10px}.lobby-row{color:#bdb8b0;text-align:left;background:0 0;border:0;border-top:1px solid #3a3733;border-radius:0;width:100%;min-height:53px;padding:0 16px;font-size:12px;font-weight:400}.lobby-row:nth-child(odd){background:#2a2826}.lobby-row:hover{color:#d6e8f8;background:#34312d}.lobby-row strong{color:#d3cec6;font-weight:500}.lobby-row-icon{color:#969089;text-align:center;font-size:18px}.row-arrow{color:#78b4ee;text-align:right;font-size:18px}.lobby-footer{color:#99938b;border-top:1px solid #3a3733;justify-content:space-between;align-items:center;margin-top:auto;padding:12px 18px;font-size:11px;display:flex}.lobby-footer span:last-child{color:#7f7b75;font-size:19px}.home-actions{gap:8px;margin-top:160px;display:grid}.home-action{color:#c8e0f9;text-align:left;background:linear-gradient(#393633,#302e2b);border:1px solid #3e3b37;border-radius:7px;align-items:center;gap:14px;min-height:55px;padding:8px 15px;display:flex;box-shadow:0 2px 4px #0003}.home-action:hover{background:linear-gradient(#44413d,#373431);border-color:#56514b}.action-icon{color:#928c84;text-align:center;flex:0 0 36px;width:36px;font-size:24px}.home-action>span:last-child{gap:3px;display:grid}.home-action strong{font-size:14px;font-weight:500}.home-action small{color:#aaa49b;font-size:11px}.home-actions .error{margin:4px 0 0;font-size:12px}.home-bottom{grid-template-columns:minmax(220px,300px) minmax(450px,1fr) minmax(240px,300px);align-items:stretch;gap:14px;margin-top:14px;display:grid}.bottom-card{background:#272523;border:1px solid #393632;border-radius:8px;min-width:0;padding:15px}.bottom-card-heading{color:#aaa49b;letter-spacing:.55px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px;font-size:10px;font-weight:700;display:flex}.bottom-card-heading a{letter-spacing:0;font-size:11px;font-weight:500}.preview-card .hero-board{aspect-ratio:1;width:100%;height:auto;box-shadow:none;background:#191817;border-radius:7px;margin:0;padding:6px}.preview-card .mini-grid{border-radius:3px}.preview-card .mini-grid img{width:90%;height:90%}.preview-caption{gap:4px;margin-top:12px;display:grid}.preview-caption strong{color:#d5d0c8;font-size:12px}.preview-caption span{color:#99938b;font-size:11px}.welcome-card{padding:15px 17px}.welcome-story{border-top:1px solid #3a3733;gap:13px;padding:13px 0;display:flex}.story-mark{color:#d39942;border:1px solid #8f642d;border-radius:50%;flex:0 0 29px;place-items:center;width:29px;height:29px;font-size:16px;display:grid}.welcome-story strong{color:#d1a05b;font-size:13px;font-weight:600}.welcome-story p{color:#bbb5ac;margin:6px 0 0;font-size:12px;line-height:1.5}.welcome-time{color:#827c74;letter-spacing:.4px;font-size:9px}.themes-card p{color:#aaa49b;margin:0 0 12px;font-size:12px;line-height:1.4}.theme-choices{gap:8px;display:grid}.theme-choice{color:#c9c4bc;text-align:left;background:#302e2b;border:1px solid #3c3935;border-radius:6px;grid-template-columns:35px 1fr 20px;align-items:center;gap:9px;padding:8px;font-size:12px;display:grid}.theme-choice:hover,.theme-choice.selected-theme{background:#36312a;border-color:#80603a}.theme-swatch{background-color:#dfe4d1;background-image:linear-gradient(90deg,#65766e 50%,#0000 50%),linear-gradient(#65766e 50%,#0000 50%);background-position:0 0,7px 7px;background-size:14px 14px;border:1px solid #514c44;border-radius:4px;width:34px;height:34px}.brown-swatch{background-color:#ead5b5;background-image:linear-gradient(90deg,#a78060 50%,#0000 50%),linear-gradient(#a78060 50%,#0000 50%)}.theme-check{color:#d39942;text-align:center;font-weight:700}.settings-page{background:#272523;border:1px solid #393632;border-radius:9px;width:min(1020px,100%);margin:42px auto 60px;padding:30px}.settings-page h1{color:#e1ddd6;margin:8px 0;font:700 30px Manrope,sans-serif}.settings-intro,.settings-heading p{color:#aaa49b;margin:0;font-size:13px;line-height:1.55}.settings-section{border-top:1px solid #3d3935;grid-template-columns:minmax(0,1fr) minmax(180px,240px);align-items:center;gap:8px 20px;margin-top:24px;padding-top:22px;display:grid}.settings-section.settings-boards{grid-template-columns:1fr;gap:14px}.board-theme-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:11px;display:grid}.board-theme-choice{color:#d5d0c8;text-align:left;background:#302e2b;border:1px solid #403d39;border-radius:7px;min-width:0;padding:6px;transition:border-color .15s,transform .15s}.board-theme-choice:hover,.board-theme-choice.selected-board-theme{border-color:#c38a3c;transform:translateY(-1px)}.board-theme-choice img{aspect-ratio:1;object-fit:cover;background:#1e1d1b;border-radius:4px;width:100%;display:block}.board-theme-choice span{justify-content:space-between;align-items:center;gap:4px;padding:7px 2px 2px;font-size:11px;display:flex}.board-theme-choice strong{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.board-theme-choice i{color:#d39942;font-size:13px;font-style:normal}.settings-heading h2{color:#ddd8d0;margin:0 0 4px;font:700 16px Manrope,sans-serif}.settings-label{color:#bdb8b0;font-size:12px;font-weight:700}.settings-select{color:#ddd8d0;background:#302e2b;border:1px solid #514c44;border-radius:6px;width:100%;min-width:0;padding:10px 12px}.piece-set-preview{background:#201f1d;border-radius:6px;grid-column:1/-1;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:10px;padding:12px;display:grid}.piece-set-preview img{object-fit:contain;width:100%;height:54px}.settings-actions{margin-top:24px}.site-nav a[aria-current=page]{color:#d8e9fa;border-bottom-color:#bd7b27}@media (width<=1080px){.lobby-layout,.home-bottom{grid-template-columns:minmax(0,1fr) minmax(230px,300px)}.home-info{display:none}.home-lobby{grid-column:1}.home-actions{grid-area:1/2;margin-top:130px}.home-bottom .welcome-card{grid-column:1}.home-bottom .themes-card{grid-column:2}.home-bottom .preview-card{grid-column:1/-1;grid-template-columns:minmax(0,1fr) 180px;align-items:center;column-gap:15px;display:grid}.preview-card .bottom-card-heading{grid-column:1/-1}.preview-card .hero-board{grid-area:2/2/span 2;width:180px}.preview-caption{grid-area:2/1}}@media (width<=700px){.topbar{gap:15px}.site-nav{gap:12px}.site-nav a{font-size:10px}.top-join{padding:8px 10px;font-size:10px}.lobby-page{padding-top:12px}.lobby-layout,.home-bottom{grid-template-columns:1fr}.home-lobby,.home-actions,.home-bottom .welcome-card,.home-bottom .themes-card,.home-bottom .preview-card{grid-area:auto/1}.home-actions{grid-template-columns:1fr 1fr;margin-top:8px}.home-action{gap:6px;min-height:58px;padding:7px}.action-icon{flex-basis:26px;width:26px;font-size:20px}.home-action strong{font-size:11px}.home-action small{font-size:9px}.home-actions .error{grid-column:1/-1}.lobby-card{min-height:440px}.lobby-table-head,.lobby-row{grid-template-columns:24px minmax(95px,1fr) minmax(68px,90px) 48px 18px;gap:5px;padding-left:9px;padding-right:9px;font-size:10px}.lobby-table-head{font-size:9px}.lobby-row-icon{font-size:15px}.lobby-heading{padding:15px 12px}.lobby-footer{padding:10px 12px}.home-bottom{gap:10px}.home-bottom .preview-card{display:block}.preview-card .hero-board{width:min(100%,300px);margin:0 auto}.preview-caption{margin-top:9px}}@media (width<=430px){.topbar{gap:10px;padding:0 9px}.brand{gap:5px;font-size:13px}.brand-icon{width:22px;height:22px}.site-nav{gap:8px}.site-nav a{letter-spacing:0;font-size:9px}.top-join{padding:7px 8px;font-size:9px}.lobby-tabs button{font-size:10px}.lobby-settings{display:none!important}.home-action{flex-direction:column;align-items:flex-start}.action-icon{text-align:left;height:20px}.home-action>span:last-child{gap:2px}.home-action strong{font-size:10px}.home-action small{font-size:8px}}@media (width<=600px){.settings-page{margin:22px auto 35px;padding:20px 15px}.settings-section{grid-template-columns:1fr;gap:8px}.settings-select{grid-column:1}.piece-set-preview img{height:42px}.board-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.board-theme-choice{padding:4px}.board-theme-choice span{font-size:10px}}.shell[data-page=game] .main{align-items:center;width:min(1500px,100% - 20px);margin:auto;display:flex}.game-info{grid-area:1/1;min-width:0;padding-top:0}.game-context{background:#272523;border:1px solid #393632;border-radius:3px;padding:18px 16px 14px}.game-context-title{color:#bdb8b0;align-items:center;gap:9px;margin-bottom:10px;font-size:12px;display:flex}.game-settings{color:#b3aea6;font-size:22px;line-height:1}.game-context .players-card{background:0 0;border:0;padding:0}.game-context .card-title{margin:0 0 5px}.game-context .card-title h2{display:none}.game-context .connection{color:#aaa49b;font-size:11px}.game-context .playerbar{color:#c4beb6;justify-content:flex-start;gap:8px;min-height:20px;padding:1px 0;font-size:11px}.game-context .playerbar .pill{color:#0000;background:0 0;border:2px solid #bdb8b0;border-radius:50%;order:-1;width:13px;height:13px;padding:0;font-size:0;overflow:hidden}.game-context .playerbar.is-current .pill{background:#ddd;border-color:#ddd}.game-context .playerbar.is-current{color:#e0dbd3}.board-column{grid-area:1/2;grid-template-rows:auto 1fr;align-content:start;gap:0;min-width:0;display:grid}.game-heading>div:first-child{min-width:0}.game-heading .eyebrow{display:none}.game-heading h1{color:#d6d1c9;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.board-tools{gap:5px}.board-tools label{display:none}.board-tools select{border-radius:3px;max-width:150px;height:28px;padding:0 5px;font-size:11px}.board-tools .btn{border-radius:3px;min-height:28px;padding:4px 8px;font-size:11px}.side{grid-area:1/3;align-content:start;gap:12px;min-width:0;margin-top:clamp(80px,15vw,205px)}.turn-card{background:#272523;border-radius:3px;padding:0;overflow:hidden}.turn-card-head{color:#d5d0c8;background:#302e2b;align-items:center;gap:9px;min-height:38px;padding:0 13px;font-size:13px;display:flex}.turn-online-dot{background:#74a93e;border-radius:50%;flex:0 0 12px;width:12px;height:12px}.game-toolbar{background:#34322f;border-bottom:1px solid #3e3a36;justify-content:space-around;align-items:stretch;min-height:36px;display:flex}.game-icon-button{color:#89847d;background:0 0;border:0;border-right:1px solid #3e3a36;flex:1;min-width:42px;font-size:20px;font-weight:700}.game-icon-button:last-child{border-right:0}.game-icon-button:hover{color:#e1dbd1;background:#403d39}.turn-message{color:#9fc9f0;align-items:center;gap:13px;min-height:120px;padding:18px 15px;font-size:12px;line-height:1.5;display:flex}.turn-message>span:last-child{display:grid}.turn-message strong{color:#d5d0c8;font-size:13px}.turn-information{color:#262523;background:#777570;border-radius:50%;flex:0 0 39px;place-items:center;width:39px;height:39px;font-family:serif;font-size:26px;font-style:italic;font-weight:700;display:grid}.turn-player{color:#9fc9f0;align-items:center;gap:8px;min-height:35px;padding:0 13px;font-size:12px;display:flex}.turn-player img{object-fit:contain;width:18px;height:18px}.turn-card .notice,.turn-card #toast{margin:0 10px 10px}.side .card{background:#272523;border-color:#34312e;border-radius:3px}.side .card-title{margin-bottom:8px}.side .card-title h2{font-size:13px;font-weight:500}.players-card .playerbar{font-size:11px}.side .moves-card .moves{grid-template-columns:35px 1fr 1fr;height:clamp(100px,19vh,185px);font-size:12px}.side .moves span{padding:6px 5px}.side .game-extras{justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.side .game-extras .control-caption{margin:0;font-size:10px}.side .game-extras .btn{min-height:32px;padding:6px 9px;font-size:11px}.side .game-extras .controls{width:100%;margin:6px 0}.side .game-extras .notice{font-size:12px}.side .code{font-size:23px}@media (width<=1120px){.shell[data-page=game] .main{width:min(1000px,100% - 24px)}.game-layout{grid-template-columns:minmax(0,1fr) minmax(270px,340px);gap:12px}.game-info{grid-area:1/1/auto/-1}.game-context{grid-template-columns:190px 1fr;align-items:center;gap:10px;padding:10px 14px;display:grid}.game-context-title{margin:0}.game-context .playerbar{margin-right:22px;display:inline-flex}.board-column{grid-area:2/1}.side{grid-area:2/2;margin-top:clamp(70px,12vw,150px)}}@media (width<=760px){.shell[data-page=game] .main{align-items:flex-start;width:min(680px,100% - 16px)}.game-layout{grid-template-columns:minmax(0,1fr);gap:10px;padding:8px 0 20px}.game-info{grid-area:1/1}.game-context{grid-template-columns:1fr;gap:4px;padding:8px 10px}.game-context-title{font-size:10px}.game-settings{font-size:18px}.game-context .playerbar{margin-right:10px;font-size:10px}.board-column{grid-area:2/1}.game-heading{min-height:27px}.side{grid-area:3/1;grid-template-columns:1fr 1fr;align-items:start;margin-top:0}.turn-card{grid-column:1/-1}.turn-message{min-height:70px;padding:10px 12px}.turn-information{flex-basis:32px;width:32px;height:32px;font-size:21px}.side .moves-card .moves{height:130px}.side .game-extras{align-self:start}}@media (width<=480px){.game-info .players-card .card-title{display:none}.game-context .playerbar{margin-right:8px}.game-context .playerbar .pill{flex-basis:10px;width:10px;height:10px}.side{grid-template-columns:1fr}.turn-card{grid-column:1}.side .moves-card .moves{height:110px}.board-tools select{max-width:110px}}.shell[data-page=game] .topbar,.shell[data-page=game] .foot{display:flex}.shell[data-page=game] .main{width:min(1340px,100% - 36px);margin:auto;display:block}.game-layout{grid-template-columns:minmax(0,760px) minmax(310px,390px);justify-content:center;gap:24px;width:min(1320px,100%);max-width:none;padding:14px 0 34px}.game-info{grid-area:1/1/auto/-1;padding:0}.game-context{background:#242220;border:1px solid #393632;border-radius:7px;align-items:center;gap:11px;min-height:42px;padding:8px 14px;display:flex}.game-settings{color:#d39942;font-size:17px}.game-context-title{color:#d39942;letter-spacing:.8px;margin:0;font-size:10px;font-weight:700}.game-context-divider{border-left:1px solid #4a4640;height:17px}.game-context-copy{color:#aaa49b;font-size:11px}.board-column{grid-area:2/1;grid-template-rows:auto auto 1fr auto;align-content:start;gap:0;display:grid}.game-heading{align-items:center;min-height:44px;margin:0 0 5px}.game-heading .eyebrow{color:#d39942;letter-spacing:1px;margin:0 0 2px;font-size:9px;display:block}.game-heading h1{color:#e0dcd4;font-size:16px;font-weight:600}.player-opponent{margin:0 0 6px}.player-you{margin:6px 0 0}.board-frame{background:#191817;border:0;border-radius:3px;width:100%;padding:0;box-shadow:0 12px 30px #0006}.board{width:100%;max-width:none;box-shadow:none;border-radius:3px;margin:0}.side{grid-area:2/2;align-content:start;gap:12px;margin-top:49px}.turn-card,.side .card{border-radius:7px}.turn-card-head{background:#302e2b;min-height:40px}.turn-message{min-height:108px}.side .moves-card .moves{height:clamp(140px,22vh,220px)}.game-info .game-context .players-card{display:none}@media (width<=1120px){.shell[data-page=game] .main{width:calc(100% - 24px)}.game-layout{grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:16px;width:100%}.game-info{grid-area:1/1/auto/-1}.game-context{grid-template-columns:none;padding:8px 12px;display:flex}.board-column{grid-area:2/1}.side{grid-area:2/2;margin-top:54px}}@media (width<=760px){.game-layout{grid-template-columns:minmax(0,1fr);gap:10px;padding:10px 0 24px}.game-info{grid-area:1/1}.game-context{flex-wrap:wrap;gap:7px;padding:7px 10px}.game-context-copy{font-size:10px}.board-column{grid-area:2/1}.side{grid-area:3/1;grid-template-columns:1fr 1fr;margin-top:0}.turn-card{grid-column:1/-1}.turn-message{min-height:68px;padding:10px 12px}.side .moves-card .moves{height:130px}}@media (width<=480px){.side{grid-template-columns:1fr}.turn-card{grid-column:1}.game-heading h1{font-size:14px}.side .moves-card .moves{height:110px}}.moves span.latest{color:#f0c67c;background:#403522;font-weight:700}.player-state.is-active{color:#edbd76;background:#493822}.turn-online-dot{background:#8fb84d;box-shadow:0 0 8px #8fb84d55}.home-dashboard{width:min(1120px,100%);margin:0 auto;padding:38px 0 54px}.home-hero{background:radial-gradient(at 80%,#35302a 0%,#272523 60%);border:1px solid #3a3732;border-radius:15px;grid-template-columns:minmax(0,1fr) minmax(280px,390px);align-items:center;gap:clamp(28px,6vw,78px);padding:34px clamp(22px,4vw,48px);display:grid;box-shadow:0 20px 55px #0004}.hero-copy .eyebrow{letter-spacing:1.5px;font-size:10px}.hero-copy h1{color:#f0ece5;letter-spacing:-1.9px;margin:15px 0 12px;font:700 clamp(34px,4.7vw,56px)/1.05 Manrope,sans-serif}.hero-copy p{color:#b8b2a9;max-width:480px;margin:0;font-size:15px;line-height:1.7}.hero-badges{flex-wrap:wrap;gap:9px;margin-top:22px;display:flex}.hero-badges span{color:#c3bdb4;background:#2b2926;border:1px solid #433f39;border-radius:30px;padding:7px 10px;font-size:11px}.hero-badges i{background:#88ad55;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.home-preview-panel{background:#1c1b19;border:1px solid #393632;border-radius:12px;max-width:390px;padding:13px;box-shadow:0 12px 30px #0005}.preview-label,.preview-foot{color:#a9a39a;letter-spacing:.65px;justify-content:space-between;align-items:center;font-size:9px;font-weight:700;display:flex}.preview-label{padding:0 3px 10px}.preview-label span:last-child{color:#d8a04b;font-size:16px}.home-preview-panel .hero-board{aspect-ratio:1;width:100%;height:auto;box-shadow:none;background:#141312;border:0;border-radius:6px;margin:0;padding:5px}.home-preview-panel .mini-grid{border-radius:3px}.home-preview-panel .mini-grid img{width:90%;height:90%}.preview-foot{letter-spacing:0;padding:10px 3px 0;font-weight:500}.quick-play{margin-top:34px}.section-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px;display:flex}.section-heading .eyebrow{letter-spacing:1.3px;font-size:9px}.section-heading h2{color:#e7e2da;letter-spacing:-.4px;margin:5px 0 0;font:600 22px Manrope,sans-serif}.section-note{color:#989188;padding-bottom:4px;font-size:11px}.launch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.launch-card{color:#d5d0c8;text-align:left;background:linear-gradient(145deg,#2a2825,#232220);border:1px solid #3e3a35;border-radius:11px;align-items:center;gap:13px;min-height:100px;padding:15px;transition:transform .16s,border-color .16s,background .16s;display:flex;box-shadow:0 8px 20px #0002}.launch-card:hover{background:linear-gradient(145deg,#332f29,#282622);border-color:#76603e;transform:translateY(-2px)}.launch-card.launch-local{background:linear-gradient(145deg,#3b3225,#2d2821);border-color:#846537}.launch-card.launch-local:hover{border-color:#c0924a}.launch-icon{background:#201f1d;border:1px solid #47423b;border-radius:9px;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.launch-icon img{object-fit:contain;width:36px;height:36px}.launch-join-icon{color:#d5a557;font-size:22px}.launch-copy{gap:5px;min-width:0;display:grid}.launch-copy strong{color:#e4dfd7;font-size:13px;font-weight:600}.launch-copy small{color:#a8a197;font-size:10px;line-height:1.4}.launch-arrow{color:#d09a49;margin-left:auto;font-size:18px}.home-error{margin:8px 0 0;font-size:12px}.home-lower{grid-template-columns:minmax(0,1.45fr) minmax(250px,.75fr);gap:12px;margin-top:14px;display:grid}.howto-card{background:#242321;border:1px solid #393632;border-radius:11px;padding:17px}.howto-card .bottom-card-heading{margin-bottom:15px}.howto-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.howto-steps>div{align-content:start;gap:6px;padding-right:8px;display:grid}.howto-steps>div+div{border-left:1px solid #3d3934;padding-left:14px}.howto-steps>div>span{color:#d09a49;letter-spacing:.5px;font-size:10px;font-weight:700}.howto-steps strong{color:#ded8cf;font-size:11px}.howto-steps p{color:#9f998f;margin:0;font-size:10px;line-height:1.5}.home-lower .themes-card{border-radius:11px;padding:17px}.home-lower .theme-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.home-lower .theme-choice{grid-template-columns:31px 1fr 14px;gap:6px;padding:6px;font-size:10px}.home-lower .theme-swatch{background-position:0 0,6px 6px;background-size:12px 12px;width:30px;height:30px}.brand-icon{filter:brightness(0)invert()}.launch-icon{background:#e1d6c5;border-color:#cfc4b3}.launch-icon img{filter:brightness(0)}.launch-join-icon{color:#28231c;background:#e1d6c5}@media (width<=850px){.home-dashboard{padding:26px 0 38px}.home-hero{grid-template-columns:minmax(0,1fr) minmax(240px,310px);gap:24px;padding:25px}.home-hero .hero-board{width:100%}.launch-grid{gap:8px}.launch-card{gap:9px;padding:11px}.launch-icon{flex-basis:38px;width:38px;height:38px}.launch-icon img{width:31px;height:31px}.launch-copy strong{font-size:11px}.launch-copy small{font-size:9px}}@media (width<=640px){.home-dashboard{padding:18px 0 30px}.home-hero{grid-template-columns:1fr;gap:20px;padding:22px 18px}.hero-copy h1{font-size:38px}.hero-copy p{font-size:14px}.home-preview-panel{justify-self:center;width:min(100%,330px)}.quick-play{margin-top:26px}.section-heading h2{font-size:19px}.section-note{text-align:right;max-width:105px;font-size:10px}.launch-grid{grid-template-columns:1fr}.launch-card{min-height:72px;padding:10px 13px}.launch-copy strong{font-size:13px}.launch-copy small{font-size:10px}.home-lower{grid-template-columns:1fr}.howto-steps{gap:8px}.howto-steps>div{padding-right:5px}.howto-steps>div+div{padding-left:8px}.home-lower .theme-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=390px){.hero-copy h1{font-size:33px}.hero-badges{gap:6px}.hero-badges span{padding:6px 8px;font-size:10px}.section-heading{align-items:start}.section-heading h2{max-width:230px}.howto-steps{grid-template-columns:1fr}.howto-steps>div,.howto-steps>div+div{border:0;border-top:1px solid #3d3934;padding:9px 0}}
