:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}input,input[type=text],input[type=number],input[type=tel],input[type=email],input[type=password],input[type=url],select,textarea{font-size:16px!important;-webkit-text-size-adjust:100%}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{box-sizing:border-box;margin:0;padding:0}:root{--primary: #2563eb;--primary-dark: #1e40af;--success: #10b981;--danger: #ef4444;--bg: #0f172a;--bg-card: #1e293b;--text: #f1f5f9;--text-muted: #94a3b8;--border: #334155;--header-bg: linear-gradient(135deg, #1e3a5f 0%, #0f172a 100%);--header-border: rgba(59, 130, 246, .2);--overlay-subtle: rgba(255, 255, 255, .05);--overlay-light: rgba(255, 255, 255, .1);--overlay-medium: rgba(255, 255, 255, .15);--overlay-strong: rgba(255, 255, 255, .2);--overlay-text: rgba(255, 255, 255, .9);--border-subtle: rgba(255, 255, 255, .1);--border-medium: rgba(255, 255, 255, .2);--border-strong: rgba(255, 255, 255, .3);--border-active: rgba(255, 255, 255, .6)}[data-theme=light]{--primary: #2563eb;--primary-dark: #1e40af;--success: #10b981;--danger: #ef4444;--bg: #f8fafc;--bg-card: #ffffff;--text: #1e293b;--text-muted: #64748b;--border: #e2e8f0;--header-bg: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%);--header-border: rgba(37, 99, 235, .3);--overlay-subtle: rgba(0, 0, 0, .03);--overlay-light: rgba(0, 0, 0, .06);--overlay-medium: rgba(0, 0, 0, .1);--overlay-strong: rgba(0, 0, 0, .15);--overlay-text: rgba(0, 0, 0, .85);--border-subtle: rgba(0, 0, 0, .08);--border-medium: rgba(0, 0, 0, .15);--border-strong: rgba(0, 0, 0, .2);--border-active: rgba(0, 0, 0, .4)}html,body{width:100%;max-width:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg);color:var(--text);min-height:100vh}#root{width:100%;max-width:100%;padding:0;text-align:left}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;width:100%}.header{background:var(--header-bg);padding:1.5rem 10px;text-align:center;box-shadow:0 4px 6px #0000004d;display:flex;flex-direction:column;align-items:center;width:100%;box-sizing:border-box;border-bottom:1px solid var(--header-border)}.header h1{font-size:2rem;margin-bottom:.25rem}.subtitle{color:#ffffffe6;font-size:.9rem;margin-bottom:1rem}.nav-buttons{display:flex;gap:.75rem;justify-content:center;margin-top:1rem;flex-wrap:wrap;width:100%;max-width:100%;padding:0 10px;box-sizing:border-box}.nav-buttons button{padding:.5rem 1.5rem;border:2px solid var(--border-strong);background:transparent;color:#fff;border-radius:.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;flex:1;min-width:100px}.nav-buttons button.nav-active{background:var(--overlay-strong);border-color:var(--border-active)}.nav-buttons button:hover{background:var(--overlay-medium);border-color:var(--border-active)}.nav-buttons .add-ticket-nav{display:flex;align-items:center;justify-content:center;gap:.5rem}.nav-buttons .add-ticket-nav .camera-icon{font-size:1rem}.container{flex:1;margin:0 auto;padding:1.5rem 16px;width:100%;max-width:500px;box-sizing:border-box;overflow-x:hidden}.week-selector{background:var(--bg-card);padding:1rem 1.5rem;border-radius:.5rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem}.week-selector label{font-weight:600;color:var(--text);white-space:nowrap}.week-selector select{flex:1;padding:.75rem;border:2px solid var(--border);background:var(--bg);color:var(--text);border-radius:.5rem;font-size:16px;cursor:pointer;transition:all .2s}.week-selector select:hover{border-color:var(--primary)}.week-selector select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.mode-selector{display:flex;gap:10px;margin-bottom:1.5rem;justify-content:center}.mode-selector button{flex:1;padding:10px 20px;background:transparent;border:2px solid var(--border-strong);color:var(--overlay-text);border-radius:8px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:600}.mode-selector button:hover:not(.active){background:var(--overlay-medium);border-color:var(--border-active)}.mode-selector button.active{background:var(--overlay-strong);border-color:var(--border-active);color:var(--text)}.scanner{background:var(--bg-card);border-radius:.75rem;padding:1rem;margin-bottom:1rem}.scanner-buttons{display:flex;gap:.75rem;margin-bottom:.75rem}.scan-btn{flex:1;padding:10px 20px;background:transparent;border:2px solid var(--border-strong);color:var(--overlay-text);border-radius:8px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:600}.scan-btn:hover:not(:disabled){background:var(--overlay-medium);border-color:var(--border-active)}.scan-btn:disabled{opacity:.5;cursor:not-allowed}.processing{text-align:center;padding:2rem}.spinner{border:4px solid var(--border);border-top:4px solid var(--primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.preview{margin-top:1rem;border-radius:.5rem;overflow:hidden}.preview img{width:100%;height:auto;display:block}.scanner-help{margin-top:.75rem;padding:.75rem;background:#2563eb1a;border-radius:.5rem;border-left:3px solid var(--primary)}.scanner-help p{font-size:.8rem;color:var(--text-muted);margin:.125rem 0}.manual-entry{background:var(--bg-card);border-radius:.75rem;padding:1rem;margin-bottom:1rem}.bet-form{display:flex;flex-direction:column;gap:.75rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-weight:600;font-size:.8rem;color:var(--text-muted)}.form-group input,.form-group select{width:100%;padding:.625rem;border:2px solid var(--border);background:var(--bg);color:var(--text);border-radius:.5rem;font-size:.95rem;box-sizing:border-box}.form-group>div{width:100%}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary)}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-card);border:2px solid var(--border);border-top:none;border-radius:0 0 .5rem .5rem;max-height:200px;overflow-y:auto;z-index:1000;margin-top:-.5rem}.autocomplete-item{padding:.75rem;cursor:pointer;transition:background .2s;color:var(--text)}.autocomplete-item:hover{background:var(--primary);color:#fff}.add-bet-btn{padding:.875rem;background:var(--primary);color:#fff;border:2px solid var(--primary);border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:.25rem}.add-bet-btn:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.manual-bets-list{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--border)}.manual-bets-list h4{margin-bottom:1rem;color:var(--text-muted)}.ticket-bet-item{padding:.75rem;background:var(--bg);border-radius:.5rem;margin-bottom:.75rem;border:2px solid transparent;transition:all .2s}.ticket-bet-item.editing{border-color:var(--primary);background:#2563eb0d}.ticket-bet-content{margin-bottom:.5rem}.ticket-bet-week{font-size:.7rem;color:var(--text-muted);font-weight:600;margin-bottom:.25rem}.ticket-bet-main{display:flex;justify-content:space-between;align-items:center}.ticket-bet-team{font-weight:700;font-size:1rem;color:var(--text)}.ticket-bet-value{font-weight:700;font-size:1rem;color:var(--text);margin-left:1rem;white-space:nowrap}.bet-details{display:block;font-size:.875rem;color:var(--text-muted);margin-top:.25rem}.bet-actions{display:flex;gap:8px;justify-content:flex-end}.edit-btn{padding:6px 12px;background:#2563eb1a;color:var(--primary);border:1px solid rgba(37,99,235,.3);border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;letter-spacing:.3px}.edit-btn:hover{background:#2563eb33;border-color:var(--primary);transform:translateY(-1px)}.remove-btn{padding:6px 12px;background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3);border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;letter-spacing:.3px}.remove-btn:hover{background:#ef444433;border-color:#ef4444;transform:translateY(-1px)}.cancel-edit-btn{padding:.875rem;background:#64748b1a;color:var(--text-muted);border:2px solid var(--border);border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.cancel-edit-btn:hover{background:#64748b33;border-color:var(--text-muted)}.finalize-section{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--border)}.finalize-ticket-btn{width:100%;padding:1rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:1rem}.finalize-ticket-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 20px #2563eb66}.finalize-ticket-btn:disabled{opacity:.6;cursor:not-allowed}.bets-preview{background:var(--bg-card);border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem}.bets-preview h3{margin-bottom:1rem;color:var(--text)}.bets-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.bet-item{display:flex;justify-content:space-between;padding:.875rem;background:var(--bg);border-radius:.5rem;border-left:3px solid var(--primary)}.bet-item strong{color:var(--text)}.bet-item span{color:var(--text-muted);font-size:.875rem}.check-button{width:100%;padding:1rem;background:var(--primary);color:#fff;border:none;border-radius:.5rem;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .2s}.check-button:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 20px #2563eb66}.check-button:disabled{opacity:.6;cursor:not-allowed}.results{background:var(--bg-card);border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem}.results-header{text-align:center;padding:1.5rem;background:var(--bg);border-radius:.5rem;margin-bottom:1.5rem}.results-header.all-winning{background:linear-gradient(135deg,var(--success) 0%,#059669 100%);color:#fff}.results-header h2{font-size:1.75rem;margin-bottom:.5rem}.results-header p{font-size:1rem;opacity:.9}.results-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.result-item{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem;background:var(--bg);border-radius:.5rem;border-left:4px solid var(--border)}.result-item.winning{border-left-color:var(--success);background:#10b9811a}.result-item.losing{border-left-color:var(--danger);background:#ef44441a}.result-main{display:flex;justify-content:space-between;align-items:center;gap:1rem}.result-team{font-weight:700;font-size:1rem;color:var(--text)}.result-right{display:flex;align-items:center;gap:.75rem}.status-badge.status-win{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-badge.status-loss{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.status-badge.status-pending{background:#fb923c26;color:#fb923c;border:1px solid rgba(251,146,60,.3)}.bet-type{font-size:.875rem;color:var(--text-muted);white-space:nowrap}.game-info{display:flex;gap:.75rem;font-size:.8rem;color:var(--text-muted)}.game-info .score{font-weight:500}.game-info .quarter{color:var(--text-muted);opacity:.8}.no-game{color:var(--text-muted);font-style:italic;font-size:.8rem}.results-note{padding:1rem;background:#f59e0b1a;border-radius:.5rem;border-left:3px solid #f59e0b}.results-note p{font-size:.875rem;color:var(--text-muted)}.reset-button{width:100%;padding:1rem;background:var(--bg-card);color:var(--text);border:2px solid var(--border);border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.reset-button:hover{background:var(--bg);border-color:var(--primary);transform:translateY(-2px)}.saved-notice{text-align:center;padding:1rem;background:#10b9811a;border:2px solid var(--success);border-radius:.5rem;margin-bottom:1rem;color:var(--success);font-weight:600}.finalize-actions{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.action-btn{padding:1rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.action-btn.scan-another{background:var(--primary);color:#fff}.action-btn.scan-another:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.action-btn.view-tickets{background:var(--bg-card);color:var(--text);border:2px solid var(--border)}.action-btn.view-tickets:hover{border-color:var(--primary);background:#2563eb0d;transform:translateY(-2px)}@media(max-width:640px){.header h1{font-size:1.5rem}.container{padding:1rem 10px;max-width:100%;width:100%}.scanner-buttons,.mode-selector{flex-direction:column}}.financial-fields{background:#3b82f61a;border:2px solid var(--primary);border-radius:.75rem;padding:1.25rem;margin-bottom:1rem}.financial-header{margin-bottom:1rem}.premium-badge{display:inline-block;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:.375rem .875rem;border-radius:1rem;font-size:.875rem;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:640px){.form-row{grid-template-columns:1fr}}.sport-selector-container{margin-bottom:1rem}.sport-selector{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.sport-btn{padding:.5rem 1rem;background:transparent;border:2px solid var(--border-strong, #475569);color:var(--text-muted, #94a3b8);border-radius:8px;cursor:pointer;transition:all .2s;font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:.375rem;position:relative}.sport-btn:hover{background:var(--overlay-medium, rgba(255, 255, 255, .05));border-color:var(--border-active, #64748b)}.sport-btn.active{background:var(--primary, #3b82f6);border-color:var(--primary, #3b82f6);color:#fff}.sport-btn.coming-soon{opacity:.7}.sport-btn.coming-soon:hover{opacity:.85;border-color:var(--border-active, #64748b)}.soon-badge{font-size:.625rem;background:#8b5cf64d;color:#a78bfa;padding:.125rem .375rem;border-radius:4px;text-transform:uppercase;letter-spacing:.025em}.coming-soon-message{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#8b5cf61a,#3b82f61a);border:1px solid rgba(139,92,246,.3);border-radius:.5rem;padding:.75rem 1rem;margin-top:.75rem;font-size:.875rem;color:var(--text-muted, #94a3b8);animation:fadeIn .3s ease-out}.message-icon{font-size:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.sport-selector{gap:.375rem}.sport-btn{padding:.375rem .75rem;font-size:.8125rem}.soon-badge{font-size:.5625rem;padding:.0625rem .25rem}.coming-soon-message{font-size:.8125rem;padding:.625rem .75rem}}.ticket-history{width:100%;max-width:100%;box-sizing:border-box}.ticket-history h2{margin-bottom:20px;text-align:center}.history-tabs{display:flex;gap:10px;margin-bottom:20px;justify-content:center}.history-tabs button{padding:10px 20px;background:transparent;border:2px solid var(--border-strong);color:var(--overlay-text);border-radius:8px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:600}.history-tabs button:hover{background:var(--overlay-medium);border-color:var(--border-active)}.history-tabs button.tab-active{background:var(--overlay-strong);border-color:var(--border-active);color:var(--text)}.loading,.no-tickets{text-align:center;padding:40px 20px;color:var(--text-muted, #94a3b8)}.no-tickets p{margin:10px 0}.tickets-list{display:flex;flex-direction:column;gap:15px;width:100%;max-width:100%}.ticket-card{background:var(--bg-card, #1e293b);border-radius:8px;box-shadow:0 2px 4px #0000004d;overflow:hidden;border:1px solid var(--border, #334155);word-break:break-word;max-width:100%}.refresh-all-btn{display:block;width:100%;padding:14px 20px;margin-bottom:16px;background:#64748b26;color:#94a3b8;font-size:16px;font-weight:600;border:1px solid rgba(100,116,139,.3);border-radius:10px;cursor:pointer;transition:all .2s}.refresh-all-btn:hover:not(:disabled){background:#64748b40;border-color:#94a3b8;color:#f1f5f9}.refresh-all-btn:disabled{opacity:.7;cursor:not-allowed}.ticket-header{padding:10px 12px;cursor:pointer;transition:background-color .2s}.ticket-header:hover{background-color:var(--overlay-subtle)}.ticket-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:10px;min-width:0}.status-badge{padding:6px 14px;border-radius:6px;font-weight:600;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.status-badge.status-winning{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-badge.status-losing{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.status-badge.status-pending{background:#64748b26;color:#94a3b8;border:1px solid rgba(100,116,139,.3)}.status-badge.status-scheduled{background:#64748b26;color:#64748b;border:1px solid rgba(100,116,139,.3)}.ticket-name{color:var(--text, #f1f5f9);font-size:15px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:color .2s}.ticket-name:hover{color:#3b82f6}.ticket-name .edit-icon{font-size:12px;opacity:.5;transition:opacity .2s}.ticket-name:hover .edit-icon{opacity:1}.ticket-date,.bet-count{color:var(--text-muted, #94a3b8);font-size:13px}.ticket-stats{display:flex;gap:8px;align-items:center;font-size:14px;flex:1}.ticket-actions{display:flex;flex-direction:row;gap:6px;margin-left:auto}.ticket-actions .action-btn{padding:6px 10px;font-size:12px;margin-left:0;white-space:nowrap}.ticket-stats .winning{color:#4caf50;font-weight:700}.ticket-stats .losing{color:#f44336;font-weight:700}.action-btn{padding:10px 14px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-left:8px;border:1px solid transparent;letter-spacing:.3px}.refresh-ticket-btn{background:#3b82f61a;color:#3b82f6;border-color:#3b82f64d}.refresh-ticket-btn:hover{background:#3b82f633;border-color:#3b82f6;transform:translateY(-1px)}.archive-ticket-btn{background:#64748b1a;color:#94a3b8;border-color:#64748b4d}.archive-ticket-btn:hover{background:#64748b33;border-color:#94a3b8;transform:translateY(-1px)}.archive-ticket-btn.unarchive{background:#22c55e1a;color:#22c55e;border-color:#22c55e4d}.archive-ticket-btn.unarchive:hover{background:#22c55e33;border-color:#22c55e}.delete-ticket-btn{background:#ef44441a;color:#ef4444;border-color:#ef44444d}.delete-ticket-btn:hover{background:#ef444433;border-color:#ef4444;transform:translateY(-1px)}.ticket-bets{border-top:1px solid var(--border, #334155);padding:15px;background-color:#0003}.bet-detail{padding:8px 10px;background:var(--bg, #0f172a);border-radius:4px;margin-bottom:8px;border:1px solid var(--border, #334155)}.bet-detail:last-child{margin-bottom:0}.bet-row{display:flex;justify-content:space-between;align-items:center}.bet-team-name{font-weight:700;color:var(--text, #f1f5f9);font-size:.95rem}.bet-right-group{display:flex;align-items:center;gap:.75rem}.bet-value{font-size:.85rem;color:var(--text-muted, #94a3b8);white-space:nowrap}.bet-team{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.bet-status-badge{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.bet-status-badge.bet-winning{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.bet-status-badge.bet-losing{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.bet-status-badge.bet-pending{background:#fb923c26;color:#fb923c;border:1px solid rgba(251,146,60,.3)}.bet-status-badge.bet-scheduled{background:#64748b26;color:#64748b;border:1px solid rgba(100,116,139,.3)}.bet-status-container{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.bet-game-time{font-size:10px;color:var(--text-muted, #94a3b8);white-space:nowrap}.bet-info{display:flex;gap:10px;font-size:14px;color:var(--text-muted, #94a3b8)}.bet-team strong,.ticket-stats span{color:var(--text, #f1f5f9)}.teaser{color:#2196f3;font-weight:700}.game-status{font-size:12px;color:var(--text-muted, #94a3b8);margin-top:5px;font-style:italic}.game-status-detailed{margin-top:8px;padding:8px;background:var(--overlay-subtle);border-radius:4px;border-left:3px solid #3b82f6}.game-status-detailed.status-winning{border-left-color:#22c55e;background:#22c55e0d}.game-status-detailed.status-losing{border-left-color:#ef4444;background:#ef44440d}.game-status-detailed.status-scheduled{border-left-color:#64748b;background:#64748b0d}.game-status-detailed.status-pending{border-left-color:#fb923c;background:#fb923c0d}.game-status-line{font-size:13px;color:var(--text, #f1f5f9);margin-bottom:5px;font-weight:500}.adjusted-score{font-size:12px;color:var(--text-muted, #94a3b8);font-style:italic;margin-top:4px}.ticket-financial-info{background:#3b82f60d;border-top:1px solid rgba(59,130,246,.2);padding:6px 12px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}.financial-item{display:flex;flex-direction:row;align-items:center;gap:6px}.financial-label{font-size:11px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.03em}.financial-value{font-size:14px;font-weight:700;color:var(--text)}.financial-value.potential{color:#3b82f6}.financial-item.profit .financial-value{color:var(--success)}.history-tabs .tab-locked{opacity:.6;cursor:pointer}.history-tabs .tab-locked:hover{opacity:.8}.archive-sections{display:flex;flex-direction:column;gap:12px}.archive-section{background:var(--bg-card, #1e293b);border-radius:8px;border:1px solid var(--border, #334155);overflow:hidden}.archive-section-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;cursor:pointer;transition:background-color .2s}.archive-section-header:hover{background-color:var(--overlay-subtle)}.archive-section-header.expanded{border-bottom:1px solid var(--border, #334155)}.section-title{font-size:16px;font-weight:600}.section-title.wins{color:#22c55e}.section-title.losses{color:#ef4444}.section-arrow{color:var(--text-muted, #94a3b8);font-size:12px}.archive-section .tickets-list{padding:12px;background:#0000001a}.archive-section .no-tickets{padding:20px}.view-mode-toggle{display:flex;justify-content:center;gap:0;margin-bottom:16px;background:var(--bg-card, #1e293b);border-radius:8px;padding:4px;border:1px solid var(--border, #334155)}.view-mode-toggle button{padding:8px 16px;background:transparent;border:none;color:var(--text-muted, #94a3b8);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;border-radius:6px;flex:1}.view-mode-toggle button:hover{color:var(--text, #f1f5f9);background:var(--overlay-subtle)}.view-mode-toggle button.view-mode-active{background:var(--primary, #2563eb);color:#fff}.ticket-card.minimal-view .ticket-header{padding:8px 12px}.ticket-card.minimal-view .ticket-info{margin-bottom:0}@media(max-width:480px){.ticket-stats{gap:6px}.ticket-stats .action-btn{padding:4px 8px;font-size:11px}}.stats-container{padding:0;max-width:100%}.stats-loading{text-align:center;padding:2rem;color:var(--text-muted)}.stats-error{background:#ef44441a;border:1px solid var(--danger);border-radius:.5rem;padding:1rem;color:var(--danger);text-align:center}.premium-banner{background:linear-gradient(135deg,#3b82f626,#8b5cf626);border:1px solid rgba(59,130,246,.3);border-radius:.75rem;padding:.75rem 1rem;margin-bottom:1rem}.premium-banner-content{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.premium-banner-icon{background:#3b82f633;color:var(--primary);padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase}.premium-banner-content p{flex:1;margin:0;color:var(--text-muted);font-size:.875rem}.premium-upgrade-btn{background:var(--primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:.375rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:background .2s}.premium-upgrade-btn:hover{background:var(--primary-hover)}.smart-summary-card{background:linear-gradient(135deg,var(--bg-card) 0%,rgba(30,41,59,.95) 100%);border-radius:.75rem;padding:1.25rem;margin-bottom:1rem;border:1px solid var(--border)}.smart-summary-title{font-size:1rem;font-weight:600;color:var(--text-muted);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.summary-headline{margin-bottom:1rem}.headline-text{font-size:1.1rem;color:var(--text);line-height:1.5;margin:0}.insight-bullets{list-style:none;padding:0;margin:0}.insight-item{padding:.5rem 0 .5rem 1.25rem;position:relative;font-size:.95rem;color:var(--text);line-height:1.4;border-bottom:1px solid rgba(255,255,255,.05)}.insight-item:last-child{border-bottom:none}.insight-item:before{content:"•";position:absolute;left:0;color:var(--primary);font-weight:700}.highlight-win{color:var(--success)!important;font-weight:600}.highlight-loss{color:var(--danger)!important;font-weight:600}.highlight-primary{color:var(--primary)!important;font-weight:600}.stats-accordion{display:flex;flex-direction:column;gap:.5rem}.accordion-section{background:var(--bg-card);border-radius:.75rem;border:1px solid var(--border);overflow:hidden;transition:all .2s ease}.accordion-section.expanded{border-color:var(--primary)}.accordion-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem;background:transparent;border:none;color:var(--text);font-size:1rem;font-weight:600;cursor:pointer;text-align:left;transition:background .2s}.accordion-header:hover{background:#ffffff08}.accordion-title{flex:1}.accordion-arrow{font-size:1.25rem;font-weight:300;color:var(--text-muted);width:1.5rem;text-align:center}.accordion-content{padding:0 1rem 1rem;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.section-intro{font-size:.875rem;color:var(--text-muted);margin:0 0 1rem;line-height:1.4}.no-data{color:var(--text-muted);font-size:.875rem;text-align:center;padding:1rem 0}.no-data-friendly{text-align:center;padding:1rem 0}.no-data-friendly p{color:var(--text-muted);font-size:.95rem;margin:0 0 .5rem}.no-data-hint{font-size:.8rem!important;opacity:.7}.parlay-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.parlay-row{display:grid;grid-template-columns:4rem 3rem 1fr;gap:1rem;align-items:center;padding:.625rem .75rem;background:#ffffff05;border-radius:.375rem}.parlay-legs{font-weight:600;color:var(--text)}.parlay-record{color:var(--text-muted);font-size:.875rem}.parlay-rate{text-align:right;font-weight:600;font-size:.875rem;color:var(--text-muted)}.failure-insight{background:#ef444414;border-radius:.5rem;padding:.75rem;border-left:3px solid var(--danger)}.failure-insight .insight-label{font-size:.8rem;color:var(--text-muted);margin:0 0 .25rem}.failure-insight .insight-value{font-size:.95rem;color:var(--text);font-weight:500;margin:0}.bet-type-list{display:flex;flex-direction:column;gap:.75rem}.bet-type-row{display:flex;flex-direction:column;gap:.375rem}.bet-type-info{display:flex;justify-content:space-between;align-items:center}.bet-type-name{font-weight:600;color:var(--text)}.bet-type-record{color:var(--text-muted);font-size:.875rem;display:flex;align-items:center;gap:.5rem}.limited-badge{font-size:.7rem;background:#64748b33;color:var(--text-muted);padding:.125rem .375rem;border-radius:.25rem}.win-rate-bar-container{position:relative;height:1.5rem;background:#ffffff0d;border-radius:.375rem;overflow:hidden}.win-rate-bar{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,var(--success),rgba(16,185,129,.6));border-radius:.375rem;transition:width .3s ease}.win-rate-text{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);font-size:.75rem;font-weight:600;color:var(--text)}.coaching-summary{margin-top:1rem;padding:.75rem;background:#3b82f614;border-radius:.5rem}.coaching-text{font-size:.875rem;color:var(--text);margin:0 0 .375rem;line-height:1.4}.coaching-text:last-child{margin-bottom:0}.team-section{margin-bottom:1rem}.team-section:last-child{margin-bottom:0}.team-section-title{font-size:.875rem;font-weight:600;margin:0 0 .5rem;padding-bottom:.25rem;border-bottom:1px solid var(--border)}.team-section-title.top-teams{color:var(--success)}.team-section-title.bottom-teams{color:var(--danger)}.team-list{display:flex;flex-direction:column;gap:.5rem}.team-row{display:grid;grid-template-columns:1.5rem 1fr auto auto;gap:.75rem;align-items:center;padding:.5rem;background:#ffffff05;border-radius:.375rem}.team-rank{color:var(--text-muted);font-size:.875rem;text-align:center}.team-name{font-weight:500;color:var(--text)}.team-record{color:var(--text-muted);font-size:.875rem}.team-win-rate{font-weight:600;font-size:.875rem}.weekly-performance-simple{display:flex;flex-direction:column;gap:.25rem}.weekly-header-simple{display:grid;grid-template-columns:4rem 3.5rem 1fr;gap:.75rem;padding:.5rem;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.weekly-row-simple{display:grid;grid-template-columns:4rem 3.5rem 1fr;gap:.75rem;padding:.5rem;background:#ffffff05;border-radius:.375rem;align-items:center}.week-number{font-weight:600;color:var(--text);font-size:.875rem}.week-record{color:var(--text);font-size:.875rem}.week-profit{font-weight:600;font-size:.875rem;text-align:right}.history-summary{margin-top:1rem;padding:.75rem;background:#3b82f614;border-radius:.5rem}.history-insight{font-size:.875rem;color:var(--text);margin:0 0 .375rem;line-height:1.4}.history-insight:last-child{margin-bottom:0}.history-insight strong{color:var(--primary)}.conditions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.condition-card{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;background:#ffffff05;border-radius:.5rem;text-align:center}.condition-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.condition-record{font-size:.875rem;color:var(--text)}.condition-rate{font-size:1.125rem;font-weight:700}@media(max-width:480px){.smart-summary-card{padding:1rem}.headline-text{font-size:1rem}.insight-item{font-size:.875rem}.premium-banner-content{flex-direction:column;text-align:center}.premium-banner-content p{text-align:center}.premium-upgrade-btn{width:100%}.parlay-row{grid-template-columns:3.5rem 2.5rem 1fr;gap:.5rem;font-size:.875rem}.weekly-header-simple,.weekly-row-simple{grid-template-columns:3.5rem 3rem 1fr;gap:.5rem;font-size:.75rem}.week-number{font-size:.75rem}}.stats-sport-filter{margin-bottom:1rem;text-align:center}.sport-filter-note{margin:.5rem 0 0;font-size:.75rem;color:var(--text-muted, #94a3b8);opacity:.7}.edit-scanned-bets{max-width:800px;margin:0 auto;padding:20px}.edit-header{margin-bottom:25px;text-align:center}.edit-header h3{margin-bottom:10px;font-size:24px}.edit-header p{color:var(--text-muted, #94a3b8);font-size:14px}.ticket-info-summary{margin-bottom:25px;padding:12px 15px;background:transparent;border:none;border-radius:0;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.summary-item{display:flex;gap:8px;align-items:center;font-size:14px}.summary-item .label{color:var(--text-muted, #94a3b8);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.summary-item .value{color:var(--text, #f1f5f9);font-weight:500}.edit-details-link{background:none;border:none;color:var(--primary, #3b82f6);cursor:pointer;font-size:12px;font-weight:600;text-decoration:underline;padding:0;transition:color .2s;margin-left:auto;text-transform:uppercase;letter-spacing:.3px}.edit-details-link:hover{color:var(--primary-dark, #2563eb)}.ticket-info-section{margin-bottom:25px;padding:15px;background:var(--bg-card, #1e293b);border:1px solid var(--border, #334155);border-radius:8px}.ticket-info-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.info-field{display:flex;flex-direction:column;gap:5px}.info-field label{font-size:12px;color:var(--text-muted, #94a3b8);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.info-field input,.info-field select{padding:10px;border:1px solid var(--border, #334155);border-radius:6px;font-size:14px;background:var(--bg, #0f172a);color:var(--text, #f1f5f9)}.info-field input:focus,.info-field select:focus{outline:none;border-color:var(--primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.bets-editor{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.bet-editor-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;padding:10px;background:var(--bg-card, #1e293b);border:1px solid var(--border, #334155);border-radius:8px;align-items:end}.bet-field{display:flex;flex-direction:column;gap:3px}.bet-field label{font-size:11px;color:var(--text-muted, #94a3b8);font-weight:600;text-transform:uppercase;letter-spacing:.2px}.bet-field input,.bet-field select{padding:8px;border:1px solid var(--border, #334155);border-radius:6px;font-size:14px;background:var(--bg, #0f172a);color:var(--text, #f1f5f9)}.bet-field input:focus,.bet-field select:focus{outline:none;border-color:var(--primary, #3b82f6)}.delete-bet-btn{padding:8px 12px;background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3);border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s;letter-spacing:.3px;white-space:nowrap}.delete-bet-btn:hover{background:#ef444433;border-color:#ef4444;transform:translateY(-1px)}.add-another-bet-btn,.done-editing-btn{width:100%;padding:14px;background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.3);border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:25px;letter-spacing:.3px}.add-another-bet-btn:hover,.done-editing-btn:hover{background:#3b82f633;border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.edit-actions{display:flex;gap:15px;justify-content:center}.edit-actions button{padding:15px 30px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn{background:var(--bg-card, #1e293b);color:var(--text, #f1f5f9);border:1px solid var(--border, #334155)}.cancel-btn:hover{background:#f443361a}.confirm-btn{background:var(--primary, #3b82f6);color:#fff}.confirm-btn:hover{background:var(--primary-dark, #2563eb);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-card, #1e293b);border:1px solid var(--border, #334155);border-radius:6px;margin-top:4px;max-height:200px;overflow-y:auto;z-index:1000;box-shadow:0 4px 12px #0000004d}.autocomplete-item{padding:10px;cursor:pointer;border-bottom:1px solid var(--border, #334155);color:var(--text, #f1f5f9);font-size:14px;transition:background-color .2s}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:#3b82f61a}@media(max-width:768px){.bet-editor-row{grid-template-columns:1fr;gap:12px}.edit-actions{flex-direction:column}.edit-actions button{width:100%}.ticket-info-summary{flex-direction:column;align-items:flex-start}.edit-details-link{margin-left:0;margin-top:10px}.ticket-info-row{grid-template-columns:1fr}}.admin-dashboard{padding:20px;max-width:1200px;margin:0 auto}.admin-dashboard h2{font-size:2rem;margin-bottom:20px;color:#fff}.admin-tabs{display:flex;gap:8px;margin-bottom:30px;background:#ffffff0d;padding:6px;border-radius:12px;width:fit-content}.admin-tabs button{padding:10px 24px;background:transparent;border:none;border-radius:8px;color:#9ca3af;font-weight:500;cursor:pointer;transition:all .2s}.admin-tabs button.active{background:#3b82f6;color:#fff}.admin-tabs button:hover:not(.active){background:#ffffff1a}.admin-section{margin-bottom:30px}.admin-section h3{font-size:1.3rem;margin-bottom:15px;color:#e0e0e0}.status-card,.control-card,.info-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px}.status-row{display:flex;align-items:center;margin-bottom:20px;gap:15px}.status-label{font-weight:600;color:#e0e0e0;min-width:100px}.status-badge{padding:8px 16px;border-radius:20px;font-weight:600;font-size:.9rem}.status-badge.active{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-badge.inactive{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.toggle-button{padding:8px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.toggle-button:hover{background:#2563eb;transform:translateY(-1px)}.mode-buttons{display:flex;gap:10px;flex:1}.mode-button{padding:10px 20px;background:#ffffff0d;color:#e0e0e0;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.mode-button.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.mode-button:hover:not(.active){background:#ffffff1a;border-color:#fff3}.mode-indicator{font-size:1.2rem;font-weight:700;min-width:20px;text-align:center}.mode-button.active .mode-indicator{color:#fff}.mode-button:not(.active) .mode-indicator{color:#6b7280}.mode-description{margin-top:15px;padding:15px;background:#3b82f61a;border-left:3px solid #3b82f6;border-radius:6px}.mode-description p{margin:0;color:#e0e0e0;line-height:1.6}.mode-description strong{color:#3b82f6}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}.stat-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:25px;text-align:center;transition:transform .2s}.stat-card:hover{transform:translateY(-2px);border-color:#3b82f64d}.api-key-card{background:#22c55e0d;border-color:#22c55e33}.api-key-card:hover{border-color:#22c55e66}.stat-value{font-size:2.5rem;font-weight:700;color:#3b82f6;margin-bottom:10px}.stat-label{color:#9ca3af;font-size:.9rem;font-weight:500}.control-card{text-align:center}.control-description{color:#9ca3af;margin-bottom:20px}.poll-button{padding:15px 40px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #3b82f64d}.poll-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.poll-button:disabled{opacity:.6;cursor:not-allowed}.info-card{background:#6366f10d;border-color:#6366f133}.info-card ul{margin:0;padding-left:20px;color:#e0e0e0;line-height:1.8}.info-card li{margin-bottom:12px}.info-card strong{color:#818cf8}.add-source-form{display:flex;gap:12px}.add-source-form input{flex:1;padding:12px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:1rem}.add-source-form input:focus{outline:none;border-color:#3b82f6}.add-source-form button{padding:12px 24px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;white-space:nowrap}.add-source-form button:hover:not(:disabled){background:#2563eb}.add-source-form button:disabled{opacity:.6;cursor:not-allowed}.empty-state{text-align:center;color:#9ca3af;padding:40px;background:#ffffff05;border-radius:12px}.referral-list{display:flex;flex-direction:column;gap:16px}.referral-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px}.referral-item.inactive{opacity:.6}.referral-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.referral-info{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.referral-name{font-weight:600;color:#fff;font-size:1.1rem}.referral-code{font-family:monospace;background:#3b82f633;color:#60a5fa;padding:4px 10px;border-radius:6px;font-size:.85rem}.referral-status{padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.referral-status.active{background:#22c55e33;color:#22c55e}.referral-status.inactive{background:#ef444433;color:#ef4444}.referral-count{text-align:right}.referral-count .count-value{font-size:1.8rem;font-weight:700;color:#3b82f6}.referral-count .count-label{display:block;font-size:.8rem;color:#9ca3af}.referral-actions{display:flex;gap:8px;flex-wrap:wrap}.referral-actions button{padding:8px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#e0e0e0;font-size:.85rem;cursor:pointer;transition:all .2s}.referral-actions button:hover{background:#ffffff26}.referral-actions .delete-btn{color:#ef4444;border-color:#ef44444d}.referral-actions .delete-btn:hover{background:#ef444433}.referral-users{margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}.referral-users ul{list-style:none;padding:0;margin:0}.referral-users li{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05);color:#e0e0e0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.referral-users li:last-child{border-bottom:none}.user-email,.user-phone{color:#9ca3af;font-size:.85rem}.user-date{margin-left:auto;color:#6b7280;font-size:.8rem}.no-users{color:#6b7280;font-style:italic;margin:0}.qr-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.qr-modal{background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:30px;max-width:400px;width:100%;text-align:center}.qr-modal h3{color:#fff;margin-bottom:20px;font-size:1.3rem}.qr-image-container{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;display:inline-block}.qr-image-container img{display:block;width:260px;height:260px}.qr-code-label{font-family:monospace;background:#3b82f633;color:#60a5fa;padding:8px 16px;border-radius:8px;display:inline-block;margin-bottom:10px;font-size:1.1rem}.qr-link{color:#9ca3af;font-size:.85rem;word-break:break-all;margin-bottom:20px}.qr-modal-actions{display:flex;gap:12px;justify-content:center}.qr-modal-actions button{padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.qr-modal-actions .download-btn{background:#3b82f6;color:#fff}.qr-modal-actions .download-btn:hover{background:#2563eb}.qr-modal-actions .close-btn{background:#ffffff1a;color:#e0e0e0;border:1px solid rgba(255,255,255,.2)}.qr-modal-actions .close-btn:hover{background:#ffffff26}@media(max-width:768px){.admin-dashboard{padding:15px}.status-row{flex-direction:column;align-items:flex-start}.mode-buttons{width:100%}.mode-button{flex:1}.stats-grid{grid-template-columns:repeat(2,1fr)}.add-source-form{flex-direction:column}.referral-header{flex-direction:column;align-items:flex-start;gap:15px}.referral-count{text-align:left}.admin-tabs{flex-wrap:wrap}}@media(max-width:480px){.admin-dashboard{padding:10px;max-width:100%}.admin-dashboard h2{font-size:1.5rem}.admin-tabs{gap:4px;padding:4px}.admin-tabs button{padding:8px 16px;font-size:.85rem}.status-card,.control-card,.info-card{padding:15px}.admin-section h3{font-size:1.1rem}.stats-grid{grid-template-columns:1fr}.mode-buttons{flex-direction:column}.mode-button{width:100%;padding:10px}.add-source-form{gap:10px}.add-source-form input{width:100%}.referral-sources-list{gap:10px}.referral-source-item{padding:12px}.qr-modal{max-width:90%;width:auto}}.account-page{width:100%;max-width:100%;box-sizing:border-box}.account-header{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:1.5rem}.account-header h2{margin:0;color:var(--text);font-size:1.5rem}.back-button{background:var(--border);color:var(--text);border:none;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.back-button:hover{background:#475569}.account-content{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:100%}.account-section{background:var(--bg-card);border-radius:.75rem;padding:1.5rem;word-break:break-word;max-width:100%}.account-section h3{margin:0 0 1rem;color:var(--text);font-size:1rem;font-weight:600}.user-info p{margin:.5rem 0;color:var(--text-muted)}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border);min-width:0;gap:.75rem}.info-row:last-child{border-bottom:none}.info-label{font-weight:600;color:var(--text-muted);font-size:.875rem;flex-shrink:0}.info-value{color:var(--text);font-size:.875rem;text-align:right;word-break:break-word;overflow-wrap:break-word;min-width:0}.edit-button{background:var(--primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.edit-button:hover{background:var(--primary-dark);transform:translateY(-1px)}.edit-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-muted)}.form-group input{background:var(--bg);border:2px solid var(--border);border-radius:.5rem;padding:.75rem;color:var(--text);font-size:1rem;transition:all .2s}.form-group input:focus{outline:none;border-color:var(--primary)}.edit-actions{display:flex;gap:.75rem;margin-top:.5rem}.save-button{flex:1;background:var(--success);color:#fff;border:none;padding:.875rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.save-button:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.save-button:disabled{opacity:.6;cursor:not-allowed}.cancel-button{flex:1;background:var(--border);color:var(--text-muted);border:none;padding:.875rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.cancel-button:hover{background:#475569}.access-info{display:flex;flex-direction:column;gap:1.25rem}.tier-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:.5rem;font-weight:700;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;width:fit-content}.tier-badge.free{background:#64748b26;color:var(--text-muted);border:1px solid rgba(100,116,139,.3)}.tier-badge.premium{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1e293b;box-shadow:0 4px 12px #fbbf244d}.usage-info{background:var(--bg);padding:1rem;border-radius:.5rem;border:1px solid var(--border)}.usage-info p{margin:.5rem 0;color:var(--text);font-size:.875rem}.usage-info p:first-child{margin-top:0}.usage-info p:last-child{margin-bottom:0}.reset-info{font-size:.8rem!important;color:var(--text-muted)!important}.upgrade-section{background:var(--bg);padding:1.25rem;border-radius:.5rem;border:2px solid var(--primary)}.upgrade-section h4{margin:0 0 1rem;color:var(--text);font-size:1rem;font-weight:600}.premium-features{list-style:none;padding:0;margin:0 0 1rem}.premium-features li{padding:.5rem 0;color:var(--text-muted);font-size:.875rem;display:flex;align-items:center;gap:.5rem}.upgrade-button{width:100%;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;border:none;padding:1rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.upgrade-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #2563eb4d}.premium-active{background:var(--bg);padding:1.25rem;border-radius:.5rem;border:2px solid var(--success)}.premium-active p{margin:.75rem 0;color:var(--text);font-size:.875rem}.premium-active p:first-child{margin-top:0;color:var(--success);font-weight:600}.manage-link{margin-top:1rem}.manage-link a{display:inline-block;background:var(--border);color:var(--text);padding:.75rem 1.25rem;border-radius:.5rem;text-decoration:none;font-weight:500;font-size:.875rem;transition:all .2s}.manage-link a:hover{background:#475569;transform:translateY(-1px)}.signout-button{width:100%;background:#ef44441a;color:var(--danger);border:1px solid rgba(239,68,68,.3);padding:.875rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.signout-button:hover{background:#ef444433;border-color:var(--danger)}.signout-button:disabled{opacity:.6;cursor:not-allowed}.settings-list{display:flex;flex-direction:column;gap:.75rem}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg);border-radius:.5rem;border:1px solid var(--border);gap:1rem}.setting-info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.setting-label{font-weight:600;color:var(--text);font-size:.875rem}.setting-description{font-size:.75rem;color:var(--text-muted);line-height:1.4}.toggle-switch{position:relative;display:inline-block;width:48px;height:26px;cursor:pointer;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border);transition:.3s;border-radius:26px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 1px var(--primary)}.theme-select{padding:.5rem 1rem;background:var(--bg-card);color:var(--text);border:2px solid var(--border);border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.theme-select:hover{border-color:var(--primary)}.theme-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.account-tabs{display:flex;gap:0;margin-bottom:1.5rem;border-bottom:2px solid var(--border)}.tab-button{background:none;border:none;color:var(--text-muted);padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent;margin-bottom:-2px}.tab-button:hover{color:var(--text)}.tab-button.active{color:var(--primary);border-bottom-color:var(--primary)}.access-status{background:var(--bg);padding:1rem;border-radius:.5rem;border:1px solid var(--border)}.access-detail{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.access-detail:first-child{padding-top:0}.access-detail:last-child{padding-bottom:0}.access-label{font-weight:600;color:var(--text-muted);font-size:.875rem}.access-value{color:var(--text);font-size:.875rem;font-weight:600}.access-value.time-remaining{color:var(--warning)}.upgrade-description{color:var(--text-muted);font-size:.875rem;margin:0 0 1rem}.pass-options{display:flex;flex-direction:column;gap:1rem}.pass-card{background:var(--bg-card);border:2px solid var(--border);border-radius:.75rem;padding:1.25rem;position:relative;transition:all .2s}.pass-card:hover{border-color:var(--primary)}.pass-card.featured{border-color:var(--primary);background:linear-gradient(135deg,#3b82f61a,#2563eb0d)}.featured-badge{position:absolute;top:-10px;right:16px;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1e293b;font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:1rem;text-transform:uppercase;letter-spacing:.5px}.pass-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.pass-name{font-weight:700;color:var(--text);font-size:1rem}.pass-price{font-weight:700;color:var(--primary);font-size:1.25rem}.pass-features{list-style:none;padding:0;margin:0 0 1rem}.pass-features li{padding:.375rem 0;color:var(--text-muted);font-size:.875rem;display:flex;align-items:center;gap:.5rem}.pass-features li:before{content:"✓";color:var(--success);font-weight:700}.purchase-button{width:100%;background:var(--border);color:var(--text);border:none;padding:.875rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.purchase-button:hover:not(:disabled){background:#475569;transform:translateY(-1px)}.purchase-button.featured{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff}.purchase-button.featured:hover:not(:disabled){box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.purchase-button:disabled{opacity:.6;cursor:not-allowed}.addon-section{background:var(--bg);padding:1.25rem;border-radius:.5rem;border:2px solid var(--warning)}.addon-section h4{margin:0 0 .5rem;color:var(--text);font-size:1rem;font-weight:600}.addon-description{color:var(--text-muted);font-size:.875rem;margin:0 0 1rem}.addon-options{display:flex;flex-direction:column;gap:.5rem}.addon-button{width:100%;background:var(--border);color:var(--text);border:none;padding:.75rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.addon-button:hover:not(:disabled){background:#475569}.addon-button.upgrade{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff}.addon-button.upgrade:hover:not(:disabled){box-shadow:0 4px 12px #3b82f666}.addon-button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.account-section{padding:1rem}.setting-item{flex-direction:column;align-items:flex-start;gap:.75rem}.toggle-switch{align-self:flex-end}.pass-header{flex-direction:column;align-items:flex-start;gap:.25rem}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f0f23);padding:10px}.login-container{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:40px;width:100%;max-width:400px;box-sizing:border-box;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-header{text-align:center;margin-bottom:40px}.login-header h1{font-size:2.5rem;color:#fff;margin-bottom:10px}.login-header p{color:#94a3b8;font-size:1rem}.auth-mode-toggle{display:flex;background:#ffffff1a;border-radius:12px;padding:4px;margin-bottom:24px}.auth-mode-toggle button{flex:1;padding:12px 20px;border:none;border-radius:10px;background:transparent;color:#94a3b8;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.auth-mode-toggle button.active{background:#3b82f6;color:#fff}.auth-mode-toggle button:hover:not(.active){background:#ffffff1a}.referral-badge{background:#22c55e33;border:1px solid rgba(34,197,94,.4);color:#86efac;padding:10px 16px;border-radius:8px;text-align:center;margin-bottom:20px;font-size:.9rem}.referral-badge strong{color:#4ade80}.referral-section{margin-top:20px}.referral-section.inline{margin-top:0}.referral-section label{display:block;color:#94a3b8;font-size:.9rem;margin-bottom:8px;text-align:center}.referral-section select{width:100%;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#fff;font-size:1rem;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.referral-section select:focus{outline:none;border-color:#3b82f6}.referral-section select option{background:#1e293b;color:#fff}.auth-options h2,.phone-auth h2{color:#fff;font-size:1.5rem;margin-bottom:24px;text-align:center}.auth-button{width:100%;padding:14px 20px;border-radius:12px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:12px;border:none}.google-button{background:#fff;color:#333}.google-button:hover{background:#f5f5f5;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.google-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.phone-button{background:#3b82f6;color:#fff;margin-top:12px}.phone-button:hover{background:#2563eb;transform:translateY(-2px)}.divider{display:flex;align-items:center;margin:24px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#fff3}.divider span{color:#94a3b8;padding:0 16px;font-size:.9rem}.phone-auth{position:relative}.back-button{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:.9rem;padding:0;margin-bottom:20px;display:flex;align-items:center;gap:4px}.back-button:before{content:"←"}.back-button:hover{color:#60a5fa}.phone-auth form{display:flex;flex-direction:column;gap:16px}.instruction{color:#94a3b8;text-align:center;margin-bottom:8px}.instruction strong{color:#fff}.phone-auth input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#fff;font-size:1.1rem;text-align:center;letter-spacing:1px}.phone-auth input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.phone-auth input::placeholder{color:#64748b}.submit-button{width:100%;padding:14px 20px;border-radius:12px;background:#3b82f6;color:#fff;font-size:1rem;font-weight:500;border:none;cursor:pointer;transition:all .2s}.submit-button:hover{background:#2563eb}.submit-button:disabled{opacity:.7;cursor:not-allowed}.secondary-button{padding:12px 20px;border-radius:12px;background:#ffffff1a;color:#fff;font-size:.9rem;border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:all .2s}.secondary-button:hover{background:#ffffff26}.button-group{display:flex;gap:12px}.button-group .submit-button{flex:1}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:8px;font-size:.9rem;text-align:center}#recaptcha-container{display:flex;justify-content:center;margin:16px 0}@media(max-width:480px){.login-container{padding:28px 16px;max-width:min(95vw,400px)}.login-header h1{font-size:2rem}.auth-button{padding:12px 16px;font-size:.95rem}}.profile-completion{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#0f172a,#1e293b)}.completion-container{background:#1e293bcc;border-radius:16px;padding:40px;width:100%;max-width:400px;box-shadow:0 4px 20px #0000004d}.completion-header{text-align:center;margin-bottom:30px}.completion-header h1{color:#f1f5f9;font-size:1.5rem;margin-bottom:8px}.completion-header p{color:#94a3b8;font-size:.9rem}.profile-completion .form-group{margin-bottom:20px}.profile-completion label{display:block;color:#e2e8f0;font-size:.9rem;margin-bottom:8px;font-weight:500}.profile-completion input{width:100%;padding:12px 16px;border:2px solid #334155;border-radius:8px;background:#1e293b;color:#f1f5f9;font-size:1rem;transition:border-color .2s;box-sizing:border-box}.profile-completion input:focus{outline:none;border-color:#3b82f6}.profile-completion input.disabled-input{background:#0f172a;color:#94a3b8;cursor:not-allowed}.profile-completion .help-text{display:block;color:#64748b;font-size:.8rem;margin-top:6px}.profile-completion .error-message{background:#ef444433;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.profile-completion .submit-button{width:100%;padding:14px 24px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.profile-completion .submit-button:hover:not(:disabled){background:#2563eb}.profile-completion .submit-button:disabled{opacity:.6;cursor:not-allowed}.install-prompt-banner{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:1000;background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid #334155;border-radius:16px;padding:16px 20px;max-width:360px;width:calc(100% - 40px);box-shadow:0 10px 40px #00000080;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.install-dismiss{position:absolute;top:8px;right:12px;background:none;border:none;color:#64748b;font-size:24px;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s}.install-dismiss:hover{color:#94a3b8}.install-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.install-icon{font-size:24px}.install-title{font-size:18px;font-weight:600;color:#f8fafc}.install-content{color:#cbd5e1}.install-description{font-size:14px;margin:0 0 12px;line-height:1.4}.install-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:12px 24px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;width:100%;box-shadow:0 4px 15px #3b82f64d;transition:all .2s ease}.install-button:hover{transform:translateY(-1px);box-shadow:0 6px 20px #3b82f666}.install-button:active{transform:translateY(0)}.install-instructions{display:flex;flex-direction:column;gap:10px}.install-step{display:flex;align-items:center;gap:12px;font-size:14px;color:#e2e8f0}.step-number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#3b82f6;color:#fff;border-radius:50%;font-size:13px;font-weight:600;flex-shrink:0}.ios-share-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:#3b82f6;border-radius:4px;font-size:14px;margin-left:4px}.menu-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:#475569;border-radius:4px;font-size:16px;margin-left:4px;letter-spacing:-1px}@media(max-width:480px){.install-prompt-banner{bottom:15px;left:15px;right:15px;transform:none;max-width:none;width:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}
