*{box-sizing:border-box;margin:0;padding:0}:root{--primary: #121212;--primary-light: #333;--accent: #DB0E0D;--accent-hover: #b80c0b;--success: #22c55e;--success-hover: #16a34a;--warning: #eab308;--danger: #ef4444;--bg: #f7f7f7;--card-bg: #ffffff;--text: #121212;--text-muted: #666;--border: #e5e5e5;--radius: 8px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden}.app{min-height:100vh;display:flex;flex-direction:column;width:100%;max-width:100vw;overflow-x:hidden}.app.loading{justify-content:center;align-items:center}.app-header{background:var(--primary);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center}.app-header-left{display:flex;align-items:center;gap:12px}.app-header-logo{height:28px;width:auto}.app-header h1{font-size:18px;font-weight:600;display:flex;align-items:center;gap:8px}.app-header h1:before{content:"";display:block;width:1px;height:20px;background:#ffffff4d}.header-right{display:flex;align-items:center;gap:12px}.staff-name{font-size:14px;opacity:.8;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-logout{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:6px 12px;border-radius:var(--radius);font-size:13px;cursor:pointer;transition:all .2s}.btn-logout:hover{background:var(--accent);border-color:var(--accent)}.app-nav{display:flex;background:var(--card-bg);border-bottom:1px solid var(--border)}.app-nav button{flex:1;padding:12px;border:none;background:transparent;font-size:14px;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent}.app-nav button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.app-main{flex:1;padding:16px;position:relative;overflow-x:hidden;width:100%}.error-banner{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:var(--radius);margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.error-banner button{background:none;border:none;font-size:20px;cursor:pointer;color:#dc2626}.processing-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;z-index:100}.spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.login-container{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;background:var(--primary);background-image:radial-gradient(ellipse at top,rgba(219,14,13,.15) 0%,transparent 50%),radial-gradient(ellipse at bottom,rgba(0,0,0,.3) 0%,transparent 50%)}.login-card{background:var(--card-bg);border-radius:16px;padding:40px 32px;width:100%;max-width:400px;box-shadow:0 20px 60px #0006}.login-header{text-align:center;margin-bottom:32px}.login-logo{max-width:180px;height:auto;margin-bottom:20px}.login-badge{display:inline-flex;align-items:center;gap:8px;background:var(--bg);color:var(--text-muted);padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500}.login-badge svg{opacity:.7}.login-form{display:flex;flex-direction:column;gap:20px}.login-error{background:#fef2f2;border:1px solid #fecaca;color:var(--accent);padding:12px 16px;border-radius:var(--radius);font-size:14px;display:flex;align-items:center;gap:10px}.login-error svg{flex-shrink:0}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:var(--text);display:flex;align-items:center;gap:8px}.form-group label svg{color:var(--text-muted)}.form-group input{padding:14px 16px;border:2px solid var(--border);border-radius:var(--radius);font-size:16px;transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #db0e0d1a}.form-group input::placeholder{color:#aaa}.btn-login{background:var(--accent);color:#fff;border:none;padding:16px;border-radius:var(--radius);font-size:16px;font-weight:600;cursor:pointer;margin-top:8px;transition:background .2s,transform .1s;display:flex;align-items:center;justify-content:center;gap:10px}.btn-login:hover:not(:disabled){background:var(--accent-hover)}.btn-login:active:not(:disabled){transform:scale(.98)}.btn-login:disabled{opacity:.7;cursor:not-allowed}.btn-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.login-footer{margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}.event-info-row{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-muted);font-size:14px;margin-bottom:8px}.event-info-row svg{color:var(--accent)}.event-name{text-align:center;font-weight:600;color:var(--text);font-size:15px;margin-top:12px}.login-customer-link{margin-top:24px;text-align:center;color:#fff9;font-size:14px;display:flex;flex-direction:column;gap:6px}.login-customer-link a{color:#fff;text-decoration:none;font-weight:500;transition:color .2s}.login-customer-link a:hover{color:var(--accent)}@media (max-width: 480px){.login-card{padding:32px 24px}.login-logo{max-width:150px}.app-header{padding:10px 12px;flex-wrap:wrap;gap:8px}.app-header-left{gap:8px}.app-header-logo{height:22px}.app-header h1{font-size:15px}.app-header h1:before{display:none}.header-right{gap:8px}.staff-name{max-width:100px;font-size:12px}.btn-logout{padding:5px 10px;font-size:12px}.app-main{padding:12px}.app-nav button{font-size:13px;padding:10px 8px}}.scanner-container{display:flex;flex-direction:column;gap:16px;max-width:100%;overflow:hidden}.scanner-instructions{text-align:center;color:var(--text-muted)}.qr-reader{width:100%;max-width:400px;margin:0 auto}#qr-reader{border:none!important;width:100%!important;min-height:300px}#qr-reader video{width:100%!important;max-width:100%!important;border-radius:var(--radius)}#qr-reader__scan_region{border-radius:var(--radius);overflow:hidden}#qr-reader__scan_region video{border-radius:var(--radius)}#qr-reader__dashboard_section{padding:12px 0!important}#qr-reader__dashboard_section button{background:var(--accent)!important;color:#fff!important;border:none!important;padding:12px 24px!important;border-radius:var(--radius)!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;margin:4px!important}#qr-reader__dashboard_section button:hover{background:var(--accent-hover)!important}#qr-reader__dashboard_section select{padding:10px 12px!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;font-size:14px!important;background:#fff!important;margin:8px 0!important;width:100%!important;max-width:300px!important}#qr-reader__status_span{display:block;padding:8px 0;color:var(--text-muted);font-size:13px}#qr-reader__filescan_input{display:none!important}.scanner-help{text-align:center;color:var(--text-muted);font-size:14px}.manual-entry-container{display:flex;justify-content:center}.manual-entry-card{background:var(--card-bg);border-radius:12px;padding:24px;width:100%;max-width:400px;text-align:center}.manual-entry-card h2{margin-bottom:8px}.manual-entry-card>p{color:var(--text-muted);margin-bottom:20px}.manual-entry-form{display:flex;flex-direction:column;gap:16px}.code-input{padding:16px;font-size:24px;font-family:monospace;text-align:center;letter-spacing:2px;border:2px solid var(--border);border-radius:var(--radius);text-transform:uppercase}.code-input:focus{outline:none;border-color:var(--primary)}.btn-lookup{background:var(--primary);color:#fff;border:none;padding:14px;border-radius:var(--radius);font-size:16px;font-weight:600;cursor:pointer}.btn-lookup:disabled{opacity:.5;cursor:not-allowed}.manual-entry-help{margin-top:20px;color:var(--text-muted);font-size:13px}.manual-entry-help p{margin:4px 0}.ticket-result{background:var(--card-bg);border-radius:12px;padding:24px;max-width:400px;margin:0 auto;text-align:center}.ticket-result .result-icon{font-size:48px;margin-bottom:12px}.ticket-result h2{margin-bottom:16px}.ticket-result.valid{border:3px solid var(--success)}.ticket-result.valid h2{color:var(--success)}.ticket-result.already-used{border:3px solid var(--warning)}.ticket-result.already-used h2{color:#a16207}.ticket-result.not-found{border:3px solid var(--danger)}.ticket-result.not-found h2{color:var(--danger)}.result-message{color:var(--text-muted);margin-bottom:20px}.ticket-details{text-align:left;margin:20px 0}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border)}.detail-row:last-child{border-bottom:none}.detail-row .label{color:var(--text-muted)}.detail-row .value{font-weight:500}.detail-row .value.code{font-family:monospace;letter-spacing:1px}.detail-row .value.highlight{color:var(--success);font-weight:600}.result-actions{display:flex;gap:12px;margin-top:20px}.btn-checkin{flex:2;background:var(--success);color:#fff;border:none;padding:16px;border-radius:var(--radius);font-size:18px;font-weight:700;cursor:pointer}.btn-checkin:hover{background:var(--success-hover)}.btn-checkin:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{flex:1;background:var(--bg);color:var(--text);border:1px solid var(--border);padding:16px;border-radius:var(--radius);font-size:14px;cursor:pointer}.btn-secondary:hover{background:var(--border)}.dashboard{max-width:600px;margin:0 auto}.dashboard.loading,.dashboard.error{text-align:center;padding:40px}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dashboard-header h2{font-size:20px}.btn-refresh{background:var(--bg);border:1px solid var(--border);padding:8px 16px;border-radius:var(--radius);font-size:13px;cursor:pointer}.btn-refresh:disabled{opacity:.6}.stats-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.stat-card{background:var(--card-bg);border-radius:var(--radius);padding:16px;text-align:center}.stat-card.total{background:var(--success);color:#fff}.stat-value{font-size:32px;font-weight:700}.stat-label{font-size:12px;opacity:.8;margin-top:4px}.stats-by-type{background:var(--card-bg);border-radius:var(--radius);padding:16px;margin-bottom:24px}.stats-by-type h3{font-size:14px;margin-bottom:16px;color:var(--text-muted)}.type-stats{display:flex;flex-direction:column;gap:12px}.type-stat-row{display:flex;align-items:center;gap:12px}.type-label{width:120px;font-size:14px}.type-progress{flex:1;height:8px;background:var(--bg);border-radius:4px;overflow:hidden}.type-progress-bar{height:100%;background:var(--success);transition:width .3s ease}.type-count{width:60px;text-align:right;font-size:14px;font-weight:500}.recent-checkins{background:var(--card-bg);border-radius:var(--radius);padding:16px}.recent-checkins h3{font-size:14px;margin-bottom:16px;color:var(--text-muted)}.no-checkins{text-align:center;color:var(--text-muted);padding:20px}.checkin-list{list-style:none}.checkin-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.checkin-item:last-child{border-bottom:none}.checkin-info{display:flex;flex-direction:column}.checkin-name{font-weight:500}.checkin-type{font-size:12px;color:var(--text-muted)}.checkin-time{font-size:14px;color:var(--text-muted)}:root{--primary: #111111;--primary-light: #2a2a2a;--accent: #d90d12;--accent-hover: #b90b0f;--success: #16784a;--success-hover: #10623b;--warning: #b56c08;--danger: #c8292f;--bg: #efeee9;--card-bg: #ffffff;--text: #171717;--text-muted: #696861;--border: #d9d7d0;--border-strong: #c6c3ba;--radius: 12px;--radius-large: 18px;--shadow-card: 0 14px 34px rgba(31, 29, 25, .08);--shadow-float: 0 18px 50px rgba(0, 0, 0, .22)}body{background:linear-gradient(#ffffff47,#fff0),var(--bg);line-height:1.45}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(217,13,18,.28);outline-offset:3px}.app-header{position:sticky;top:0;z-index:30;min-height:72px;padding:11px max(18px,calc((100vw - 1120px)/2));background:#111;border-top:4px solid var(--accent);box-shadow:0 5px 18px #0000002e}.app-header-left{min-width:0;gap:14px}.app-header-logo{width:auto;height:34px;max-width:130px;object-fit:contain}.app-header-copy{min-width:0;padding-left:14px;border-left:1px solid rgba(255,255,255,.24)}.app-header-kicker{display:block;color:#d9d6cf;font-size:10px;font-weight:800;letter-spacing:.13em;line-height:1.2;text-transform:uppercase}.app-header h1{display:block;max-width:min(52vw,620px);margin-top:2px;overflow:hidden;color:#fff;font-size:17px;font-weight:720;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.app-header h1:before{display:none}.header-right{flex-shrink:0;gap:10px}.staff-identity{display:flex;min-width:0;align-items:center;gap:7px}.staff-status-dot{width:8px;height:8px;flex:0 0 8px;border:2px solid rgba(255,255,255,.42);border-radius:50%;background:#45d483}.staff-name{max-width:170px;color:#d9d6cf;font-size:13px;opacity:1}.btn-logout{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:0 13px;border-color:#ffffff47;border-radius:9px;font-weight:700}.app-nav{position:sticky;top:72px;z-index:25;display:block;padding:10px 16px;border-bottom:1px solid rgba(198,195,186,.7);background:#efeee9f0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.app-nav-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:720px;margin:0 auto;padding:4px;border:1px solid var(--border);border-radius:13px;background:var(--card-bg);box-shadow:0 5px 18px #1f1d190d}.app-nav button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:9px 12px;border:0;border-radius:9px;color:#66645e;font-size:14px;font-weight:700;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.app-nav button:hover{background:#f4f3ef;color:var(--text)}.app-nav button.active{border:0;background:var(--primary);color:#fff;box-shadow:0 5px 12px #11111129}.app-main{width:100%;max-width:760px;margin:0 auto;padding:28px 20px 48px}.error-banner{gap:14px;padding:13px 15px;border-color:#efb8ba;border-radius:var(--radius);background:#fff5f5;color:#a91e24;box-shadow:0 8px 22px #5e15180f;font-size:14px;font-weight:650}.error-banner--warning{border-color:#e9c783;background:#fff9e9;color:#80500c}.error-banner button{display:inline-flex;min-width:36px;min-height:36px;align-items:center;justify-content:center;flex:0 0 36px;border-radius:8px;color:currentColor}.error-banner button:hover{background:#0000000f}.processing-overlay{background:#111111d1;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.processing-overlay p{margin-top:14px;font-size:15px;font-weight:750}.spinner{border-color:#11111124;border-top-color:var(--accent)}.processing-overlay .spinner,.app.loading .spinner{border-color:#ffffff47;border-top-color:#fff}.tool-intro{margin-bottom:20px}.tool-eyebrow,.result-eyebrow{display:block;margin-bottom:5px;color:var(--accent);font-size:11px;font-weight:850;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}.tool-intro h2{color:var(--text);font-size:clamp(25px,4vw,34px);font-weight:780;letter-spacing:-.035em;line-height:1.08}.tool-intro p{max-width:540px;margin-top:7px;color:var(--text-muted);font-size:15px}.login-container{justify-content:center;padding:28px 20px;background:radial-gradient(circle at 50% -10%,rgba(217,13,18,.3),transparent 38%),linear-gradient(145deg,#0b0b0b,#171717 58%,#0b0b0b)}.login-card{position:relative;max-width:430px;overflow:hidden;padding:34px 34px 30px;border:1px solid rgba(255,255,255,.1);border-top:5px solid var(--accent);border-radius:var(--radius-large);box-shadow:var(--shadow-float)}.login-card:before{position:absolute;inset:0 0 auto;height:72px;background:linear-gradient(180deg,rgba(217,13,18,.04),transparent);content:"";pointer-events:none}.login-header{position:relative;margin-bottom:25px}.login-logo{display:block;width:auto;max-width:158px;max-height:58px;margin:0 auto 18px;object-fit:contain}.login-badge{gap:6px;padding:6px 10px;border:1px solid #e0ded7;background:#f5f4f0;color:#5f5d57;font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.login-header h1{margin-top:15px;color:var(--text);font-size:28px;font-weight:780;letter-spacing:-.035em;line-height:1.08}.login-header p{margin-top:7px;color:var(--text-muted);font-size:14px}.login-form{gap:16px}.login-error{align-items:flex-start;padding:11px 12px;border-color:#efb8ba;background:#fff5f5;color:#9f1c22;font-size:13px;font-weight:600;line-height:1.4}.form-group{gap:7px}.form-group label,.code-input-container label{color:#33322f;font-size:13px;font-weight:760}.form-group label svg,.code-input-container label svg{color:#77746d}.form-group input{min-height:50px;padding:12px 14px;border:1px solid var(--border-strong);border-radius:10px;background:#fff}.form-group input:hover{border-color:#aaa79e}.btn-login{min-height:52px;margin-top:3px;border-radius:10px;box-shadow:0 8px 18px #d90d1233;font-weight:780}.login-footer{margin-top:24px;padding:15px 16px;border:1px solid #e5e2dc;border-radius:11px;background:#f6f5f1}.event-info-row{justify-content:flex-start;margin-bottom:6px;color:#5f5d57;font-size:13px}.event-name{margin-top:9px;padding-top:9px;border-top:1px solid #e1dfd8;color:#262521;font-size:13px;text-align:left}.login-customer-link{margin-top:18px;color:#ffffff8f;font-size:12px}.scanner-container{max-width:580px;margin:0 auto;gap:0}.scanner-card{padding:14px;border:1px solid var(--border);border-radius:var(--radius-large);background:var(--card-bg);box-shadow:var(--shadow-card)}.scanner-card-label{display:flex;align-items:center;gap:8px;margin-bottom:11px;color:#4d4b46;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.scanner-card-label svg{color:var(--accent)}.qr-reader{max-width:none}#qr-reader{min-height:300px;border-radius:13px!important;background:#f6f5f1}#qr-reader video,#qr-reader__scan_region,#qr-reader__scan_region video{border-radius:12px}#qr-reader__dashboard_section{padding:14px 4px 3px!important}#qr-reader__dashboard_section button{min-height:46px!important;padding:11px 18px!important;border-radius:9px!important;font-size:14px!important;font-weight:760!important}#qr-reader__dashboard_section select{min-height:46px;border-color:var(--border-strong)!important;border-radius:9px!important}.scanner-help{display:flex;align-items:flex-start;gap:9px;margin-top:14px;padding:11px 12px;border:1px solid #ddd9d0;border-radius:10px;background:#ffffff9e;color:#5f5d57;font-size:13px;text-align:left}.scanner-help svg{flex:0 0 auto;margin-top:1px;color:var(--accent)}.manual-entry-container{display:block;max-width:540px;margin:0 auto}.manual-entry-card{max-width:none;padding:22px;border:1px solid var(--border);border-radius:var(--radius-large);box-shadow:var(--shadow-card);text-align:left}.manual-entry-form{gap:14px}.code-input-container{display:flex;flex-direction:column;gap:8px}.code-input-container label{display:flex;align-items:center;gap:7px}.code-input{width:100%;min-height:58px;padding:12px 14px;border:1px solid var(--border-strong);border-radius:10px;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(18px,4vw,23px);font-weight:700;letter-spacing:.075em}.code-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #d90d121a}.btn-lookup{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:8px;border-radius:10px;background:var(--accent);box-shadow:0 8px 18px #d90d122e;font-weight:780}.btn-lookup:hover:not(:disabled){background:var(--accent-hover)}.btn-lookup:disabled{box-shadow:none}.manual-entry-help{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:10px 12px;border-radius:9px;background:#f5f4f0;color:#6c6962;font-size:12px}.manual-entry-help span{font-weight:700}.manual-entry-help code{color:#353431;font-size:12px;font-weight:700}.ticket-result{max-width:540px;padding:28px;border:1px solid var(--border);border-top-width:6px;border-radius:var(--radius-large);box-shadow:var(--shadow-card)}.ticket-result.valid,.ticket-result.already-used,.ticket-result.not-found{border-right-width:1px;border-bottom-width:1px;border-left-width:1px}.ticket-result.valid{border-top-color:var(--success)}.ticket-result.already-used{border-top-color:var(--warning)}.ticket-result.not-found{border-top-color:var(--danger)}.ticket-result .result-icon{display:inline-flex;width:66px;height:66px;align-items:center;justify-content:center;margin-bottom:14px;border-radius:50%;font-size:inherit}.ticket-result.valid .result-icon{background:#e8f6ef;color:var(--success)}.ticket-result.already-used .result-icon{background:#fff3d8;color:var(--warning)}.ticket-result.not-found .result-icon{background:#fff0f0;color:var(--danger)}.ticket-result .result-eyebrow{margin-bottom:5px}.ticket-result.valid .result-eyebrow{color:var(--success)}.ticket-result.already-used .result-eyebrow{color:#8d5708}.ticket-result.not-found .result-eyebrow{color:var(--danger)}.ticket-result h2,.ticket-result.valid h2,.ticket-result.already-used h2,.ticket-result.not-found h2{margin-bottom:6px;color:var(--text);font-size:29px;font-weight:800;letter-spacing:-.035em;line-height:1.08}.result-message{max-width:420px;margin:0 auto 22px;color:var(--text-muted);font-size:14px}.ticket-details{margin:22px 0;padding:5px 16px;border:1px solid #e0ded7;border-radius:12px;background:#f7f6f2}.detail-row{gap:20px;padding:11px 0}.detail-row .label{color:#737069;font-size:12px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.detail-row .value{max-width:68%;color:#262521;font-size:14px;font-weight:700;overflow-wrap:anywhere;text-align:right}.detail-row .value.highlight{color:var(--success);font-weight:800}.detail-row .value.code{font-size:13px;letter-spacing:.045em}.result-actions{gap:10px;margin-top:18px}.btn-checkin,.btn-secondary{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:8px;border-radius:10px;font-weight:780}.btn-checkin{box-shadow:0 8px 18px #16784a33;font-size:16px}.btn-secondary{background:#f5f4f0;border-color:var(--border-strong);font-size:14px}.ticket-result.not-found .btn-secondary,.ticket-result.already-used .btn-secondary{flex-basis:100%}.dashboard{max-width:720px}.dashboard-header{align-items:flex-start;gap:20px;margin-bottom:20px}.dashboard-header .tool-intro{margin-bottom:0}.btn-refresh{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;padding:0 13px;border-color:var(--border-strong);border-radius:9px;background:var(--card-bg);color:#363531;font-weight:750}.btn-refresh:hover:not(:disabled){border-color:#aaa79e;background:#f7f6f2}.is-spinning{animation:spin .8s linear infinite}.stats-overview{gap:10px;margin-bottom:18px}.stat-card{display:flex;min-height:132px;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:17px;border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 20px #1f1d190b;text-align:left}.stat-card svg{color:#7e7b73}.stat-card.total{background:var(--primary);color:#fff}.stat-card.total svg{color:#ff6468}.stat-value{margin-top:8px;font-size:clamp(29px,5vw,38px);font-weight:800;letter-spacing:-.04em;line-height:1}.stat-label{margin-top:4px;font-size:11px;font-weight:750;letter-spacing:.025em;opacity:.75}.stats-by-type,.recent-checkins{padding:20px;border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 20px #1f1d190b}.stats-by-type{margin-bottom:18px}.stats-by-type h3,.recent-checkins h3{display:flex;align-items:center;gap:8px;margin-bottom:17px;color:#3a3935;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.stats-by-type h3 svg,.recent-checkins h3 svg{color:var(--accent)}.type-stats,.type-stat-row{gap:14px}.type-label{width:142px;color:#4c4a45;font-size:13px;font-weight:700}.type-progress{height:9px;background:#eceae4}.type-progress-bar{background:var(--accent)}.type-count{width:66px;color:#474640;font-size:13px;font-weight:750}.checkin-item{min-height:52px;padding:11px 0}.checkin-name{color:#2e2d2a;font-size:14px;font-weight:750}.checkin-type,.checkin-time{color:#74716a;font-size:12px}.no-checkins{padding:24px;border:1px dashed var(--border-strong);border-radius:10px;background:#faf9f6}@media (max-width: 640px){.app-header{min-height:67px;padding:9px 12px}.app-header-left{gap:9px}.app-header-logo{height:27px;max-width:94px}.app-header-copy{max-width:calc(100vw - 164px);padding-left:9px}.app-header-kicker{font-size:8px}.app-header h1{max-width:100%;font-size:14px}.staff-identity{display:none}.btn-logout{width:42px;min-width:42px;height:42px;padding:0}.btn-logout span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app-nav{top:67px;padding:8px 10px}.app-nav button{min-height:43px;gap:6px;padding:8px 6px;font-size:12px}.app-main{padding:21px 14px 40px}.tool-intro{margin-bottom:16px}.tool-intro h2{font-size:27px}.login-container{justify-content:flex-start;padding:18px 12px 28px}.login-card{max-width:430px;padding:27px 20px 22px}.login-header{margin-bottom:22px}.login-logo{max-width:140px}.scanner-card,.manual-entry-card{padding:12px;border-radius:15px}#qr-reader{min-height:265px}.ticket-result{padding:23px 17px;border-radius:15px}.ticket-result h2,.ticket-result.valid h2,.ticket-result.already-used h2,.ticket-result.not-found h2{font-size:26px}.ticket-details{padding:4px 12px}.result-actions{flex-direction:column}.btn-checkin,.btn-secondary{width:100%;flex:none}.dashboard-header{align-items:flex-end}.dashboard-header .tool-intro p{display:none}.btn-refresh{width:42px;min-width:42px;padding:0}.btn-refresh span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.stats-overview{gap:7px}.stat-card{min-height:116px;padding:13px 10px}.stat-value{font-size:28px}.stat-label{font-size:9px}.stats-by-type,.recent-checkins{padding:16px 14px}.type-stat-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px}.type-label{width:auto}.type-progress{grid-column:1 / -1;grid-row:2}.type-count{width:auto}.detail-row{gap:14px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.customer-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#121212;padding:20px}.login-card{background:#fff;border-radius:12px;padding:40px;max-width:450px;width:100%;box-shadow:0 10px 40px #0000004d}.login-logo{display:block;max-width:200px;height:auto;margin:0 auto 25px}.login-card h1{margin:0 0 10px;color:#121212;font-size:28px;text-align:center}.login-card h2{margin:0 0 20px;color:#121212;font-size:24px;text-align:center}.subtitle{color:#666;text-align:center;margin:0 0 30px;font-size:16px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#121212;font-weight:500}.form-group input{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:6px;font-size:16px;transition:border-color .2s;color:#121212}.form-group input:focus{outline:none;border-color:#db0e0d}.form-group input:disabled{background:#f7f7f7;cursor:not-allowed}.btn-primary{width:100%;padding:14px;background:#db0e0d;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:#b80c0b}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{width:100%;padding:12px;background:#fff;color:#db0e0d;border:2px solid #DB0E0D;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:15px}.btn-secondary:hover{background:#fef2f2}.help-text{text-align:center;color:#666;font-size:14px;margin-top:20px;line-height:1.5}.error-message{background:#fef2f2;color:#db0e0d;padding:12px;border-radius:6px;margin-bottom:15px;font-size:14px}.success-icon{width:60px;height:60px;background:#db0e0d;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;margin:0 auto 20px}.email-display{background:#f7f7f7;padding:12px;border-radius:6px;text-align:center;font-weight:600;color:#121212;margin:15px 0;word-break:break-all}@media (max-width: 500px){.login-card{padding:30px 20px}.login-card h1{font-size:24px}.login-logo{max-width:160px}}.customer-tickets{min-height:100vh;background:#f7f7f7;padding:20px}.customer-tickets.loading,.customer-tickets.error,.customer-tickets.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:20px;text-align:center}.customer-tickets.error .error-message{background:#fef2f2;color:#db0e0d;padding:16px 24px;border-radius:8px;margin-bottom:20px;font-size:16px;max-width:400px}.customer-tickets.error .btn-secondary,.customer-tickets.empty .btn-secondary{padding:12px 24px;background:#db0e0d;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:16px;transition:background .2s}.customer-tickets.error .btn-secondary:hover,.customer-tickets.empty .btn-secondary:hover{background:#b80c0b}.customer-tickets.empty h2{color:#121212;margin-bottom:10px}.customer-tickets.empty p{color:#666;margin-bottom:15px;max-width:400px;line-height:1.6}.customer-tickets.empty .help-text{font-size:14px;color:#888}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #DB0E0D;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tickets-header{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.tickets-header-left{display:flex;align-items:center;gap:20px}.tickets-header-logo{height:40px;width:auto}.tickets-header h1{margin:0 0 5px;color:#121212;font-size:24px}.user-email{color:#666;font-size:14px;margin:0}.btn-logout{padding:10px 20px;background:#fff;color:#db0e0d;border:2px solid #DB0E0D;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s}.btn-logout:hover{background:#db0e0d;color:#fff}.event-info{background:#fff;padding:25px;border-radius:8px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.event-info h2{margin:0 0 20px;color:#121212;font-size:22px}.event-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.detail-item{display:flex;flex-direction:column;gap:5px}.detail-item .label{color:#666;font-size:14px}.detail-item .value{color:#121212;font-weight:600;font-size:16px}.tickets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:30px}.ticket-card{background:#fff;border-radius:8px;padding:25px;box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s}.ticket-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.ticket-card.used{opacity:.7;border:2px solid #4caf50}.ticket-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.ticket-header h3{margin:0;color:#121212;font-size:18px}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.used{background:#e8f5e9;color:#2e7d32}.qr-container{text-align:center;margin:20px 0;padding:15px;background:#f7f7f7;border-radius:8px}.qr-code{width:200px;height:200px;display:block;margin:0 auto}.ticket-code{text-align:center;font-family:monospace;font-size:18px;font-weight:600;letter-spacing:2px;color:#121212;margin:15px 0}.btn-download{width:100%;padding:12px;background:#db0e0d;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s}.btn-download:hover{background:#b80c0b}.check-in-time{text-align:center;color:#666;font-size:12px;margin:10px 0 0}.help-section{background:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 4px #0000001a;text-align:center}.help-section h3{margin:0 0 15px;color:#121212}.help-section p{color:#666;margin:10px 0;line-height:1.6}@media (max-width: 768px){.tickets-header{flex-direction:column;align-items:flex-start;gap:15px}.tickets-grid{grid-template-columns:1fr}.tickets-header-logo{height:30px}}.admin-login-page{min-height:100vh;background:#121212;display:flex;align-items:center;justify-content:center;padding:20px}.admin-login-container{width:100%;max-width:440px}.admin-login-card{background:#fff;border-radius:16px;padding:48px 40px;box-shadow:0 8px 40px #0006}.admin-login-logo{display:block;max-width:200px;height:auto;margin:0 auto 24px}.admin-badge{display:inline-flex;align-items:center;gap:8px;background:#db0e0d1a;color:#db0e0d;padding:8px 16px;border-radius:20px;font-size:13px;font-weight:600;margin-bottom:24px}.admin-badge svg{width:18px;height:18px}.admin-login-card h1{font-size:28px;font-weight:700;color:#121212;margin:0 0 8px}.admin-subtitle{color:#666;font-size:15px;margin:0 0 32px}.admin-login-form{display:flex;flex-direction:column;gap:20px}.admin-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:8px;font-size:14px}.admin-form-group{display:flex;flex-direction:column;gap:8px}.admin-form-group label{font-size:14px;font-weight:600;color:#121212}.admin-input-wrapper{position:relative;display:flex;align-items:center}.admin-input-wrapper svg{position:absolute;left:14px;color:#999;pointer-events:none}.admin-input-wrapper input{width:100%;padding:12px 14px 12px 44px;border:1px solid #ddd;border-radius:8px;font-size:15px;transition:all .2s}.admin-input-wrapper input:focus{outline:none;border-color:#db0e0d;box-shadow:0 0 0 3px #db0e0d1a}.admin-input-wrapper input:disabled{background:#f5f5f5;cursor:not-allowed}.admin-btn-login{background:#db0e0d;color:#fff;border:none;padding:14px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:8px}.admin-btn-login:hover:not(:disabled){background:#b80c0b;transform:translateY(-1px);box-shadow:0 4px 12px #db0e0d4d}.admin-btn-login:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 480px){.admin-login-card{padding:32px 24px}.admin-login-card h1{font-size:24px}}.admin-sidebar{width:240px;min-height:100vh;background:#1a1a1a;display:flex;flex-direction:column;flex-shrink:0}.sidebar-header{padding:20px 16px;border-bottom:1px solid #2a2a2a;display:flex;align-items:center;justify-content:space-between}.sidebar-event-name{color:#fff;font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-event-info{display:flex;flex-direction:column;gap:2px;min-width:0}.sidebar-event-subtitle{font-size:11px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-close-btn{display:none;background:none;border:none;color:#999;cursor:pointer;padding:4px}.sidebar-nav{display:flex;flex-direction:column;padding:12px 8px;gap:2px}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:none;background:none;color:#999;font-size:14px;font-weight:500;cursor:pointer;border-radius:8px;transition:all .15s;text-align:left;width:100%;position:relative}.sidebar-nav-item:hover{color:#fff;background:#ffffff0d}.sidebar-nav-item.active{color:#fff;background:#db0e0d26}.sidebar-nav-item.active:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:#db0e0d;border-radius:0 3px 3px 0}.sidebar-section{margin-bottom:4px}.sidebar-section-title{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#555;font-weight:600;padding:16px 12px 6px}.sidebar-badge{margin-left:auto;background:#333;padding:1px 8px;border-radius:10px;font-size:11px;color:#888}.sidebar-badge-alert{background:#7f1d1d;color:#fca5a5}.sidebar-backdrop{display:none}@media (max-width: 768px){.admin-sidebar{position:fixed;left:-260px;top:0;z-index:200;transition:left .25s ease;box-shadow:none}.admin-sidebar.open{left:0;box-shadow:4px 0 24px #0006}.sidebar-close-btn{display:flex}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:199}}.skeleton-line{height:14px;background:linear-gradient(90deg,#e5e7eb 25%,#f0f0f0,#e5e7eb 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite;border-radius:4px}.skeleton-lg{height:28px;width:60%}.skeleton-sm{height:12px;width:40%;margin-top:8px}.skeleton-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.skeleton-card{background:var(--admin-surface, #fff);padding:20px;border-radius:8px;border:1px solid var(--admin-border, #e5e7eb)}.skeleton-table{display:flex;flex-direction:column;gap:12px}.skeleton-row{display:flex;gap:16px}.skeleton-cell{flex:1}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.dashboard-view{max-width:1200px}.dashboard-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.dashboard-kpi{background:var(--admin-surface);border-radius:8px;padding:16px;border:1px solid var(--admin-border);border-left:4px solid var(--admin-border)}.dashboard-kpi-label{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#888;font-weight:600;margin-bottom:6px}.dashboard-kpi-value{font-size:24px;font-weight:700;color:var(--admin-text);line-height:1.2}.dashboard-kpi-secondary{font-size:12px;color:var(--admin-text-secondary);margin-top:4px}.dashboard-kpi-secondary a{color:var(--admin-info);text-decoration:none;cursor:pointer}.dashboard-kpi-secondary a:hover{text-decoration:underline}.dashboard-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.dashboard-card{background:var(--admin-surface);border-radius:8px;padding:20px;border:1px solid var(--admin-border)}.dashboard-card h3{margin:0 0 16px;font-size:15px;font-weight:600;color:var(--admin-text)}.dashboard-chart{height:140px;display:flex;align-items:flex-end;gap:4px}.dashboard-chart-placeholder{height:140px;display:flex;align-items:center;justify-content:center;color:var(--admin-text-muted);font-size:13px}.dashboard-bar-wrapper{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.dashboard-bar{width:100%;min-width:0;border-radius:4px 4px 0 0;background:var(--admin-red);transition:height .3s ease}.dashboard-bar-label{text-align:center;font-size:10px;color:#888;margin-top:4px;white-space:nowrap}.dashboard-bar-revenue{text-align:center;font-size:9px;color:var(--admin-text-secondary);margin-bottom:2px}.dashboard-types-table{width:100%;border-collapse:collapse}.dashboard-types-table th{text-align:left;padding:8px 0;font-size:11px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--admin-border)}.dashboard-types-table td{padding:10px 0;font-size:13px;color:var(--admin-text);border-bottom:1px solid var(--admin-border-light)}.dashboard-types-table tr:last-child td{border-bottom:none}.dashboard-types-table td:not(:first-child){text-align:right}.dashboard-types-table th:not(:first-child){text-align:right}.dashboard-types-table th:nth-child(3),.dashboard-types-table td:nth-child(3){text-align:center;padding-left:12px;padding-right:12px}.dashboard-progress{height:6px;background:var(--admin-border);border-radius:3px;overflow:hidden;min-width:60px}.dashboard-progress-fill{height:100%;border-radius:3px;background:var(--admin-red);transition:width .3s ease}.dashboard-recent-item{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--admin-border-light)}.dashboard-recent-item:last-child{border-bottom:none}.dashboard-recent-left{flex:1;min-width:0}.dashboard-recent-email{font-size:13px;font-weight:500;color:var(--admin-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-recent-detail{font-size:11px;color:#888;margin-top:2px}.dashboard-promo-badge{display:inline-block;background:#f0f0f0;padding:2px 6px;border-radius:3px;font-size:10px;color:var(--admin-text-secondary);margin-left:4px}.dashboard-recent-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin-left:12px;flex-shrink:0}.dashboard-amount{padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.dashboard-amount-paid{background:#dcfce7;color:#16a34a}.dashboard-amount-comp{background:#dbeafe;color:#2563eb}.dashboard-recent-time{font-size:10px;color:var(--admin-text-muted)}.dashboard-actions{display:flex;flex-direction:column;gap:6px}.dashboard-action-btn{background:#f7f7f7;padding:8px 12px;border-radius:6px;border:1px solid transparent;cursor:pointer;text-align:left;font-size:13px;color:var(--admin-text);transition:border-color .15s,background .15s}.dashboard-action-btn:hover{border-color:var(--admin-border);background:#fff}.dashboard-link{font-size:12px;color:var(--admin-info);margin-top:8px;display:inline-block;cursor:pointer;background:none;border:none;padding:0;font-family:inherit}.dashboard-link:hover{text-decoration:underline}.dashboard-empty{text-align:center;padding:24px;color:var(--admin-text-muted);font-size:13px}.public-links{display:flex;flex-direction:column;gap:8px}.public-link-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:#f7f7f7;border-radius:6px;gap:8px}.public-link-info{flex:1;min-width:0}.public-link-label{font-size:12px;font-weight:600;color:var(--admin-text);margin-bottom:2px}.public-link-url{font-size:11px;color:var(--admin-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-link-actions{display:flex;gap:4px;flex-shrink:0}.public-link-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;border:1px solid var(--admin-border);background:#fff;cursor:pointer;color:var(--admin-text-secondary);text-decoration:none;transition:border-color .15s,color .15s}.public-link-btn:hover{border-color:var(--admin-text-secondary);color:var(--admin-text)}@media (max-width: 900px){.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media (max-width: 480px){.dashboard-kpis{grid-template-columns:1fr}}.toast-container{position:fixed;top:16px;right:16px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:380px}.toast{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;color:#fff;font-size:14px;box-shadow:0 4px 12px #00000026;animation:toast-slide-in .25s ease-out}.toast-success{background:var(--admin-success, #22c55e)}.toast-error{background:var(--admin-error, #ef4444)}.toast-warning{background:var(--admin-warning-dark, #d97706)}.toast-info{background:var(--admin-info, #3b82f6)}.toast-message{flex:1}.toast-close{background:none;border:none;color:#fffc;font-size:18px;cursor:pointer;padding:0 4px;line-height:1}.toast-close:hover{color:#fff}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9000}.confirm-modal{background:var(--admin-surface, #fff);border-radius:12px;padding:24px;max-width:420px;width:90%;box-shadow:0 8px 30px #0003}.confirm-title{margin:0 0 8px;font-size:18px}.confirm-message{color:var(--admin-text-secondary, #666);font-size:14px;margin:0 0 20px}.confirm-actions{display:flex;gap:12px;justify-content:flex-end}.confirm-btn-cancel{padding:8px 16px;border-radius:6px;border:1px solid var(--admin-border, #e5e7eb);background:var(--admin-surface, #fff);cursor:pointer;font-size:14px}.confirm-btn-action{padding:8px 16px;border-radius:6px;border:none;color:#fff;cursor:pointer;font-size:14px;font-weight:500}.confirm-danger{background:var(--admin-error, #ef4444)}.confirm-danger:hover{background:var(--admin-error-dark, #dc2626)}.confirm-primary{background:var(--admin-info, #3b82f6)}.confirm-primary:hover{background:var(--admin-info-dark, #2563eb)}.pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 0;margin-top:16px;border-top:1px solid var(--admin-border, #e5e7eb);font-size:13px}.pagination-info{color:var(--admin-text-secondary, #666)}.pagination-controls{display:flex;align-items:center;gap:12px}.pagination-page{color:var(--admin-text-secondary, #666)}.pagination-btn{padding:6px 12px;border-radius:6px;border:1px solid var(--admin-border, #e5e7eb);background:var(--admin-surface, #fff);cursor:pointer;font-size:13px}.pagination-btn:hover:not(:disabled){background:var(--admin-bg, #f7f7f7)}.pagination-btn:disabled{opacity:.4;cursor:default}.admin-controls{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}.admin-search{flex:1;min-width:250px;padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px}.admin-search:focus{outline:none;border-color:#db0e0d;box-shadow:0 0 0 3px #db0e0d1a}.admin-filters{display:flex;gap:8px}.admin-filters button{padding:10px 20px;border:1px solid #ddd;background:#fff;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s;font-weight:500}.admin-filters button:hover{border-color:#db0e0d;color:#db0e0d}.admin-filters button.active{background:#db0e0d;color:#fff;border-color:#db0e0d}.admin-btn-export{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#22c55e;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.admin-btn-export:hover{background:#16a34a;transform:translateY(-1px);box-shadow:0 4px 12px #22c55e4d}.admin-btn-create{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#db0e0d;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.admin-btn-create:hover{background:#b80c0b;transform:translateY(-1px);box-shadow:0 4px 12px #db0e0d4d}.admin-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;margin-bottom:16px}.admin-table{width:100%;border-collapse:collapse}.admin-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.admin-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.admin-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background .15s}.admin-table tbody tr:hover{background:#f9fafb}.admin-table tbody tr.used{opacity:.7}.admin-table td{padding:16px;font-size:14px;color:#121212}.admin-code{font-family:SF Mono,Monaco,Consolas,monospace;font-weight:600;color:#db0e0d}.admin-qr-cell{width:60px;padding:8px!important}.admin-qr-thumbnail{width:50px;height:50px;border-radius:4px;border:1px solid #e0e0e0;background:#fff}.admin-date{color:#666;font-size:13px}.admin-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.admin-status-badge.used{background:#22c55e1a;color:#16a34a}.admin-status-badge.unused{background:#f59e0b1a;color:#d97706}.admin-type-badge{display:inline-block;padding:4px 10px;background:#db0e0d1a;color:#db0e0d;border-radius:6px;font-size:12px;font-weight:600}.admin-empty{text-align:center;padding:48px 16px;color:#999;font-style:italic}.admin-footer{text-align:center;color:#666;font-size:14px;padding:16px}.admin-checkbox-cell{width:40px;text-align:center;padding:8px!important}.admin-checkbox-cell input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#DB0E0D}.admin-table tbody tr.selected{background:#db0e0d0d}.admin-table tbody tr.selected:hover{background:#db0e0d14}.admin-bulk-actions{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#121212;border-radius:8px;margin-bottom:16px}.admin-bulk-count{color:#fff;font-size:14px;font-weight:500}.admin-btn-bulk-resend{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.admin-btn-bulk-resend:hover:not(:disabled){background:#2563eb}.admin-btn-bulk-resend:disabled{background:#93c5fd;cursor:not-allowed}.admin-btn-bulk-delete{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.admin-btn-bulk-delete:hover:not(:disabled){background:#dc2626}.admin-btn-bulk-delete:disabled{background:#fca5a5;cursor:not-allowed}.admin-btn-clear-selection{padding:8px 16px;background:transparent;color:#999;border:1px solid #444;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.admin-btn-clear-selection:hover{color:#fff;border-color:#666}.admin-email-cell{display:flex;align-items:center;gap:8px}.admin-no-email{color:#999;font-style:italic}.admin-btn-edit-email{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;color:#666;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:all .2s;flex-shrink:0}.admin-btn-edit-email:hover{background:#3b82f6;color:#fff;border-color:#3b82f6}.admin-type-cell{display:flex;align-items:center;gap:6px}.admin-btn-edit-type{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;color:#666;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:all .2s;flex-shrink:0}.admin-btn-edit-type:hover{background:#7c3aed;color:#fff;border-color:#7c3aed}.admin-print-col{width:40px}.admin-print-cell{width:40px;padding:8px!important}.admin-btn-print-ticket{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;color:#666;border:1px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s}.admin-btn-print-ticket:hover:not(:disabled){background:#7c3aed;color:#fff;border-color:#7c3aed;transform:translateY(-1px);box-shadow:0 2px 8px #7c3aed4d}.admin-btn-print-ticket:disabled{opacity:.4;cursor:not-allowed}.admin-btn-bulk-print{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#7c3aed;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.admin-btn-bulk-print:hover:not(:disabled){background:#6d28d9}.admin-btn-bulk-print:disabled{background:#c4b5fd;cursor:not-allowed}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.admin-modal{background:#fff;border-radius:12px;width:100%;max-width:480px;box-shadow:0 20px 60px #0000004d}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.admin-modal-header h2{margin:0;font-size:20px;font-weight:600;color:#121212}.admin-modal-close{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;line-height:1}.admin-modal-close:hover{color:#121212}.admin-modal-form{padding:24px}.admin-form-group{margin-bottom:20px}.admin-form-group label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.admin-form-group input{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;transition:border-color .2s,box-shadow .2s}.admin-form-group input:focus{outline:none;border-color:#db0e0d;box-shadow:0 0 0 3px #db0e0d1a}.admin-form-group input:disabled{background:#f3f4f6;cursor:not-allowed}.admin-modal-form select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;background:#fff;cursor:pointer}.admin-modal-form select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.admin-input-readonly{background:#f3f4f6!important;color:#666!important;font-family:SF Mono,Monaco,Consolas,monospace}.admin-form-hint{display:block;margin-top:4px;font-size:12px;color:#666}.admin-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.admin-btn-cancel{padding:12px 20px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.admin-btn-cancel:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.admin-btn-submit{padding:12px 24px;background:#db0e0d;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.admin-btn-submit:hover:not(:disabled){background:#b80c0b}.admin-btn-submit:disabled,.admin-btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.admin-controls{flex-direction:column}.admin-search{width:100%}.admin-table-container{overflow-x:auto}.admin-table{min-width:900px}}.analytics-view{max-width:1000px}.analytics-title{font-size:22px;font-weight:600;color:#121212;margin:0 0 24px}.analytics-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-bottom:32px}.analytics-stat-card{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #00000014;border-left:4px solid #DB0E0D}.analytics-stat-card.used{border-left-color:#22c55e}.analytics-stat-card.unused{border-left-color:#f59e0b}.analytics-stat-card.percent{border-left-color:#3b82f6}.analytics-stat-card .stat-value{font-size:36px;font-weight:700;color:#121212;margin-bottom:4px}.analytics-stat-card .stat-label{font-size:14px;color:#666;font-weight:500}.analytics-type-breakdown{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;margin-bottom:24px}.analytics-type-breakdown h3{margin:0;padding:16px 20px;font-size:16px;font-weight:600;color:#121212;border-bottom:1px solid #eee}.analytics-type-table{width:100%;border-collapse:collapse}.analytics-type-table th{background:#f9f9f9;padding:12px 20px;text-align:left;font-size:13px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #eee}.analytics-type-table th:not(:first-child){text-align:center}.analytics-type-table td{padding:12px 20px;border-bottom:1px solid #f0f0f0;font-size:15px;font-weight:600;color:#333}.analytics-type-table td:not(:first-child){text-align:center}.analytics-type-table tr:last-child td{border-bottom:none}.analytics-type-table .type-used{color:#16a34a}.analytics-type-table .type-unused{color:#d97706}.admin-type-badge.ga{color:#db0e0d}.admin-type-badge.vip{color:#7c3aed}.admin-type-badge.vip_table{color:#2563eb}.admin-type-badge.judge{color:#0891b2}.admin-type-badge.partner_vip{color:#c026d3}.analytics-revenue-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px 24px;margin-bottom:24px}.analytics-revenue-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#121212}.analytics-revenue-rows{display:flex;flex-direction:column;gap:14px}.analytics-revenue-row{display:flex;align-items:center;gap:16px}.analytics-revenue-label{width:180px;flex-shrink:0}.analytics-revenue-type{display:block;font-size:14px;font-weight:600;color:var(--admin-text, #121212)}.analytics-revenue-meta{display:block;font-size:12px;color:var(--admin-text-secondary, #666);margin-top:2px}.analytics-bar-container{flex:1;height:8px;background:var(--admin-border, #e5e7eb);border-radius:4px;overflow:hidden}.analytics-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.analytics-revenue-value{width:90px;text-align:right;font-size:14px;font-weight:700;color:var(--admin-text, #121212);flex-shrink:0}.analytics-revenue-total{margin-top:16px;padding-top:12px;border-top:1px solid var(--admin-border-light, #f0f0f0);text-align:right;font-size:15px;font-weight:700;color:var(--admin-text, #121212)}.analytics-chart-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px 24px;margin-bottom:24px}.analytics-chart-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#121212}.analytics-chart{height:140px;display:flex;align-items:flex-end;gap:4px}.analytics-chart-placeholder{height:140px;display:flex;align-items:center;justify-content:center;color:var(--admin-text-muted, #999);font-size:13px}.analytics-bar-wrapper{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.analytics-bar{width:100%;min-width:0;border-radius:4px 4px 0 0;background:var(--admin-red, #DB0E0D);transition:height .3s ease}.analytics-ticket-bar{background:var(--admin-info, #3b82f6)}.analytics-bar-amount{text-align:center;font-size:9px;color:var(--admin-text-secondary, #666);margin-bottom:2px}.analytics-bar-day{text-align:center;font-size:10px;color:#888;margin-top:4px;white-space:nowrap}.analytics-promo-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px 24px;margin-bottom:24px}.analytics-promo-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#121212}.analytics-promo-table-container{border:1px solid var(--admin-border-light, #f0f0f0);border-radius:8px;overflow:hidden}.analytics-promo-table{width:100%;border-collapse:collapse}.analytics-promo-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.analytics-promo-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.analytics-promo-table tbody tr{border-bottom:1px solid #f0f0f0}.analytics-promo-table tbody tr:last-child{border-bottom:none}.analytics-promo-table tbody tr:hover{background:#f9fafb}.analytics-promo-table td{padding:12px 16px;font-size:14px;color:var(--admin-text, #121212)}.analytics-promo-code{font-family:SF Mono,Monaco,Consolas,monospace;font-weight:600;font-size:13px}.analytics-promo-used{font-weight:600;text-align:center}.analytics-promo-status{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600}.analytics-promo-status.active{background:#22c55e1f;color:#16a34a}.analytics-promo-status.inactive{background:#9ca3af26;color:#6b7280}@media (max-width: 768px){.analytics-revenue-row{flex-direction:column;align-items:stretch;gap:6px}.analytics-revenue-label{width:auto;display:flex;justify-content:space-between;align-items:baseline}.analytics-revenue-value{width:auto;text-align:left}.analytics-promo-table-container{overflow-x:auto}.analytics-promo-table{min-width:650px}}.event-form{max-width:800px}.event-form-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;margin-bottom:20px}.event-form-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#121212;padding-bottom:12px;border-bottom:1px solid #eee}.event-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.event-form .admin-form-group{margin-bottom:16px}.event-form .admin-form-group label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.event-form .admin-form-group input,.event-form .admin-form-group textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s;font-family:inherit}.event-form .admin-form-group textarea{min-height:132px;resize:vertical}.event-form .admin-form-group input:focus,.event-form .admin-form-group textarea:focus{outline:none;border-color:#db0e0d;box-shadow:0 0 0 3px #db0e0d1a}.event-form-help{font-size:12px;color:#6b7280;margin:6px 0 0}.dynamic-rows{display:flex;flex-direction:column;gap:8px}.dynamic-row{display:flex;gap:8px;align-items:center}.dynamic-row.sku-header{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;padding-bottom:4px}.dynamic-row input{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.dynamic-row input:focus{outline:none;border-color:#db0e0d}.dynamic-row-time{width:180px;flex-shrink:0}.dynamic-row-desc{flex:1}.dynamic-row-sku-key{flex:2}.dynamic-row-sku-type{flex:1}.dynamic-row-sku-label{flex:2}.dynamic-row-remove{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;color:#999;border:1px solid #ddd;border-radius:6px;cursor:pointer;flex-shrink:0;transition:all .2s}.dynamic-row-remove:hover:not(:disabled){background:#ef4444;color:#fff;border-color:#ef4444}.dynamic-row-remove:disabled{opacity:.3;cursor:not-allowed}.dynamic-row-add{display:flex;align-items:center;gap:6px;padding:8px 14px;background:none;color:#db0e0d;border:1px dashed #DB0E0D;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;width:fit-content;transition:all .2s}.dynamic-row-add:hover{background:#db0e0d0d}.event-form-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:#374151}.event-form-toggle input[type=checkbox]{width:18px;height:18px;accent-color:#DB0E0D}.event-form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:8px}@media (max-width: 768px){.event-form-row{grid-template-columns:1fr}.dynamic-row-time{width:120px}}.events-view .view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.events-view .view-header h2{margin:0;font-size:22px;font-weight:600;color:#121212}.events-loading{color:#666;font-size:14px}.events-empty{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 24px;text-align:center;color:#999}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:20px}.event-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;border-left:4px solid #22c55e;transition:box-shadow .2s}.event-card.inactive{border-left-color:#d1d5db;opacity:.8}.event-card:hover{box-shadow:0 4px 16px #0000001f}.event-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 20px 12px}.event-card-header h3{margin:0;font-size:17px;font-weight:600;color:#121212}.event-status-badge{padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;flex-shrink:0}.event-status-badge.active{background:#22c55e1a;color:#16a34a}.event-status-badge.inactive{background:#9ca3af26;color:#6b7280}.event-card-details{padding:0 20px 16px}.event-card-detail{font-size:13px;color:#666;margin-bottom:4px}.event-card-detail strong{color:#374151}.event-card-detail code{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;background:#f3f4f6;padding:1px 6px;border-radius:4px}.event-card-actions{padding:12px 20px;border-top:1px solid #f0f0f0;display:flex;gap:8px}.event-card-edit{display:flex;align-items:center;gap:6px;padding:6px 14px;background:none;color:#3b82f6;border:1px solid #3b82f6;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.event-card-edit:hover{background:#3b82f6;color:#fff}@media (max-width: 768px){.events-grid{grid-template-columns:1fr}}.staff-view .view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.staff-view .view-header h2{margin:0;font-size:22px;font-weight:600;color:#121212}.staff-loading{color:#666;font-size:14px}.staff-empty{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 24px;text-align:center;color:#999}.staff-add-form-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;margin-bottom:20px}.staff-add-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.staff-add-form .admin-form-group{margin-bottom:16px}.staff-add-form .admin-form-group label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.staff-add-form .admin-form-group input[type=text],.staff-add-form .admin-form-group input[type=email]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px}.staff-add-form .admin-form-group input:focus{outline:none;border-color:#db0e0d;box-shadow:0 0 0 3px #db0e0d1a}.staff-event-checkboxes{display:flex;flex-wrap:wrap;gap:12px}.staff-event-checkbox{display:flex;align-items:center;gap:6px;font-size:14px;color:#374151;cursor:pointer}.staff-event-checkbox input[type=checkbox]{accent-color:#DB0E0D}.staff-add-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.staff-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.staff-table{width:100%;border-collapse:collapse}.staff-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.staff-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.staff-table tbody tr{border-bottom:1px solid #f0f0f0}.staff-table tbody tr:hover{background:#f9fafb}.staff-table td{padding:14px 16px;font-size:14px;color:#121212}.staff-name{font-weight:500}.staff-email{color:#666}.staff-event-badges{display:flex;flex-wrap:wrap;gap:6px}.staff-event-badge{padding:3px 10px;border-radius:12px;font-size:11px;font-weight:500;border:1px solid #d1d5db;background:#f9fafb;color:#6b7280;cursor:pointer;transition:all .15s}.staff-event-badge.assigned{background:#22c55e1a;color:#16a34a;border-color:#22c55e4d}.staff-event-badge:hover{border-color:#db0e0d}.staff-no-events{font-size:12px;color:#999;font-style:italic}.staff-actions-cell{width:60px;text-align:center}.staff-delete-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;color:#999;border:1px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s}.staff-delete-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}@media (max-width: 768px){.staff-add-row{grid-template-columns:1fr}.staff-table-container{overflow-x:auto}.staff-table{min-width:600px}}.email-logs-view .view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.email-logs-view .view-header h2{margin:0;font-size:22px;font-weight:600;color:#121212}.email-logs-loading{color:#666;font-size:14px}.email-logs-empty{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 24px;text-align:center;color:#16a34a;font-weight:500}.email-logs-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.email-logs-table{width:100%;border-collapse:collapse}.email-logs-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.email-logs-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.email-logs-table tbody tr{border-bottom:1px solid #f0f0f0}.email-logs-table tbody tr:hover{background:#f9fafb}.email-logs-table td{padding:14px 16px;font-size:14px;color:#121212}.email-logs-email{font-weight:500}.email-logs-table code{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;background:#f3f4f6;padding:1px 6px;border-radius:4px}.email-logs-error{color:#dc2626;font-size:13px;max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-logs-date{color:#666;font-size:13px}.email-logs-actions{width:120px}.email-logs-retry-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.email-logs-retry-btn:hover:not(:disabled){background:#2563eb}.email-logs-retry-btn:disabled{background:#93c5fd;cursor:not-allowed}@media (max-width: 768px){.email-logs-table-container{overflow-x:auto}.email-logs-table{min-width:700px}}.promo-view .view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.promo-view .view-header h2{margin:0;font-size:22px;font-weight:600;color:#121212}.promo-loading{color:#666;font-size:14px}.promo-empty{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 24px;text-align:center;color:#999;font-style:italic}.promo-form{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;margin-bottom:24px}.promo-form-row{display:flex;gap:16px;margin-bottom:16px}.promo-form-group{flex:1;display:flex;flex-direction:column}.promo-form-group.promo-form-narrow{flex:0 0 140px}.promo-form-group label{font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.promo-hint{font-weight:400;color:#999;font-size:12px}.promo-form-group input,.promo-form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#fff;transition:border-color .2s,box-shadow .2s}.promo-form-group input:focus,.promo-form-group select:focus{outline:none;border-color:#db0e0d;box-shadow:0 0 0 3px #db0e0d1a}.promo-form-actions{display:flex;gap:12px;justify-content:flex-end}.promo-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.promo-table{width:100%;border-collapse:collapse}.promo-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.promo-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.promo-table tbody tr{border-bottom:1px solid #f0f0f0}.promo-table tbody tr:hover{background:#f9fafb}.promo-table td{padding:14px 16px;font-size:14px;color:#121212}.promo-code-cell{font-family:SF Mono,Monaco,Consolas,monospace;font-weight:600;color:#db0e0d}.promo-status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.promo-status-badge.active{background:#22c55e1a;color:#16a34a}.promo-status-badge.inactive{background:#9ca3af26;color:#6b7280}.promo-toggle-btn{padding:6px 14px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.promo-toggle-btn.deactivate{background:#ef44441a;color:#dc2626}.promo-toggle-btn.deactivate:hover:not(:disabled){background:#ef4444;color:#fff}.promo-toggle-btn.activate{background:#22c55e1a;color:#16a34a}.promo-toggle-btn.activate:hover:not(:disabled){background:#22c55e;color:#fff}.promo-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.promo-action-btns{display:flex;gap:6px;align-items:center}.promo-edit-btn{padding:4px 8px;border:1px solid var(--admin-border);background:transparent;border-radius:4px;cursor:pointer;color:var(--admin-text-secondary);display:flex;align-items:center}.promo-edit-btn:hover{border-color:var(--admin-info);color:var(--admin-info)}.promo-editing-row{background:#3b82f60a}.promo-edit-cell{display:flex;gap:6px;align-items:center}.promo-edit-input{padding:6px 8px;border:1px solid var(--admin-border);border-radius:4px;font-size:13px;background:var(--admin-surface);color:var(--admin-text);width:100%}.promo-edit-input:focus{outline:none;border-color:var(--admin-info)}.promo-edit-narrow{width:70px;flex-shrink:0}.promo-edit-select{padding:6px 8px;border:1px solid var(--admin-border);border-radius:4px;font-size:13px;background:var(--admin-surface);color:var(--admin-text)}.promo-save-btn{padding:4px 12px;border:none;border-radius:4px;background:var(--admin-info);color:#fff;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap}.promo-save-btn:hover:not(:disabled){background:var(--admin-info-dark, #2563eb)}.promo-cancel-btn{padding:4px 12px;border:1px solid var(--admin-border);border-radius:4px;background:transparent;font-size:12px;cursor:pointer;color:var(--admin-text-secondary);white-space:nowrap}.promo-cancel-btn:hover{border-color:var(--admin-text-secondary)}@media (max-width: 768px){.promo-form-row{flex-direction:column}.promo-form-group.promo-form-narrow{flex:1}.promo-table-container{overflow-x:auto}.promo-table{min-width:600px}}.orders-view .view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.orders-view .view-header h2{margin:0;font-size:22px;font-weight:600;color:#121212}.orders-loading{color:#666;font-size:14px}.orders-empty{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 24px;text-align:center;color:#999;font-style:italic}.orders-stats{display:flex;gap:16px;margin-bottom:24px}.orders-stat-card{flex:1;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px 24px;display:flex;flex-direction:column;gap:4px}.orders-stat-label{font-size:13px;font-weight:500;color:#666;text-transform:uppercase;letter-spacing:.5px}.orders-stat-value{font-size:28px;font-weight:700;color:#121212}.orders-controls{display:flex;gap:12px;margin-bottom:24px}.orders-search-wrapper{flex:1;position:relative;display:flex;align-items:center}.orders-search-wrapper svg{position:absolute;left:14px;color:#999;pointer-events:none}.orders-search{width:100%;padding:12px 16px 12px 42px;border:1px solid #ddd;border-radius:8px;font-size:14px}.orders-search:focus{outline:none;border-color:#db0e0d;box-shadow:0 0 0 3px #db0e0d1a}.orders-status-filter{padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;min-width:150px}.orders-status-filter:focus{outline:none;border-color:#db0e0d;box-shadow:0 0 0 3px #db0e0d1a}.orders-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.orders-table{width:100%;border-collapse:collapse}.orders-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.orders-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.orders-table tbody tr{border-bottom:1px solid #f0f0f0}.orders-table tbody tr:hover{background:#f9fafb}.orders-table td{padding:14px 16px;font-size:14px;color:#121212}.orders-date{color:#666;font-size:13px;white-space:nowrap}.orders-email{font-weight:500}.orders-total{font-weight:600;font-family:SF Mono,Monaco,Consolas,monospace}.orders-promo-badge{display:inline-block;padding:2px 8px;background:#7c3aed1a;color:#7c3aed;border-radius:4px;font-size:12px;font-weight:600;font-family:SF Mono,Monaco,Consolas,monospace}.orders-status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.orders-footer{text-align:center;color:#666;font-size:14px;padding:16px}@media (max-width: 768px){.orders-stats,.orders-controls{flex-direction:column}.orders-status-filter{min-width:0}.orders-table-container{overflow-x:auto}.orders-table{min-width:700px}}.customers-view .view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.customers-view .view-header h2{margin:0;font-size:22px;font-weight:600;color:#121212}.customers-search-bar{display:flex;gap:12px;margin-bottom:24px}.customers-search-wrapper{flex:1;position:relative;display:flex;align-items:center}.customers-search-wrapper svg{position:absolute;left:16px;color:#999;pointer-events:none}.customers-search-input{width:100%;padding:14px 18px 14px 46px;border:2px solid var(--admin-border, #e5e7eb);border-radius:10px;font-size:15px;background:#fff;transition:border-color .15s,box-shadow .15s}.customers-search-input:focus{outline:none;border-color:var(--admin-red, #DB0E0D);box-shadow:0 0 0 3px #db0e0d1a}.customers-search-btn{padding:14px 28px;background:var(--admin-red, #DB0E0D);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.customers-search-btn:hover:not(:disabled){background:var(--admin-red-dark, #b80c0b)}.customers-search-btn:disabled{opacity:.5;cursor:not-allowed}.customers-loading{margin-top:8px}.customers-empty{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 24px;text-align:center;color:#999;font-style:italic}.customers-profile{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.customers-profile-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--admin-border-light, #f0f0f0)}.customers-profile-email{font-size:20px;font-weight:700;color:var(--admin-text, #121212)}.customers-profile-name{font-size:14px;color:var(--admin-text-secondary, #666);margin-top:4px}.customers-profile-stats{display:flex;gap:24px}.customers-profile-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.customers-stat-value{font-size:22px;font-weight:700;color:var(--admin-text, #121212)}.customers-stat-label{font-size:12px;color:var(--admin-text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.customers-section{padding:0 24px 24px}.customers-section h3{margin:20px 0 12px;font-size:15px;font-weight:600;color:var(--admin-text, #121212)}.customers-section-header{display:flex;justify-content:space-between;align-items:center;margin-top:20px;margin-bottom:12px}.customers-section-header h3{margin:0}.customers-resend-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--admin-info, #3b82f6);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.customers-resend-btn:hover:not(:disabled){background:var(--admin-info-dark, #2563eb)}.customers-resend-btn:disabled{opacity:.6;cursor:not-allowed}.customers-table-container{border:1px solid var(--admin-border-light, #f0f0f0);border-radius:8px;overflow:hidden}.customers-table{width:100%;border-collapse:collapse}.customers-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.customers-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.customers-table tbody tr{border-bottom:1px solid #f0f0f0}.customers-table tbody tr:last-child{border-bottom:none}.customers-table tbody tr:hover{background:#f9fafb}.customers-table td{padding:12px 16px;font-size:14px;color:var(--admin-text, #121212)}.customers-ticket-code{font-family:SF Mono,Monaco,Consolas,monospace;font-weight:500;font-size:13px}.customers-date{color:#666;font-size:13px;white-space:nowrap}.customers-total{font-weight:600;font-family:SF Mono,Monaco,Consolas,monospace}.customers-status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.customers-status-used{background:#22c55e1f;color:#16a34a}.customers-status-valid{background:#9ca3af26;color:#6b7280}.customers-order-status{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.customers-promo-badge{display:inline-block;padding:2px 8px;background:#7c3aed1a;color:#7c3aed;border-radius:4px;font-size:12px;font-weight:600;font-family:SF Mono,Monaco,Consolas,monospace}.customers-table .admin-type-badge{font-weight:600;font-size:13px}.customers-table .admin-type-badge.ga{color:var(--admin-type-ga, #DB0E0D)}.customers-table .admin-type-badge.vip{color:var(--admin-type-vip, #7c3aed)}.customers-table .admin-type-badge.vip_table{color:var(--admin-type-vip-table, #2563eb)}.customers-table .admin-type-badge.judge{color:var(--admin-type-judge, #0891b2)}.customers-table .admin-type-badge.partner_vip{color:var(--admin-type-partner-vip, #c026d3)}@media (max-width: 768px){.customers-search-bar{flex-direction:column}.customers-profile-header{flex-direction:column;align-items:flex-start;gap:16px}.customers-section-header{flex-direction:column;align-items:flex-start;gap:8px}.customers-table-container{overflow-x:auto}.customers-table{min-width:500px}}.qa-guide{max-width:900px}.qa-env-card{background:var(--admin-surface);border:2px solid var(--admin-info);border-radius:12px;padding:24px;margin-bottom:32px;box-shadow:0 2px 8px #3b82f61a}.qa-env-card h2{margin:0 0 16px;font-size:18px;color:var(--admin-info-dark);display:flex;align-items:center;gap:8px}.qa-env-card h2 svg{flex-shrink:0}.qa-env-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.qa-env-section h3{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-text-secondary);margin:0 0 10px}.qa-card-table{width:100%;border-collapse:collapse;font-size:14px}.qa-card-table td{padding:6px 0;border-bottom:1px solid var(--admin-border-light)}.qa-card-table td:first-child{font-weight:500;color:var(--admin-text);width:100px}.qa-card-table td:last-child{font-family:SF Mono,Fira Code,Consolas,monospace;color:var(--admin-info-dark)}.qa-card-number{display:inline-flex;align-items:center;gap:8px;background:#f0f4ff;padding:3px 10px;border-radius:4px;cursor:pointer;transition:background .15s;-webkit-user-select:all;user-select:all}.qa-card-number:hover{background:#dbe6ff}.qa-copy-hint{font-size:11px;color:var(--admin-text-muted);font-family:inherit}.qa-triggers-list{list-style:none;padding:0;margin:0;font-size:14px}.qa-triggers-list li{padding:6px 0;border-bottom:1px solid var(--admin-border-light);display:flex;justify-content:space-between;gap:12px}.qa-triggers-list li:last-child{border-bottom:none}.qa-trigger-action{color:var(--admin-text-secondary);font-size:13px}.qa-trigger-how{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:13px;color:var(--admin-text);text-align:right}.qa-toc{background:var(--admin-surface);border-radius:12px;padding:24px;margin-bottom:32px;box-shadow:0 2px 8px #0000000f}.qa-toc h2{margin:0 0 16px;font-size:18px;color:var(--admin-text)}.qa-toc-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.qa-toc-list a{display:block;padding:8px 12px;border-radius:6px;font-size:14px;color:var(--admin-text);text-decoration:none;transition:background .15s,color .15s}.qa-toc-list a:hover{background:var(--admin-red-light);color:var(--admin-red)}.qa-toc-number{font-weight:600;color:var(--admin-red);margin-right:6px}.qa-section{background:var(--admin-surface);border-radius:12px;margin-bottom:16px;box-shadow:0 2px 8px #0000000f;overflow:hidden}.qa-section summary{padding:20px 24px;cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;color:var(--admin-text);transition:background .15s}.qa-section summary::-webkit-details-marker{display:none}.qa-section summary:before{content:"";display:inline-block;width:8px;height:8px;border-right:2px solid var(--admin-text-secondary);border-bottom:2px solid var(--admin-text-secondary);transform:rotate(-45deg);transition:transform .2s;flex-shrink:0}.qa-section[open] summary:before{transform:rotate(45deg)}.qa-section summary:hover{background:#fafafa}.qa-section-number{color:var(--admin-red);font-weight:700}.qa-section-body{padding:0 24px 24px}.qa-test-case{border:1px solid var(--admin-border);border-radius:8px;padding:16px 20px;margin-bottom:16px}.qa-test-case:last-child{margin-bottom:0}.qa-test-case-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.qa-test-id{background:var(--admin-red-light);color:var(--admin-red);font-weight:700;font-size:12px;padding:2px 8px;border-radius:4px;font-family:SF Mono,Fira Code,Consolas,monospace}.qa-test-case-header h4{margin:0;font-size:15px;font-weight:600;color:var(--admin-text)}.qa-prereqs{background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:10px 14px;margin-bottom:12px;font-size:13px;color:#92400e}.qa-prereqs strong{color:#78350f}.qa-steps{padding-left:20px;margin:0 0 12px;font-size:14px;line-height:1.7;color:var(--admin-text)}.qa-steps li{padding:2px 0}.qa-steps code{background:#f1f5f9;color:#0f172a;padding:1px 6px;border-radius:3px;font-size:13px;font-family:SF Mono,Fira Code,Consolas,monospace}.qa-expected{background:#22c55e14;border-left:3px solid var(--admin-success);padding:10px 14px;border-radius:0 6px 6px 0;font-size:14px;color:var(--admin-success-dark)}.qa-expected strong{font-weight:600}.qa-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;line-height:1.5}.qa-badge-green{background:#22c55e1f;color:var(--admin-success-dark)}.qa-badge-blue{background:#3b82f61f;color:var(--admin-info-dark)}.qa-badge-yellow{background:#f59e0b1f;color:var(--admin-warning-dark)}.qa-badge-red{background:#ef44441f;color:var(--admin-error-dark)}.qa-status-table{width:100%;border-collapse:collapse;font-size:14px;margin:12px 0}.qa-status-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-text-secondary);padding:8px 12px;border-bottom:2px solid var(--admin-border)}.qa-status-table td{padding:8px 12px;border-bottom:1px solid var(--admin-border-light);color:var(--admin-text)}.qa-checklist{background:var(--admin-surface);border-radius:12px;padding:24px;margin-top:32px;box-shadow:0 2px 8px #0000000f}.qa-checklist h2{margin:0 0 16px;font-size:18px;color:var(--admin-text)}.qa-checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px}.qa-checklist-item{display:flex;align-items:flex-start;gap:8px;font-size:14px;padding:4px 0;color:var(--admin-text)}.qa-checklist-item input[type=checkbox]{margin-top:3px;accent-color:var(--admin-red);flex-shrink:0}.qa-reporting{background:var(--admin-surface);border-radius:12px;padding:24px;margin-top:16px;box-shadow:0 2px 8px #0000000f}.qa-reporting h2{margin:0 0 12px;font-size:18px;color:var(--admin-text)}.qa-reporting p{font-size:14px;color:var(--admin-text-secondary);margin:0 0 12px}.qa-reporting ol{padding-left:20px;margin:0;font-size:14px;line-height:1.8;color:var(--admin-text)}@media (max-width: 768px){.qa-env-grid,.qa-toc-list,.qa-checklist-grid{grid-template-columns:1fr}.qa-section summary{padding:16px;font-size:16px}.qa-section-body{padding:0 16px 16px}.qa-test-case{padding:12px 14px}}.tt-view{max-width:1200px}.tt-view .view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.tt-view .view-header h2{margin:0;font-size:22px;font-weight:600;color:var(--admin-text)}.tt-add-btn{display:flex;align-items:center;gap:6px;padding:10px 18px;background:var(--admin-red);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.tt-add-btn:hover:not(:disabled){background:var(--admin-red-dark)}.tt-add-btn:disabled{opacity:.5;cursor:not-allowed}.tt-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.tt-stat{background:var(--admin-surface);border-radius:8px;padding:16px;border:1px solid var(--admin-border)}.tt-stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#888;font-weight:600;margin-bottom:6px}.tt-stat-value{font-size:24px;font-weight:700;color:var(--admin-text);line-height:1.2}.tt-form-card{background:var(--admin-surface);border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;margin-bottom:24px}.tt-form-card h3{margin:0 0 20px;font-size:16px;font-weight:600;color:var(--admin-text)}.tt-form-row{display:flex;gap:16px;margin-bottom:16px}.tt-form-group{flex:1;display:flex;flex-direction:column}.tt-form-group.tt-form-wide{flex:2}.tt-form-group label{font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.tt-required{color:var(--admin-red)}.tt-hint{font-weight:400;color:var(--admin-text-muted);font-size:12px}.tt-form-group input,.tt-form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#fff;transition:border-color .2s,box-shadow .2s}.tt-form-group input:focus,.tt-form-group select:focus{outline:none;border-color:var(--admin-red);box-shadow:0 0 0 3px var(--admin-red-light)}.tt-price-input-wrap{position:relative;display:flex;align-items:center}.tt-price-prefix{position:absolute;left:12px;color:var(--admin-text-secondary);font-size:14px;pointer-events:none}.tt-price-input-wrap input{padding-left:26px;width:100%}.tt-form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:8px}.tt-btn-save{padding:10px 20px;background:var(--admin-red);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.tt-btn-save:hover:not(:disabled){background:var(--admin-red-dark)}.tt-btn-save:disabled{opacity:.5;cursor:not-allowed}.tt-btn-cancel{padding:10px 20px;background:#f3f4f6;color:var(--admin-text);border:1px solid var(--admin-border);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.tt-btn-cancel:hover{background:#e5e7eb}.tt-empty{background:var(--admin-surface);border-radius:12px;box-shadow:0 2px 8px #00000014;padding:60px 24px;text-align:center;color:var(--admin-text-muted);font-size:14px;font-style:italic}.tt-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tt-card{background:var(--admin-surface);border-radius:12px;border:1px solid var(--admin-border);padding:20px;transition:box-shadow .15s}.tt-card:hover{box-shadow:0 2px 12px #00000014}.tt-card-editing{background:var(--admin-surface);border-radius:12px;border:2px solid var(--admin-red);padding:20px}.tt-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.tt-card-info{flex:1;min-width:0}.tt-card-label{font-size:16px;font-weight:600;color:var(--admin-text);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tt-card-sku{font-size:12px;color:var(--admin-text-muted);font-family:SF Mono,Monaco,Consolas,monospace}.tt-card-actions-top{display:flex;gap:4px;margin-left:8px;flex-shrink:0}.tt-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;background:transparent;color:var(--admin-text-muted);cursor:pointer;transition:all .15s}.tt-icon-btn:hover{background:#f3f4f6;color:var(--admin-text)}.tt-icon-btn-danger:hover{background:#ef44441a;color:var(--admin-error)}.tt-card-price-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.tt-card-price{font-size:22px;font-weight:700;color:var(--admin-text);background:none;border:none;border-bottom:1px dashed var(--admin-border);cursor:pointer;padding:0 0 2px;font-family:inherit;transition:border-color .15s}.tt-card-price:hover{border-bottom-color:var(--admin-red)}.tt-inline-price{display:flex;flex-wrap:wrap;align-items:center;gap:10px;width:100%}.tt-price-input-sm{flex:1 1 100%}.tt-price-input-sm input{width:100%;box-sizing:border-box;padding:12px 14px 12px 28px;font-size:18px;font-weight:700;border:1px solid #d1d5db;border-radius:8px}.tt-price-input-sm input:focus{outline:none;border-color:var(--admin-red);box-shadow:0 0 0 3px var(--admin-red-light)}.tt-price-input-sm .tt-price-prefix{left:12px;font-size:17px;font-weight:700}.tt-inline-save{padding:10px 18px;background:var(--admin-red);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.tt-inline-save:hover:not(:disabled){background:var(--admin-red-dark)}.tt-inline-save:disabled{opacity:.5}.tt-inline-cancel{padding:10px 18px;background:none;border:1px solid #d1d5db;border-radius:6px;color:var(--admin-text-muted);font-size:14px;font-weight:500;cursor:pointer}.tt-inline-cancel:hover{color:var(--admin-text)}.tt-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.tt-badge-onsale{background:#22c55e1a;color:#16a34a}.tt-badge-soldout{background:#ef44441a;color:#dc2626}.tt-badge-group{display:flex;gap:6px;align-items:center}.tt-badge-limit{background:#a855f71a;color:#9333ea}.tt-badge-visibility{background:#6366f11a;color:#4f46e5}.tt-badge-sponsors{background:#f59e0b1a;color:#d97706}.tt-badge-industry{background:#10b9811a;color:#059669}.tt-select{width:100%;padding:8px 10px;border:1px solid var(--admin-border);border-radius:6px;font-size:13px;background:#fff;color:var(--admin-text)}.tt-select:focus{outline:none;border-color:var(--admin-info)}.tt-card-inventory{margin-top:auto}.tt-progress-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--admin-text-secondary);margin-bottom:6px}.tt-progress{height:6px;background:var(--admin-border);border-radius:3px;overflow:hidden}.tt-progress-fill{height:100%;border-radius:3px;background:var(--admin-red);transition:width .3s ease}.tt-edit-fields{margin:12px 0 16px;display:flex;flex-direction:column;gap:12px}.tt-edit-row{display:flex;flex-wrap:wrap;gap:12px;row-gap:14px}.tt-edit-row .tt-form-group{flex:1 1 180px;min-width:0}.tt-card-editing .tt-form-group input,.tt-card-editing .tt-form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:16px;font-weight:500;background:#fff;transition:border-color .2s,box-shadow .2s}.tt-card-editing .tt-form-group input:focus,.tt-card-editing .tt-form-group select:focus{outline:none;border-color:var(--admin-red);box-shadow:0 0 0 3px var(--admin-red-light)}.tt-card-editing .tt-form-group label{font-size:13px;font-weight:600;color:var(--admin-text-secondary);margin-bottom:6px}.tt-card-edit-actions{display:flex;gap:8px;justify-content:flex-end}.tt-card-edit-actions .tt-btn-save,.tt-card-edit-actions .tt-btn-cancel{padding:8px 16px;font-size:13px}@media (max-width: 1024px){.tt-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.tt-stats{grid-template-columns:repeat(2,1fr)}.tt-cards{grid-template-columns:1fr}.tt-form-row,.tt-edit-row{flex-direction:column}.tt-view .view-header{flex-direction:column;align-items:stretch;gap:12px}.tt-add-btn{justify-content:center}}@media (max-width: 480px){.tt-stats{grid-template-columns:1fr}}:root{--admin-red: #DB0E0D;--admin-red-dark: #b80c0b;--admin-red-light: rgba(219, 14, 13, .1);--admin-bg: #f7f7f7;--admin-surface: #ffffff;--admin-sidebar: #1a1a1a;--admin-header: #121212;--admin-text: #121212;--admin-text-secondary: #666;--admin-text-muted: #999;--admin-border: #e5e7eb;--admin-border-light: #f0f0f0;--admin-success: #22c55e;--admin-success-dark: #16a34a;--admin-warning: #f59e0b;--admin-warning-dark: #d97706;--admin-error: #ef4444;--admin-error-dark: #dc2626;--admin-info: #3b82f6;--admin-info-dark: #2563eb;--admin-type-ga: #DB0E0D;--admin-type-vip: #7c3aed;--admin-type-vip-table: #2563eb;--admin-type-judge: #0891b2;--admin-type-partner-vip: #c026d3}.admin-layout{display:flex;min-height:100vh;background:#f7f7f7}.admin-main{flex:1;display:flex;flex-direction:column;min-width:0}.admin-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#666}.admin-spinner{width:40px;height:40px;border:3px solid #f0f0f0;border-top-color:#db0e0d;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.admin-header{background:#121212;color:#fff;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #0000001a}.admin-header-left{display:flex;align-items:center;gap:16px}.admin-header-logo{height:32px;width:auto}.admin-header h1{font-size:20px;font-weight:600;margin:0}.admin-header-right{display:flex;align-items:center;gap:16px}.admin-user{font-size:14px;opacity:.8}.admin-btn-logout{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.admin-btn-logout:hover{background:#db0e0d;border-color:#db0e0d}.admin-menu-btn{display:none;background:none;border:none;color:#fff;cursor:pointer;padding:4px}.admin-help-btn{background:none;border:1px solid #333;border-radius:50%;padding:4px;cursor:pointer;color:#888;display:flex;align-items:center;justify-content:center}.admin-help-btn:hover{color:#fff;border-color:#666}.admin-event-switcher{background:#1e1e1e;color:#fff;border:1px solid #444;border-radius:6px;padding:6px 12px;font-size:14px;cursor:pointer;margin-left:8px}.admin-event-switcher:focus{outline:none;border-color:#db0e0d}.admin-content{flex:1;padding:24px;max-width:1400px;width:100%;margin:0 auto}.admin-error-message{background:#fff;border-radius:12px;padding:48px;text-align:center;box-shadow:0 2px 8px #00000014;max-width:600px;margin:48px auto}.admin-error-message h2{color:#db0e0d;margin:0 0 16px;font-size:24px}.admin-error-message p{color:#666;margin:0 0 12px;line-height:1.6}.admin-error-hint{background:#f9fafb;padding:16px;border-radius:8px;border-left:4px solid #DB0E0D;margin-top:24px;font-size:14px;text-align:left}.admin-message{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;font-weight:500}.admin-message.success{background:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.2)}.admin-message.error{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.admin-message button{background:none;border:none;color:inherit;font-size:18px;cursor:pointer;opacity:.7;padding:0 4px}.admin-message button:hover{opacity:1}@media (max-width: 768px){.admin-menu-btn{display:flex}.admin-header{flex-direction:column;gap:12px;align-items:flex-start}.admin-content{padding:16px}}.home-page{min-height:100vh;background:#121212;padding:40px 20px;display:flex;align-items:center;justify-content:center}.home-container{max-width:900px;width:100%}.home-header{text-align:center;color:#fff;margin-bottom:50px}.home-logo{max-width:280px;height:auto;margin-bottom:30px}.home-header h1{font-size:48px;margin:0 0 8px;font-weight:700;letter-spacing:-.5px}.home-header h2{font-size:24px;margin:0 0 24px;font-weight:400;opacity:.85}.event-meta{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.meta-item{display:flex;align-items:center;gap:8px;font-size:16px;color:#ffffffe6}.meta-item svg{color:#db0e0d}.meta-divider{color:#ffffff4d}.portal-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-bottom:32px}.portal-card{background:#fff;border-radius:16px;padding:32px;text-decoration:none;color:inherit;transition:all .3s ease;box-shadow:0 4px 20px #0000004d;position:relative;display:flex;align-items:flex-start;gap:20px;border-left:4px solid transparent}.portal-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0006}.portal-card.buy{border-left-color:#db0e0d}.portal-card.buy:hover{background:linear-gradient(to right,#e8e8e8,#fff)}.portal-card.buy .card-icon{background:#db0e0d1a;color:#db0e0d}.portal-card.buy:hover .card-arrow{color:#db0e0d;transform:translate(4px)}.portal-card.customer{border-left-color:#db0e0d}.portal-card.customer:hover{background:linear-gradient(to right,#e8e8e8,#fff)}.portal-card.staff{border-left-color:#22c55e}.portal-card.staff:hover{background:linear-gradient(to right,#e8e8e8,#fff)}.card-icon{flex-shrink:0;width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center}.portal-card.customer .card-icon{background:#db0e0d1a;color:#db0e0d}.portal-card.staff .card-icon{background:#22c55e1a;color:#22c55e}.card-content{flex:1;min-width:0}.portal-card h3{margin:0 0 8px;color:#121212;font-size:22px;font-weight:600}.portal-card p{margin:0;color:#666;font-size:15px;line-height:1.5}.card-arrow{position:absolute;bottom:24px;right:24px;color:#ccc;transition:all .3s ease}.portal-card.customer:hover .card-arrow{color:#db0e0d;transform:translate(4px)}.portal-card.staff:hover .card-arrow{color:#22c55e;transform:translate(4px)}.event-schedule{background:#fff;border-radius:16px;padding:32px;margin-bottom:32px;box-shadow:0 4px 20px #0000004d}.schedule-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #eee}.schedule-header svg{color:#db0e0d}.event-schedule h3{margin:0;color:#121212;font-size:20px;font-weight:600}.event-schedule ul{list-style:none;padding:0;margin:0}.event-schedule li{display:flex;align-items:center;padding:16px 0;border-bottom:1px solid #f0f0f0;transition:background .2s}.event-schedule li:last-child{border-bottom:none;padding-bottom:0}.event-schedule li:first-child{padding-top:0}.event-schedule .time{font-weight:600;color:#db0e0d;min-width:160px;font-size:14px;font-family:SF Mono,Monaco,Consolas,monospace}.event-schedule .activity{color:#121212;font-size:15px}.home-footer{display:flex;align-items:center;justify-content:center;gap:10px;color:#ffffffb3;padding-top:16px}.home-footer svg{opacity:.7}.home-footer p{margin:0;font-size:14px}.home-footer a{color:#db0e0d;text-decoration:none;font-weight:500;transition:color .2s}.home-footer a:hover{color:#f33;text-decoration:underline}@media (max-width: 768px){.home-page{padding:24px 16px}.home-logo{max-width:200px;margin-bottom:20px}.home-header h1{font-size:32px}.home-header h2{font-size:18px}.event-meta{flex-direction:column;gap:8px}.meta-divider{display:none}.portal-cards{grid-template-columns:1fr}.portal-card{padding:24px}.card-icon{width:52px;height:52px}.card-icon svg{width:32px;height:32px}.portal-card h3{font-size:18px}.event-schedule{padding:24px}.event-schedule li{flex-direction:column;align-items:flex-start;gap:6px}.event-schedule .time{min-width:auto}}.terms-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;z-index:1000;display:flex;justify-content:center;align-items:center;padding:20px;animation:terms-fade-in .15s ease-out}@keyframes terms-fade-in{0%{opacity:0}to{opacity:1}}.terms-modal{background:#242424;border:1px solid rgba(255,255,255,.1);border-radius:8px;max-width:720px;width:100%;max-height:90vh;display:flex;flex-direction:column;color:#fff;box-shadow:0 20px 60px #00000080}.terms-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.08)}.terms-modal-header h2{margin:0;font-size:20px;font-weight:700;color:#fff}.terms-modal-close{background:transparent;border:none;color:#fff9;cursor:pointer;padding:6px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.terms-modal-close:hover{background:#ffffff14;color:#fff}.terms-modal-body{overflow-y:auto;padding:20px 24px;flex:1 1 auto;line-height:1.55;color:#e0e0e0;font-size:14px}.terms-modal-intro{color:#fffc;margin:0 0 20px;font-style:italic}.terms-modal-section{margin-bottom:20px}.terms-modal-section h3{margin:0 0 6px;font-size:15px;font-weight:600;color:#fff}.terms-modal-section p{margin:0 0 8px;color:#ccc}.terms-modal-section p:last-child{margin-bottom:0}.terms-modal-footer{padding:16px 24px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:flex-end}.buy-terms-acceptance{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px;margin:20px 0 4px;cursor:pointer;transition:border-color .15s,background .15s}.buy-terms-acceptance:hover{border-color:#ffffff2e}.buy-terms-acceptance input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin:2px 0 0;accent-color:#DB0E0D;cursor:pointer}.buy-terms-acceptance-text{flex:1;font-size:14px;color:#e0e0e0;line-height:1.45}.buy-terms-link{background:none;border:none;color:#db0e0d;padding:0;font:inherit;text-decoration:underline;cursor:pointer}.buy-terms-link:hover{color:#ff2d2c}@media (max-width: 560px){.terms-modal{max-height:100vh;border-radius:0;border:none}.terms-modal-overlay{padding:0}.terms-modal-header h2{font-size:18px}}@font-face{font-family:Montana Oswald;src:url(/montana-2026/fonts/oswald-400.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Montana Oswald;src:url(/montana-2026/fonts/oswald-500.ttf) format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Montana Oswald;src:url(/montana-2026/fonts/oswald-600.ttf) format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Montana Oswald;src:url(/montana-2026/fonts/oswald-700.ttf) format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Montana Rye;src:url(/montana-2026/fonts/rye-400.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}.montana-page{--montana-black: #050806;--montana-ink: #0a0d0a;--montana-panel: #11140f;--montana-panel-soft: #171a15;--montana-yellow: #e1b52d;--montana-mint: #7bc29d;--montana-green: #143625;--montana-paper: #f4efd9;--montana-white: #fffdf5;--montana-border: rgba(225, 181, 45, .62);min-height:100vh;overflow-x:clip;color:var(--montana-white);background:radial-gradient(circle at 9% 11%,rgba(123,194,157,.08),transparent 26rem),radial-gradient(circle at 90% 24%,rgba(225,181,45,.06),transparent 28rem),var(--montana-black);font-family:Montana Oswald,Arial Narrow,sans-serif;letter-spacing:.01em}.montana-page *,.montana-page *:before,.montana-page *:after{box-sizing:border-box}.montana-page a{color:inherit}.montana-page img{display:block;max-width:100%}.montana-skip-link{position:fixed;top:10px;left:10px;z-index:1000;padding:10px 14px;color:var(--montana-black);background:var(--montana-yellow);transform:translateY(-160%);transition:transform .15s ease}.montana-skip-link:focus{transform:translateY(0)}.montana-site-header{position:relative;z-index:20;min-height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:14px clamp(20px,4vw,64px);background:#020402f5;border-bottom:1px solid rgba(225,181,45,.28)}.montana-brand{display:inline-flex;width:174px}.montana-brand img{width:100%;height:auto}.montana-nav{display:flex;justify-content:center;gap:clamp(20px,3vw,42px)}.montana-nav a{color:var(--montana-yellow);font-size:13px;font-weight:600;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.montana-nav a:hover,.montana-nav a:focus-visible{color:var(--montana-white)}.montana-header-cta{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 22px;color:#090b08;background:var(--montana-yellow);border:1px solid #f0c743;border-radius:3px;box-shadow:0 6px 24px #e1b52d2e;font-size:14px;font-weight:700;letter-spacing:.06em;text-decoration:none;text-transform:uppercase;transition:background .16s ease,transform .16s ease}.montana-header-cta:hover,.montana-header-cta:focus-visible{background:#f0c43d;transform:translateY(-1px)}.montana-pattern-band{min-height:31px;background-color:#07140d;background-image:url(/montana-2026/brand/leaf-pattern.png);background-position:center 48%;background-repeat:repeat-x;background-size:auto 68px;border-block:2px solid var(--montana-yellow)}.montana-hero,.montana-section{width:min(100% - 40px,1400px);margin-inline:auto}.montana-hero{display:grid;grid-template-columns:minmax(310px,.95fr) minmax(280px,.63fr) minmax(320px,.72fr);align-items:start;gap:clamp(26px,3vw,48px);padding-block:clamp(36px,5vw,72px) clamp(48px,6vw,84px)}.montana-poster-wrap{display:grid;gap:12px}.montana-poster-frame{position:relative;padding:7px;background:var(--montana-yellow);box-shadow:0 28px 70px #0000008a;transform:rotate(-.65deg)}.montana-poster-frame:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;pointer-events:none;border:2px solid var(--montana-black)}.montana-poster-frame img{width:100%;aspect-ratio:3 / 4;object-fit:cover}.montana-poster-caption{color:#fffdf58f;font-size:11px;letter-spacing:.13em;text-align:center;text-transform:uppercase}.montana-hero-story{padding-top:8px}.montana-kicker{margin:0 0 9px;color:var(--montana-mint);font-size:15px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.montana-hero-story h1{margin:0;color:var(--montana-paper);font-family:Montana Rye,Georgia,serif;font-size:clamp(40px,4.2vw,72px);font-weight:400;letter-spacing:-.04em;line-height:.96;text-transform:uppercase}.montana-hero-story h1 span{display:block;margin-top:8px;color:var(--montana-yellow)}.montana-deck{margin:20px 0 30px;color:var(--montana-mint);font-size:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.montana-event-facts{display:grid;gap:0;margin:0 0 28px}.montana-event-facts>div{display:grid;grid-template-columns:88px 1fr;gap:16px;padding:15px 0;border-top:1px solid rgba(255,255,255,.12)}.montana-event-facts>div:last-child{border-bottom:1px solid rgba(255,255,255,.12)}.montana-event-facts dt{display:flex;align-items:center;gap:8px;margin:0;color:var(--montana-mint);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.montana-event-facts dt svg{width:17px}.montana-event-facts dd{margin:0;color:var(--montana-white);font-size:15px;font-weight:500;line-height:1.45}.montana-intro{margin:0;color:#fffdf5c2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.75}.montana-hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.montana-hero-badges span{padding:7px 10px;color:var(--montana-yellow);border:1px solid rgba(225,181,45,.3);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.montana-checkout-rail{position:sticky;top:20px;scroll-margin-top:24px}.montana-checkout-card{overflow:hidden;color:var(--montana-white);background:linear-gradient(#ffffff06,#fff0),var(--montana-ink);border:2px solid var(--montana-yellow);border-radius:7px;box-shadow:0 28px 68px #00000085}.montana-checkout-title{padding:18px 20px 14px;text-align:center;border-bottom:1px solid rgba(225,181,45,.48)}.montana-checkout-title p{margin:0 0 4px;color:var(--montana-mint);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.montana-checkout-title h2{margin:0;color:var(--montana-yellow);font-family:Montana Rye,Georgia,serif;font-size:25px;font-weight:400;letter-spacing:-.02em;text-transform:uppercase}.montana-checkout-card>.buy-steps{gap:5px;margin:0;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.montana-checkout-card .buy-step{flex:1;gap:5px}.montana-checkout-card .buy-step-num{width:23px;height:23px;flex:0 0 auto;border:1px solid rgba(255,255,255,.3);font-size:10px}.montana-checkout-card .buy-step.active .buy-step-num{color:var(--montana-black);background:var(--montana-yellow);border-color:var(--montana-yellow)}.montana-checkout-card .buy-step.done .buy-step-num{color:var(--montana-black);background:var(--montana-mint);border-color:var(--montana-mint)}.montana-checkout-card .buy-step-label{font-size:10px;letter-spacing:.05em;text-transform:uppercase}.montana-checkout-card .buy-section{padding:0;background:transparent;border:0;border-radius:0}.montana-checkout-card .buy-section>h2{margin:0;padding:16px 20px 10px;color:var(--montana-paper);font-size:15px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.montana-checkout-card .buy-ticket-list{gap:0;margin:0}.montana-checkout-card .buy-ticket-row{align-items:flex-end;gap:12px;padding:17px 18px;background:transparent;border:0;border-top:1px solid rgba(225,181,45,.25);border-radius:0}.montana-checkout-card .buy-ticket-row:first-child{border-top-color:transparent}.montana-checkout-card .buy-ticket-row:focus-within{background:#e1b52d0a}.montana-checkout-card .buy-ticket-row.montana-judge-ticket{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:start;column-gap:14px;row-gap:12px}.montana-judge-ticket-image{width:104px;height:142px;grid-row:1 / span 2;object-fit:cover;object-position:77% center;border:1px solid rgba(225,181,45,.4)}.montana-checkout-card .montana-judge-ticket .buy-qty-controls{grid-column:2;justify-self:start}.montana-checkout-card .buy-ticket-info{min-width:0;flex:1;gap:3px}.montana-checkout-card .buy-ticket-label{color:var(--montana-mint);font-family:Montana Rye,Georgia,serif;font-size:16px;font-weight:400;line-height:1.25;text-transform:uppercase}.montana-checkout-card .buy-ticket-price{color:var(--montana-yellow);font-size:28px;font-weight:700;line-height:1}.montana-checkout-card .buy-ticket-description{max-width:31ch;margin-top:3px;color:#fffdf5b8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11px;line-height:1.45}.montana-checkout-card .buy-ticket-avail{margin-top:3px;color:#fffdf594;font-size:10px;letter-spacing:.02em}.montana-checkout-card .buy-qty-controls{gap:0;border:1px solid rgba(255,255,255,.28);border-radius:3px}.montana-checkout-card .buy-qty-controls button{width:30px;height:32px;border:0;border-radius:0;font-size:16px}.montana-checkout-card .buy-qty-controls button:hover:not(:disabled){color:var(--montana-black);background:var(--montana-yellow)}.montana-checkout-card .buy-qty{min-width:26px;font-size:15px}.montana-checkout-card .buy-summary{margin:0;padding:15px 18px;border-top:1px solid rgba(225,181,45,.38)}.montana-checkout-card .buy-summary-total{font-size:13px;letter-spacing:.04em;text-transform:uppercase}.montana-checkout-card .buy-btn-primary{width:calc(100% - 36px);min-height:47px;margin:0 18px 18px;padding:12px 18px;color:var(--montana-black);background:var(--montana-yellow);border:1px solid #f0c743;border-radius:3px;font-family:Montana Oswald,sans-serif;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.montana-checkout-card .buy-btn-primary:hover:not(:disabled){color:var(--montana-black);background:#f0c43d}.montana-checkout-card .buy-btn-secondary{color:var(--montana-paper);border-radius:3px;font-family:Montana Oswald,sans-serif}.montana-checkout-card .buy-form-group,.montana-checkout-card .buy-order-summary,.montana-checkout-card .buy-card-fields,.montana-checkout-card .buy-error-msg,.montana-checkout-card .buy-loading-msg,.montana-checkout-card .buy-promo-msg,.montana-checkout-card .buy-terms-acceptance{margin-inline:18px}.montana-checkout-card .buy-sms-consent{margin:0 18px 15px;border-radius:3px}.montana-checkout-card .buy-sms-consent-control{color:#fffdf5cc}.montana-checkout-card .buy-sms-consent-control input[type=checkbox]{accent-color:var(--montana-yellow)}.montana-checkout-card .buy-sms-disclosure{color:#fffdf575}.montana-checkout-card .buy-sms-disclosure a{color:#fffdf5b3}.montana-checkout-card .buy-form-group{margin-bottom:15px}.montana-checkout-card .buy-form-group label{color:#fffdf5ad;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.montana-checkout-card .buy-form-group input,.montana-checkout-card .buy-cc-field{color:var(--montana-white);background:#ffffff0b;border-color:#ffffff29;border-radius:3px}.montana-checkout-card .buy-form-group input:focus{border-color:var(--montana-yellow)}.montana-checkout-card .buy-order-summary{border-radius:3px}.montana-checkout-card .buy-nav-buttons{margin:20px 18px 18px}.montana-checkout-card .buy-nav-buttons .buy-btn-primary{width:auto;margin:0}.montana-checkout-card .buy-nav-buttons .buy-btn-secondary{min-height:47px}.montana-checkout-card .buy-terms-acceptance{border-radius:3px}.montana-checkout-card .buy-terms-link{color:var(--montana-yellow)}.montana-checkout-card .buy-success-icon{color:var(--montana-black);background:var(--montana-mint)}.montana-checkout-card .buy-confirmation{padding:24px 18px 18px}.montana-checkout-card .buy-confirmation>h2{padding:0;margin-bottom:12px}.montana-checkout-card .buy-confirm-links .buy-btn-primary{width:100%;margin:0}.montana-checkout-card .montana-sales-closed{padding:26px 20px 30px;text-align:center}.montana-checkout-card .montana-sales-closed h2{padding:0;color:var(--montana-mint);font-family:Montana Rye,Georgia,serif;font-size:22px;font-weight:400;text-transform:uppercase}.montana-checkout-card .montana-sales-closed p{margin:12px 0 0;color:#fffdf5a8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;line-height:1.6}.montana-checkout-trust{display:grid;gap:7px;justify-items:center;padding:14px 18px 16px;color:#fffdf58c;border-top:1px solid rgba(255,255,255,.08);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:10px;text-align:center}.montana-checkout-trust span{display:inline-flex;align-items:center;gap:6px}.montana-checkout-trust strong{color:#fffdf5c2;font-weight:600}.montana-lineup{width:100%;max-width:none;background:#090b08;border-block:1px solid rgba(225,181,45,.22)}.montana-ribbon{min-height:86px;display:flex;align-items:center;justify-content:center;gap:clamp(16px,3vw,40px);padding:20px;color:var(--montana-black);background:var(--montana-yellow);background-image:url(/montana-2026/brand/stripe-pattern.png);background-position:top center;background-repeat:repeat-x;background-size:auto 23px}.montana-ribbon h2{margin:0;padding-top:7px;font-family:Montana Rye,Georgia,serif;font-size:clamp(24px,3vw,43px);font-weight:400;letter-spacing:-.03em;text-align:center;text-transform:uppercase}.montana-ribbon svg{width:24px;flex:0 0 auto}.montana-artist-grid{width:min(100% - 40px,1400px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-inline:auto;padding-block:0 52px}.montana-artist-card{position:relative;min-width:0;border-right:1px solid rgba(255,255,255,.1)}.montana-artist-card:first-child{border-left:1px solid rgba(255,255,255,.1)}.montana-artist-card>img,.montana-artist-art,.montana-band-art{width:100%;height:clamp(235px,25vw,370px);object-fit:cover;background:#11140f}.montana-artist-card>img{filter:saturate(.88) contrast(1.06)}.montana-artist-art{display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at center,rgba(123,194,157,.14),transparent 60%),#0d160f}.montana-artist-art img{width:84%;height:84%;object-fit:contain}.montana-artist-card--guest .montana-artist-art{background:radial-gradient(circle at center,rgba(225,181,45,.15),transparent 58%),#15120a}.montana-artist-card--guest .montana-artist-art img{width:68%;height:68%}.montana-band-art{position:relative;overflow:hidden;background:#08130d}.montana-band-art__group{width:100%;height:100%;object-fit:cover;object-position:52% center;filter:saturate(.92) contrast(1.06)}.montana-band-art:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 58%,rgba(4,7,5,.62)),linear-gradient(90deg,transparent 50%,rgba(4,7,5,.24));content:"";pointer-events:none}.montana-band-art__guest{position:absolute;z-index:1;right:13px;bottom:13px;width:min(38%,132px);margin:0;overflow:hidden;background:#090b08;border:2px solid var(--montana-yellow);box-shadow:0 12px 28px #00000073}.montana-band-art__guest img{display:block;width:100%;aspect-ratio:2 / 3;object-fit:cover;object-position:center top}.montana-band-art__guest figcaption{padding:6px 5px 5px;overflow:hidden;color:var(--montana-black);background:var(--montana-yellow);font-size:7px;font-weight:700;letter-spacing:.04em;line-height:1.15;text-align:center;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.montana-artist-copy{display:flex;min-height:226px;flex-direction:column;align-items:flex-start;padding:22px 22px 20px}.montana-artist-copy p{margin:0 0 7px;color:var(--montana-yellow);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.montana-artist-copy h3{margin:0 0 10px;color:var(--montana-mint);font-family:Montana Rye,Georgia,serif;font-size:clamp(22px,2.2vw,33px);font-weight:400;letter-spacing:-.03em;line-height:1.05;text-transform:uppercase}.montana-artist-copy span{color:#fffdf5ad;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;line-height:1.55}.montana-artist-copy a{display:inline-flex;align-items:center;gap:7px;margin-top:auto;padding:9px 11px;border:1px solid rgba(255,255,255,.28);border-radius:3px;font-size:11px;font-weight:600;letter-spacing:.06em;text-decoration:none;text-transform:uppercase}.montana-artist-copy a:hover,.montana-artist-copy a:focus-visible{color:var(--montana-black);background:var(--montana-mint);border-color:var(--montana-mint)}.montana-activities{width:100%;max-width:none;padding:clamp(50px,6vw,82px) max(20px,calc((100vw - 1400px)/2));background:linear-gradient(100deg,#05080638,#05080699),#10291c;border-block:1px solid rgba(123,194,157,.22)}.montana-section-heading{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:34px;text-align:center}.montana-section-heading>span{width:49px;height:49px;display:grid;place-items:center;color:var(--montana-yellow);border:1px solid rgba(225,181,45,.5);border-radius:50%}.montana-section-heading p{margin-bottom:4px}.montana-section-heading h2,.montana-travel h2,.montana-faq h2,.montana-updates h2,.montana-sponsors h2{margin:0;color:var(--montana-mint);font-family:Montana Rye,Georgia,serif;font-size:clamp(31px,4vw,50px);font-weight:400;letter-spacing:-.035em;line-height:1;text-transform:uppercase}.montana-activity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,27px)}.montana-activity-card{position:relative;padding:8px 8px 0;color:var(--montana-black);background:var(--montana-yellow);box-shadow:0 18px 40px #00000047}.montana-activity-card:nth-child(2n){transform:rotate(.6deg) translateY(5px)}.montana-activity-card:nth-child(odd){transform:rotate(-.45deg)}.montana-activity-card img{width:100%;aspect-ratio:4 / 3;object-fit:cover;filter:saturate(.9) contrast(1.04)}.montana-activity-card h3{max-width:9ch;margin:15px auto 18px;font-family:Montana Rye,Georgia,serif;font-size:clamp(20px,2.4vw,32px);font-weight:400;letter-spacing:-.03em;line-height:1.05;text-align:center;text-transform:uppercase}.montana-activity-card>span{position:absolute;right:14px;bottom:9px;color:#0508066b;font-size:11px;letter-spacing:.08em}.montana-vendors{width:100%;max-width:none;padding:clamp(38px,5vw,62px) max(20px,calc((100vw - 1400px)/2));overflow:hidden;color:var(--montana-black);background:linear-gradient(90deg,rgba(255,255,255,.12),transparent 24%,transparent 76%,rgba(255,255,255,.12)),var(--montana-yellow);border-bottom:1px solid rgba(5,8,6,.35)}.montana-vendor-header{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:24px}.montana-vendor-header .montana-kicker{color:#050806b8}.montana-vendor-header h2{margin:3px 0 9px;color:var(--montana-black);font-family:Montana Rye,Georgia,serif;font-size:clamp(32px,4.4vw,56px);font-weight:400;letter-spacing:-.035em;line-height:1;text-transform:uppercase}.montana-vendor-header>div:first-child>p:last-child{max-width:58ch;margin:0;color:#050806c2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;line-height:1.55}.montana-vendor-controls{display:flex;flex:0 0 auto;gap:8px}.montana-vendor-controls button{width:46px;height:46px;display:grid;place-items:center;padding:0;color:var(--montana-yellow);background:var(--montana-black);border:1px solid var(--montana-black);border-radius:50%;cursor:pointer;transition:color .16s ease,background .16s ease,transform .16s ease}.montana-vendor-controls button:hover,.montana-vendor-controls button:focus-visible{color:var(--montana-black);background:var(--montana-paper);transform:translateY(-1px)}.montana-vendor-controls svg{width:21px}.montana-vendor-track{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(195px,18vw,248px);gap:13px;padding:1px 1px 12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none}.montana-vendor-track::-webkit-scrollbar{display:none}.montana-vendor-card{min-width:0;display:grid;grid-template-rows:auto auto;gap:11px;margin:0;padding:9px 9px 12px;background:#fffdf56b;border:1px solid rgba(5,8,6,.24);scroll-snap-align:start}.montana-vendor-logo-stage{min-width:0;min-height:0;display:grid;place-items:center;aspect-ratio:1;padding:20px;overflow:hidden;background:var(--montana-paper)}.montana-vendor-logo-stage.is-dark{background:var(--montana-black)}.montana-vendor-logo-stage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.montana-vendor-card figcaption{overflow:hidden;color:#050806d1;font-size:12px;font-weight:700;letter-spacing:.07em;line-height:1.2;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.montana-travel{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(420px,1.28fr);gap:clamp(34px,6vw,86px);align-items:center;padding-block:clamp(62px,8vw,104px)}.montana-travel h2{max-width:9ch;color:var(--montana-yellow);font-size:clamp(45px,6vw,78px)}.montana-travel-copy>p:not(.montana-kicker){max-width:52ch;color:#fffdf5b3;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.7}.montana-travel ul{display:grid;gap:8px;padding:0;margin:24px 0;color:var(--montana-paper);list-style:none}.montana-travel li{padding:7px 0 7px 12px;border-left:2px solid var(--montana-yellow);font-size:13px;letter-spacing:.05em;text-transform:uppercase}.montana-travel-copy>a{display:inline-flex;align-items:center;gap:24px;padding:12px 17px;color:var(--montana-yellow);border:1px solid var(--montana-yellow);border-radius:3px;font-size:13px;font-weight:600;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.montana-travel-copy>a:hover,.montana-travel-copy>a:focus-visible{color:var(--montana-black);background:var(--montana-yellow)}.montana-hotel-image{position:relative;min-height:390px;overflow:hidden;border:1px solid var(--montana-border);text-decoration:none}.montana-hotel-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 45%,rgba(3,4,3,.9))}.montana-hotel-image img{width:100%;height:100%;min-height:390px;object-fit:cover;transition:transform .5s ease}.montana-hotel-image:hover img{transform:scale(1.025)}.montana-hotel-image>span{position:absolute;z-index:1;right:28px;bottom:24px;left:28px;color:var(--montana-white);font-family:Montana Rye,Georgia,serif;font-size:clamp(21px,3vw,34px);text-transform:uppercase}.montana-hotel-image small{display:block;margin-top:5px;color:var(--montana-yellow);font-family:Montana Oswald,sans-serif;font-size:12px;font-weight:500;letter-spacing:.11em}.montana-faq-wrap{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.65fr);gap:0;margin-top:clamp(42px,5vw,72px);margin-bottom:clamp(68px,8vw,108px);border:1px solid var(--montana-border)}.montana-faq{padding:clamp(25px,4vw,46px)}.montana-faq h2,.montana-updates h2{font-size:clamp(28px,3.4vw,43px)}.montana-accordion{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:28px}.montana-faq-item{align-self:start;border:1px solid rgba(255,255,255,.13)}.montana-faq-item button{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;color:var(--montana-paper);background:transparent;border:0;font-family:Montana Oswald,sans-serif;font-size:11px;font-weight:500;letter-spacing:.07em;text-align:left;text-transform:uppercase;cursor:pointer}.montana-faq-item button:hover,.montana-faq-item button:focus-visible{color:var(--montana-yellow)}.montana-faq-item button svg{width:15px;flex:0 0 auto}.montana-faq-item.is-open{border-color:#e1b52d73}.montana-faq-item>div{padding:0 13px 13px}.montana-faq-item p{margin:0;color:#fffdf5ab;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;line-height:1.6}.montana-updates{position:relative;overflow:hidden;padding:clamp(25px,4vw,43px);background:#11281b;border-left:1px solid var(--montana-border)}.montana-updates>img{position:absolute;right:-80px;bottom:-30px;width:280px;opacity:.12;transform:rotate(-8deg)}.montana-updates>*:not(img){position:relative;z-index:1}.montana-updates>p:not(.montana-kicker){color:#fffdf5b8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;line-height:1.65}.montana-updates a{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:11px 13px;color:var(--montana-black);background:var(--montana-yellow);border-radius:3px;font-size:11px;font-weight:600;letter-spacing:.06em;text-decoration:none;text-transform:uppercase}.montana-sponsors{padding-bottom:clamp(54px,8vw,100px);text-align:center}.montana-sponsors h2{color:var(--montana-paper)}.montana-sponsor-groups{display:grid;gap:clamp(34px,4vw,54px);margin-top:38px}.montana-sponsor-group{display:grid;gap:16px}.montana-sponsor-group>h3{margin:0;color:#fffdf59e;font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.montana-sponsor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);align-items:stretch;width:100%;margin-inline:auto}.montana-sponsor-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,1040px)}.montana-sponsor-grid--general{grid-template-columns:repeat(6,minmax(0,1fr))}.montana-sponsor-grid--general .montana-sponsor{grid-column:span 2}.montana-sponsor-grid--general .montana-sponsor:nth-child(4){grid-column:2 / span 2}.montana-sponsor-grid--partners{grid-template-columns:repeat(4,minmax(0,1fr))}.montana-sponsor{min-height:184px;display:grid;grid-template-rows:auto 1fr;align-items:center;justify-items:center;gap:17px;margin:0;padding:clamp(18px,2.3vw,30px);background:radial-gradient(circle at 50% 72%,rgba(123,194,157,.075),transparent 58%),#ffffff09;border:1px solid rgba(255,255,255,.12)}.montana-sponsor-grid--featured .montana-sponsor{min-height:224px;border-color:#e1b52d57}.montana-sponsor figcaption{color:#fffdf5b3;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.montana-sponsor img{max-width:min(88%,240px);max-height:104px;object-fit:contain;filter:grayscale(.08) contrast(1.02)}.montana-sponsor-grid--featured .montana-sponsor img{max-width:min(86%,310px);max-height:138px}.montana-footer{background:#020302}.montana-footer>div:last-child{min-height:106px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:26px;padding:24px max(20px,calc((100vw - 1400px)/2))}.montana-footer img{width:145px}.montana-footer p{margin:0;color:#fffdf594;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.montana-footer span{display:flex;align-items:center;gap:7px;color:var(--montana-mint);font-size:10px;letter-spacing:.07em;text-transform:uppercase}@media (max-width: 1180px){.montana-hero{grid-template-columns:minmax(300px,.85fr) minmax(290px,.68fr)}.montana-checkout-rail{grid-column:1 / -1;position:static;width:min(100%,620px);margin-inline:auto}.montana-artist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.montana-artist-card:nth-child(3){border-left:1px solid rgba(255,255,255,.1)}.montana-sponsor{min-height:172px}}@media (max-width: 820px){.montana-site-header{min-height:70px;grid-template-columns:1fr auto;padding-block:12px}.montana-brand{width:150px}.montana-nav{display:none}.montana-header-cta{padding-inline:16px;font-size:12px}.montana-hero{grid-template-columns:1fr;width:min(100% - 32px,620px);padding-top:34px}.montana-poster-wrap{width:min(100%,470px);margin-inline:auto}.montana-hero-story{padding-top:14px}.montana-hero-story h1{font-size:clamp(45px,12vw,68px)}.montana-checkout-rail{width:100%}.montana-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.montana-travel{grid-template-columns:1fr}.montana-travel-copy{display:grid;justify-items:start}.montana-travel h2{max-width:none}.montana-hotel-image,.montana-hotel-image img{min-height:330px}.montana-faq-wrap{grid-template-columns:1fr}.montana-updates{border-top:1px solid var(--montana-border);border-left:0}.montana-sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.montana-sponsor-grid--general .montana-sponsor,.montana-sponsor-grid--general .montana-sponsor:nth-child(4){grid-column:auto}}@media (max-width: 560px){.montana-pattern-band{min-height:25px;background-size:auto 56px}.montana-ribbon{gap:11px}.montana-ribbon h2{font-size:23px}.montana-ribbon svg{width:18px}.montana-artist-grid{grid-template-columns:1fr;width:100%}.montana-artist-card,.montana-artist-card:first-child,.montana-artist-card:nth-child(3){border-inline:0;border-bottom:1px solid rgba(255,255,255,.1)}.montana-artist-card>img,.montana-artist-art,.montana-band-art{height:330px}.montana-artist-copy{min-height:205px}.montana-activity-grid{grid-template-columns:1fr}.montana-activity-card{width:min(100%,390px);margin-inline:auto}.montana-activity-card h3{font-size:27px}.montana-section-heading>span{display:none}.montana-vendor-header{align-items:end;gap:16px}.montana-vendor-header>div:first-child>p:last-child{display:none}.montana-vendor-header h2{font-size:34px}.montana-vendor-controls button{width:44px;height:44px}.montana-vendor-track{grid-auto-columns:min(76vw,274px)}.montana-faq-wrap{width:min(100% - 24px,1400px)}.montana-accordion{grid-template-columns:1fr}.montana-sponsor-grid:not(.montana-sponsor-grid--featured){grid-template-columns:repeat(2,minmax(0,1fr))}.montana-sponsor-grid--featured{grid-template-columns:1fr}.montana-sponsor{min-height:152px;padding:18px 14px}.montana-sponsor-grid--featured .montana-sponsor{min-height:190px}.montana-sponsor img{max-width:min(92%,190px);max-height:90px}.montana-footer>div:last-child{grid-template-columns:1fr;justify-items:center;text-align:center}.montana-checkout-card .buy-ticket-row{flex-direction:row;align-items:flex-end}.montana-checkout-card .buy-ticket-row.montana-judge-ticket{align-items:start}.montana-checkout-card .buy-step-label{display:none!important}}@media (prefers-reduced-motion: reduce){.montana-page *,.montana-page *:before,.montana-page *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.buy-page{min-height:100vh;background:#1a1a1a;padding:40px 20px;display:flex;justify-content:center}.buy-container{max-width:480px;width:100%}.buy-loading,.buy-error,.buy-closed{text-align:center;color:#fff;padding-top:80px}.buy-loading p,.buy-error p,.buy-closed p{color:#ffffffb3;margin-top:12px}.buy-error h2,.buy-closed h2{font-size:24px;margin:0 0 8px}.buy-header{text-align:center;color:#fff;margin-bottom:32px}.buy-back-link{color:#fff9;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;gap:6px;margin-bottom:16px;transition:color .2s}.buy-back-link:hover{color:#db0e0d}.buy-header h1{font-size:32px;margin:0 0 4px;font-weight:700}.buy-subtitle{color:#fff9;font-size:14px;margin:0}.buy-event-details{background:linear-gradient(180deg,#db0e0d29,#242424f5);border:1px solid rgba(219,14,13,.32);border-radius:16px;padding:24px;margin-top:24px;margin-bottom:28px;color:#fff;box-shadow:0 18px 40px #0000002e}.buy-event-details-header{margin-bottom:16px}.buy-event-details-kicker{display:inline-block;color:#ff9b9b;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.buy-event-details h2{margin:0;font-size:22px}.buy-event-copy{display:grid;gap:12px;margin-bottom:18px}.buy-event-copy p{margin:0;color:#ffffffd1;font-size:14px;line-height:1.65}.buy-event-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.buy-event-fact{padding:14px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.buy-event-fact dt{margin:0 0 6px;color:#ffffff80;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.buy-event-fact dd{margin:0;color:#fff;font-size:14px;font-weight:600;line-height:1.4}.buy-steps{display:flex;justify-content:center;gap:8px;margin-bottom:32px}.buy-step{display:flex;align-items:center;gap:6px;opacity:.35;transition:opacity .3s}.buy-step.active,.buy-step.done{opacity:1}.buy-step-num{width:28px;height:28px;border-radius:50%;border:2px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#fff9}.buy-step.active .buy-step-num{border-color:#db0e0d;background:#db0e0d;color:#fff}.buy-step.done .buy-step-num{border-color:#22c55e;background:#22c55e;color:#fff}.buy-step-label{font-size:13px;color:#fff9;display:none}.buy-step.active .buy-step-label{display:inline;color:#fff}.buy-section{background:#242424;border-radius:16px;padding:28px;border:1px solid rgba(255,255,255,.08)}.buy-section h2{color:#fff;font-size:20px;font-weight:600;margin:0 0 20px}.buy-ticket-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.buy-ticket-row{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#ffffff0a;border-radius:10px;border:1px solid rgba(255,255,255,.06)}.buy-ticket-row.sold-out{opacity:.5}.buy-ticket-info{display:flex;flex-direction:column;gap:2px}.buy-ticket-label{color:#fff;font-weight:600;font-size:15px}.buy-ticket-price{color:#fff;font-weight:600;font-size:14px}.buy-ticket-description{color:#ffffff94;font-size:12px;line-height:1.45}.buy-ticket-avail{color:#fff6;font-size:12px}.buy-empty-state{margin:0;padding:18px;color:#ffffff9e;border:1px solid rgba(255,255,255,.08);border-radius:10px;font-size:14px;text-align:center}.buy-badge-sold-out{display:inline-block;background:#db0e0d;color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:4px;margin-top:2px;width:fit-content}.buy-qty-controls{display:flex;align-items:center;gap:12px}.buy-qty-controls button{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.buy-qty-controls button:hover:not(:disabled){border-color:#db0e0d;background:#db0e0d26;color:#db0e0d}.buy-qty-controls button:disabled{opacity:.3;cursor:not-allowed}.buy-qty{color:#fff;font-size:18px;font-weight:600;min-width:24px;text-align:center}.buy-summary{border-top:1px solid rgba(255,255,255,.08);padding-top:16px;margin-bottom:20px}.buy-summary-total{display:flex;justify-content:space-between;color:#fff;font-size:16px;font-weight:600}@media (max-width: 640px){.buy-event-details{padding:20px}.buy-event-facts{grid-template-columns:1fr}}.buy-btn-primary{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:14px 24px;background:#db0e0d;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;text-align:center}.buy-btn-primary:hover:not(:disabled){background:#c00c0b;transform:translateY(-1px)}.buy-btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.buy-btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;background:transparent;color:#ffffffb3;border:1px solid rgba(255,255,255,.2);border-radius:10px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;text-align:center}.buy-btn-secondary:hover:not(:disabled){border-color:#fff6;color:#fff}.buy-btn-secondary:disabled{opacity:.4;cursor:not-allowed}.buy-form-group{margin-bottom:18px}.buy-form-group label{display:block;color:#ffffffb3;font-size:13px;font-weight:500;margin-bottom:6px}.buy-form-group input{width:100%;padding:12px 14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#fff;font-size:15px;outline:none;transition:border-color .2s;box-sizing:border-box}.buy-form-group input:focus{border-color:#db0e0d}.buy-form-group input::placeholder{color:#ffffff40}.buy-form-hint{color:#fff6;font-size:12px;margin-top:4px;display:block}.buy-required-marker{color:#ff6868}.buy-sms-consent{padding:14px 16px;margin:0 0 18px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px}.buy-sms-consent-control{display:flex;align-items:flex-start;gap:10px;color:#e0e0e0;font-size:14px;line-height:1.45;cursor:pointer}.buy-sms-consent-control input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin:2px 0 0;accent-color:#DB0E0D;cursor:pointer}.buy-sms-disclosure{margin:9px 0 0 28px;color:#ffffff73;font-size:10px;line-height:1.5}.buy-sms-disclosure a{color:#ffffffad;text-decoration:underline}.buy-promo-row{display:flex;gap:8px}.buy-promo-row input{flex:1}.buy-promo-row .buy-btn-secondary{padding:12px 16px;white-space:nowrap;font-size:14px}.buy-promo-msg{display:block;font-size:13px;margin-top:6px}.buy-promo-msg.success{color:#22c55e}.buy-promo-msg.error{color:#ef4444}.buy-order-summary{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:16px;margin-bottom:20px}.buy-order-summary h3{color:#fff9;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.buy-summary-line{display:flex;justify-content:space-between;color:#ffffffb3;font-size:14px;padding:4px 0}.buy-summary-line.buy-discount{color:#22c55e}.buy-summary-line.buy-total{border-top:1px solid rgba(255,255,255,.08);margin-top:8px;padding-top:10px;color:#fff;font-size:16px;font-weight:700}.buy-card-fields{margin-bottom:20px}.buy-card-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.buy-cc-field{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;overflow:hidden}.buy-cc-field iframe{display:block;width:100%!important;height:44px!important;border:none!important}.buy-loading-msg{color:#ffffff80;font-size:14px;text-align:center;margin-top:12px}.buy-error-msg{color:#ef4444;font-size:14px;text-align:center;margin-top:12px;padding:10px;background:#ef44441a;border-radius:8px;border:1px solid rgba(239,68,68,.2)}.buy-nav-buttons{display:flex;gap:12px;margin-top:20px}.buy-nav-buttons .buy-btn-secondary{flex:0 0 auto}.buy-nav-buttons .buy-btn-primary{flex:1}.buy-confirmation{text-align:center}.buy-success-icon{width:72px;height:72px;border-radius:50%;background:#22c55e;color:#fff;font-size:36px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.buy-confirmation h2{text-align:center}.buy-confirmation p{color:#ffffffb3;font-size:15px;line-height:1.5;margin:0 0 24px}.buy-confirmation p strong{color:#fff}.buy-ticket-codes{margin-bottom:24px}.buy-ticket-codes h3{color:#fff9;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.buy-ticket-code{display:inline-block;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:6px 14px;margin:4px;color:#fff;font-family:SF Mono,Monaco,Consolas,monospace;font-size:14px;font-weight:600;letter-spacing:1px}.buy-confirm-links{display:flex;flex-direction:column;gap:12px}.buy-confirm-links .buy-btn-secondary{width:100%}@media (max-width: 768px){.buy-page{padding:20px 16px}.buy-section{padding:20px}.buy-header h1{font-size:26px}.buy-ticket-row{flex-direction:column;align-items:stretch;gap:12px}.buy-qty-controls{justify-content:center}.buy-card-row{grid-template-columns:1fr}.buy-step-label{display:none!important}}
