html,body,#root{box-sizing:border-box;background-color:#2c3e50;width:100%;height:100%;margin:0;padding:0;font-family:Arial,sans-serif;overflow:hidden}*,:before,:after{box-sizing:inherit}.homeContainer{color:#fff;background-color:#2c3e50;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;font-family:Arial,sans-serif;display:flex}.formContainer{background:#34495e;border-radius:8px;flex-direction:column;gap:1.5rem;width:300px;padding:2rem;display:flex;box-shadow:0 4px 6px #0000004d}.inputGroup{flex-direction:column;gap:.5rem;display:flex}input{border:none;border-radius:4px;padding:.5rem;font-size:1rem}.actionSection{flex-direction:column;gap:.5rem;display:flex}button{cursor:pointer;border:none;border-radius:4px;padding:.75rem;font-size:1rem;font-weight:700;transition:background-color .2s}.primaryBtn{color:#fff;background-color:#27ae60}.primaryBtn:hover{background-color:#2ecc71}.secondaryBtn{color:#fff;background-color:#2980b9}.secondaryBtn:hover{background-color:#3498db}.divider{text-align:center;color:#bdc3c7;font-size:.9rem}.errorBox{color:#fff;text-align:center;background-color:#c0392b;border-radius:4px;padding:.5rem;font-size:.9rem}.lobbyContainer{color:#fff;flex-direction:column;align-items:center;padding:2rem;display:flex}.lobbyContent{background:#34495e;border-radius:8px;gap:2rem;width:100%;max-width:800px;margin-top:1.5rem;padding:2rem;display:flex;box-shadow:0 4px 6px #0000004d}.lobbyLayoutWrapper{box-sizing:border-box;width:100%;height:100%;padding-top:40px;overflow-y:auto}.playersList,.roomSettings{flex-direction:column;flex:1;gap:1rem;display:flex}.playersList ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style-type:none;display:flex}.playerItem{background:#2c3e50;border-radius:4px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.playerName{font-size:1.1rem;font-weight:700}.teamSelector{align-items:center;gap:.5rem;display:flex}.teamSelector select{border-radius:4px;padding:.2rem}.settingsNote{color:#bdc3c7;font-size:.85rem;font-style:italic}.disabledBtn{cursor:not-allowed!important;background-color:#7f8c8d!important}.tableContainer{color:#fff;box-sizing:border-box;background-color:#27ae60;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:1rem;display:flex;overflow:hidden}.opponentsSection{justify-content:center;gap:1.5rem;padding:1rem;display:flex}.opponentBox{text-align:center;background-color:#0006;border:2px solid #0000;border-radius:8px;min-width:120px;padding:.8rem}.activeTurn{border-color:#f1c40f;box-shadow:0 0 10px #f1c40f}.opponentName{margin-bottom:.5rem;font-weight:700}.opponentStats,.opponentNotes{color:#ecf0f1;font-size:.85rem}.centerSection{flex-direction:column;flex-grow:1;justify-content:center;align-items:center;gap:1rem;min-height:0;display:flex}.deckIndicator{background-color:#0009;border-radius:4px;padding:.5rem 1rem;font-weight:700}.tableCardsArea{background-color:#ffffff1a;border-radius:12px;flex-wrap:wrap;place-content:center;gap:1rem;width:90%;max-width:800px;max-height:40vh;padding:1rem;display:flex;overflow-y:auto}.emptyTableText{color:#fff9;align-self:center;font-style:italic}.playerSection{background-color:#0000004d;border-radius:12px 12px 0 0;flex-direction:column;align-items:center;gap:1rem;padding:1rem;display:flex}.turnIndicator{color:#f1c40f;height:1.5rem;font-size:1.2rem;font-weight:700}.myHandArea{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.cardItem{color:#000;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:#fff;border:3px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:80px;height:120px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 6px #0000004d}.cardItem:hover{transform:translateY(-5px)}.roomCodeBox{background-color:#34495e;border:1px solid #1abc9c;border-radius:4px;margin-top:.5rem;padding:.5rem 1.5rem;font-size:1.2rem;font-weight:700;box-shadow:0 2px 4px #0003}.roomCodeText{color:#1abc9c;letter-spacing:2px;font-family:Courier New,Courier,monospace}.gameRoomWrapper{width:100%;height:100%;margin:0;padding:0;overflow:hidden}.cardItem{cursor:pointer;-webkit-user-select:none;user-select:none;border:3px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:80px;height:120px;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 4px 6px #0000004d}.cardImage{object-fit:cover;width:100%;height:100%;display:block}.selectedCard{border-color:#f1c40f;transform:translateY(-10px);box-shadow:0 0 15px #f1c40f}.summaryContainer{box-sizing:border-box;background-color:#2c3e50;flex-direction:column;justify-content:space-between;align-items:center;width:100%;height:100vh;padding:2rem;display:flex;overflow:hidden}.leaderboard{flex-grow:1;justify-content:center;align-items:center;gap:2rem;width:100%;max-width:1000px;min-height:0;margin:1rem 0;display:flex}.teamScoreCard{background:#34495e;border-radius:8px;flex-direction:column;flex:1;align-items:center;min-width:220px;min-height:0;max-height:85%;padding:1.5rem;display:flex;box-shadow:0 4px 6px #0000004d}.firstPlace{border:2px solid #f1c40f;transform:scale(1.02)}.totalScoreBox{background-color:#0000004d;border-radius:4px;flex-shrink:0;margin:.5rem 0;padding:.4rem .8rem;font-size:1.1rem;font-weight:700}.totalScoreBox span{color:#f1c40f;font-size:1.4rem}.roundPointsBox{text-align:left;border-top:1px solid #7f8c8d;flex-direction:column;width:100%;min-height:0;margin-top:.5rem;padding-top:.5rem;display:flex}.roundPointsBox h4{color:#1abc9c;flex-shrink:0;margin-bottom:.4rem}.pointsListArea{width:100%;padding-right:5px;overflow-y:auto}.roundPointsBox ul{margin:0;padding:0;list-style-type:none}.roundPointsBox li{padding:.15rem 0;font-size:.95rem}.negativeScore{color:#e74c3c;font-weight:700}.noPoints{color:#bdc3c7;font-style:italic}.summaryActions{flex-shrink:0;margin-top:1rem}.sbarazzoCardsContainer{justify-content:center;gap:.3rem;margin-top:.2rem;display:flex}.sbarazzoCardImage{object-fit:cover;border-radius:4px;width:40px;height:60px;box-shadow:0 2px 4px #0006}.centerSection{flex-direction:column;flex-grow:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.centerLayoutRow{flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1100px;padding:0 1rem;display:flex}.sideIndicator{flex:1;justify-content:center;display:flex}.deckIndicator{white-space:nowrap;background-color:#0009;border-radius:4px;padding:.5rem 1rem;font-weight:700}.timerIndicator{white-space:nowrap;background-color:#0009;border-radius:4px;padding:.5rem 1rem;font-size:1.2rem;font-weight:700;transition:color .3s,transform .3s}.timerWarning{color:#e74c3c;animation:1s infinite pulseTimer;transform:scale(1.1)}@keyframes pulseTimer{0%{transform:scale(1.1)}50%{transform:scale(1.15)}to{transform:scale(1.1)}}.tableCardsArea{box-sizing:border-box;background-color:#ffffff1a;border-radius:12px;flex-wrap:wrap;flex:3;place-content:center;gap:1rem;width:90%;max-width:800px;max-height:40vh;padding:1rem;display:flex;overflow-y:auto}.myHandArea{box-sizing:border-box;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1000px;padding:0 1rem;display:flex}.handSideLeft,.handSideRight{flex-shrink:0;flex-basis:120px;justify-content:center;align-items:center;display:flex}.handCardsCenter{flex-wrap:wrap;flex-grow:1;justify-content:center;gap:.5rem;display:flex}.centerRowWrapper{flex-direction:row;justify-content:center;align-items:center;gap:2rem;width:100%;max-width:1100px;display:flex}.tableCardsArea{flex:1}.lastMoveBox{box-sizing:border-box;background-color:#0006;border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;align-items:center;width:160px;min-height:220px;padding:1rem;display:flex}.lastMoveBox h4{color:#f1c40f;text-transform:uppercase;letter-spacing:1px;margin:0 0 .8rem;font-size:.95rem}.lastMoveContent{flex-direction:column;align-items:center;gap:.8rem;width:100%;display:flex}.lastMoveSection{flex-direction:column;align-items:center;gap:.3rem;width:100%;display:flex}.lastMoveSection span{color:#bdc3c7;font-size:.75rem}.lastMoveCardImage{object-fit:cover;border-radius:4px;width:50px;height:75px;box-shadow:0 2px 4px #00000080}.lastMoveTakenCards{flex-wrap:wrap;justify-content:center;gap:.2rem;width:100%;display:flex}.lastMoveCardImageMini{object-fit:cover;border-radius:3px;width:32px;height:48px;box-shadow:0 1px 3px #00000080}.noMoveText{color:#7f8c8d;margin-top:3rem;font-size:.85rem;font-style:italic}
