.score-highlight{background:#ffe066!important;transition:background .5s}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100vw;height:100vh;overflow:auto;background-color:rgba(0,0,0,.5)}.modal-content{background-color:#fefefe;margin:10% auto;padding:32px 24px 24px;border:1px solid #888;width:90%;max-width:400px;border-radius:12px;box-shadow:0 4px 32px rgba(0,0,0,.2);text-align:center}.close{color:#aaa;float:right;font-size:28px;font-weight:700;cursor:pointer;position:absolute;right:24px;top:16px}.close:hover,.close:focus{color:#333;text-decoration:none;cursor:pointer}.previous-hand{position:relative;filter:grayscale(.7)brightness(1.1);pointer-events:none}.previous-hand::after{content:'';position:absolute;inset:0;background:#0b0f2c;opacity:.5;mix-blend-mode:multiply;pointer-events:none;border-radius:inherit;z-index:2}.play-spread .card-played.played-by-player{top:28px}.play-spread .card-played.played-by-computer{top:-8px}.card-played-disabled{pointer-events:none;filter:grayscale(.7)brightness(1.1);opacity:.5!important;background:#e0e0e0!important;border-color:#aaa!important;box-shadow:none!important}.card-back img{width:100%;height:100%;object-fit:cover;display:block}.starter-card{border:2px solid #2d3a4a;background:#fffbe6;color:#222;font-weight:700;box-shadow:0 2px 8px rgba(45,58,74,8%);border-radius:7px}.card-cut{background:repeating-linear-gradient(135deg,#bbb 0 6px,#fff 6px 12px);color:#bbb;font-size:1.2em;text-align:center;border:2px solid #bbb;transition:transform .15s cubic-bezier(.4,1.3,.5,1);border-radius:7px}.card-cut:hover{transform:scale(1.08);z-index:10}.card-cut.selected{background:#fff;color:#222;border:2px solid #2d3a4a;font-weight:700}.card-played{width:28px;height:40px;font-size:.85rem;display:inline-flex;vertical-align:middle;background:linear-gradient(135deg,#f1f5f9 70%,#e2e8f0 100%);border:2px solid #cbd5e1;align-items:center;justify-content:center;box-shadow:0 1px 2px rgba(0,0,0,4%);border-radius:7px}.card-hidden{background:repeating-linear-gradient(135deg,#bbb 0 6px,#fff 6px 12px);border:1px solid #bbb;color:transparent;opacity:.7}.card.played{background:#e0e0e0!important;color:#888;border-color:#aaa;opacity:.7}.play-stack{display:flex;flex-direction:row;align-items:center;gap:2px}.cribbage-container{max-width:600px;margin:52px auto;border-radius:12px;padding:32px 24px 24px;font-family:segoe ui,Arial,sans-serif}#game-area h1{text-align:center;margin-bottom:24px;font-size:2rem;color:#2d3a4a}#status{text-align:center;margin-bottom:16px;font-size:1.1rem;color:#fff;font-family:segoe ui,Arial,sans-serif}.hand{display:flex;justify-content:center;gap:12px;margin:16px 0;min-height:60px}.cut-spread{position:relative;height:90px;margin:24px auto;overflow:visible}.cut-spread .card{position:absolute;top:10px;left:0;box-shadow:0 2px 8px rgba(0,0,0,8%);transition:transform .18s cubic-bezier(.4,2,.6,1),box-shadow .18s,z-index 0s}.cut-spread .card:hover{transform:scale(1.18)translateY(-8px);z-index:99;box-shadow:0 4px 16px rgba(56,189,248,.18)}.cut-spread .card.spread0{left:0;z-index:1}.cut-spread .card.spread1{left:10px;z-index:2}.cut-spread .card.spread2{left:20px;z-index:3}.cut-spread .card.spread3{left:30px;z-index:4}.cut-spread .card.spread4{left:40px;z-index:5}.cut-spread .card.spread5{left:50px;z-index:6}.card{width:64px;height:89px;background:linear-gradient(135deg,#f8fafc 100%,#e2e8f0 100%);border:2px solid #cbd5e1;display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#2d3a4a;box-shadow:0 1px 4px rgba(0,0,0,4%);cursor:pointer;transition:border .2s,box-shadow .2s,transform .1s,opacity .3s;user-select:none;box-sizing:content-box;border-radius:7px}.card.selected{border:2.5px solid #38bdf8;box-shadow:0 2px 8px rgba(56,189,248,.15);transform:translateY(-4px)scale(1.05)}.card:active{transform:scale(.97)}#scoreboard{display:flex;justify-content:space-between;margin-top:24px;font-size:1.1rem;background:#f1f5f9;border-radius:6px;padding:10px 18px;color:#334155}#start-game,#start-online{display:block;margin:0 auto 18px;padding:10px 28px;font-size:1.1rem;background:#38bdf8;color:#fff;border:none;border-radius:6px;cursor:pointer;box-shadow:0 1px 4px rgba(56,189,248,8%);transition:background .2s}#start-game:hover,#start-online:hover{background:#0ea5e9}@media(max-width:600px){.cribbage-container{padding:12px 2vw}.card{width:36px;height:52px;font-size:1rem}}.actionBtn{--btn-color-top:#49a8de;--btn-color-bottom:#2e7ca8;--btn-text-color:#ffffff;--btn-color-top-hover:#59b8ef;background-color:var(--btn-color-top);color:var(--btn-text-color);border:none;border-radius:12px;padding:16px 32px;font-size:20px;font-weight:700;text-transform:uppercase;font-family:segoe ui,Tahoma,Geneva,Verdana,sans-serif;cursor:pointer;box-shadow:0 6px 0 var(--btn-color-bottom);transition:transform .1s ease-out,box-shadow .1s ease-out;position:relative}.actionBtnGame{--btn-color-top:#49a8de;--btn-color-bottom:#2e7ca8;--btn-text-color:#ffffff;--btn-color-top-hover:#59b8ef;background-color:var(--btn-color-top);color:var(--btn-text-color);border:none;border-radius:6px;letter-spacing:1px;padding:12px 16px;font-size:14px;font-weight:500;text-transform:uppercase;font-family:segoe ui,Tahoma,Geneva,Verdana,sans-serif;cursor:pointer;box-shadow:0 6px 0 var(--btn-color-bottom);transition:transform .1s ease-out,box-shadow .1s ease-out;position:relative}.actionBtn:hover{background-color:var(--btn-color-top-hover);transform:translateY(-2px);box-shadow:0 8px 0 var(--btn-color-bottom)}.actionBtn:active{transform:translateY(6px);box-shadow:0 0 0 var(--btn-color-bottom);transition-duration:.05s}.actionBtn.is-searching{cursor:wait;background-color:#95a5a6;box-shadow:0 6px #7f8c8d;color:#ecf0f1}.actionBtn.is-searching:hover,.actionBtn.is-searching:active{transform:translateY(0);box-shadow:0 6px #7f8c8d}a{text-decoration:none}.online-btn{background:#0d4175;color:#fff;border:1.5px solid #06172b;transition:background .2s,border .2s;box-shadow:0 6px 0 var(--btn-color-bottom)}.online-btn:hover,.online-btn:focus{background:#06172b;border-color:#02101e;color:#fff}.play-buttons{display:flex;gap:12px;justify-content:center;margin-bottom:18px}.play-buttons .actionBtn{min-width:140px}@media(max-width:600px){.play-buttons{flex-direction:column;align-items:stretch;gap:10px}.play-buttons .actionBtn{width:auto;min-width:140px;align-self:center}}#play-area{display:flex;align-items:center;min-height:120px}.play-spread{margin:0 auto}#deck{display:flex;align-items:center;min-height:100px}