*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,sans-serif;background:radial-gradient(ellipse at top,#1f6b45,#0f4029 70%,#0a2e1d);color:#f4f1e8;min-height:100vh}.table{max-width:1180px;margin:0 auto;padding:1.25rem 1rem 2rem;display:flex;flex-direction:column;gap:1rem}.game-layout{display:flex;align-items:flex-start;gap:1rem}.main-column{flex:1;min-width:0;display:flex;flex-direction:column;gap:1rem}.side-panel{width:300px;flex-shrink:0;display:flex;flex-direction:column;gap:.75rem;position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow-y:auto}.scoreboard-mobile{display:none}@media(max-width:860px){.game-layout{flex-direction:column}.side-panel{width:100%;position:static;max-height:none;overflow-y:visible}.scoreboard-mobile{display:block}.scoreboard-desktop{display:none}}h1{margin:0;font-family:Georgia,Times New Roman,serif;font-weight:700;letter-spacing:.04em;text-shadow:0 2px 6px rgba(0,0,0,.4)}.table-header{display:flex;align-items:center;justify-content:center;position:relative;margin:.25rem 0 .5rem}.table-header-buttons{position:absolute;right:0;display:flex;gap:.5rem}@media(max-width:480px){.table-header{flex-direction:column;gap:.6rem}.table-header-buttons{position:static}}.help-toggle{background:#0000004d;color:#f4f1e8;border:1px solid rgba(255,255,255,.2)}.assist-toggles{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem 1.25rem}.toggle{display:flex;align-items:center;gap:.4rem;font-size:.82rem;opacity:.9;cursor:pointer;flex-shrink:0}.toggle input{cursor:pointer;flex-shrink:0}.scoreboard{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;background:#00000047;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:.75rem 1rem;box-shadow:inset 0 1px #ffffff0f}.scoreboard-item{display:flex;flex-direction:column;align-items:center;min-width:5.5rem}.scoreboard-label{font-size:.68rem;opacity:.7;text-transform:uppercase;letter-spacing:.06em}.scoreboard-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums}.scoreboard-value[data-red=true]{color:#e8a3a3}.scoreboard-sub{font-size:.68rem;opacity:.55;font-variant-numeric:tabular-nums}.opponent-area,.human-area{background:#0000002e;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:.85rem}.opponent-area h2,.human-area h2{margin:0 0 .5rem;font-size:.8rem;font-weight:600;opacity:.8;text-transform:uppercase;letter-spacing:.05em}.human-area-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.4rem}.human-area-header h2{margin:0 0 .5rem}.hand-sort-select{margin-bottom:.5rem}.tier-select{display:flex;align-items:center;gap:.4rem;font-size:.72rem;opacity:.85;flex-shrink:0;text-transform:none;letter-spacing:normal}.tier-select select{font-family:inherit;font-size:.78rem;padding:.15rem .4rem;border-radius:5px;border:1px solid rgba(255,255,255,.25);background:#00000059;color:#f4f1e8}.hand{display:flex;flex-wrap:wrap;gap:.5rem;min-height:6rem}.card{position:relative;width:3.6rem;height:5.1rem;border-radius:7px;border:1px solid rgba(0,0,0,.35);background:linear-gradient(160deg,#fffdf6,#f4ecd8);color:#1a1a1a;display:flex;align-items:center;justify-content:center;font-family:Georgia,Times New Roman,serif;padding:0;cursor:not-allowed;opacity:.62;box-shadow:0 1px 2px #0000004d;flex-shrink:0}.card[data-red=true]{color:#a3222b}.card[data-selectable=true]{cursor:pointer;opacity:1;box-shadow:0 3px 8px #00000073}.card[data-recommended=true]{box-shadow:0 0 0 3px #5ec8ff,0 3px 8px #00000073}.card-corner{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1;font-size:.62rem;font-weight:700}.card-corner-top{top:4px;left:4px}.card-corner-bottom{bottom:4px;right:4px;transform:rotate(180deg)}.card-corner-suit{font-size:.68rem}.card-center{font-size:1.7rem;opacity:.92}.card-meld-dot{position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:5px;height:5px;border-radius:50%;background:#2a5c86}.card-back{background:repeating-linear-gradient(45deg,#2a5c86 0,#2a5c86 5px,#1c4667 5px,#1c4667 10px);border:1px solid #0c2033;opacity:1;cursor:default}.middle-area{min-height:8.5rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.table-row{display:flex;align-items:flex-start;justify-content:center;gap:3.5rem;width:100%}.turn-up-card{display:flex;flex-direction:column;align-items:center;gap:.3rem}.turn-up-card-label{font-size:.68rem;opacity:.7;text-transform:uppercase;letter-spacing:.06em}.trick{display:flex;gap:1.5rem;align-items:flex-start;justify-content:center;min-height:5.5rem}.trick-card{display:flex;flex-direction:column;align-items:center;gap:.3rem}.trick-card[data-winner=true] .card{box-shadow:0 0 0 3px #f1c40f,0 4px 10px #00000080}.trick-label{font-size:.72rem;opacity:.8}.trick-winner{font-weight:600;font-size:.9rem;color:#f1c40f;margin:0}.trick-empty{opacity:.6;font-size:.9rem;align-self:center}.thinking{opacity:.85;font-style:italic;margin:0}.thinking-dots span{animation:pulse-dot 1.2s infinite;opacity:.2}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes pulse-dot{0%,80%,to{opacity:.2}40%{opacity:1}}.meld-choices{background:#00000052;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:.75rem 1rem;text-align:center}.meld-choices p{margin:0 0 .5rem}.meld-choices-buttons{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.meld-display{margin-top:.75rem;padding-top:.6rem;border-top:1px dashed rgba(255,255,255,.15)}.meld-display-label{font-size:.68rem;opacity:.65;text-transform:uppercase;letter-spacing:.05em}.meld-display-groups{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.4rem}.meld-group{background:#00000040;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:.35rem .5rem;display:flex;flex-direction:column;gap:.3rem}.meld-group-label{font-size:.68rem;opacity:.85;white-space:nowrap}.meld-group-cards{display:flex;gap:.25rem}.mini-card{background:#fffdf6;color:#1a1a1a;border-radius:4px;padding:.1rem .3rem;font-size:.7rem;font-weight:700;font-family:Georgia,serif}.mini-card[data-red=true]{color:#a3222b}.mini-card[data-depleted=true]{background:transparent;color:#f4f1e8;border:1px dashed rgba(244,241,232,.55);opacity:.75}.mini-card[data-depleted=true][data-red=true]{color:#e8a3a3;border-color:#e8a3a38c}button{font-family:inherit;font-size:.88rem;padding:.45rem .9rem;border-radius:7px;border:1px solid rgba(0,0,0,.4);background:linear-gradient(160deg,#f6d247,#e0a91a);color:#1a1200;font-weight:600;cursor:pointer;box-shadow:0 2px 4px #0000004d}button:hover{filter:brightness(1.08)}.pass-button{background:linear-gradient(160deg,#e2e2e2,#b9b9b9)}button[data-recommended=true]{box-shadow:0 0 0 3px #5ec8ff,0 2px 4px #0000004d}.tutor-panel{display:flex;flex-direction:column;gap:.4rem;background:#5ec8ff26;border:1px solid rgba(94,200,255,.4);border-radius:8px;padding:.5rem .85rem;font-size:.85rem;max-width:30rem;text-align:left}.tutor-panel-main{display:flex;align-items:baseline;gap:.5rem}.tutor-panel-label{font-weight:700;text-transform:uppercase;font-size:.68rem;letter-spacing:.05em;color:#5ec8ff;flex-shrink:0}.tutor-alternatives{font-size:.78rem;opacity:.85}.tutor-alternatives summary{cursor:pointer;color:#5ec8ff;font-size:.72rem}.tutor-alternatives ul{margin:.4rem 0 0;padding-left:1.1rem}.tutor-alternatives li{margin-bottom:.2rem}.carte-blanche-banner{background:#f1c40f2e;border:1px solid rgba(241,196,15,.5);border-radius:8px;padding:.5rem .75rem;font-size:.8rem;font-weight:600;text-align:center}.result-banner{background:#0000006b;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:1rem;text-align:center}.result-banner p{margin:0 0 .75rem;font-size:1rem}.help-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:10}.help-panel{background:#123b28;border:1px solid rgba(255,255,255,.12);border-radius:12px;max-width:640px;width:100%;max-height:85vh;overflow-y:auto;padding:1.25rem 1.5rem 1.5rem;box-shadow:0 12px 40px #00000080}.help-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:-1.25rem;background:#123b28;padding:.25rem 0 .75rem;margin-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.12)}.help-header h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.15rem}.help-close{background:transparent;border:none;box-shadow:none;color:#f4f1e8;font-size:1.4rem;line-height:1;padding:.1rem .5rem}.help-panel section{margin-bottom:1.1rem}.help-panel h3{margin:0 0 .4rem;font-size:.95rem;color:#f1c40f}.help-panel p{margin:0 0 .5rem;font-size:.85rem;line-height:1.5;opacity:.92}.help-note{opacity:.8!important}.help-table-wrap{position:relative;overflow-x:auto}.help-table-wrap:before,.help-table-wrap:after{content:"";position:absolute;top:0;bottom:.5rem;width:1.5rem;pointer-events:none;opacity:0;transition:opacity .15s ease}.help-table-wrap:before{left:0;background:linear-gradient(to right,#123b28,transparent)}.help-table-wrap:after{right:0;background:linear-gradient(to left,#123b28,transparent)}.help-table-wrap[data-scroll-left=true]:before,.help-table-wrap[data-scroll-right=true]:after{opacity:1}.help-meld-table{width:100%;border-collapse:collapse;font-size:.82rem;margin-bottom:.5rem}.help-meld-table th,.help-meld-table td{text-align:left;padding:.3rem .5rem;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}.help-meld-table th{opacity:.7;font-weight:600;text-transform:uppercase;font-size:.68rem;letter-spacing:.04em}.help-suit-note{opacity:.65;font-size:.78rem;white-space:normal}
