.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px;width:100%}.auth-box{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;padding:40px;width:100%}.auth-box h1{color:#333;font-size:32px;margin-bottom:10px;text-align:center}.auth-box .subtitle{color:#999;font-size:14px;margin-bottom:30px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;padding:12px;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#667eea;outline:none}.submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:transform .2s;width:100%}.submit-btn:hover:not(:disabled){transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.7}.error-message{background:#ffebee;border-left:4px solid #c62828;padding:12px}.auth-link{color:#666;font-size:14px;margin-top:20px;text-align:center}.auth-link a{color:#667eea;font-weight:600;text-decoration:none}.auth-link a:hover{text-decoration:underline}.keyboard-container{max-width:600px;width:100%}.keyboard{grid-gap:8px;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(35px,1fr));margin-bottom:15px;padding:20px}.key{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:12px 6px;touch-action:manipulation;transition:all .2s;-webkit-user-select:none;user-select:none}.key:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.key:active:not(:disabled){box-shadow:0 2px 5px #667eea33;transform:translateY(0)}.key.guessed{background:#ccc;color:#666;cursor:not-allowed;opacity:.6}.key.disabled{cursor:not-allowed;opacity:.5}.keyboard-hint{color:#fffc;font-size:12px;margin-top:15px;text-align:center}@media (max-width:480px){.keyboard{gap:6px;grid-template-columns:repeat(auto-fit,minmax(32px,1fr));padding:15px}.key{font-size:13px;padding:10px 4px}.keyboard-hint{font-size:11px}}.game-display{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;box-sizing:border-box;margin-bottom:30px;max-width:600px;overflow:hidden;padding:30px;width:100%}.hangman-area{border-bottom:2px solid #eee;margin-bottom:30px;padding-bottom:20px;text-align:center}.hangman-figure{animation:bounce .6s ease;font-size:80px;margin-bottom:15px}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.attempts-text{color:#666;font-size:16px;margin:0}.attempts-number{color:#667eea;font-size:18px;font-weight:700}.word-display{margin-bottom:30px;text-align:center}.display-title{color:#999;font-size:14px;font-weight:600;letter-spacing:1px;margin-bottom:12px;text-transform:uppercase}.theme-display{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;margin-bottom:30px;padding:15px;text-align:center}.theme-title{font-size:12px;font-weight:600;letter-spacing:1px;margin-bottom:5px;opacity:.9;text-transform:uppercase}.theme-text{font-size:18px;font-weight:700;text-transform:capitalize}.letters-container{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(10,minmax(0,1fr));margin-bottom:20px;margin-left:auto;margin-right:auto;max-width:540px}.letter-box{align-items:center;aspect-ratio:1/1;background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #667eea;border-radius:8px;color:#fff;display:flex;font-size:24px;font-weight:700;justify-content:center;transition:all .3s;width:100%}.letter-box.empty{background:#f0f0f0;border-color:#ddd;color:#999}.letter-box.filled{animation:reveal .3s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.letter-box.hyphen{background:#f8f9fa;border-color:#d0d4dc;color:#7a7f8c;font-weight:700}.letter-box.pad{background:#0000;border-color:#0000;box-shadow:none;color:#0000}@keyframes reveal{0%{opacity:0;transform:scale(.8) rotateY(90deg)}to{opacity:1;transform:scale(1) rotateY(0)}}.guesses-display{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.guesses-section{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;padding:15px}.guesses-title{color:#666;font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.correct-guesses{color:#4caf50}.correct-guesses,.incorrect-guesses{align-items:center;display:flex;font-size:16px;font-weight:600;min-height:30px}.incorrect-guesses{color:#f44336}@media (max-width:480px){.game-display{padding:20px}.hangman-figure{font-size:60px}.letter-box{font-size:16px}.letters-container{gap:6px;max-width:100%}}.loading-message{color:#666;padding:40px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;margin:0 auto 20px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.game-container{background:linear-gradient(135deg,#667eea,#764ba2);flex-direction:column;justify-content:center;min-height:100vh;padding:20px}.game-container,.game-header{align-items:center;display:flex;width:100%}.game-header{color:#fff;justify-content:space-between;margin-bottom:30px;max-width:600px}.header-left h1{margin-bottom:5px}.user-info{opacity:.9}.logout-btn{background:#fff3;border:2px solid #fff;border-radius:6px;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s}.logout-btn:hover{background:#fff;color:#667eea}.admin-btn{background:#fff3;border:2px solid #fff;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;margin-right:10px;padding:10px 20px;transition:all .3s}.admin-btn:hover{background:#fff;color:#667eea}.header-buttons{display:flex;gap:10px}.tournament-btn{background:#fff3;border:2px solid #fff;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s}.tournament-btn:hover{background:#fff;color:#ff9800}.message{animation:slideIn .3s ease-out;border-radius:8px;font-weight:600;margin-bottom:20px;max-width:600px;padding:15px;text-align:center;width:100%}.message.success{background:#4caf50;color:#fff}.message.error{background:#f44336;color:#fff}.message.info{background:#2196f3;color:#fff}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.new-game-btn{background:#fff;border:none;border-radius:8px;color:#667eea;cursor:pointer;font-size:16px;font-weight:700;margin-bottom:30px;padding:14px 32px;transition:transform .2s}.new-game-btn:hover{transform:translateY(-2px)}.admin-container{background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh;padding:30px 20px;width:100%}.admin-header{align-items:center;background:#fffffff2;border-radius:12px;box-shadow:0 10px 40px #0003;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px 30px}.header-left h1{color:#667eea;font-size:32px;margin:0 0 5px}.user-info{color:#999;font-size:14px;margin:0}.back-btn,.logout-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;margin-left:10px;padding:10px 20px;transition:all .3s ease}.back-btn{background:#667eea}.back-btn:hover{background:#5568d3;box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.logout-btn{background:#ff6b6b}.logout-btn:hover{background:#ff5252;box-shadow:0 5px 15px #ff6b6b66;transform:translateY(-2px)}.stats-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;display:flex;gap:15px;padding:20px;transition:all .3s ease}.stat-card:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-5px)}.stat-icon{font-size:32px}.stat-content{flex:1 1}.stat-label{color:#999;font-size:12px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.stat-value{color:#667eea;font-size:28px;font-weight:700}.filters-container{grid-gap:20px;align-items:end;background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px;padding:20px 30px}.filter-group{display:flex;flex-direction:column}.filter-group label{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.filter-input,.filter-select{border:2px solid #eee;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .3s ease}.filter-input:focus,.filter-select:focus{background:#f8f9ff;border-color:#667eea;outline:none}.refresh-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 30px;transition:all .3s ease;white-space:nowrap}.refresh-btn:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.games-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;overflow:hidden}.table-wrapper{overflow-x:auto}.games-table{border-collapse:collapse;font-size:14px;width:100%}.games-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:sticky;top:0}.games-table th{font-size:12px;font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase;white-space:nowrap}.games-table td{border-bottom:1px solid #eee;padding:12px 15px}.games-table tbody tr{transition:all .3s ease}.games-table tbody tr:hover{background:#f8f9ff}.games-table tbody tr.row-win{border-left:4px solid #51cf66}.games-table tbody tr.row-loss{border-left:4px solid #ff8787}.games-table tbody tr.row-in_progress{border-left:4px solid #ffd43b}.email-cell,.game-id-cell,.phrase-cell{color:#666;font-size:13px}.email-cell span,.game-id-cell code{display:inline-block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.phrase-cell strong{color:#333}.date-cell{color:#999;font-size:12px}.center.success{color:#51cf66;font-weight:600}.center.error{color:#ff8787;font-weight:600}.center.bold{color:#667eea;font-weight:700}.badge{display:inline-block;font-size:11px;letter-spacing:.5px;padding:4px 12px;width:fit-content}.badge-win{background:#d4edda;color:#155724}.badge-loss{background:#f8d7da;color:#721c24}.badge-progress{background:#fff3cd;color:#856404}.pagination{align-items:center;background:#f9f9f9;border-top:1px solid #eee;display:flex;gap:15px;justify-content:center;padding:20px}.pagination-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:#5568d3;transform:translateY(-2px)}.pagination-btn:disabled{background:#ccc;cursor:not-allowed;opacity:.5}.page-info{color:#666;font-size:13px;font-weight:600}.loading,.no-games{color:#999;font-size:16px;padding:40px;text-align:center}.error-message{font-size:14px}.no-tournaments{color:#999;font-size:16px}.date-cell{color:#666;font-size:13px;white-space:nowrap}.center{text-align:center}.delete-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px;transition:background-color .3s ease}.delete-btn:hover{background:#c82333}.badge-completed{background:#28a745}.badge-open{background:#ffc107;color:#212529}@media (max-width:1400px){.admin-container{grid-template-columns:1fr}.stats-container{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.games-table{font-size:12px}.games-table td,.games-table th{padding:8px}}@media (max-width:600px){.admin-container{padding:15px 10px}.admin-header{padding:15px}.header-left h1{font-size:24px}.stats-container{grid-template-columns:1fr}.stat-card{padding:15px}.games-table{font-size:11px}.games-table td,.games-table th{padding:6px}.email-cell span,.game-id-cell code,.phrase-cell strong{max-width:80px}.filters-container{gap:10px;grid-template-columns:1fr;padding:15px}}.tournaments-section{margin-top:40px}.tournaments-section h2{color:#fff;font-size:24px;margin-bottom:20px;text-shadow:0 2px 4px #0000004d}.tournaments-table-container{background:#fffffff2;border-radius:12px;box-shadow:0 10px 40px #0003;padding:20px}.tournaments-table{border-collapse:collapse;font-size:14px;width:100%}.tournaments-table td,.tournaments-table th{border-bottom:1px solid #e0e0e0;padding:12px 15px;text-align:left}.tournaments-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#333;font-weight:600}.tournaments-table tr:hover{background:#f8f9fa}.tournament-id-cell code{background:#f1f3f4;border-radius:3px;color:#666;font-size:12px;padding:2px 6px}.winner-cell{color:#28a745;font-weight:600}.tournament-container{font-family:Arial,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.tournament-header{align-items:center;border-bottom:2px solid #eee;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.header-left h1{color:#333;font-size:2.5rem;margin:0}.user-info{color:#666;font-size:1rem;margin:5px 0 0}.subscription-status{align-items:center;border-radius:5px;display:flex;font-size:.9rem;gap:10px;margin-top:10px;padding:8px 12px}.subscription-status.active{background-color:#e8f5e8;border:1px solid #4caf50;color:#2e7d32}.subscription-status.inactive{background-color:#ffebee;border:1px solid #f44336;color:#c62828}.status-icon{font-size:1.2rem}.subscribe-btn{background-color:#2196f3;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;padding:5px 10px;transition:background-color .3s}.subscribe-btn:hover{background-color:#1976d2}.header-actions{display:flex;gap:10px}.back-btn,.create-btn,.logout-btn{border:none;border-radius:5px;cursor:pointer;font-size:1rem;padding:10px 20px;transition:background-color .3s}.create-btn{background-color:#4caf50;color:#fff}.create-btn:hover{background-color:#45a049}.back-btn{background-color:#2196f3;color:#fff}.back-btn:hover{background-color:#0b7dda}.logout-btn{background-color:#f44336;color:#fff}.logout-btn:hover{background-color:#da190b}.error-message{background-color:#ffebee;border:1px solid #ffcdd2;border-radius:5px;color:#c62828}.tournament-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr}.all-tournaments h2,.open-tournaments h2{color:#333;font-size:1.8rem;margin-bottom:20px}.loading{font-size:1.2rem}.loading,.no-tournaments{color:#666;padding:40px;text-align:center}.no-tournaments{background-color:#f9f9f9;border:2px dashed #ddd;border-radius:10px}.no-tournaments p{font-size:1.1rem;margin:10px 0}.tournaments-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.tournament-card{background:#fff;border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 4px 6px #0000001a;padding:20px;transition:transform .2s,box-shadow .2s}.tournament-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-2px)}.tournament-card .tournament-header{align-items:center;border-bottom:none;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:0}.tournament-card h3{color:#333;font-size:1.3rem;margin:0}.tournament-details p{color:#555;font-size:.95rem;margin:8px 0}.tournament-details strong{color:#333}.join-btn{background-color:#ff9800;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:12px;transition:background-color .3s;width:100%}.join-btn:hover:not(:disabled){background-color:#e68900}.join-btn:disabled{background-color:#ccc;cursor:not-allowed}.badge{border-radius:12px;font-size:.8rem;font-weight:700;padding:4px 8px;text-transform:uppercase}.badge-open{background-color:#4caf50;color:#fff}.badge-completed{background-color:#9c27b0;color:#fff}.tournaments-list{background:#fff;border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 4px 6px #0000001a;overflow:hidden}.tournament-row{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:15px 20px;transition:background-color .2s}.tournament-row:hover{background-color:#f9f9f9}.tournament-row:last-child{border-bottom:none}.tournament-info{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.tournament-id{color:#333;font-size:1rem;font-weight:700}.games,.participants,.winner{color:#666;font-size:.9rem}.winner{color:#4caf50;font-weight:700}.tournament-times{color:#888}@media (max-width:768px){.tournament-header{flex-direction:column;gap:15px;text-align:center}.header-actions{flex-wrap:wrap;justify-content:center}.tournaments-grid{grid-template-columns:1fr}.tournament-row{flex-direction:column;gap:10px}.tournament-row,.tournament-times{align-items:flex-start}}.tournament-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:15px;overflow:hidden}.tournament-item.closed{opacity:.9}.tournament-summary{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);cursor:pointer;display:flex;justify-content:space-between;padding:15px 20px;transition:background-color .3s}.tournament-summary:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6)}.tournament-main-info{align-items:center;display:flex;flex:1 1;gap:15px}.tournament-main-info h3{color:#333;font-size:1.2rem;margin:0}.participant-count{background:#f8f9fa;border-radius:10px;color:#666;font-size:.9rem;padding:2px 8px}.tournament-times{align-items:flex-end;color:#666;display:flex;flex-direction:column;font-size:.85rem;gap:2px}.expand-icon{color:#666;font-size:1.2rem;margin-left:15px;transition:transform .3s}.tournament-details{background:#fafafa;border-top:1px solid #e0e0e0;padding:20px}.tournament-info{margin-bottom:20px}.tournament-info p{color:#555;margin:5px 0}.participants-section h4{color:#333;font-size:1.1rem;margin:0 0 15px}.participants-list{display:flex;flex-direction:column;gap:10px}.participant-item{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;justify-content:space-between;padding:10px 15px;transition:box-shadow .3s}.participant-item:hover{box-shadow:0 2px 8px #0000001a}.participant-item.winner{background:linear-gradient(135deg,#fff8dc,#fafad2);border-left:4px solid gold}.participant-info{align-items:center;display:flex;gap:15px}.participant-name{color:#333;font-weight:600}.winner-line-payout{border-radius:10px}.winner-badge,.winner-line-payout{background:linear-gradient(135deg,gold,orange);color:#333;font-size:.8rem;font-weight:700;margin-left:8px;padding:2px 8px}.winner-badge{border-radius:12px;box-shadow:0 2px 4px #ffd7004d}.games-played{background:#f8f9fa;border-radius:10px;color:#666;padding:2px 8px}.games-played,.participant-result{font-size:.9rem}.result-win{color:#28a745;font-weight:600}.payout-amount{background:linear-gradient(135deg,gold,orange);border-radius:8px;box-shadow:0 1px 3px #ffd7004d;color:#333;font-size:.85rem;font-weight:700;margin-left:8px;padding:2px 6px}.result-loss{color:#dc3545;font-weight:600}.result-pending{color:#ffc107;font-weight:600}.tournament-actions{margin-top:20px;text-align:center}.winner-highlight{align-items:center;background:linear-gradient(135deg,gold,orange);border-radius:8px 8px 0 0;display:flex;gap:15px;padding:15px 20px}.winner-badge{font-size:2rem}.winner-info h4{color:#333;font-size:1.3rem;margin:0}.winner-highlight-payout{color:#1b5e20;font-size:1rem;font-weight:700;margin-left:10px}.winner-info p{color:#555;font-weight:600;margin:5px 0 0}.closed-tournaments-section,.open-tournaments-section{margin-bottom:40px}.closed-tournaments-section h2,.open-tournaments-section h2{border-bottom:2px solid #4caf50;color:#333;font-size:1.8rem;margin-bottom:20px;padding-bottom:10px}.closed-tournaments-section h2{border-bottom-color:#9c27b0}.payment-container{font-family:Arial,sans-serif;margin:0 auto;max-width:600px;padding:20px}.payment-header{border-bottom:2px solid #eee;margin-bottom:30px;padding-bottom:20px;text-align:center}.payment-header h1{color:#333;font-size:2.5rem;margin:0}.payment-header p{color:#666;font-size:1rem;margin:10px 0 0}.checkout-form{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000001a;padding:30px}.checkout-form h2{color:#333;font-size:1.8rem;margin:0 0 20px;text-align:center}.payment-details{background:#f8f9fa;border-radius:8px;margin-bottom:25px;padding:20px}.payment-details p{color:#555;font-size:1.1rem;margin:8px 0}.card-element-container{margin-bottom:25px}.card-element-container label{color:#333;display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.payment-actions{display:flex;gap:15px;justify-content:center}.cancel-btn,.pay-btn{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 30px;transition:all .3s ease}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.pay-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.pay-btn:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.pay-btn:disabled{cursor:not-allowed;opacity:.6}.mock-payment-notice{margin-bottom:25px;text-align:center}.mock-card-preview{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;box-shadow:0 4px 15px #667eea4d;color:#fff;padding:30px}.mock-card-preview p{font-size:1.2rem;font-weight:600;margin:5px 0}.mock-card-preview p:first-child{font-size:1.4rem;margin-bottom:10px}.error-message{background:#fee;border-left:4px solid #c33;color:#c33;padding:15px}.success-message{background:#efe;border-left:4px solid #363;color:#363;padding:15px}.payment-error{padding:40px}.payment-error h2{color:#c33;margin-bottom:20px}.payment-error p{margin-bottom:30px}.payment-error button{background:#667eea;padding:12px 30px;transition:background .3s}.payment-error button:hover{background:#5a67d8}.cancel-btn:disabled,.pay-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}.error-message,.success-message{font-size:1rem;margin-bottom:20px;padding:15px 20px}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724}.payment-error{padding:40px 20px;text-align:center}.payment-error h2{color:#dc3545;margin-bottom:15px}.payment-error p{color:#666;margin-bottom:20px}.payment-error button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:12px 24px}.payment-error button:hover{background:#0056b3}.StripeElement{background:#fff;border:1px solid #ccc;border-radius:4px;font-size:16px;line-height:1.5;padding:12px 16px}.StripeElement--focus{border-color:#667eea;box-shadow:0 0 0 1px #667eea}.StripeElement--invalid{border-color:#dc3545}.StripeElement--webkit-autofill{background-color:#fefde5!important}@media (max-width:600px){.payment-container{padding:15px 10px}.checkout-form{padding:20px}.payment-actions{flex-direction:column}.cancel-btn,.pay-btn{width:100%}}.app-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px;width:100%}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
/*# sourceMappingURL=main.4e3b4bf4.css.map*/