.game-layout{grid-template-columns:minmax(0,1fr) 330px;min-height:700px}
.bastra-variant-choice{display:flex;align-items:center;justify-content:space-between;gap:2rem;width:min(1440px,calc(100% - 96px));margin:0 auto 28px;padding:22px 28px;border:1px solid #d2c4ae;border-left:5px solid #d95847;background:#e8decd}
.bastra-choice-kicker{margin:0 0 .25rem;color:#ba4d3d;font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.bastra-variant-choice h2{margin:0;color:#17382f;font-family:var(--serif);font-size:clamp(1.45rem,2.5vw,2rem);font-weight:400}
.bastra-variant-choice p:last-child{margin:.35rem 0 0;color:#59645d;font-size:.78rem;line-height:1.45}
.bastra-choice-control{display:grid;gap:.35rem;min-width:245px}
.bastra-choice-control label{color:#40544b;font-size:.63rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.bastra-choice-control select{width:100%;min-height:45px;padding:.6rem .8rem;border:1px solid #8d9e91;border-radius:5px;background:#fffaf0;color:#17382f;font:700 .85rem var(--sans);cursor:pointer}
.bastra-choice-control select:focus-visible{outline:3px solid #d95847;outline-offset:2px}
.bastra-choice-control small{color:#657068;font-size:.63rem}
.rules-grid [hidden],.round-data [hidden]{display:none!important}
.bastra-variant-rules{grid-column:1/-1;display:grid;grid-template-columns:minmax(190px,.75fr) minmax(0,2fr);gap:2rem 5rem;padding:2rem 0;border-top:1px solid #c9c0b0}
.bastra-variant-rules[hidden],.bastra-variant-rules article[hidden]{display:none!important}
.bastra-variant-heading p{max-width:270px;margin:.75rem 0 0;color:#6d6e66;font-size:.84rem;line-height:1.6}
.bastra-variant-rules article{padding:1.5rem;background:#e8decd}
.bastra-variant-rules h3{margin:0 0 1rem;color:var(--green-900);font-family:var(--serif);font-size:1.65rem;font-weight:400}
.bastra-variant-rules ul{display:grid;gap:.65rem;margin:0;padding-left:1.2rem;color:#62675f;font-size:.78rem;line-height:1.65}
.bastra-variant-rules li::marker{color:var(--red)}
.bastra-variant-rules strong{color:var(--green-900)}
.bastra-table{display:grid;grid-template-rows:auto minmax(250px,1fr) auto;gap:1.3rem;min-width:0;min-height:700px;padding:28px clamp(18px,4vw,58px);background:radial-gradient(circle at 50% 43%,#346b5a,#1d4b3f 75%);color:#fffaf0}
.bastra-seat{display:flex;align-items:center;gap:.7rem}
.bastra-seat .avatar{flex:0 0 38px}
.bastra-seat>div:nth-child(2){display:grid;gap:.15rem}
.bastra-seat strong{font-size:.84rem}
.bastra-seat small{color:#bbd4c7;font-size:.62rem;letter-spacing:.06em;text-transform:uppercase}
.bot-backs{display:flex;align-items:center;margin-left:auto;padding-right:10px}
.bot-backs span{display:block;width:30px;height:44px;margin-right:-16px;border:3px solid #fff8ea;border-radius:4px;background:linear-gradient(145deg,#d7604b,#b84336);box-shadow:0 5px 8px #0004}
.bot-backs span:last-child{margin-right:0}
.board-zone{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:1.2rem;border:1px solid #ffffff27;border-radius:18px;background:#062a232b}
.board-heading{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem;color:#c8dece;font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.board-heading span:last-child{color:#a6c7b4;font-weight:500}
.board-cards{display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:.55rem;min-height:94px;max-height:370px;overflow-y:auto}
.empty-board{padding:2rem;color:#b0cfbe;font-family:var(--serif);font-size:1.4rem}
.table-message{min-height:1.5rem;margin:.9rem 0 0;color:#f4cd78;font-size:.75rem;text-align:center}
.player-zone{display:grid;gap:.75rem}
.hand-cards{display:flex;justify-content:center;flex-wrap:wrap;gap:.55rem;min-height:90px}
.bastra-card{position:relative;flex:0 0 auto;width:62px;height:88px;padding:0;border:0;border-radius:7px;background:#fffaf0;color:#1d2723;box-shadow:0 6px 14px #0004;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease}
.bastra-card.red{color:#d95847}
.bastra-card:hover:not(:disabled){transform:translateY(-5px)}
.bastra-card.is-selected{transform:translateY(-8px);box-shadow:0 0 0 3px #efbe56,0 9px 18px #0005}
.bastra-card:focus-visible{outline:3px solid #efbe56;outline-offset:3px}
.bastra-card:disabled{cursor:default;opacity:.85}
.bastra-card .card-corner{position:absolute;top:6px;left:7px;display:grid;gap:2px;font-family:var(--serif);font-size:1.08rem;line-height:1}
.bastra-card .card-corner small{font-size:.72rem}
.bastra-card .card-symbol{position:absolute;inset:0;display:grid;place-items:center;font-size:1.9rem}
.board-actions{display:flex;justify-content:center;gap:.6rem}
.board-actions button{min-height:42px;padding:.65rem 1rem;border:1px solid #e6cda4;border-radius:5px;background:#f1e8d8;color:#17382f;font-size:.75rem;font-weight:700;cursor:pointer}
.board-actions .capture-button{border-color:#d95847;background:#d95847;color:#fff}
.board-actions button:hover:not(:disabled){filter:brightness(1.08)}
.board-actions button:disabled{opacity:.44;cursor:default}
.board-actions button:focus-visible{outline:2px solid #efbe56;outline-offset:2px}
.game-panel{min-height:700px}
.trick-counts>div{grid-template-columns:1fr}
.move-history{padding-top:.2rem;border-top:1px solid #ffffff24}
.move-history h3{margin:0 0 .8rem;color:#a9c3b6;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}
.move-history ol{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.move-history li{padding-bottom:.5rem;border-bottom:1px solid #ffffff17;color:#d8e8dc;font-size:.68rem;line-height:1.45}
.game-panel .fair-play{margin-top:auto}
@media(max-width:1100px){.game-layout{grid-template-columns:1fr}.game-panel{display:grid;grid-template-columns:1fr 1fr;min-height:0}.game-panel .fair-play{margin:0}}
@media(max-width:760px){.bastra-table{min-height:580px;padding:20px 16px;gap:.9rem}.board-zone{min-height:220px;padding:1rem}.board-cards{max-height:300px}.game-panel{display:block;min-height:0}.game-panel>*+*{margin-top:1rem}.board-heading{flex-direction:column;gap:.25rem}.table-message{font-size:.72rem}.bastra-card{width:52px;height:75px}.bastra-card .card-corner{font-size:.92rem}.bastra-card .card-symbol{font-size:1.55rem}}
@media(max-width:760px){.bastra-variant-choice{width:calc(100% - 36px);align-items:stretch;flex-direction:column;gap:1rem;margin-bottom:20px;padding:18px}.bastra-choice-control{min-width:0}.game-topbar{flex-wrap:wrap}}
@media(max-width:760px){.bastra-variant-rules{grid-template-columns:1fr;gap:1rem}.bastra-variant-heading p{max-width:none}.bastra-variant-rules article{padding:1.25rem}}
@media(max-width:420px){.bastra-table{padding:16px 10px}.board-zone{padding:.7rem}.board-cards,.hand-cards{gap:.4rem}.bastra-card{width:48px;height:70px}.board-actions{display:grid;grid-template-columns:1fr 1fr}.board-actions button{padding:.55rem .35rem;font-size:.68rem}.bot-backs span{width:25px;height:38px;margin-right:-14px}}
