.card-match-game-container{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;width:100%;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;padding:clamp(12px,3vw,20px);padding-top:max(clamp(16px,4vw,24px),env(safe-area-inset-top));padding-bottom:max(clamp(12px,3vw,20px),env(safe-area-inset-bottom));padding-left:max(clamp(12px,3vw,20px),env(safe-area-inset-left));padding-right:max(clamp(12px,3vw,20px),env(safe-area-inset-right));-webkit-overflow-scrolling:touch;align-items:center;justify-content:center;overflow:hidden;position:relative}.card-match-landscape-container{display:flex;flex-direction:row;justify-content:center;align-items:center;min-height:100vh;min-height:100dvh;width:100%;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;padding:max(16px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));gap:clamp(24px,3vw,40px);overflow:hidden;position:relative}.card-match-sidebar{display:flex;flex-direction:column;gap:16px;min-width:200px;max-width:280px;width:clamp(200px,20vw,280px);background:#0000004d;padding:20px;border-radius:16px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);height:auto;max-height:90vh;overflow-y:auto}.card-match-stat-box{padding:14px 12px;border-radius:10px;text-align:center}.card-match-stat-box.timer{background:#3b82f633;border:2px solid rgba(59,130,246,.3);color:#3b82f6}.card-match-stat-box.timer-warning{background:#ef444433;border:2px solid rgba(239,68,68,.5);color:#ef4444}.card-match-stat-box.score{background:#22c55e33;border:2px solid rgba(34,197,94,.3);color:#22c55e}.card-match-stat-box.streak{background:#fb923c33;border:2px solid rgba(251,146,60,.4);color:#fb923c}.card-match-stat-label{font-size:13px;opacity:.85;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.card-match-stat-value{font-size:26px;font-weight:700}.card-match-stat-value.large{font-size:22px}.card-match-matches-footer{margin-top:auto;padding-top:16px;text-align:center;font-size:14px;color:#ffffffb3;font-weight:500}.card-match-grid-container{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:min(90vh,70vw);gap:12px}.card-match-color-legend{display:flex;gap:16px;padding:8px 16px;background:#0006;border-radius:8px;border:1px solid rgba(255,255,255,.1);font-size:12px;flex-wrap:wrap;justify-content:center}.card-match-legend-item{display:flex;align-items:center;gap:6px}.card-match-legend-color{width:12px;height:12px;border-radius:3px}.card-match-legend-color.countries{background:#3b82f6}.card-match-legend-color.capitals{background:#ef4444}.card-match-legend-text{color:#ffffffe6;white-space:normal;overflow-wrap:break-word;word-break:break-word;hyphens:auto}.card-match-grid{display:grid;gap:clamp(6px,1.2vh,14px);width:100%;height:auto;max-height:100%;aspect-ratio:1/1;isolation:isolate}.card-match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:clamp(8px,2vw,16px);gap:clamp(6px,1.5vw,12px)}.card-match-stats-row{display:flex;gap:clamp(8px,2.5vw,16px);align-items:center;flex-wrap:wrap;justify-content:flex-end;overflow-x:visible;padding-bottom:2px;scrollbar-width:none;-ms-overflow-style:none}.card-match-stats-row::-webkit-scrollbar{display:none}.card-match-stat-badge{padding:clamp(8px,2vw,12px) clamp(16px,4vw,24px);min-height:clamp(44px,10vw,58px);border-radius:8px;font-size:clamp(15px,4vw,22px);font-weight:700;text-align:center;line-height:1.2;white-space:normal;overflow-wrap:break-word;word-break:break-word;hyphens:auto;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:clamp(90px,22vw,140px)}.card-match-stat-badge.timer{background:#3b82f633;border:2px solid rgba(59,130,246,.3);color:#3b82f6}.card-match-stat-badge.timer-warning{background:#ef444433;border:2px solid rgba(239,68,68,.5);color:#ef4444}.card-match-stat-badge.score{background:#22c55e33;border:2px solid rgba(34,197,94,.3);color:#22c55e}.card-match-stat-badge.streak{background:#fb923c33;border:2px solid rgba(251,146,60,.4);color:#fb923c}.card-match-progress{margin-top:clamp(12px,3vw,20px);text-align:center;color:#ffffffb3;font-size:clamp(12px,3vw,14px)}.game-card-time-penalty{position:absolute;top:10%;right:10%;z-index:8;padding:4px 8px;border-radius:999px;font-size:clamp(11px,1.6vw,14px);font-weight:800;color:#fff;background:#ef4444e6;border:1px solid rgba(255,255,255,.25);box-shadow:0 4px 10px #ef444459;pointer-events:none;animation:cardPenaltyFloat .46s ease-out forwards}@keyframes cardPenaltyFloat{0%{opacity:0;transform:translateY(4px) scale(.92)}20%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-16px) scale(1.06)}}.card-match-results-container{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:max(80px,calc(env(safe-area-inset-top) + 60px)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));min-height:100vh;min-height:100dvh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;box-sizing:border-box}.card-match-results-card{background:#ffffff0d;border-radius:16px;padding:clamp(24px,5vw,40px);max-width:500px;width:calc(100% - 32px);text-align:center;border:2px solid rgba(255,255,255,.1);margin:auto 16px;flex-shrink:0;box-sizing:border-box}.card-match-results-title{color:#fff;font-size:clamp(24px,5vw,32px);margin-bottom:20px}.card-match-results-score{font-size:clamp(48px,10vw,72px);font-weight:700;color:#3b82f6}.card-match-results-label{font-size:clamp(14px,3vw,18px);opacity:.8}.card-match-results-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.card-match-results-stat{background:#ffffff0d;padding:16px;border-radius:12px}.card-match-results-stat-value{font-size:clamp(24px,5vw,32px);font-weight:700}.card-match-results-stat-label{font-size:14px;opacity:.7}.card-match-results-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:30px}.card-match-pregame-container{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:max(80px,calc(env(safe-area-inset-top) + 60px)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));min-height:100vh;min-height:100dvh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;box-sizing:border-box}.card-match-pregame-card{background:#ffffff0d;border-radius:16px;padding:clamp(24px,5vw,40px);max-width:600px;width:calc(100% - 32px);text-align:center;border:2px solid rgba(255,255,255,.1);margin:auto 16px;flex-shrink:0;box-sizing:border-box}.card-match-pregame-title{color:#fff;font-size:clamp(28px,6vw,40px);margin-bottom:16px}.card-match-pregame-description{color:#ffffffb3;font-size:clamp(14px,3vw,18px);margin-bottom:20px;line-height:1.6}.card-match-instructions{background:#ffffff0d;border-radius:12px;padding:20px;margin-bottom:20px;text-align:left}.card-match-instructions-title{color:#3b82f6;margin-bottom:12px;font-size:18px}.card-match-instructions-list{color:#fffc;font-size:14px;line-height:1.8;padding-left:20px}.card-match-mode-selector{display:flex;gap:clamp(12px,3vw,20px);align-items:center;justify-content:center;margin-bottom:24px;flex-wrap:wrap}.card-match-select-group{display:flex;flex-direction:column;gap:8px;min-width:clamp(160px,40%,200px);flex:1}.card-match-select-label{color:#ffffffb3;font-size:clamp(11px,2.5vw,13px);font-weight:500;letter-spacing:.5px;text-transform:uppercase}.card-match-select-wrapper{position:relative}.card-match-select{appearance:none;backdrop-filter:blur(10px);border-radius:12px;padding:12px 40px 12px 16px;font-size:clamp(13px,3vw,15px);font-weight:600;outline:none;cursor:pointer;transition:all .3s ease;width:100%;box-shadow:0 4px 12px #00000026;color:#fff}.card-match-select.first-type{background:linear-gradient(135deg,#3b82f626,#9333ea26);border:2px solid rgba(59,130,246,.3)}.card-match-select.second-type{background:linear-gradient(135deg,#ec489926,#fb923c26);border:2px solid rgba(236,72,153,.3)}.card-match-select:hover.first-type{border:2px solid rgba(59,130,246,.6);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f64d}.card-match-select:hover.second-type{border:2px solid rgba(236,72,153,.6);transform:translateY(-2px);box-shadow:0 6px 20px #ec48994d}.card-match-select option{background:#1a1a2e;color:#fff;padding:10px}.card-match-select-arrow{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none;color:#ffffffb3;font-size:12px}.card-match-pregame-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.game-card{position:relative;aspect-ratio:1;border-radius:12px;cursor:pointer;transition:all .12s ease;padding:4px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;min-width:0!important;min-height:0!important}.game-card.default{border:2px solid rgba(255,255,255,.2);background:#ffffff0d}.game-card.selected{border:3px solid #3b82f6;background:#3b82f633;transform:scale(.95);z-index:10}.game-card.matched{border:3px solid #22c55e;background:#22c55e33;opacity:.6;cursor:default}.game-card.feedback{z-index:10}.game-card.correct-feedback{animation:correct-pulse .4s ease}.game-card.wrong-feedback{animation:wrong-shake .3s ease}.game-card-flag{width:100%;height:100%;object-fit:contain;border-radius:4px;user-select:none}.game-card-shape{width:100%;height:100%;display:block}.game-card-text-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden!important;min-width:0!important;min-height:0!important}.game-card-text{width:100%;max-height:100%;display:-webkit-box!important;-webkit-line-clamp:4!important;line-clamp:4!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-align:center;font-weight:700;line-height:1.05;word-break:break-word;overflow-wrap:break-word;hyphens:auto;margin:0}.game-card.text-card{padding:2px}.game-card-text.no-legend{color:#fff;text-shadow:none}.game-card-text.country{color:#3b82f6;text-shadow:0 0 8px rgba(0,0,0,.5)}.game-card-text.capital{color:#ef4444;text-shadow:0 0 8px rgba(0,0,0,.5)}.game-card-checkmark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2rem;pointer-events:none}@keyframes correct-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1);box-shadow:0 0 20px #22c55e99}}@keyframes wrong-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@media(max-width:768px){.card-match-pregame-container,.card-match-results-container{padding-top:max(90px,calc(env(safe-area-inset-top) + 70px));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(32px,env(safe-area-inset-bottom))}.card-match-pregame-card,.card-match-results-card{padding:clamp(20px,5vw,32px);width:calc(100% - 32px);margin:auto 16px}.card-match-pregame-title{font-size:clamp(24px,5.5vw,36px);margin-bottom:12px}.card-match-pregame-description{font-size:clamp(13px,3.5vw,16px);margin-bottom:16px}}@media(max-width:480px){.card-match-pregame-container,.card-match-results-container{padding-top:max(100px,calc(env(safe-area-inset-top) + 80px));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:max(40px,env(safe-area-inset-bottom))}.card-match-pregame-card,.card-match-results-card{width:calc(100% - 24px);margin:auto 12px;padding:clamp(16px,4vw,24px)}.card-match-pregame-title{font-size:clamp(22px,5vw,32px);margin-bottom:10px}.card-match-instructions{padding:16px;margin-bottom:16px}.card-match-instructions-list{font-size:13px;line-height:1.5;padding-left:16px}}@media(max-height:700px){.card-match-pregame-container,.card-match-results-container{padding-top:max(110px,calc(env(safe-area-inset-top) + 90px));padding-bottom:max(50px,env(safe-area-inset-bottom))}.card-match-pregame-card,.card-match-results-card{margin-top:0;margin-bottom:0}.card-match-instructions{padding:14px;margin-bottom:14px}.card-match-instructions-list{font-size:12px;line-height:1.5}.card-match-pregame-title{font-size:clamp(20px,4.5vw,28px);margin-bottom:8px}.card-match-pregame-description{font-size:clamp(12px,3vw,14px);margin-bottom:12px}}@media(max-height:600px){.card-match-pregame-container,.card-match-results-container{padding-top:max(120px,calc(env(safe-area-inset-top) + 100px))}.card-match-pregame-card,.card-match-results-card{padding:clamp(12px,3vw,20px)}.card-match-instructions-title{font-size:16px;margin-bottom:8px}.card-match-mode-selector{margin-bottom:16px}.card-match-pregame-actions{margin-top:16px}}
