:root{color:#29261f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#29261f;--muted:#756f62;--paper:#fffdf7;--cream:#f4f0e7;--line:#d9d1c1;--terracotta:#c85f3d;--terracotta-dark:#98412a;--indigo:#4e567d;--indigo-dark:#343a5a;--green:#55735a;background:#f4f0e7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--cream);min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #2274a5}#root{min-height:100svh}.landing-shell,.game-shell{min-height:100svh;position:relative;overflow:hidden}.landing-shell:before,.game-shell:before{z-index:-1;opacity:.32;content:"";pointer-events:none;background-image:radial-gradient(#c7bead .7px,#0000 .7px);background-size:16px 16px;position:fixed;inset:0}.landing-header,.games-section,.site-footer,.game-header,.play-area{width:min(100% - 36px,1040px);margin-inline:auto}.landing-header{padding:30px 0 70px}.top-bar,.social-header{justify-content:space-between;align-items:center;gap:24px;display:flex}.app-nav{border:1px solid var(--line);background:#fffdf7b8;border-radius:999px;align-items:center;gap:4px;padding:4px;display:flex}.app-nav button{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:7px 13px;font-size:.76rem;font-weight:700}.app-nav button.active{color:var(--paper);background:var(--ink)}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:11px;font-size:.92rem;font-weight:700;display:inline-flex}.brand-mark{border:1.5px solid var(--ink);border-radius:9px;grid-template-columns:repeat(2,1fr);gap:3px;width:29px;height:29px;padding:5px;display:grid;transform:rotate(-3deg)}.brand-mark span{background:var(--terracotta);border-radius:50%}.brand-mark span:nth-child(2),.brand-mark span:nth-child(3){background:var(--indigo)}.hero-copy{max-width:730px;padding-top:105px}.eyebrow,.card-label{color:var(--terracotta-dark);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.69rem;font-weight:700}.hero-copy h1{letter-spacing:-.065em;max-width:700px;margin:12px 0 19px;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.2rem,8vw,6.4rem);font-weight:700;line-height:.93}.intro{max-width:580px;color:var(--muted);margin:0;font-size:clamp(1rem,2vw,1.18rem);line-height:1.65}.games-section{padding-bottom:92px}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;margin-bottom:24px;padding-bottom:18px;display:flex}.section-heading h2{letter-spacing:-.035em;margin:5px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,4vw,2.35rem)}.game-count{color:var(--muted);font-size:.82rem}.game-card{background:var(--paper);border:1px solid #d7cfbf;border-radius:26px;grid-template-columns:minmax(260px,.84fr) minmax(320px,1.16fr);display:grid;overflow:hidden;box-shadow:0 22px 60px #39302314}.card-board{background-color:#dbe0d7;background-image:linear-gradient(#202b370a 1px,#0000 1px),linear-gradient(90deg,#202b370a 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:340px;position:relative;overflow:hidden}.card-board:after{content:"";border:44px solid #fffdf77a;border-radius:50%;width:185px;height:185px;position:absolute;bottom:-60px;right:-47px}.preview-line{background:#606c64;border-radius:3px;width:190px;height:3px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.preview-line-vertical{transform:translate(-50%,-50%)rotate(90deg)}.preview-line-diagonal{width:255px;transform:translate(-50%,-50%)rotate(45deg)}.preview-piece{z-index:1;background:var(--terracotta);width:53px;height:53px;box-shadow:0 7px 0 var(--terracotta-dark), 0 12px 18px #3c2a1e2e;border:4px solid #ffffff9e;border-radius:50%;position:absolute}.preview-piece-one{top:calc(50% - 26px);left:calc(50% - 26px)}.preview-piece-two{background:var(--indigo);box-shadow:0 7px 0 var(--indigo-dark), 0 12px 18px #3c2a1e2e;top:calc(50% - 116px);left:calc(50% - 116px)}.preview-piece-three{top:calc(50% + 64px);left:calc(50% + 64px)}.game-card-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(32px,6vw,64px);display:flex}.game-card-title{justify-content:space-between;align-items:flex-start;gap:16px;width:100%;display:flex}.game-card h3{letter-spacing:-.045em;margin:7px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.25rem,5vw,3.35rem);line-height:1}.game-card-copy>p{max-width:460px;color:var(--muted);margin:22px 0 30px;line-height:1.65}.available-pill,.phase-pill{color:#3f6146;letter-spacing:.02em;background:#edf3eb;border:1px solid #c7d1c5;border-radius:999px;flex:none;align-items:center;min-height:28px;padding:5px 10px;font-size:.68rem;font-weight:700;display:inline-flex}.primary-button,.secondary-button,.text-button{cursor:pointer;border-radius:13px;min-height:48px;font-weight:700;transition:transform .16s,box-shadow .16s,background .16s}.primary-button{border:1px solid var(--ink);color:#fffdf7;background:var(--ink);justify-content:center;align-items:center;gap:22px;padding:13px 20px;display:inline-flex;box-shadow:0 5px #0e0d0a}.primary-button:hover{transform:translateY(-2px);box-shadow:0 7px #0e0d0a}.primary-button:active{transform:translateY(3px);box-shadow:0 2px #0e0d0a}.secondary-button{border:1px solid var(--line);color:var(--ink);background:var(--paper);padding:12px 18px}.secondary-button:hover,.text-button:hover{background:#ece6d9}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding:25px 0 32px;font-size:.78rem;display:flex}.site-footer p{margin:0}.social-shell{min-height:100svh;padding-bottom:72px}.social-shell:before{z-index:-1;opacity:.32;content:"";background-image:radial-gradient(#c7bead .7px,#0000 .7px);background-size:16px 16px;position:fixed;inset:0}.social-header,.social-content{width:min(100% - 36px,1040px);margin-inline:auto}.social-header{border-bottom:1px solid var(--line);padding:26px 0}.social-content{padding-top:clamp(48px,8vw,92px)}.social-content h1,.group-detail h1{letter-spacing:-.055em;margin:8px 0 16px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,6vw,4.8rem);line-height:.98}.social-content h2{letter-spacing:-.035em;margin:0 0 18px;font-family:Georgia,Times New Roman,serif;font-size:1.65rem}.social-lede{max-width:590px;color:var(--muted);margin:0 0 28px;line-height:1.65}.social-card,.auth-card{background:var(--paper);border:1px solid #d7cfbf;border-radius:24px;width:min(100%,570px);padding:clamp(28px,5vw,48px);box-shadow:0 20px 55px #39302312}.auth-card,.account-card,.empty-state{margin-inline:auto}.compact-card{width:100%;padding:28px}.compact-card>p{color:var(--muted);line-height:1.55}.stack-form{gap:17px;display:grid}.stack-form label,.invite-result label{color:var(--muted);gap:7px;font-size:.76rem;font-weight:700;display:grid}.stack-form input,.invite-result input{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff;border-radius:11px;padding:11px 13px}.stack-form input:focus,.invite-result input:focus{border-color:var(--indigo);outline:3px solid #4e567d29}.stack-form .primary-button{margin-top:3px}.primary-button:disabled{cursor:wait;opacity:.62}.form-error{color:#9f392b;margin:0;font-size:.85rem;line-height:1.45}.form-success{color:#3f6146;margin:16px 0 0;font-size:.85rem;font-weight:700}.auth-switch{margin-top:18px}.social-grid,.join-layout{grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr);align-items:start;gap:clamp(28px,5vw,58px);display:grid}.group-list{gap:10px;margin-top:28px;display:grid}.group-row{border:1px solid var(--line);width:100%;color:var(--ink);background:var(--paper);text-align:left;cursor:pointer;border-radius:15px;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex}.group-row:hover{border-color:#b5aa96;transform:translateY(-1px)}.group-row span:first-child{gap:5px;display:grid}.group-row small,.member-list small,.invite-result small{color:var(--muted);text-transform:capitalize}.social-heading{margin:16px 0 30px}.social-heading h1{margin-bottom:0}.member-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.member-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:13px 0;display:flex}.member-list li:last-child{border:0}.member-actions{align-items:center;gap:8px;display:flex}.member-actions .text-button{min-height:32px;color:var(--indigo);background:#eef0f7;padding:5px 9px}.challenge-composer{border:1px solid var(--line);background:#f7f3ea;border-radius:14px;margin-top:18px;padding:18px}.challenge-composer>p{margin:0 0 13px}.game-choice,.inline-actions,.challenge-actions{flex-wrap:wrap;gap:8px;display:flex}.game-choice button{border:1px solid var(--line);min-height:37px;color:var(--ink);background:var(--paper);cursor:pointer;border-radius:10px;padding:7px 11px}.game-choice button.selected{border-color:var(--indigo);color:#fff;background:var(--indigo)}.challenge-composer .inline-actions{align-items:center;margin-top:15px}.invite-result{border-top:1px solid var(--line);gap:11px;margin-top:22px;padding-top:20px;display:grid}.invite-result .text-button{color:#9f392b}.local-games-card{border:1px solid var(--line);background:#fffdf7b3;border-radius:19px;justify-content:space-between;align-items:center;gap:28px;margin-top:30px;padding:26px 28px;display:flex}.matches-card{border:1px solid var(--line);background:var(--paper);border-radius:19px;margin-top:30px;padding:26px 28px}.compact-heading{margin-bottom:16px}.compact-heading h2{margin:4px 0 0}.match-list{gap:9px;display:grid}.match-row{border:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:#faf7f0;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;display:flex}.match-row>span:first-child{gap:4px;display:grid}.match-row small{color:var(--muted);text-transform:capitalize}.challenge-page>div:first-child{max-width:680px}.challenge-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:38px;display:grid}.challenge-columns h2{border-bottom:1px solid var(--line);padding-bottom:13px}.challenge-card{border:1px solid var(--line);background:var(--paper);border-radius:17px;gap:18px;margin-bottom:12px;padding:22px;display:grid;box-shadow:0 12px 35px #3930230d}.challenge-card h3{letter-spacing:-.025em;margin:6px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:1.35rem}.challenge-card p:not(.card-label){color:var(--muted);margin:0 0 5px}.challenge-card small,.empty-copy{color:var(--muted)}.challenge-actions{align-items:center}.challenge-actions .primary-button,.challenge-actions .secondary-button{min-height:40px;padding:9px 13px}.status-text{text-transform:capitalize;font-weight:700}.status-text.pending{color:#8a6222}.status-text.accepted{color:#3f6146}.status-text.declined,.status-text.cancelled,.status-text.expired{color:#8a564c}.match-detail-card{border:1px solid var(--line);background:var(--paper);text-align:center;border-radius:28px;width:min(100%,720px);margin-inline:auto;padding:clamp(32px,6vw,62px);box-shadow:0 24px 65px #39302314}.online-match-meta{color:var(--ink-soft);text-align:center;justify-content:center;align-items:center;gap:.55rem;margin:0 auto 1rem;font-size:.9rem;display:flex}.connection-dot{background:#c97661;border-radius:999px;flex:none;width:.62rem;height:.62rem;box-shadow:0 0 0 4px #c976611f}.connection-dot.connected{background:#5c8a68;box-shadow:0 0 0 4px #5c8a6824}.social-content>.game-shell{width:100%}.match-detail-card .social-lede{margin:28px auto}.match-detail-card .inline-actions{justify-content:center}.match-players{letter-spacing:-.035em;margin:22px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,4vw,2.4rem)}.match-players span{color:var(--terracotta);padding-inline:8px}.local-games-card h2{margin:5px 0 7px}.local-games-card p:last-child{color:var(--muted);margin:0}.local-game-actions{flex-wrap:wrap;gap:8px;display:flex}.join-preview{padding-top:38px}.join-preview h1{max-width:600px}.join-preview p:last-child,.loading-state{color:var(--muted)}.loading-state{text-align:center}.game-shell{padding-bottom:64px}.game-header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;padding:22px 0 25px;display:grid}.text-button{width:max-content;min-height:42px;color:var(--muted);background:0 0;border:0;padding:9px 12px;font-size:.78rem}.back-button{justify-self:start;align-items:center;gap:8px;display:inline-flex}.restart-top{justify-self:end}.game-title{align-items:center;gap:11px;display:flex}.game-title h1{letter-spacing:-.035em;margin:1px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;line-height:1}.game-title .eyebrow{font-size:.57rem}.mini-mark{border:7px double var(--terracotta);background:var(--paper);border-radius:50%;width:30px;height:30px}.play-area{max-width:720px;padding-top:26px}.status-card{border:1px solid var(--line);background:#fffdf7d1;border-radius:17px;justify-content:space-between;align-items:center;gap:18px;min-height:78px;padding:15px 18px;display:flex;box-shadow:0 10px 35px #3930230b}.status-card>div{align-items:center;gap:12px;display:flex}.turn-dot{border:2px solid var(--paper);width:14px;height:14px;box-shadow:0 0 0 1px var(--line);border-radius:50%;flex:none}.turn-dot.player1{background:var(--terracotta)}.turn-dot.player2{background:var(--indigo)}.status-title,.status-detail,.player-name,.player-color{margin:0;display:block}.status-title{letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:700}.status-detail{color:var(--muted);margin-top:2px;font-size:.76rem}.phase-pill{color:#755c2d;text-transform:uppercase;background:#f7efd9;border-color:#ddd2ba}.players{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:16px 0 18px;display:grid}.player-panel{opacity:.58;border:1px solid #0000;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:11px 13px;transition:background .18s,opacity .18s,border-color .18s;display:flex}.player-panel.is-current,.player-panel.is-winner{border-color:var(--line);opacity:1;background:#fffdf7cc}.player-identity{align-items:center;gap:9px;min-width:0;display:flex}.player-swatch{background:var(--terracotta);width:29px;height:29px;box-shadow:0 3px 0 var(--terracotta-dark);border:3px solid #f8e5dc;border-radius:50%;flex:none}.player2 .player-swatch{background:var(--indigo);box-shadow:0 3px 0 var(--indigo-dark);border-color:#e0e2ee}.player-name{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:700;overflow:hidden}.player-color{color:var(--muted);font-size:.62rem}.piece-counter{flex:none;gap:3px;display:flex}.piece-counter span{border:1px solid #bdb5a7;border-radius:50%;width:7px;height:7px}.player1 .piece-counter .is-filled{border-color:var(--terracotta);background:var(--terracotta)}.player2 .piece-counter .is-filled{border-color:var(--indigo);background:var(--indigo)}.versus{color:#9d9587;font-family:Georgia,Times New Roman,serif;font-size:.72rem;font-style:italic}.board-wrap{background-color:#e6ddca;background-image:linear-gradient(#4a3e2b09 1px,#0000 1px),linear-gradient(90deg,#4a3e2b09 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:22px 22px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #cfc6b6;border-radius:28px;width:min(100%,520px);margin-inline:auto;padding:clamp(18px,5vw,30px);box-shadow:0 18px 45px #39302317,inset 0 0 0 7px #fffdf759}.board{aspect-ratio:1;width:100%;position:relative}.board-lines{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.board-lines line{stroke:#6e6658;stroke-linecap:round;stroke-width:3px}.board-position{z-index:2;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:clamp(49px,13vw,66px);height:clamp(49px,13vw,66px);padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.board-position:disabled{cursor:default}.position-point{background:#e6ddca;border:3px solid #71695b;border-radius:50%;width:15px;height:15px;transition:width .15s,height .15s,background .15s}.board-position.empty:hover .position-point,.board-position.empty:focus-visible .position-point{background:#fffdf7;width:24px;height:24px}.board-position.valid-destination .position-point{background:#eff5eb;border:3px solid #55735a;width:27px;height:27px;box-shadow:0 0 0 6px #55735a26}.game-piece{color:#ffffffe0;background:var(--terracotta);width:calc(100% - 7px);height:calc(100% - 7px);box-shadow:0 6px 0 var(--terracotta-dark), 0 9px 15px #3e2b1f33;border:4px solid #f8e5dc;border-radius:50%;place-items:center;font-size:.68rem;font-weight:700;transition:transform .15s,box-shadow .15s;display:grid;position:relative}.player2 .game-piece,.board-position.player2 .game-piece{background:var(--indigo);box-shadow:0 6px 0 var(--indigo-dark), 0 9px 15px #2c304938;border-color:#e0e2ee}.board-position:not(:disabled):hover .game-piece{transform:translateY(-2px)}.board-position.selected .game-piece{box-shadow:0 8px 0 var(--terracotta-dark), 0 0 0 5px #fffdf7, 0 0 0 8px var(--green);transform:translateY(-5px)scale(1.07)}.board-position.player2.selected .game-piece{box-shadow:0 8px 0 var(--indigo-dark), 0 0 0 5px #fffdf7, 0 0 0 8px var(--green)}.game-notice{min-height:22px;color:var(--muted);text-align:center;margin:16px 0 0;font-size:.77rem}.rules-hint{color:var(--muted);justify-content:center;align-items:center;gap:8px;margin-top:11px;font-size:.72rem;display:flex}.rules-hint p{margin:0}.winner-actions{justify-content:center;gap:12px;margin-top:17px;display:flex}@media (width<=680px){.landing-header,.games-section,.site-footer,.game-header,.play-area{width:min(100% - 28px,1040px)}.landing-header{padding-top:22px;padding-bottom:52px}.hero-copy{padding-top:78px}.hero-copy h1{font-size:clamp(3rem,15vw,4.7rem)}.games-section{padding-bottom:55px}.game-card{grid-template-columns:1fr}.card-board{min-height:235px}.preview-line{width:150px}.preview-line-diagonal{width:200px}.preview-piece{width:46px;height:46px}.preview-piece-one{top:calc(50% - 23px);left:calc(50% - 23px)}.preview-piece-two{top:calc(50% - 94px);left:calc(50% - 94px)}.preview-piece-three{top:calc(50% + 48px);left:calc(50% + 48px)}.game-card-copy{padding:30px 25px 34px}.available-pill{display:none}.site-footer{flex-direction:column;align-items:flex-start;gap:5px}.game-shell{padding-bottom:32px}.game-header{grid-template-columns:1fr auto}.game-title{grid-area:2/1/auto/-1;justify-self:center;margin-top:8px}.restart-top{grid-area:1/2}.back-button{grid-area:1/1}.play-area{padding-top:18px}.status-card{min-height:72px;padding:13px 14px}.status-detail{max-width:230px}.players{gap:2px;margin-block:9px 11px}.player-panel{padding:9px 5px}.player-swatch{width:24px;height:24px}.piece-counter,.player-color{display:none}.board-wrap{border-radius:22px;padding:clamp(11px,3.2vw,19px)}}@media (width<=390px){.phase-pill{font-size:.58rem}.status-title{font-size:1.05rem}.status-detail{max-width:190px;font-size:.68rem}.board-position{width:48px;height:48px}.winner-actions{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.game-shelf{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.shelf-card{background:var(--paper);border:1px solid #d7cfbf;border-radius:23px;flex-direction:column;min-width:0;transition:transform .18s,box-shadow .18s;display:flex;overflow:hidden;box-shadow:0 18px 45px #39302311}.shelf-card:hover{transform:translateY(-4px);box-shadow:0 24px 58px #3930231a}.shelf-preview{min-height:218px;position:relative;overflow:hidden}.tapatan-shelf-preview{background-color:#dbe0d7;background-image:linear-gradient(#202b370a 1px,#0000 1px),linear-gradient(90deg,#202b370a 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:30px 30px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.tapatan-shelf-preview .preview-line{width:122px}.tapatan-shelf-preview .preview-line-diagonal{width:170px}.tapatan-shelf-preview .preview-piece{border-width:3px;width:40px;height:40px}.tapatan-shelf-preview .preview-piece-one{top:calc(50% - 20px);left:calc(50% - 20px)}.tapatan-shelf-preview .preview-piece-two{top:calc(50% - 79px);left:calc(50% - 79px)}.tapatan-shelf-preview .preview-piece-three{top:calc(50% + 39px);left:calc(50% + 39px)}.checker-shelf-preview{background-color:#e5dbc7;background-image:linear-gradient(45deg,#776e5e 25%,#0000 25%),linear-gradient(-45deg,#776e5e 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#776e5e 75%),linear-gradient(-45deg,#0000 75%,#776e5e 75%);background-position:0 0,0 25px,25px -25px,-25px 0;background-size:50px 50px}.checker-shelf-preview.perdegana{background-color:#e1d8c8;background-image:linear-gradient(45deg,#667265 25%,#0000 25%),linear-gradient(-45deg,#667265 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#667265 75%),linear-gradient(-45deg,#0000 75%,#667265 75%)}.checker-token{color:#fff;background:var(--terracotta);width:46px;height:46px;box-shadow:0 6px 0 var(--terracotta-dark), 0 10px 18px #28201640;border:4px solid #f8e5dc;border-radius:50%;place-items:center;font-size:.7rem;font-weight:800;display:grid;position:absolute}.checker-token.token-a{top:38px;left:calc(50% - 67px)}.checker-token.token-b{background:var(--indigo);box-shadow:0 6px 0 var(--indigo-dark), 0 10px 18px #28201640;border-color:#e0e2ee;bottom:40px;right:calc(50% - 70px)}.checker-token.token-c{border:7px double #f8e5dc;top:calc(50% - 23px);left:calc(50% - 23px)}.checker-shelf-preview.perdegana .token-c{background:var(--green);border-color:#e7efe5;box-shadow:0 6px #344f3a,0 10px 18px #28201640}.shelf-card-copy{flex-direction:column;flex:1;align-items:flex-start;padding:25px 24px 28px;display:flex}.shelf-card-copy h3{letter-spacing:-.045em;margin:7px 0 0;font-family:Georgia,Times New Roman,serif;font-size:2rem}.shelf-card-copy>p:not(.card-label){min-height:52px;color:var(--muted);margin:13px 0 24px;font-size:.88rem;line-height:1.48}.shelf-card-copy .primary-button{justify-content:space-between;width:100%;margin-top:auto}.dama-game-shell.perdegana:after{z-index:-1;content:"";border:80px solid #55735a12;border-radius:50%;width:430px;height:430px;position:fixed;top:-180px;right:-180px}.dama-mini-mark{border:3px double var(--terracotta);color:var(--terracotta);place-items:center;font-size:.55rem;display:grid}.perdegana .dama-mini-mark{border-color:var(--green);color:var(--green)}.dama-play-area{width:min(100% - 36px,860px);margin-inline:auto;padding-top:26px}.capture-pill{color:var(--terracotta-dark);background:#f9e6df;border-color:#e0b7a7}.dama-scoreboard{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:14px 0 16px;display:grid}.dama-player{opacity:.55;border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:flex}.dama-player.is-current,.dama-player.is-winner{border-color:var(--line);opacity:1;background:#fffdf7d1}.dama-player-token{color:#fff;background:var(--terracotta);width:31px;height:31px;box-shadow:0 3px 0 var(--terracotta-dark);border:3px solid #f8e5dc;border-radius:50%;flex:none;place-items:center;font-size:.65rem;font-weight:800;display:grid}.dama-player.player2{text-align:right;justify-content:flex-end}.dama-player.player2 .dama-player-token{background:var(--indigo);box-shadow:0 3px 0 var(--indigo-dark);border-color:#e0e2ee;order:2}.dama-player strong,.dama-player span{display:block}.dama-player strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.dama-player div>span{color:var(--muted);margin-top:1px;font-size:.64rem}.dama-board-frame{background:#cdc1aa;border:1px solid #bcb19e;border-radius:20px;width:min(100%,620px);margin-inline:auto;padding:clamp(8px,2vw,15px);box-shadow:0 20px 48px #342b1e24,inset 0 0 0 4px #fffdf759}.dama-board{aspect-ratio:1;border:1px solid #6c6253;border-radius:9px;grid-template-columns:repeat(8,1fr);width:100%;display:grid;overflow:hidden}.dama-square{border:0;border-radius:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative}.dama-square.light{background:#e9dfca}.dama-square.dark{cursor:pointer;background:#776e5e}.perdegana .dama-square.dark{background:#667265}.dama-square.dark:hover:not(:disabled){background:#6a6254}.perdegana .dama-square.dark:hover:not(:disabled){background:#596659}.dama-square:focus-visible{z-index:5;outline-offset:-4px;outline:4px solid #2b7bab}.dama-square:disabled{cursor:default}.dama-piece{color:#fff;background:var(--terracotta);width:72%;height:72%;box-shadow:0 clamp(3px, .8vw, 6px) 0 var(--terracotta-dark), 0 7px 12px #251c143d;border:clamp(2px,.7vw,4px) solid #f8e5dc;border-radius:50%;place-items:center;font-size:clamp(.5rem,1.5vw,.75rem);font-weight:800;transition:transform .15s,box-shadow .15s;display:grid;position:relative}.dama-piece.player2{background:var(--indigo);box-shadow:0 clamp(3px, .8vw, 6px) 0 var(--indigo-dark), 0 7px 12px #251c143d;border-color:#e0e2ee}.dama-piece.dama{border-style:double;border-width:clamp(4px,1vw,7px)}.dama-piece-symbol{line-height:1}.dama-crown{color:#ffe9a9;text-shadow:0 1px 1px #00000040;font-size:clamp(.45rem,1.6vw,.82rem);line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dama-piece.dama .dama-piece-symbol{opacity:.22}.dama-square.is-selectable .dama-piece{box-shadow:0 clamp(3px, .8vw, 6px) 0 var(--terracotta-dark), 0 0 0 3px #fffdf7bf}.dama-square.is-selectable .dama-piece.player2{box-shadow:0 clamp(3px, .8vw, 6px) 0 var(--indigo-dark), 0 0 0 3px #fffdf7bf}.dama-square.is-selectable:hover .dama-piece{transform:translateY(-3px)}.dama-square.is-selected{box-shadow:inset 0 0 0 5px #f4d779}.dama-square.is-selected .dama-piece{transform:translateY(-3px)scale(1.04)}.dama-square.is-destination{background:#536f57;box-shadow:inset 0 0 0 4px #ffffff8c}.destination-dot{background:#d9efcf;border:2px solid #fff;border-radius:50%;width:25%;height:25%;box-shadow:0 0 0 5px #d9efcf33}.rules-help{border:1px solid var(--line);width:min(100%,620px);color:var(--muted);background:#fffdf7ad;border-radius:14px;margin:18px auto 0;font-size:.77rem}.rules-help summary{color:var(--ink);cursor:pointer;padding:13px 15px;font-weight:700}.rules-help>div{border-top:1px solid var(--line);padding:0 17px 14px;line-height:1.5}.rules-help p{margin:13px 0 8px}.rules-help ul{margin:0;padding-left:18px}.rules-help li+li{margin-top:4px}@media (width<=800px){.challenge-columns,.social-grid,.join-layout{grid-template-columns:1fr}.join-preview{padding-top:0}.game-shelf{grid-template-columns:1fr}.shelf-card{grid-template-columns:minmax(180px,.75fr) minmax(260px,1.25fr);display:grid}.shelf-preview{min-height:250px}}@media (width<=560px){.local-games-card{flex-direction:column;align-items:stretch}.top-bar,.social-header{flex-direction:column;align-items:flex-start}.app-nav{width:100%}.app-nav button{flex:1;padding-inline:7px}.matches-card,.local-games-card{padding:21px}.challenge-card{padding:18px}.hero-copy{padding-top:70px}.game-shelf{gap:15px}.shelf-card{display:flex}.shelf-preview{min-height:190px}.shelf-card-copy{padding:23px 22px 27px}.shelf-card-copy>p:not(.card-label){min-height:0}.dama-play-area{width:min(100% - 20px,860px);padding-top:18px}.dama-scoreboard{gap:2px;margin-block:9px 11px}.dama-player{gap:6px;padding:8px 5px}.dama-player-token{border-width:2px;width:25px;height:25px}.dama-player div>span{font-size:.57rem}.dama-board-frame{border-radius:13px;padding:7px}.dama-board{border-radius:5px}.dama-square.is-selected{box-shadow:inset 0 0 0 3px #f4d779}.dama-square.is-destination{box-shadow:inset 0 0 0 3px #ffffff8c}}
