@import "https://fonts.googleapis.com/css2?family=Alegreya:wght@400;500;600;700&family=Alegreya+Sans:wght@400;500;700&family=DM+Sans:wght@650&display=swap";:root{--linen:#fff;--ivory:#fff;--ink:#231f20;--muted:#6b6466;--field:#fff;--field-line:#d6d3d3;--radius:8px;--faint:#a39c9d;--line:#e4e2e2;--burgundy:#592f32;--wine-light:#75434a;--oak:#a8733c;--error:#b24535;--serif:"Alegreya", Georgia, serif;--sans:"Alegreya Sans", sans-serif;font-family:var(--sans);color:var(--ink);background:var(--linen);font-synthesis:none;font-weight:400}*{box-sizing:border-box}body{margin:0}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none}p,h1,h2,h3{margin:0}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:0;transition:background .15s,color .15s}button:disabled{cursor:default;opacity:.45}button,a{-webkit-touch-callout:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--oak);outline-offset:3px}input:focus-visible,select:focus-visible{outline:none;box-shadow:0 0 0 3px #a8733c2e;border-color:var(--oak)!important}button:active:not(:disabled){transform:translateY(1px)}button svg,a svg{flex-shrink:0}input,select{font-size:16px}h1,h2,h3{font-family:var(--serif);font-weight:500}h1{letter-spacing:-.8px;font-size:56px;line-height:1.1}h2{letter-spacing:-.35px;font-size:34px;line-height:1.15}.app-shell{max-width:1600px;margin:auto;padding:0 5.4%}.site-header{justify-content:space-between;align-items:center;gap:30px;height:103px;display:flex}.wordmark{color:#393d33;letter-spacing:-1.7px;align-items:center;gap:11px;font-family:DM Sans,sans-serif;font-size:28px;font-weight:650;display:flex}.brand-mark{grid-template-columns:1fr 1fr;gap:4px;width:24px;height:24px;display:grid;transform:rotate(-5deg)}.brand-mark i{background:#592f32;border-radius:1px}.brand-dot{letter-spacing:0;align-self:flex-start;margin-top:7px;margin-left:-7px;font-size:11px}.header-actions{color:var(--muted);align-items:center;gap:30px;margin-left:auto;font-size:14px;display:flex}.text-button{align-items:center;gap:8px;padding:8px 0;display:inline-flex}.account-link{align-items:center;gap:14px;padding-left:28px;display:flex}.game-layout{grid-template-columns:minmax(0,1fr) 306px;align-items:start;gap:28px;margin:28px 0;display:grid}.table-panel{position:relative;overflow:hidden}.table-toolbar{z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;top:22px;left:0;right:0}.table-label{letter-spacing:1.35px;color:var(--muted);align-items:center;gap:7px;font-size:10px;font-weight:500;display:flex}.live-dot{background:var(--oak);border-radius:50%;width:5px;height:5px;display:inline-block}.live-dot.muted{background:var(--faint)}.view-switch{color:var(--muted);align-items:center;gap:6px;padding:8px 0;font-size:12px;display:flex}.board-stage{isolation:isolate;height:clamp(540px,100vh - 230px,720px);position:relative}.board-stage canvas{touch-action:none;display:block}.goal-label{z-index:1;letter-spacing:1.5px;color:var(--muted);pointer-events:none;white-space:nowrap;font-size:10px;position:absolute;left:50%;transform:translate(-50%)}.goal-label.top{top:68px}.goal-label.bottom{bottom:29px}.board-loading{height:100%;font-family:var(--serif);color:var(--muted);place-items:center;font-size:25px;display:grid}.board-stage canvas{opacity:0;transition:opacity .22s ease-out}.board-stage canvas[data-ready=true]{opacity:1}.game-sidebar>h2.joining{color:var(--muted)}.entry-loading{animation:.2s ease-out .4s both fade-in-late}@keyframes fade-in-late{0%{opacity:0}to{opacity:1}}.game-sidebar{flex-direction:column;padding:26px 0 0 10px;display:flex}.game-sidebar>h2{color:var(--burgundy);margin:0 0 6px;font-size:34px}.players{flex-direction:column;gap:8px;margin:14px 0 16px;display:flex}.player-row{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:12px;min-width:0;padding:11px 12px 11px 14px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.player-row.current{border-color:var(--burgundy);background:var(--field);box-shadow:0 0 0 3px #592f3214}.pawn-token{clip-path:polygon(20% 0,80% 0,90% 20%,80% 40%,67% 48%,72% 70%,100% 90%,100% 100%,0 100%,0 90%,28% 70%,33% 48%,20% 40%,10% 20%);background:radial-gradient(circle at 30% 25%,#ebd7ae,#b99a6a);border-radius:45% 45% 35% 35%;flex-shrink:0;width:22px;height:29px;display:inline-block;position:relative;box-shadow:inset -2px -2px 3px #553a2625,0 3px 3px #392d2720}.pawn-token.onyx{background:radial-gradient(circle at 30% 25%,#62584e,#292523)}.player-details{flex:1;min-width:0}.player-details strong{font-family:var(--serif);flex-wrap:wrap;align-items:center;gap:8px;font-size:18px;font-weight:500;display:flex}.player-details strong span{font-family:var(--sans);letter-spacing:.6px;color:var(--muted);font-size:11px;font-weight:500}.player-row.current .player-details strong:after{content:"";background:var(--oak);border-radius:50%;width:5px;height:5px}.wall-count{text-align:center;min-width:52px;padding:4px 8px}.wall-count b{font-family:var(--serif);font-variant-numeric:lining-nums tabular-nums;color:var(--burgundy);font-size:26px;font-weight:500;line-height:1;display:block}.wall-count span{color:var(--muted);font-size:12px}.action-tabs{border:1px solid var(--line);background:#f2f1f1;border-radius:11px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:12px;padding:4px;display:grid}.action-tabs button{white-space:nowrap;color:var(--muted);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:11px 6px;font-size:15px;font-weight:500;display:flex}.action-tabs button.selected,.primary-button,.wall-draft .confirm-wall{background:linear-gradient(180deg, var(--wine-light), var(--burgundy));color:var(--ivory);box-shadow:inset 0 1px #ffffff18,0 2px 3px #48251d0f}.action-tabs button.selected{border-color:var(--burgundy);box-shadow:inset 0 1px #ffffff1f,0 2px 6px #48251d24}.action-tabs.idle button.selected{color:var(--burgundy);border-color:var(--field-line);box-shadow:none;background:#fff}kbd{font-family:var(--sans);opacity:.6;border:1px solid;border-radius:4px;margin-left:2px;padding:1px 4px;font-size:10px;font-weight:500;line-height:1.1}.tiny-pawn{clip-path:polygon(20% 0,80% 0,100% 30%,65% 50%,65% 65%,100% 100%,0 100%,35% 65%,35% 50%,0 30%);background:currentColor;border-radius:50% 50% 25% 25%;width:8px;height:12px;display:inline-block}.tiny-wall{border:1px solid;width:12px;height:7px;display:block;transform:rotate(-10deg)}.feedback{color:var(--error);font-size:13px;line-height:1.5}.feedback:not(:empty){padding-bottom:9px}.match-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.match-actions button{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);justify-content:center;align-items:center;gap:7px;padding:10px;font-size:14px;display:flex}.match-actions button.resign{color:#94443a}.mode-select{justify-content:space-between;align-items:center;gap:12px;display:flex}.mode-select label{color:var(--muted);white-space:nowrap;font-size:14px}.mode-select>div{flex:1;align-items:center;max-width:190px;display:flex;position:relative}.mode-select select{appearance:none;border:1px solid var(--field-line);border-radius:var(--radius);background:var(--field);width:100%;color:var(--ink);cursor:pointer;padding:9px 34px 9px 12px;font-size:15px}.mode-select svg{pointer-events:none;color:var(--muted);position:absolute;right:11px}.secondary-button{border:1px solid var(--field-line);border-radius:var(--radius);background:var(--field);width:100%;color:var(--burgundy);justify-content:center;align-items:center;gap:9px;padding:11px 14px;font-size:15px;font-weight:500;display:flex}.session-panel{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:24px;padding-top:20px;display:flex}.session-links{justify-content:space-between;align-items:center;display:flex}.leave-button{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin:0 auto;padding:12px 0 0;font-size:14px;display:flex}.session-links .leave-button{margin:0;padding:4px 0}.online-heading{color:var(--muted);align-items:center;gap:8px;font-size:14px;display:flex}.connection-note{color:var(--muted);font-size:13px;line-height:1.6}.connection-note:empty{display:none}dialog{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:5px;width:min(480px,100% - 32px);max-height:90dvh;padding:0;box-shadow:0 24px 100px #48251d25}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#35201f66}.dialog-content{padding:37px;position:relative}.dialog-close{color:var(--muted);padding:5px;position:absolute;top:14px;right:12px}.dialog-content h2{color:var(--burgundy);margin:16px 0;font-size:39px}.dialog-content>p:not(.source-link){color:var(--muted);margin:10px 0 22px;font-size:16px;line-height:1.65}.rules-list{counter-reset:rules;padding:0;list-style:none}.rules-list li{color:var(--muted);margin:18px 0;padding-left:30px;font-size:15px;line-height:1.65;position:relative}.rules-list li:before{counter-increment:rules;content:"0" counter(rules);color:var(--oak);font-size:12px;position:absolute;left:0}.source-link{color:var(--muted);margin:24px 0;font-size:13px;line-height:1.8}.source-link a{text-underline-offset:3px;text-decoration:underline}.primary-button{border-radius:var(--radius);justify-content:center;align-items:center;gap:12px;width:100%;margin:10px 0;padding:13px 15px;font-size:16px;font-weight:500;display:flex}.primary-button:disabled,.action-tabs button.selected:disabled{color:#9b9596;box-shadow:none;opacity:1;background:#efeeee}.join-divider{letter-spacing:1px;color:var(--muted);align-items:center;gap:15px;margin:27px 0;font-size:11px;display:flex}.join-divider:before,.join-divider:after{content:"";background:var(--line);flex:1;height:1px}.input-label{color:var(--ink);font-size:14px;font-weight:500;display:block}.join-input{gap:9px;display:flex}.join-input input{text-transform:uppercase;letter-spacing:4px;font-variant-numeric:tabular-nums;flex:1;min-width:0}.join-input input:placeholder-shown{letter-spacing:1px}.join-input .primary-button{flex-shrink:0;width:auto}.input-label input,.join-input input{border:1px solid var(--field-line);border-radius:var(--radius);background:var(--field);width:100%;color:var(--ink);margin:8px 0;padding:12px 14px;font-size:16px;transition:border-color .15s,box-shadow .15s;display:block}input::placeholder{color:#a39c9d}.account-page{min-height:100dvh;padding:40px max(24px,7vw)}.account-page>.text-button{color:var(--muted);font-size:15px}.account-card{max-width:410px;margin:70px auto}.account-card h1{color:var(--burgundy);margin-bottom:28px}.account-card>p{color:var(--muted);margin:18px 0 30px;font-size:16px;line-height:1.7}.account-card .input-label{margin:17px 0}.account-error{color:var(--error);font-size:14px}.guest-link{text-align:center;color:var(--muted);margin-top:30px;font-size:15px;display:block}.flat-wrap{justify-content:center;align-items:center;height:100%;padding:80px 65px 60px;display:flex}.flat-board{aspect-ratio:1;background:#4c2529;border:16px solid #5d3033;border-radius:9px;grid-template-columns:repeat(9,1fr);gap:4px;width:min(100%,400px);max-height:100%;padding:0;display:grid;position:relative;box-shadow:6px 18px 30px #302a3430}.flat-cell{aspect-ratio:1;background:linear-gradient(145deg,#663a3a,#542a2e);border-radius:1px;justify-content:center;align-items:center;min-width:0;padding:0;display:flex;box-shadow:0 2px 3px #200c1340}.flat-cell:disabled{opacity:1}.flat-cell.legal{background:#80564e}.flat-cell .pawn-token{width:44%;height:66%}.legal-dot{background:#e3c28b;border-radius:50%;width:5px;height:5px}.flat-cell .pawn-token.ghost{opacity:.5;display:none}.flat-cell.last-from{background:linear-gradient(145deg,#74463f,#633736)}.flat-cell.last-to{box-shadow:0 2px 3px #200c1340,inset 0 0 0 2px #d9a04f99}.flat-wall.last{background:#e2ac5c;box-shadow:1px 2px 2px #2b151f66,0 0 6px #f0b86099}.flat-board:before,.flat-board:after{content:"";pointer-events:none;border-radius:2px;height:4px;position:absolute;left:0;right:0}.flat-board:before{background:#ecdcbc;top:-10px}.flat-board:after{background:#2e2925;bottom:-10px}.flat-board[data-perspective="1"]:before{background:#2e2925}.flat-board[data-perspective="1"]:after{background:#ecdcbc}.flat-wall{z-index:2;pointer-events:none;background:#c28c43;border-radius:1px;position:absolute;transform:translate(-50%,-50%);box-shadow:1px 2px 2px #2b151f66}.flat-wall.h{width:calc(21.5556% + .8622px);height:5px}.flat-wall.v{width:5px;height:calc(21.5556% + .8622px)}.flat-wall.preview{opacity:.72;z-index:5;background:#efc481}.flat-wall.preview.invalid{background:#d44738}.flat-wall-surface{z-index:4;cursor:crosshair;touch-action:manipulation;position:absolute;inset:0}.wall-keyboard-target{clip-path:inset(50%);white-space:nowrap;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.wall-draft{width:max-content;max-width:95%;color:var(--muted);z-index:5;justify-content:center;align-items:center;gap:14px;font-size:14px;line-height:1.5;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.wall-draft.invalid{color:var(--error)}.wall-draft button{white-space:nowrap;border-radius:3px;min-height:40px;padding:9px 11px;font-size:14px}@media (hover:hover) and (pointer:fine){.text-button:hover,.leave-button:hover,.account-link:hover,.view-switch:hover{color:var(--burgundy)}.secondary-button:hover{background:#f7f6f6;border-color:#b9b4b5}.match-actions button:not(:disabled):hover{background:#f7f6f6;border-color:#cfcbcc}.action-tabs button:not(.selected):not(:disabled):hover{color:var(--burgundy);background:#ffffffb3}.primary-button:not(:disabled):hover,.wall-draft .confirm-wall:hover{background:var(--wine-light)}.flat-cell.legal:hover{background:#9a7462}.flat-cell.legal:hover .legal-dot{display:none}.flat-cell.legal:hover .pawn-token.ghost{display:inline-block}}@media (pointer:coarse){input,select,.mode-select select{font-size:16px}}@media (width>=1450px){.board-stage{height:clamp(620px,100vh - 230px,800px)}.game-layout{grid-template-columns:minmax(0,1fr) 330px;gap:32px}}@media (width<=1050px){.app-shell{padding:0 4%}.site-header{height:85px}.game-layout{grid-template-columns:minmax(0,1fr) 280px;gap:18px}.board-stage{height:520px}.action-tabs button{font-size:13px}}@media (width<=760px){.app-shell{padding:0 20px}.site-header{height:77px}.wordmark{font-size:25px}.brand-mark{width:21px;height:21px}.header-actions{gap:15px}.account-link{gap:5px;padding-left:15px;font-size:13px}.text-button span{display:none}.header-actions .text-button{padding:7px}.game-layout{grid-template-columns:1fr;gap:0;margin-top:10px}.board-stage{height:clamp(280px,78vw,440px)}.goal-label.top{top:58px}.goal-label.bottom{bottom:22px}.table-toolbar{top:16px}.table-label{letter-spacing:1px;font-size:9px}.view-switch{font-size:12px}.game-sidebar{padding:10px 0 28px}.game-sidebar>h2{font-size:32px}.players{grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 14px;display:grid}.player-row{gap:8px;padding:10px 8px 10px 10px}.player-details strong{gap:5px;font-size:17px}.player-details strong span{font-size:10px}.wall-count{min-width:40px;padding:2px 4px}.wall-count b{font-size:23px}.action-tabs button{padding:12px 6px;font-size:16px}.match-actions button,.mode-select label{font-size:14px}.leave-button{font-size:15px}.flat-wrap{padding:75px 30px 53px}.dialog-content{padding:30px 25px}.account-card{margin-top:50px}.account-card h1{font-size:46px}.wall-draft{gap:8px;font-size:12px;bottom:7px}.wall-draft button{padding:8px;font-size:13px}}@media (width<=380px){.app-shell{padding:0 14px}.board-stage{height:clamp(260px,78vw,385px)}.table-label{font-size:8px}.player-details strong{font-size:16px}.player-details strong span{font-size:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.entry-shell{min-height:100dvh}.welcome-screen{max-width:390px;margin:clamp(35px,10vh,100px) auto 60px}.welcome-pawn{width:28px;height:39px;margin-bottom:24px}.welcome-screen h1{color:var(--burgundy);margin-bottom:30px}.welcome-form>input{border:1px solid var(--field-line);background:var(--field);width:100%;color:var(--ink);font-family:var(--serif);border-radius:10px;margin:8px 0 18px;padding:13px 16px;font-size:24px;line-height:1.35;transition:border-color .15s,box-shadow .15s}.welcome-form>input::placeholder{color:#a39c9d}.welcome-form>.input-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.welcome-form .primary-button{justify-content:space-between;padding:14px 18px}.welcome-account-links{color:var(--muted);justify-content:center;align-items:center;gap:13px;margin-top:29px;font-size:15px;display:flex}.welcome-account-links>span{color:var(--line)}.entry-error{color:var(--error);font-size:14px;line-height:1.6}.entry-error:not(:empty){margin:12px 0}.invitation-note{color:var(--muted);text-align:center;margin-top:23px;font-size:14px}.entry-loading{font-family:var(--serif);color:var(--muted);font-size:25px}.mode-screen{max-width:510px;margin:clamp(50px,10vh,105px) auto 60px}.mode-screen h1{color:var(--burgundy);margin-bottom:34px;font-size:48px}.mode-list{flex-direction:column;display:flex}.mode-choice{text-align:left;width:100%;color:var(--burgundy);border-bottom:1px solid var(--line);align-items:center;gap:22px;padding:25px 0;display:flex}.mode-choice:last-child{border-bottom:0}.mode-choice>svg:first-child{color:var(--oak)}.mode-choice>svg:last-child{color:var(--muted);margin-left:auto}.mode-choice-name{font-family:var(--serif);font-size:29px;font-weight:500;line-height:1.25}.mode-choice-copy{flex-direction:column;gap:8px;display:flex}.matchmaking-count,.queue-count{color:var(--muted);align-items:center;gap:7px;font-size:15px;display:flex}.lobby-player-name{white-space:nowrap;text-overflow:ellipsis;max-width:160px;overflow:hidden}.mode-back{color:var(--muted);margin-bottom:20px}.friend-options{max-width:390px}.pass-play-button{color:var(--muted);margin-top:24px;font-size:15px}.cancel-search{color:var(--burgundy);margin-top:30px;font-size:16px}.player-details .player-name{font-family:var(--serif);font-size:inherit;color:var(--ink);letter-spacing:normal;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:500;overflow:hidden}.back-to-modes{margin-bottom:10px}@media (hover:hover) and (pointer:fine){.mode-choice:hover .mode-choice-name,.welcome-account-links a:hover{color:var(--oak)}.mode-choice:hover>svg:last-child{color:var(--burgundy)}}@media (width<=760px){.welcome-screen{max-width:360px;margin-top:42px}.welcome-screen h1{font-size:48px}.welcome-form>input{font-size:26px}.mode-screen{margin-top:48px}.mode-screen h1{margin-bottom:22px;font-size:41px}.mode-choice{gap:19px;padding:23px 0}.mode-choice-name{font-size:27px}.lobby-player-name{max-width:100px}}.mode-screen-cards{max-width:1000px;margin-top:clamp(45px,8vh,85px)}.mode-screen-cards>h1{text-align:center;margin-bottom:40px}.mode-screen-cards .mode-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.mode-choice.mode-card{border:1px solid var(--line);background:#fff;border-radius:12px;flex-direction:column;align-items:stretch;gap:0;min-width:0;min-height:306px;padding:22px 25px 27px;transition:transform .16s cubic-bezier(.23,1,.32,1),border-color .16s,box-shadow .16s;display:flex;position:relative;box-shadow:0 8px 24px #2a1f2008,0 2px 3px #2a1f2009}.mode-card .mode-choice-name{font-size:28px}.mode-card-content{flex-direction:column;gap:9px;min-height:66px;padding-right:12px;display:flex}.mode-card .matchmaking-count{font-size:13px}.mode-card-arrow{width:29px;height:29px;color:var(--burgundy);border:1px solid var(--field-line);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:27px;right:22px}.mode-card:last-child .mode-card-content{padding-right:0}.mode-card .mode-card-content{padding-bottom:4px}.mode-art{pointer-events:none;height:178px;margin-bottom:12px;display:block;position:relative}.mode-art>svg{width:100%;height:100%;display:block;overflow:visible}@media (hover:hover) and (pointer:fine){.mode-choice.mode-card:hover{border-color:#b9b4b5;transform:translateY(-3px);box-shadow:0 13px 26px #2a1f2011,0 3px 5px #2a1f2009}.mode-choice.mode-card:hover .mode-choice-name{color:var(--burgundy)}.mode-card:hover .mode-card-arrow{background:var(--burgundy);border-color:var(--burgundy);color:var(--ivory)}}.mode-choice.mode-card:active:not(:disabled){transform:translateY(0)scale(.99)}.waiting-back{color:var(--muted);font-size:14px}.friend-waiting{text-align:center;max-width:620px;margin:35px auto 60px}.friend-waiting>h1{color:var(--burgundy);margin:28px 0 12px;font-size:44px}.waiting-instruction{color:var(--muted);font-size:17px}.waiting-seats{justify-content:center;align-items:flex-end;gap:30px;height:114px;display:flex}.waiting-seat{border-radius:50%;width:78px;height:27px;position:relative}.waiting-seat.occupied{background:linear-gradient(150deg,#d0a76e,#a57342);border:2px solid #b7864e;box-shadow:0 5px #875630,0 13px 12px #4c302d16}.waiting-seat .pawn-token{width:43px;height:65px;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.waiting-seat.empty{background:#c5a47a12;border:1px dashed #bd9d77}.waiting-seat.empty .pawn-token{opacity:.18}.waiting-connection{align-items:center;gap:8px;padding-bottom:10px;display:flex}.waiting-connection i{background:#bb996e;border-radius:50%;width:4px;height:4px}.waiting-connection i:nth-child(2){opacity:.6}.waiting-connection i:nth-child(3){opacity:.3}.waiting-room-code{margin:31px auto 25px}.waiting-room-code>span{letter-spacing:2px;color:var(--muted);margin-bottom:7px;font-size:10px;display:block}.waiting-room-code output{font-family:var(--serif);color:var(--burgundy);letter-spacing:7px;font-variant-numeric:lining-nums tabular-nums;padding-left:7px;font-size:38px;font-weight:500;display:block}.waiting-invite{max-width:240px;margin:0 auto}.waiting-status{color:var(--muted);justify-content:center;align-items:center;gap:8px;margin:20px 0 28px;font-size:14px;display:flex}.waiting-player-name{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.waiting-cancel{color:var(--muted);font-size:14px}@media (width<=900px) and (width>=761px){.mode-screen-cards .mode-list{gap:15px}.mode-choice.mode-card{padding:18px}.mode-card .mode-choice-name{font-size:25px}.mode-art{margin:0 -15px 8px;transform:scale(.88)}}@media (width<=760px){.mode-screen-cards{max-width:410px;margin-top:24px}.mode-screen-cards>h1{text-align:left;margin-bottom:24px;font-size:38px}.mode-screen-cards .mode-list{grid-template-columns:1fr;gap:14px}.mode-choice.mode-card{border-radius:9px;grid-template-columns:110px minmax(0,1fr);align-items:center;column-gap:17px;min-height:145px;padding:14px 17px 14px 9px;display:grid}.mode-card .mode-choice-name{font-size:26px}.mode-card-content{gap:8px;min-height:0;padding:0 0 12px}.mode-card .mode-card-content{padding-bottom:12px}.mode-card-arrow{width:24px;height:24px;bottom:17px;right:17px}.mode-card-arrow svg{width:14px;height:14px}.mode-art{width:130px;height:145px;margin:-14px -10px;transform:none}.friend-waiting{margin-top:28px}.friend-waiting>h1{margin-top:27px;font-size:35px}.waiting-instruction{font-size:16px}.waiting-seats{gap:21px;height:100px}.waiting-seat{width:68px}.waiting-seat .pawn-token{width:38px;height:57px}.waiting-room-code{margin-top:27px}.waiting-room-code output{font-size:34px}}.rating-value{font-family:var(--sans);font-variant-numeric:tabular-nums;letter-spacing:-.15px;white-space:nowrap;font-size:13px;font-weight:500}.rating-value sup{color:var(--muted);margin-left:2px;font-size:10px;top:-.25em}.header-actions>.rating-value{color:var(--burgundy)}.player-rating{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:5px;margin-top:5px;font-size:12px;display:flex}.player-rating>.rating-value{color:var(--ink)}.rating-before{color:var(--muted)}.rating-delta{margin-left:4px;font-size:12px}.rating-delta.positive{color:#526347}.rating-delta.negative{color:var(--burgundy)}.mode-rank-label{letter-spacing:1.2px;text-transform:uppercase;color:var(--burgundy);font-size:10px}.mode-card-content:has(.mode-rank-label){gap:6px}.lobby-footer{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px 30px;margin-top:32px;display:flex}.lobby-footer>a{color:var(--muted);align-items:center;gap:7px;font-size:14px;display:inline-flex}.leaderboard-trigger{color:var(--burgundy);font-size:14px}.search-kind{color:var(--burgundy);margin:-15px 0 20px;font-size:13px}.leaderboard-content{width:min(540px,100%)}.ranking-eyebrow{letter-spacing:1.5px;color:var(--muted);font-size:10px}.leaderboard-table{border-collapse:collapse;table-layout:fixed;width:100%;margin:24px 0}.leaderboard-table th,.leaderboard-table td{text-align:left;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;padding:13px 5px;font-size:13px;font-weight:400}.leaderboard-table thead th{color:var(--muted);text-transform:uppercase;letter-spacing:.7px;font-size:10px}.leaderboard-table th:first-child{width:14%}.leaderboard-table th:nth-child(2){width:46%}.leaderboard-table th:nth-child(3),.leaderboard-table th:nth-child(4){text-align:right;width:20%}.leaderboard-table tbody th{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);overflow:hidden}.leaderboard-table td:first-child{color:var(--muted)}.leaderboard-table td:nth-child(3),.leaderboard-table td:nth-child(4){text-align:right}.leaderboard-empty{color:var(--oak);padding:30px 0 24px}.leaderboard-empty h3{font-family:var(--serif);color:var(--ink);margin:15px 0 8px;font-size:26px;font-weight:400}.leaderboard-empty p{color:var(--muted);font-size:14px;line-height:1.6}.dialog-content>p.ranking-note{margin:18px 0 0;font-size:12px;line-height:1.7}.reconnect-notice span{font-size:11px;display:block}@media (width<=600px){.lobby-footer{justify-content:flex-start;gap:20px;margin-top:24px}.header-actions{gap:12px}.leaderboard-content{padding:30px 22px}}.guest-verification{text-align:left;width:100%;min-height:65px;margin:18px 0 0}.guest-verification>div:first-child{width:100%}.verification-loading{color:var(--muted);margin-top:7px;font-size:12px}.verification-error{color:var(--error);margin-top:9px;font-size:13px;line-height:1.5}.verification-error .text-button{color:var(--burgundy);margin-top:6px;font-size:13px}.flat-cell.own-pawn{cursor:pointer}.flat-cell.own-pawn.selected{box-shadow:inset 0 0 0 2px #f1c985,0 0 12px #f1c98580}.wall-count-button{border-radius:4px;padding-top:4px;padding-bottom:4px;transition:background .15s,box-shadow .15s}.wall-count-button:not(:disabled){cursor:pointer}.wall-count-button:not(:disabled):hover{background:#f2f1f1}.wall-count-button.selected{box-shadow:inset 0 0 0 1px var(--burgundy);background:#f2f1f1}.game-result-layer{z-index:8;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.game-result-card{pointer-events:auto;text-align:center;border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffe;border-radius:6px;width:min(340px,100% - 32px);padding:30px 28px 26px;animation:.45s cubic-bezier(.2,.9,.3,1.25) both result-in;position:relative;box-shadow:0 24px 80px #48251d33}.game-result-card h2{color:var(--burgundy);margin:6px 0 8px;font-size:38px;line-height:1.05}.game-result-card p{color:var(--muted);margin:0 0 20px;font-size:15px;line-height:1.45}.game-result-card .primary-button{justify-content:center;width:100%}.game-result-card .dialog-close{position:absolute;top:10px;right:10px}.game-result-mark{width:46px;height:46px;color:var(--ivory);background:linear-gradient(180deg, #c58e4c, var(--oak));border-radius:50%;place-items:center;font-size:22px;display:inline-grid;box-shadow:0 6px 18px #a8733c55}.tone-win .game-result-mark{animation:1.4s ease-in-out .3s 2 result-pop}.tone-loss .game-result-mark{background:linear-gradient(180deg, var(--wine-light), var(--burgundy));box-shadow:0 6px 18px #592f3244}.tone-neutral .game-result-mark{box-shadow:none;background:linear-gradient(#a6927f,#80695a)}.confetti{pointer-events:none;position:absolute;inset:0}.confetti span{opacity:0;animation-name:confetti-fall;animation-timing-function:cubic-bezier(.25,.6,.45,1);animation-fill-mode:forwards;position:absolute;top:-24px}@keyframes confetti-fall{0%{opacity:1;transform:translate(0,0)rotate(0)}85%{opacity:1}to{opacity:0;transform:translate3d(var(--drift), 720px, 0) rotate(var(--spin))}}@keyframes result-in{0%{opacity:0;transform:translateY(14px)scale(.94)}to{opacity:1;transform:none}}@keyframes result-pop{0%,to{transform:scale(1)}50%{transform:scale(1.14)rotate(-8deg)}}@media (prefers-reduced-motion:reduce){.confetti{display:none}.game-result-card,.tone-win .game-result-mark{animation:none}}@media (width<=500px){.game-result-card h2{font-size:31px}.game-result-card{padding:24px 20px 20px}}@media (width>=1051px){.flat-board{width:min(100%,100vh - 380px,560px);min-width:400px}}
