@import"https://fonts.googleapis.com/css2?family=Cabin:wght@400;500;600;700&display=swap";:root{--primary: #e7be62;--primary-light: #f1deb6;--primary-dark: #d4a94f;--secondary: #fbc746;--contrast: #ffffff;--background: #faf7f2;--surface: #ffffff;--surface-elevated: #fffcf7;--text-primary: #3E3E3E;--text-secondary: #6B6B6B;--text-tertiary: #999999;--border: rgba(231, 190, 98, .25);--shadow-sm: 0 2px 8px rgba(231, 190, 98, .1);--shadow-md: 0 4px 16px rgba(231, 190, 98, .15);--shadow-lg: 0 8px 32px rgba(231, 190, 98, .2);--glow: 0 0 24px rgba(231, 190, 98, .4)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Cabin,-apple-system,sans-serif;background:linear-gradient(135deg,var(--background) 0%,#f5f0e8 100%);min-height:100vh;color:var(--text-primary);position:relative;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 50%,rgba(231,190,98,.06) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(251,199,70,.05) 0%,transparent 50%);pointer-events:none;z-index:0}.app{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;position:relative;z-index:1;animation:fadeIn .8s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.container{background:var(--surface);border-radius:24px;padding:48px;max-width:600px;width:100%;box-shadow:var(--shadow-lg);border:1px solid var(--border);position:relative;overflow:hidden;animation:slideUp .6s ease}.container:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--primary) 50%,transparent 100%);opacity:.7}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.logo-section{text-align:center;margin-bottom:48px;position:relative}.logo{width:150px;height:auto;margin:0 auto 24px;display:block;filter:drop-shadow(0 4px 12px rgba(231,190,98,.3));animation:gentleFloat 4s ease-in-out infinite}.logo:not(img){font-size:72px;width:auto;height:auto}@keyframes gentleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}h1{font-family:Cabin,sans-serif;font-size:48px;font-weight:700;color:var(--primary);margin-bottom:12px;letter-spacing:1px}h2{font-family:Cabin,sans-serif;font-size:36px;font-weight:600;color:var(--primary);margin-bottom:32px;text-align:center;letter-spacing:.5px}h3{font-family:Cabin,sans-serif;font-size:24px;font-weight:600;color:var(--primary);margin-bottom:20px}h4{font-family:Cabin,sans-serif;font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:16px;letter-spacing:1px;text-transform:uppercase}.subtitle{font-size:16px;color:var(--text-secondary);font-weight:400;letter-spacing:.3px}.menu-buttons{display:flex;flex-direction:column;gap:16px;margin-bottom:40px}.btn{font-family:Cabin,sans-serif;padding:18px 36px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;position:relative;overflow:visible;letter-spacing:.5px}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:var(--text-primary);box-shadow:var(--shadow-md);border:2px solid transparent}.btn-primary:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg),var(--glow);border-color:var(--secondary)}.btn-secondary{background:var(--surface);color:var(--primary);border:2px solid var(--primary)}.btn-secondary:hover{background:var(--primary-light);transform:translateY(-3px);box-shadow:var(--shadow-md)}.btn-success{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:var(--text-primary);box-shadow:var(--shadow-md);flex:1;border:2px solid transparent;font-weight:600}.btn-success:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg),var(--glow);border-color:var(--secondary)}.btn-danger{background:var(--surface);color:var(--primary);border:2px solid var(--primary);box-shadow:var(--shadow-sm);flex:1;font-weight:600}.btn-danger:hover{transform:translateY(-3px);background:var(--primary-light);box-shadow:var(--shadow-md)}.btn-link{background:transparent;color:var(--text-secondary);border:none;padding:12px;font-size:15px;font-weight:500}.btn-link:hover{color:var(--primary)}.pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:var(--shadow-md)}50%{box-shadow:var(--shadow-lg),var(--glow)}}.info-box{background:linear-gradient(135deg,var(--surface-elevated) 0%,var(--primary-light) 100%);border-radius:16px;padding:32px;text-align:center;border:1px solid var(--border)}.info-box p{margin:12px 0;font-size:15px;color:var(--text-primary);font-weight:400}.input-code{width:100%;padding:24px;font-family:Cabin,sans-serif;font-size:36px;font-weight:700;text-align:center;border:2px solid var(--border);border-radius:16px;margin:32px 0;letter-spacing:8px;text-transform:uppercase;background:var(--surface-elevated);color:var(--primary);transition:all .3s ease}.input-code:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #e7be6233;background:#fff}.input-text{width:100%;padding:16px 20px;font-size:15px;font-family:Cabin,sans-serif;border:1px solid var(--border);border-radius:12px;margin-bottom:12px;background:var(--surface-elevated);color:var(--text-primary);transition:all .3s ease}.input-text:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #e7be6226;background:#fff}.card-input{margin-bottom:10px}.session-info{text-align:center;margin-bottom:40px;padding:32px;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-radius:20px;color:var(--text-primary);position:relative;overflow:hidden;box-shadow:var(--shadow-lg)}.session-info:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 70%);animation:shimmer 8s linear infinite}@keyframes shimmer{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.session-info h3{color:#3e3e3ecc;font-size:14px;font-weight:600;margin-bottom:16px;text-transform:uppercase;letter-spacing:2px;position:relative;z-index:1}.session-code{font-family:Cabin,sans-serif;font-size:52px;font-weight:700;letter-spacing:12px;margin:20px 0;text-shadow:0 2px 8px rgba(0,0,0,.1);position:relative;z-index:1}.session-code-small{text-align:center;font-family:Cabin,sans-serif;font-size:18px;font-weight:600;color:var(--text-secondary);margin-bottom:32px;letter-spacing:2px}.share-text{font-size:13px;opacity:.9;margin-top:12px;font-weight:400;position:relative;z-index:1;letter-spacing:.3px}.form-section{margin-bottom:36px}.form-section label{display:block;font-weight:600;margin-bottom:12px;color:var(--text-primary);font-size:15px;letter-spacing:.3px}.helper-text{font-size:13px;color:var(--text-secondary);margin-bottom:20px;font-weight:400;font-style:italic}.players-waiting{margin:40px 0}.player-list{display:flex;flex-direction:column;gap:12px}.player-item{display:flex;align-items:center;gap:16px;padding:20px;background:var(--surface-elevated);border-radius:16px;border:1px solid var(--border);font-weight:500;animation:slideIn .5s ease;transition:all .3s ease}.player-item:hover{transform:translate(4px);box-shadow:var(--shadow-sm)}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.player-icon{font-size:24px}.waiting-text{text-align:center;color:var(--text-secondary);margin:32px 0;font-size:15px;font-weight:400;font-style:italic}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:20px 24px;background:var(--surface-elevated);border-radius:16px;border:1px solid var(--border)}.round-info{font-family:Cabin,sans-serif;font-weight:700;color:var(--primary);font-size:20px;letter-spacing:.5px}.turn-info{font-size:15px;color:var(--text-primary);font-weight:400}.question-card{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-radius:24px;padding:48px 40px;margin:40px 0;box-shadow:var(--shadow-lg),var(--glow);position:relative;overflow:hidden;border:2px solid rgba(255,255,255,.4)}.question-card:before{content:"✦";position:absolute;top:20px;left:20px;font-size:24px;color:#00000026}.question-card:after{content:"✦";position:absolute;bottom:20px;right:20px;font-size:24px;color:#00000026}.question-text{font-family:Cabin,sans-serif;font-size:26px;font-weight:600;text-align:center;color:var(--text-primary);line-height:1.6;letter-spacing:.3px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:32px 0}.card-button{background:#fff;border:2px solid var(--primary);border-radius:16px;padding:24px 20px;font-family:Cabin,sans-serif;font-size:15px;font-weight:600;color:var(--primary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-height:110px;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:visible}.card-button:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-md);border-color:var(--secondary);background:var(--primary-light);color:var(--text-primary)}.selected-card{text-align:center;margin:40px 0}.selected-card p{font-size:15px;color:var(--text-secondary);margin-bottom:16px;font-weight:400;letter-spacing:.3px}.card-selected{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:var(--text-primary);padding:40px;border-radius:24px;font-family:Cabin,sans-serif;font-size:32px;font-weight:700;margin:20px 0;box-shadow:var(--shadow-lg);animation:revealCard .6s ease;border:2px solid rgba(255,255,255,.3);letter-spacing:.5px}@keyframes revealCard{0%{transform:scale(.9) rotateY(-15deg);opacity:0}to{transform:scale(1) rotateY(0);opacity:1}}.instruction{font-size:14px;color:var(--text-tertiary);margin-top:20px;font-style:italic;font-weight:400}.voting-section{text-align:center;margin:40px 0;padding:32px;background:var(--surface-elevated);border-radius:20px;border:1px solid var(--border)}.voting-section p{font-size:17px;margin-bottom:24px;color:var(--text-primary);font-weight:500}.vote-buttons{display:flex;gap:20px}.scoreboard{margin-top:48px;padding:32px;background:var(--surface-elevated);border-radius:20px;border:1px solid var(--border)}.score-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;margin:12px 0;background:#fff;border-radius:12px;border:1px solid var(--border);transition:all .3s ease}.score-item:hover{transform:translate(4px);box-shadow:var(--shadow-sm)}.score{font-family:Cabin,sans-serif;font-weight:700;font-size:20px;color:var(--primary);letter-spacing:.3px}.results-header{text-align:center;margin-bottom:48px}.results-header h1{font-size:42px;margin-bottom:40px;color:var(--primary);font-weight:600;letter-spacing:.5px}.winner-section{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);padding:48px;border-radius:24px;box-shadow:var(--shadow-lg),var(--glow);margin:32px 0;border:2px solid rgba(255,255,255,.4);position:relative;overflow:hidden}.winner-section:before{content:"✦ ✦ ✦";position:absolute;top:16px;left:0;right:0;text-align:center;font-size:20px;color:#0000001a;letter-spacing:20px}.winner-label{font-size:14px;text-transform:uppercase;letter-spacing:3px;margin-bottom:16px;opacity:.85;font-weight:600;color:var(--text-primary)}.winner-name{font-family:Cabin,sans-serif;font-size:48px;font-weight:700;margin:20px 0;text-shadow:0 2px 8px rgba(0,0,0,.1);letter-spacing:1px;color:var(--text-primary)}.winner-message{font-size:18px;font-weight:400;margin:20px 0;line-height:1.6;color:var(--text-primary);opacity:.9;font-style:italic}.winner-score{font-size:20px;font-weight:600;margin-top:16px;letter-spacing:.5px;color:var(--text-primary);opacity:.85}.final-scores{margin:40px 0}.final-score-item{display:flex;align-items:center;gap:20px;padding:20px 24px;margin:16px 0;background:var(--surface-elevated);border-radius:16px;border:1px solid var(--border);transition:all .3s ease}.final-score-item:hover{transform:translate(6px);box-shadow:var(--shadow-sm)}.position{font-family:Cabin,sans-serif;font-size:28px;font-weight:700;color:var(--primary);min-width:50px}.player-name{flex:1;font-weight:600;font-size:16px}.player-score{font-family:Cabin,sans-serif;font-weight:700;font-size:22px;color:var(--primary);letter-spacing:.3px}.button-group{display:flex;flex-direction:column;gap:16px;margin-top:40px}@media (max-width: 768px){.container{padding:32px 24px}h1{font-size:36px}h2{font-size:28px}.logo{width:120px}.session-code{font-size:40px;letter-spacing:8px}.question-text{font-size:22px}.cards-grid{grid-template-columns:repeat(2,1fr)}.winner-name{font-size:40px}.game-header{flex-direction:column;gap:12px;text-align:center}.vote-buttons{flex-direction:column}}
