:root{color-scheme:dark;--bg-primary: #0a1628;--bg-secondary: #0d1d35;--bg-card: #112240;--bg-card-hover: #1a3050;--border-color: rgba(255, 255, 255, .1);--mm-cyan: #06d4ff;--mm-blue: #3b82f6;--mm-violet: #8b5cf6;--mm-magenta: #ec4899;--mm-orange: #f97316;--mm-yellow: #fbbf24;--gradient-mm: linear-gradient(135deg, #06d4ff 0%, #8b5cf6 35%, #ec4899 65%, #f97316 100%);--gradient-mm-soft: linear-gradient(135deg, rgba(6,212,255,.18) 0%, rgba(139,92,246,.18) 50%, rgba(236,72,153,.18) 100%);--gradient-mm-glow: radial-gradient(circle at top left, rgba(6,212,255,.22), transparent 38%), radial-gradient(circle at top right, rgba(249,115,22,.18), transparent 30%), radial-gradient(circle at bottom center, rgba(236,72,153,.18), transparent 35%);--text-primary: #ffffff;--text-secondary: #94a3b8;--text-muted: #64748b;--accent: var(--mm-cyan);--accent-strong: var(--mm-violet);--muted: var(--text-secondary);--danger: #fb7185;--success: #34d399;--shadow-lg: 0 25px 50px -12px rgba(0, 0, 0, .5);--shadow-glow: 0 0 40px rgba(139, 92, 246, .35);--transition-fast: .2s ease;--transition-medium: .3s ease}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-primary);background:var(--bg-primary)}body{background:var(--gradient-mm-glow),linear-gradient(180deg,var(--bg-primary) 0%,#050b16 100%);background-attachment:fixed}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.app{min-height:100vh}.top{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:rgba(10,22,40,.85);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:14px;font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:var(--text-primary)}.brand-logo{width:44px;height:44px;border-radius:12px;object-fit:cover;background:conic-gradient(from 200deg,var(--mm-cyan),var(--mm-violet),var(--mm-magenta),var(--mm-orange),var(--mm-cyan));box-shadow:0 0 18px #8b5cf659}.brand-title{display:flex;flex-direction:column;gap:2px;line-height:1}.brand-name{font-size:1rem;font-weight:800;background:var(--gradient-mm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-tagline{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.16em}nav{display:flex;gap:4px;align-items:center;flex-wrap:wrap}nav a{color:var(--text-secondary);padding:10px 16px;border-radius:10px;transition:all var(--transition-fast);font-weight:500;font-size:.9rem}nav a:hover{color:var(--text-primary);background:rgba(255,255,255,.05)}nav a.active{color:var(--text-primary);background:var(--gradient-mm-soft);border:1px solid rgba(139,92,246,.3)}.nav-logout{margin-left:10px;background:rgba(251,113,133,.1);color:#fca5b1;border:1px solid rgba(251,113,133,.24);border-radius:10px;padding:9px 14px;cursor:pointer;font-size:.85rem}.main{max-width:1280px;margin:0 auto;padding:32px 24px 64px}.hero-card,.admin-hero{display:flex;flex-wrap:wrap;gap:24px;padding:36px;border-radius:24px;background:linear-gradient(180deg,rgba(17,34,64,.7),rgba(13,29,53,.7));border:1px solid var(--border-color);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--gradient-mm-glow);pointer-events:none}.hero-card>*,.admin-hero>*{position:relative;z-index:1}.hero-copy{flex:1 1 460px}.eyebrow{display:inline-block;margin-bottom:14px;padding:6px 14px;background:var(--gradient-mm-soft);border:1px solid rgba(139,92,246,.3);border-radius:999px;color:var(--mm-cyan);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600}h1,h2,h3,h4{margin:0 0 12px;color:var(--text-primary);line-height:1.15;font-weight:700}.hero-copy h1,.admin-hero h1{font-size:clamp(2rem,2.6vw + 1rem,3rem);font-weight:800;letter-spacing:-.02em}.hero-copy h1 .gradient-text,.admin-hero h1 .gradient-text{background:var(--gradient-mm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-copy p,.admin-hero p{margin:0;max-width:700px;color:var(--text-secondary);line-height:1.7;font-size:1rem}.stats-row{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:14px;margin-top:28px}.stats-row>div{padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid var(--border-color)}.stats-row strong{display:block;font-size:1rem;color:var(--text-primary);margin-bottom:4px}.stats-row p{color:var(--text-secondary);margin:0;font-size:.85rem}.hero-cta{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.feature-chip{padding:6px 12px;border-radius:999px;background:rgba(6,212,255,.08);border:1px solid rgba(6,212,255,.22);color:#cffaff;font-size:.78rem;white-space:nowrap;text-decoration:none}.feature-chip:hover{background:rgba(6,212,255,.16)}.panel{padding:0;border-radius:24px;background:rgba(17,34,64,.55);border:1px solid var(--border-color);margin-top:24px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(320px,1fr);gap:0;margin-top:24px}.main-cards{padding:28px}.section-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:18px;text-transform:uppercase;letter-spacing:.08em}.cards{display:grid;gap:16px}.ticket-card{padding:22px;border-radius:18px;background:var(--bg-card);border:1px solid var(--border-color);transition:all var(--transition-medium);position:relative;overflow:hidden}.ticket-card:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--gradient-mm);opacity:0;transition:opacity var(--transition-medium)}.ticket-card:hover{background:var(--bg-card-hover);transform:translateY(-2px);box-shadow:0 12px 28px #0000004d}.ticket-card:hover:after{opacity:1}.ticket-card.sold-out{opacity:.55}.ticket-card.sold-out .ticket-qty{display:none}.ticket-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.ticket-type{font-weight:700;font-size:1rem;color:var(--text-primary)}.ticket-price{font-weight:800;font-size:1.1rem;background:var(--gradient-mm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ticket-desc,.ticket-meta{color:var(--text-secondary);margin:0 0 12px;font-size:.9rem}.quota-hint{color:var(--mm-cyan);margin-left:6px;font-weight:600}.ticket-qty{width:100%;max-width:130px;background:rgba(255,255,255,.04);border:1px solid var(--border-color);border-radius:12px;padding:10px 14px;color:var(--text-primary)}.checkout-panel{padding:28px;border-left:1px solid var(--border-color);display:flex;flex-direction:column;gap:18px}.checkout-header{display:flex;justify-content:space-between;align-items:center}.checkout-header small{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.checkout-header strong{font-size:1.8rem;background:var(--gradient-mm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800}.cart-preview{min-height:120px;background:rgba(255,255,255,.03);border:1px solid var(--border-color);border-radius:16px;padding:16px;display:grid;gap:10px}.cart-item{display:flex;justify-content:space-between;color:var(--text-primary)}.empty-state{color:var(--text-secondary)}.empty-state.pad{padding:40px;text-align:center}.checkout-form,.admin-form{display:grid;gap:12px}.checkout-form input,.admin-form input,.admin-form select,.login-card input,.manual-scan input,.chat-input input,.chat-identity input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border-color);background:rgba(255,255,255,.03);color:var(--text-primary);font-size:.95rem;transition:all var(--transition-fast)}.checkout-form input:focus,.admin-form input:focus,.admin-form select:focus,.login-card input:focus,.manual-scan input:focus,.chat-input input:focus,.chat-identity input:focus{outline:none;border-color:var(--mm-violet);box-shadow:0 0 0 3px #8b5cf626}.primary-btn{width:fit-content;background:var(--gradient-mm);background-size:200% 100%;background-position:0% 50%;color:#fff;border:none;cursor:pointer;padding:14px 22px;border-radius:12px;font-weight:700;font-size:.95rem;letter-spacing:.01em;box-shadow:0 12px 30px #8b5cf647;transition:all var(--transition-medium)}.primary-btn:hover:not(:disabled){background-position:100% 50%;transform:translateY(-2px);box-shadow:0 18px 36px #ec489959}.primary-btn:disabled{opacity:.5;cursor:not-allowed}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);font-size:.9rem}.secondary-btn:hover{border-color:#8b5cf666;background:rgba(139,92,246,.08)}.text-link{color:var(--mm-cyan);font-size:.9rem}.success-card{padding:20px;border-radius:18px;background:rgba(52,211,153,.08);border:1px solid rgba(52,211,153,.22)}.status-pill,.status-banner{padding:12px 16px;border-radius:12px;color:var(--text-primary);text-align:center;font-size:.9rem}.status-pill.success,.status-banner.success{background:rgba(52,211,153,.14);border:1px solid rgba(52,211,153,.3)}.status-pill.error,.status-banner.error{background:rgba(251,113,133,.14);border:1px solid rgba(251,113,133,.3)}.status-pill.warning,.status-banner.warning{background:rgba(251,191,36,.14);border:1px solid rgba(251,191,36,.3);color:#fde68a}.status-banner{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:200;padding:14px 22px;border-radius:14px;box-shadow:0 18px 36px #0006}.admin-page{display:grid;gap:24px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.admin-panel{padding:28px;border-radius:24px;background:rgba(17,34,64,.55);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.admin-panel.wide{grid-column:span 2}.table-card{display:grid;gap:10px;margin-bottom:20px}.row-item,.reservation-row{display:grid;grid-template-columns:1.5fr 1fr .8fr auto;gap:16px;align-items:center;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid var(--border-color);transition:all var(--transition-fast)}.row-item:hover,.reservation-row:hover{background:var(--bg-card-hover)}.reservation-row{grid-template-columns:1.4fr 1fr .7fr .9fr auto}.row-item strong,.reservation-row strong{font-size:.95rem;color:var(--text-primary)}.row-item p,.reservation-row small{margin:4px 0 0;color:var(--text-secondary);font-size:.8rem}.row-item .actions,.reservation-row .actions{display:flex;gap:8px;align-items:center}.form-group{display:grid;gap:12px}.form-group.split{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form select option{background-color:var(--bg-card);color:var(--text-primary)}.field{display:grid;gap:6px}.field>span{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);padding-left:2px;font-weight:600}.form-title{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin:0 0 4px}.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:4px}.row-item{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto}.row-item.archived{opacity:.55}.event-selector{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}.event-chip{padding:10px 18px;border-radius:30px;border:1px solid var(--border-color);background:rgba(255,255,255,.04);color:var(--text-secondary);cursor:pointer;font-weight:600;transition:all .15s}.event-chip:hover{border-color:#ffffff4d;color:var(--text-primary)}.event-chip.active{background:var(--accent, #c9a35c);border-color:var(--accent, #c9a35c);color:#16121b}.channel-toggle{display:flex;gap:10px;margin-bottom:4px}.channel-toggle .event-chip{-webkit-user-select:none;user-select:none}.name-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.name-row input{width:100%;min-width:0}.event-description{white-space:pre-line;line-height:1.65}.field-hint{margin:4px 0 0;font-size:13px;color:var(--text-secondary);line-height:1.45}.directory-search{width:100%;padding:14px 18px;border-radius:14px;border:1px solid var(--border-color);background:rgba(255,255,255,.05);color:var(--text-primary);font-size:16px;margin-bottom:10px}.row-item.clickable{cursor:pointer;transition:border-color .15s,background .15s}.row-item.clickable:hover{border-color:#ffffff4d;background:rgba(255,255,255,.07)}.row-item.selected{border-color:var(--accent, #c9a35c)}.contact-form{margin-bottom:20px}.pill.failed{background:rgba(251,113,133,.16);color:#fb7185}.import-block{display:grid;gap:12px;margin-top:16px}.import-block textarea{width:100%;background:rgba(255,255,255,.05);border:1px solid var(--border-color);border-radius:12px;padding:12px;color:var(--text-primary);font-family:monospace;font-size:13px}.draft-block{display:grid;gap:14px}.progress-bar{margin-top:8px;height:8px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;max-width:320px}.progress-fill{height:100%;background:var(--accent, #c9a35c);border-radius:4px;transition:width .6s ease}.pill.sending{background:rgba(96,165,250,.16);color:#60a5fa}.pill.paused{background:rgba(250,204,21,.16);color:#facc15}.pill.done{background:rgba(52,211,153,.16);color:#34d399}.pill.draft{background:rgba(255,255,255,.08);color:var(--text-secondary)}.archive-section{margin-bottom:24px}.archive-section summary{cursor:pointer;color:var(--text-secondary);padding:10px 4px;font-weight:600}.archive-section[open] summary{margin-bottom:12px}.row-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.row-actions .secondary-btn,.row-actions .danger-btn{padding:8px 14px;font-size:.82rem;border-radius:10px}.row-meta{color:var(--text-secondary);font-size:.9rem}.danger-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:12px;background:rgba(251,113,133,.1);border:1px solid rgba(251,113,133,.3);color:var(--danger);cursor:pointer;transition:all var(--transition-fast);font-size:.9rem}.danger-btn:hover{background:rgba(251,113,133,.18);border-color:#fb718580}.muted{color:var(--text-muted);display:block;margin-top:4px;font-size:.78rem}.header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stat-card{padding:22px;border-radius:18px;background:var(--bg-card);border:1px solid var(--border-color);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-mm)}.stat-card strong{display:block;font-size:1.7rem;font-weight:800;background:var(--gradient-mm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px}.stat-card p{margin:0;color:var(--text-secondary);font-size:.85rem}.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;margin-left:8px;font-weight:600}.pill.paid,.pill.valid{background:rgba(52,211,153,.16);color:#34d399}.pill.pending{background:rgba(251,191,36,.16);color:#fbbf24}.pill.failed,.pill.used{background:rgba(251,113,133,.16);color:#fb7185}.admin-login{display:flex;justify-content:center;align-items:center;min-height:70vh}.login-card{max-width:460px;width:100%;padding:40px;border-radius:24px;background:rgba(17,34,64,.7);border:1px solid var(--border-color);display:grid;gap:14px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-mm)}.login-card h1{font-size:1.6rem}.login-card form{display:grid;gap:12px}.login-card .hint{color:var(--text-muted);font-size:.82rem}.login-card code{background:rgba(255,255,255,.06);padding:1px 6px;border-radius:5px;color:var(--mm-cyan)}.tickets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.ticket-print{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px;border-radius:18px;background:var(--bg-card);border:1px solid var(--border-color);align-items:center}.ticket-print img{width:140px;height:140px;border-radius:14px;background:#fff;padding:6px}.ticket-print code{font-size:11px;color:var(--text-muted);display:block;margin-top:6px;word-break:break-all}.ticket-print.used{opacity:.65}.ticket-print strong{color:var(--text-primary)}.scanner-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;padding:24px}.scanner-camera,.scanner-results{display:grid;gap:16px}.scanner-controls{display:flex;gap:12px}.scanner-frame{width:100%;min-height:320px;border-radius:20px;background:rgba(0,0,0,.5);border:1px solid var(--border-color);overflow:hidden;position:relative}.scanner-frame video{width:100%!important;height:auto!important}.manual-scan{display:grid;grid-template-columns:1fr auto;gap:10px}.scan-result{padding:20px;border-radius:18px;border:1px solid var(--border-color);background:rgba(255,255,255,.03)}.scan-result.ok{border-color:#34d39973;background:rgba(52,211,153,.08)}.scan-result.err{border-color:#fb718573;background:rgba(251,113,133,.08)}.scan-result h3{margin:0 0 8px}.scan-result p{margin:4px 0;color:var(--text-secondary)}.scan-verdict{padding:28px 20px;border-radius:18px;text-align:center;border:2px solid transparent;animation:verdict-pop .35s ease-out}@keyframes verdict-pop{0%{transform:scale(.92);opacity:.4}60%{transform:scale(1.03)}to{transform:scale(1);opacity:1}}.scan-verdict.ok{background:#059669;border-color:#34d399}.scan-verdict.warn{background:#b45309;border-color:#fbbf24}.scan-verdict.err{background:#be123c;border-color:#fb7185}.scan-verdict.pending{background:#1e3a8a;border-color:#60a5fa}.verdict-icon{font-size:64px;line-height:1;color:#fff}.verdict-label{font-size:32px;font-weight:800;letter-spacing:2px;color:#fff;margin-top:8px}.verdict-detail{margin:12px 0 0;color:#ffffffeb}.verdict-detail small{color:#ffffffb3}.scan-history h4{color:var(--text-primary);margin:0 0 10px;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}.history-row{display:grid;grid-template-columns:28px 1fr;gap:10px;padding:10px 12px;border-radius:12px;margin-bottom:6px;background:rgba(255,255,255,.03);border:1px solid var(--border-color)}.history-row.ok span{color:#34d399}.history-row.err span{color:#fb7185}.history-row small{color:var(--text-secondary);display:block}.messages-grid{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:0;padding:0;min-height:580px}.conv-list{border-right:1px solid var(--border-color);padding:20px;display:grid;gap:6px;align-content:start;max-height:70vh;overflow:auto}.conv-list h3{color:var(--text-primary);margin:0 0 10px;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}.conv-row{width:100%;text-align:left;border:1px solid var(--border-color);background:rgba(255,255,255,.03);border-radius:14px;padding:12px 14px;color:var(--text-primary);cursor:pointer;display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;transition:all var(--transition-fast)}.conv-row:hover{background:var(--bg-card-hover)}.conv-row small{color:var(--text-secondary);display:block;font-size:.78rem}.conv-row.active{border-color:#8b5cf680;background:rgba(139,92,246,.1)}.conv-row.unread strong:after{content:"";display:inline-block;width:7px;height:7px;background:var(--mm-cyan);border-radius:50%;margin-left:8px;vertical-align:middle;box-shadow:0 0 6px var(--mm-cyan)}.conv-meta{text-align:right}.conv-meta time{color:var(--text-secondary);font-size:.72rem;display:block}.badge-count{display:inline-block;background:var(--gradient-mm);color:#fff;border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:700}.conv-view{display:grid;grid-template-rows:auto 1fr auto;min-height:580px}.conv-header{padding:18px 22px;border-bottom:1px solid var(--border-color)}.conv-header h3{margin:0;color:var(--text-primary)}.conv-header small{color:var(--text-secondary)}.chat-messages{padding:18px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;max-height:400px}.chat-messages.dark{max-height:none}.chat-bubble{max-width:80%;padding:10px 14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--border-color)}.chat-bubble.admin{margin-left:auto;background:var(--gradient-mm-soft);border-color:#8b5cf64d}.chat-bubble.customer{background:rgba(6,212,255,.08);border-color:#06d4ff38}.chat-meta{font-size:.7rem;color:var(--text-secondary);margin-bottom:4px}.chat-body{color:var(--text-primary);white-space:pre-wrap;line-height:1.5}.chat-input{display:grid;grid-template-columns:1fr auto;gap:8px;padding:16px;border-top:1px solid var(--border-color)}.chat-fab{position:fixed;right:24px;bottom:24px;z-index:100;background:var(--gradient-mm);color:#fff;border:none;padding:14px 20px;border-radius:999px;cursor:pointer;font-weight:700;box-shadow:0 18px 36px #8b5cf666;display:inline-flex;align-items:center;gap:8px;font-size:.95rem;transition:transform var(--transition-fast)}.chat-fab:hover{transform:translateY(-2px) scale(1.02)}.chat-panel{position:fixed;right:24px;bottom:24px;width:380px;max-width:calc(100vw - 32px);max-height:72vh;background:rgba(13,29,53,.96);border:1px solid var(--border-color);border-radius:20px;z-index:100;display:grid;grid-template-rows:auto 1fr auto;box-shadow:0 25px 50px #00000080;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.chat-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-mm)}.chat-panel header{display:flex;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border-color);position:relative}.chat-panel header strong{color:var(--text-primary)}.chat-panel header p{margin:4px 0 0;color:var(--text-secondary);font-size:.78rem}.chat-close{border:none;background:rgba(255,255,255,.05);color:var(--text-primary);border-radius:999px;width:32px;height:32px;font-size:1.4rem;cursor:pointer;transition:background var(--transition-fast)}.chat-close:hover{background:rgba(251,113,133,.18)}.chat-identity{padding:22px;display:grid;gap:10px}.stripe-wrap{padding:16px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid var(--border-color);display:grid;gap:14px}.stripe-form{display:grid;gap:14px}.hero-image{flex:1 1 360px;order:2;margin:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;overflow:hidden;display:flex;align-items:center;justify-content:center;align-self:stretch}.hero-image img{width:100%;height:auto;max-height:460px;object-fit:contain;display:block}.hero-copy{order:1}.hero-cta{order:3}.places-urgent strong{color:#facc15;text-shadow:0 0 12px rgba(250,204,21,.35)}.places-urgent p{color:#facc15;font-weight:600}.places-dimmed strong,.places-dimmed p{color:var(--danger)}.event-thumb{width:56px;height:56px;object-fit:cover;border-radius:10px;border:1px solid var(--border-color);flex-shrink:0}.row-item-main{display:flex;align-items:center;gap:12px;min-width:0}.row-item-main>div{min-width:0}.event-image-preview{display:flex;gap:16px;align-items:center;padding:12px;border:1px solid var(--border-color);border-radius:14px;background:rgba(255,255,255,.03)}.event-image-preview img{width:96px;height:96px;object-fit:cover;border-radius:10px;border:1px solid var(--border-color)}.checkbox-row{display:flex;gap:10px;align-items:center;cursor:pointer;padding:8px 0;font-size:.95rem}.checkbox-row input[type=checkbox]{width:auto;margin:0}.attendees-block{display:grid;gap:14px;padding:14px;border:1px solid var(--border-color);border-radius:12px;background:rgba(255,255,255,.02)}.attendee-row{display:grid;gap:8px}.attendee-label{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);font-weight:600}.section-title.small{font-size:.75rem;letter-spacing:.08em;color:var(--text-secondary);margin-top:4px}.admin-form textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border-color);background:rgba(255,255,255,.03);color:var(--text-primary);font:inherit;font-size:.95rem;resize:vertical;min-height:110px}.admin-form textarea:focus{outline:none;border-color:var(--mm-violet);box-shadow:0 0 0 3px #8b5cf626}.stats-row-event{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr))}.row-meta strong{display:block;color:var(--text-primary);font-size:.95rem}.row-meta small{display:block;color:var(--text-secondary);font-size:.78rem;margin-top:2px}.upcoming-banner{padding:18px 22px;margin-bottom:18px;border-radius:16px;background:rgba(6,212,255,.06);border:1px solid rgba(6,212,255,.25);color:var(--text-primary)}.upcoming-banner strong{display:block;font-size:1.05rem;margin-bottom:6px;color:var(--mm-cyan)}.upcoming-banner p{margin:0;color:var(--text-secondary)}.ticket-extra{margin:-4px 0 10px;font-size:.85rem;color:var(--mm-cyan)}.sold-out-label{display:inline-block;padding:2px 8px;border-radius:999px;background:rgba(251,113,133,.12);color:var(--danger);font-weight:700;letter-spacing:.04em;font-size:.72rem;text-transform:uppercase}.menu-toggle{display:none;background:rgba(255,255,255,.04);border:1px solid var(--border-color);border-radius:10px;cursor:pointer;width:40px;height:40px;padding:0;flex-direction:column;align-items:center;justify-content:center;gap:4px;transition:all var(--transition-fast)}.menu-toggle:hover{background:rgba(255,255,255,.08);border-color:#8b5cf64d}.menu-toggle span{display:block;width:18px;height:2px;background:var(--text-primary);border-radius:2px;transition:all .2s ease}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.app-footer{display:flex;justify-content:flex-start;align-items:center;gap:8px;padding:20px 32px;margin:40px 24px 80px;border-top:1px solid var(--border-color);color:var(--text-muted);font-size:.78rem}.app-footer .admin-link{display:inline-block;color:var(--text-muted);opacity:.35;font-size:1.4rem;line-height:1;padding:4px 12px;text-decoration:none;border-radius:8px;transition:opacity var(--transition-fast)}.app-footer .admin-link:hover,.app-footer .admin-link:focus{opacity:.85;background:rgba(255,255,255,.04)}.network-badges{display:flex;gap:10px;align-items:center;margin-top:16px;flex-wrap:wrap}.net-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.02em;border:1px solid var(--border-color)}.net-badge.online{background:rgba(52,211,153,.12);color:#34d399;border-color:#34d3994d}.net-badge.offline{background:rgba(251,113,133,.12);color:#fda4af;border-color:#fb71854d}.net-badge.queued{background:rgba(250,204,21,.12);color:#facc15;border-color:#facc154d}.text-link.danger{color:var(--danger);cursor:pointer;background:none;border:none;padding:0;font:inherit}.text-link.danger:hover{text-decoration:underline}.scan-result.pending,.history-row.pending{background:rgba(250,204,21,.08);border-color:#facc154d}.scan-result.pending h3{color:#facc15}.loading{padding:60px;text-align:center;font-size:1rem;color:var(--text-secondary)}.event-description.clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.toggle-desc{background:none;border:none;padding:8px 0 0;cursor:pointer;font-weight:600}.hero-reserve-btn{margin-top:20px;border:none}.mobile-reserve-bar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:90;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background:rgba(5,13,26,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px}.mobile-reserve-bar small{color:var(--text-secondary);display:block}.mobile-reserve-bar strong{color:#fff;font-size:1.2rem}.mobile-reserve-bar .primary-btn{padding:14px 28px}.account-page{display:grid;gap:0}.reservation-card{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:18px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid var(--border-color);margin-bottom:12px}.reservation-card strong{color:#fff;margin-right:8px}.reservation-card p{margin:6px 0 0}.switch-mode{background:none;border:none;cursor:pointer;text-align:left;padding:0}@media (max-width: 980px){.grid,.admin-grid,.scanner-grid,.messages-grid{grid-template-columns:1fr}.checkout-panel{border-left:0;border-top:1px solid var(--border-color)}.conv-list{border-right:0;border-bottom:1px solid var(--border-color);max-height:280px}.admin-panel.wide{grid-column:span 1}}@media (max-width: 860px){.top{flex-wrap:wrap;align-items:center}.menu-toggle{display:flex;margin-right:8px;flex-shrink:0}.top nav{flex-basis:100%;display:none;flex-direction:column;gap:6px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-color)}.top nav.open{display:flex}.top nav a,.top nav .nav-logout{width:100%;text-align:left;padding:12px 16px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--border-color)}.top nav .nav-logout{background:rgba(251,113,133,.08);border-color:#fb718533;color:var(--danger)}}@media (max-width: 720px){.top{gap:12px;padding:14px 20px}.hero-card,.admin-hero{padding:22px}.hero-image{order:0;flex:1 1 100%;margin:-22px -22px 18px;border-radius:0;border:none;border-bottom:1px solid var(--border-color)}.hero-image img{max-height:60vh}.stats-row,.row-item,.reservation-row{grid-template-columns:1fr}.reservation-row .actions{flex-direction:row;flex-wrap:wrap}.chat-panel{right:12px;bottom:96px;left:12px;width:auto}.app-footer{padding:16px 20px;margin:24px 12px 8px}.brand-tagline{display:none}}@media (max-width: 980px){.mobile-reserve-bar{display:flex}.main{padding-bottom:120px}.chat-fab{bottom:96px}.reservation-card{grid-template-columns:1fr}}.pill.sale-active{background:rgba(52,211,153,.16);color:#34d399}.pill.sale-upcoming{background:rgba(96,165,250,.16);color:#60a5fa}.pill.sale-expired{background:rgba(251,113,133,.16);color:#fb7185}.row-item.tarif-expired>div:first-child strong{opacity:.75}.sale-alert{display:block;margin-top:4px;color:#fbbf24;font-weight:600;font-size:.78rem}.sale-warning{text-align:left;margin-bottom:14px;line-height:1.5}.planning-page .status-pill{text-align:left}.cal-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.cal-toolbar h2{margin:0 6px;min-width:190px;text-align:center;text-transform:capitalize}.cal-today-btn{margin-left:4px}.cal-legend{display:flex;gap:14px;flex-wrap:wrap;margin-left:auto;font-size:.78rem;color:var(--text-secondary)}.cal-legend span{display:inline-flex;align-items:center;gap:5px}.dot{width:9px;height:9px;border-radius:50%;display:inline-block}.dot-event{background:#a78bfa}.dot-promo{background:#f472b6}.dot-todo{background:#fbbf24}.dot-late{background:#fb7185}.dot-done{background:#34d399}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-head{margin-bottom:6px}.cal-weekday{text-align:center;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary)}.cal-cell{min-height:92px;border-radius:12px;padding:6px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);cursor:pointer;display:flex;flex-direction:column;gap:4px;overflow:hidden;transition:border-color .15s ease,background .15s ease}.cal-cell:hover{border-color:#a78bfa73}.cal-out{opacity:.38}.cal-today{border-color:#34d3998c;background:rgba(52,211,153,.06)}.cal-selected{border-color:#a78bfacc;background:rgba(167,139,250,.1)}.cal-daynum{font-size:.78rem;font-weight:600;color:var(--text-secondary)}.cal-today .cal-daynum{color:#34d399}.cal-items{display:flex;flex-direction:column;gap:3px;min-width:0}.cal-chip{font-size:.68rem;line-height:1.25;padding:2px 6px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-event{background:rgba(167,139,250,.22);color:#c4b5fd;font-weight:600}.chip-promo{background:rgba(244,114,182,.18);color:#f9a8d4}.chip-todo{background:rgba(251,191,36,.16);color:#fcd34d}.chip-late{background:rgba(251,113,133,.2);color:#fda4af}.chip-done{background:rgba(52,211,153,.14);color:#6ee7b7;text-decoration:line-through;opacity:.8}.cal-day-detail{margin-top:14px;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);display:grid;gap:8px}.cal-day-detail h3{margin:0}.cal-detail-row{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.plan-card{border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;margin-bottom:16px;background:rgba(255,255,255,.03)}.plan-card.plan-past{opacity:.6}.plan-card-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.plan-card-head p{margin:2px 0}.plan-notes{white-space:pre-line}.plan-progress{margin:10px 0 6px;display:grid;gap:4px}.plan-progress-bar{height:7px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.plan-progress-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#34d399,#a78bfa);transition:width .25s ease}.plan-tasks{display:grid;gap:6px;margin-top:8px}.plan-task{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:7px 10px;border-radius:10px;background:rgba(255,255,255,.035);border:1px solid transparent}.plan-task-late{border-color:#fb718566}.plan-task-done .plan-task-title{text-decoration:line-through;opacity:.65}.plan-task-check{display:flex;align-items:center;gap:8px;flex:1 1 180px;min-width:0;cursor:pointer}.plan-task-check input{width:16px;height:16px;accent-color:#34d399;cursor:pointer}.plan-task-title{overflow-wrap:anywhere}.plan-task select,.plan-task-date{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary);font-size:.78rem;padding:4px 6px;max-width:160px}.plan-late{color:#fb7185;font-weight:600;font-size:.78rem}.plan-reminded{color:#60a5fa;font-size:.74rem}.pill.cat-promo{background:rgba(244,114,182,.16);color:#f9a8d4}.pill.cat-billetterie{background:rgba(96,165,250,.16);color:#93c5fd}.pill.cat-tarifs{background:rgba(167,139,250,.16);color:#c4b5fd}.pill.cat-logistique{background:rgba(251,191,36,.16);color:#fcd34d}.pill.cat-autre{background:rgba(255,255,255,.08);color:var(--text-secondary)}.plan-participant{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.035);margin-bottom:6px}.plan-participant small{display:block}.checkbox-field{flex-direction:row!important;align-items:flex-start;gap:10px}.checkbox-field input{width:16px;height:16px;margin-top:3px;accent-color:#a78bfa;flex-shrink:0}.checkbox-field span{font-size:.85rem;color:var(--text-secondary)}.link-btn{background:none;border:none;color:#a78bfa;cursor:pointer;font-size:.82rem;padding:2px 4px}.link-btn.danger{color:#fb7185}.link-btn:hover{text-decoration:underline}@media (max-width: 900px){.cal-cell{min-height:64px;padding:4px}.cal-chip{font-size:.6rem;padding:1px 4px}.cal-legend{margin-left:0}.plan-task select,.plan-task-date{max-width:130px}}select option{background-color:var(--bg-card);color:var(--text-primary)}.plan-assignees{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}.plan-assignees.form-assignees{padding:6px 0}.plan-assignee-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:.76rem;background:rgba(167,139,250,.16);color:#c4b5fd;white-space:nowrap}.plan-assignee-chip button{background:none;border:none;color:inherit;cursor:pointer;font-size:.7rem;padding:0 1px;opacity:.7}.plan-assignee-chip button:hover{opacity:1}.event-select-label{display:inline-flex;align-items:center;gap:10px}.event-select-label>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary)}.event-select-label select{background:var(--bg-card);border:1px solid rgba(255,255,255,.14);border-radius:12px;color:var(--text-primary);font-size:.95rem;font-weight:600;padding:10px 14px;min-width:240px;cursor:pointer}.event-select-label select:focus{outline:none;border-color:#a78bfa99}.event-selector{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.stats-scope{font-size:.85rem}.pill.free{background:rgba(244,114,182,.16);color:#f9a8d4}.free-tickets-panel .header-row span{font-size:.82rem}.contact-search{position:relative}.contact-suggestions{position:absolute;top:100%;left:0;right:0;z-index:30;background:var(--bg-card);border:1px solid rgba(255,255,255,.14);border-radius:12px;overflow:hidden;box-shadow:0 18px 36px #00000073}.contact-suggestions button{display:block;width:100%;text-align:left;padding:9px 14px;background:none;border:none;color:var(--text-primary);cursor:pointer;border-bottom:1px solid rgba(255,255,255,.06)}.contact-suggestions button:last-child{border-bottom:none}.contact-suggestions button:hover{background:rgba(167,139,250,.12)}.contact-suggestions small{color:var(--text-secondary);margin-left:6px}.contest-cta{border:none;cursor:pointer;padding:14px 26px;border-radius:999px;font-size:1.05rem;font-weight:700;color:#fff;background:linear-gradient(120deg,#db2777,#a855f7,#db2777);background-size:200% 200%;animation:contest-shimmer 3.5s ease infinite;box-shadow:0 10px 30px #db277759;transition:transform .15s ease}.contest-cta:hover{transform:scale(1.05)}@keyframes contest-shimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.contest-page{max-width:640px;margin:0 auto;padding:24px 16px 60px}.contest-card{background:var(--bg-card);border:1px solid rgba(255,255,255,.09);border-radius:22px;padding:28px;display:grid;gap:16px}.contest-card h1{margin:0;font-size:2rem}.contest-pitch{color:var(--text-secondary);line-height:1.6;margin:0}.contest-event{display:flex;gap:14px;align-items:center;padding:12px;border-radius:14px;background:rgba(167,139,250,.08);border:1px solid rgba(167,139,250,.25)}.contest-event img{width:84px;height:84px;object-fit:cover;border-radius:12px}.contest-event p{margin:2px 0;color:var(--text-secondary);font-size:.88rem}.contest-form{display:grid;gap:12px}.contest-submit{font-size:1.05rem;padding:14px 28px}.contest-legal{font-size:.75rem;color:var(--text-secondary);line-height:1.5;margin:0}.contest-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:rgba(5,10,22,.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:18px}.contest-result{max-width:480px;width:100%;border-radius:24px;padding:34px 28px;text-align:center;display:grid;gap:14px;background:var(--bg-card);border:1px solid rgba(255,255,255,.12);animation:contest-pop .35s cubic-bezier(.2,1.4,.4,1)}.contest-result.won{border-color:#34d3998c;box-shadow:0 0 80px #34d39940}.contest-result.lost{border-color:#fbbf2466}.contest-result h2{margin:0;font-size:2.2rem}.contest-result.won h2{color:#34d399}.contest-result p{margin:0;line-height:1.6}.contest-emoji{font-size:2.6rem;animation:contest-bounce .9s ease infinite alternate}@keyframes contest-pop{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}@keyframes contest-bounce{0%{transform:translateY(0)}to{transform:translateY(-8px)}}.contest-share{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.contest-share a{text-decoration:none}.contest-close{margin-top:4px}.form-actions.center{justify-content:center}.contest-settings{border:1px dashed rgba(244,114,182,.35);border-radius:14px;padding:12px 14px;display:grid;gap:10px}.pill.contest-won{background:rgba(52,211,153,.16);color:#34d399}.contest-row-winner{border-left:3px solid rgba(52,211,153,.6)}.contest-winner-count{color:#34d399}.contest-filters{display:inline-flex;gap:10px;align-items:center;flex-wrap:wrap}.contest-filters select{background:var(--bg-card);border:1px solid rgba(255,255,255,.14);border-radius:10px;color:var(--text-primary);padding:7px 10px}.contest-only-winners{display:inline-flex;gap:6px;align-items:center;font-size:.85rem;color:var(--text-secondary);cursor:pointer}.contest-meta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:space-between}.contest-teaser{font-size:.95rem}.contest-countdown{font-size:.9rem;padding:6px 12px;border-radius:999px;background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.3);color:#fcd34d;white-space:nowrap}.contest-countdown.over{background:rgba(251,113,133,.12);border-color:#fb71854d;color:#fda4af}.contest-bonus{text-align:left;padding:12px 14px;border-radius:12px;background:rgba(52,211,153,.09);border:1px solid rgba(52,211,153,.3);line-height:1.55;font-size:.92rem}.contest-referred{padding:8px 14px;border-radius:999px;background:rgba(96,165,250,.12);border:1px solid rgba(96,165,250,.3);color:#93c5fd;font-size:.88rem;justify-self:start}.directory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.contact-card{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);cursor:pointer;min-width:0;transition:border-color .15s ease,background .15s ease}.contact-card:hover{border-color:#a78bfa80;background:rgba(167,139,250,.07)}.contact-card.selected{border-color:#a78bfad9}.contact-card.archived{opacity:.55}.contact-card-info{min-width:0;display:grid;line-height:1.35}.contact-card-info strong{font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-card-info small{font-size:.74rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-avatar{border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid rgba(255,255,255,.12)}.contact-avatar-initials{display:inline-flex;align-items:center;justify-content:center;color:#ffffffeb;font-weight:700;letter-spacing:.02em}.contact-photo-block{display:flex;gap:16px;align-items:flex-start;padding:12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07)}.contact-photo-actions{display:grid;gap:8px;flex:1;min-width:0}.contact-photo-buttons{display:flex;gap:8px;flex-wrap:wrap}.contact-photo-url{display:flex;gap:8px}.contact-photo-url input{flex:1;min-width:0;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:10px;color:var(--text-primary);padding:8px 12px;font-size:.85rem}@media (max-width: 640px){.directory-grid{grid-template-columns:1fr}.contact-photo-block{flex-direction:column}}.pill.contest-gift{background:rgba(244,114,182,.16);color:#f9a8d4}.gift-defs{margin-top:22px;border-top:1px solid rgba(255,255,255,.08);padding-top:16px;display:grid;gap:10px}.gift-defs .row-item.archived{opacity:.55}.price-countdown{display:inline-block;margin:6px 0 2px;padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:600;background:rgba(251,191,36,.14);border:1px solid rgba(251,191,36,.35);color:#fcd34d}.resend-link{margin:4px 0 12px;font-size:.88rem;color:var(--text-secondary)}.resend-box{margin:4px 0 14px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09)}.resend-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.resend-form input{flex:1;min-width:200px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:10px;color:var(--text-primary);padding:9px 12px}.resend-error{color:#fb7185;width:100%}.poster-qr-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.gauge-list{display:grid;gap:8px;margin-top:14px}.gauge-row{display:flex;align-items:center;gap:10px}.gauge-label{min-width:110px;max-width:180px;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gauge-bar{flex:1;height:10px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.gauge-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#34d399,#a78bfa);transition:width .4s ease}.gauge-count{font-size:.82rem;white-space:nowrap;color:var(--text-secondary)}.gauge-count strong{color:#34d399}.contest-prizes{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.contest-prizes-title{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary)}.contest-prize-chip{padding:5px 12px;border-radius:999px;font-size:.85rem;font-weight:600;background:rgba(52,211,153,.12);border:1px solid rgba(52,211,153,.35);color:#6ee7b7}:root,:root[data-theme=magic]{--grad: var(--gradient-mm);--grad-text: var(--gradient-mm);--glow: rgba(139, 92, 246, .35);--chip-bg: rgba(139, 92, 246, .14);--chip-border: rgba(139, 92, 246, .3);--accent-2: var(--mm-cyan);--heading-font: inherit;--heading-transform: none;--heading-spacing: -.02em}:root[data-theme=neon]{--bg-primary: #100318;--bg-secondary: #16051f;--bg-card: #1c0a2b;--bg-card-hover: #2a1240;--border-color: rgba(255, 79, 216, .16);--accent: #ff4fd8;--accent-strong: #ff2ec4;--accent-2: #00e5ff;--muted: #b18ec4;--gradient-mm: linear-gradient(135deg, #ff2ec4 0%, #7c3aed 55%, #00b8e0 100%);--gradient-mm-soft: linear-gradient(135deg, rgba(255, 46, 196, .16) 0%, rgba(124, 58, 237, .16) 50%, rgba(0, 229, 255, .14) 100%);--gradient-mm-glow: radial-gradient(circle at top left, rgba(255, 46, 196, .2), transparent 40%), radial-gradient(circle at top right, rgba(0, 229, 255, .14), transparent 32%), radial-gradient(circle at bottom center, rgba(124, 58, 237, .22), transparent 38%);--grad: var(--gradient-mm);--grad-text: linear-gradient(100deg, #ff6ee0 0%, #b18cff 50%, #4de9ff 100%);--glow: rgba(255, 46, 196, .32);--chip-bg: rgba(255, 46, 196, .12);--chip-border: rgba(255, 46, 196, .32);--heading-font: inherit;--heading-transform: uppercase;--heading-spacing: .02em}:root[data-theme=chic]{--bg-primary: #0c0a07;--bg-secondary: #120e08;--bg-card: #1a150d;--bg-card-hover: #241c11;--border-color: rgba(230, 193, 92, .16);--accent: #e6c15c;--accent-strong: #d4af37;--accent-2: #f5e6bf;--muted: #a99a78;--gradient-mm: linear-gradient(135deg, #8a6a1e 0%, #d4af37 55%, #f0d78a 100%);--gradient-mm-soft: linear-gradient(135deg, rgba(212, 175, 55, .14) 0%, rgba(240, 215, 138, .1) 100%);--gradient-mm-glow: radial-gradient(ellipse at 50% -20%, rgba(212, 175, 55, .14), transparent 50%), radial-gradient(ellipse at 90% 110%, rgba(180, 138, 44, .1), transparent 45%);--grad: var(--gradient-mm);--grad-text: linear-gradient(100deg, #f5e6bf 0%, #e6c15c 50%, #b48a2c 100%);--glow: rgba(212, 175, 55, .22);--chip-bg: rgba(212, 175, 55, .1);--chip-border: rgba(212, 175, 55, .3);--heading-font: Georgia, "Times New Roman", serif;--heading-transform: none;--heading-spacing: .01em}:root[data-theme=pop]{--bg-primary: #170933;--bg-secondary: #1d0d3d;--bg-card: #25144a;--bg-card-hover: #311c5e;--border-color: rgba(255, 183, 3, .18);--accent: #ffb703;--accent-strong: #ff5d7d;--accent-2: #06d6a0;--muted: #b9a8d9;--gradient-mm: linear-gradient(135deg, #ff5d7d 0%, #ff8f3f 55%, #ffb703 100%);--gradient-mm-soft: linear-gradient(135deg, rgba(255, 93, 125, .16) 0%, rgba(255, 183, 3, .14) 60%, rgba(6, 214, 160, .12) 100%);--gradient-mm-glow: radial-gradient(ellipse at 12% 5%, rgba(255, 93, 125, .26), transparent 45%), radial-gradient(ellipse at 88% 12%, rgba(255, 183, 3, .18), transparent 40%), radial-gradient(ellipse at 30% 115%, rgba(6, 214, 160, .18), transparent 50%);--grad: var(--gradient-mm);--grad-text: linear-gradient(100deg, #ff7d96 0%, #ffb703 50%, #43e8b8 100%);--glow: rgba(255, 93, 125, .32);--chip-bg: rgba(255, 183, 3, .12);--chip-border: rgba(255, 183, 3, .32);--heading-font: inherit;--heading-transform: none;--heading-spacing: -.02em}h1,h2,h3{font-family:var(--heading-font);text-transform:var(--heading-transform);letter-spacing:var(--heading-spacing)}.main-home{max-width:1180px;padding-top:0}.home{display:flex;flex-direction:column;gap:clamp(64px,9vh,120px)}.home-hero{position:relative;min-height:calc(100vh - 180px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 16px 32px;overflow:hidden;isolation:isolate}.home-hero .hero-logo{max-height:130px;max-width:min(70vw,380px);width:auto;height:auto;object-fit:contain;margin-bottom:24px;border-radius:24px;filter:drop-shadow(0 12px 40px var(--glow))}.home-hero .hero-eyebrow{text-transform:uppercase;letter-spacing:.35em;font-size:.8rem;color:var(--accent);margin:0 0 18px}.home-hero h1{margin:0;font-size:clamp(3rem,9vw,6.5rem);line-height:1.02;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 8px 46px var(--glow))}.home-hero .hero-tagline{margin:22px auto 0;max-width:560px;font-size:clamp(1.05rem,2.2vw,1.35rem);line-height:1.7;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:34px}.ghost-btn{padding:16px 22px;border-radius:20px;background:transparent;border:1px solid var(--chip-border);color:var(--text-primary);cursor:pointer;transition:background .2s ease,transform .2s ease}.ghost-btn:hover{background:var(--chip-bg);transform:translateY(-2px)}.hero-next{margin-top:46px;display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 22px;padding:16px 26px;border-radius:999px;background:rgba(10,22,40,.72);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.hero-next .dot{width:9px;height:9px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 12px var(--accent-2);animation:pulse-dot 1.8s ease-in-out infinite}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.6}}.hero-next strong{color:var(--text-primary)}.hero-next span{color:var(--muted);font-size:.95rem}.hero-countdown{display:flex;gap:8px}.hero-countdown div{min-width:52px;padding:6px 8px;border-radius:12px;background:var(--chip-bg);border:1px solid var(--chip-border)}.hero-countdown strong{display:block;font-size:1.15rem;font-variant-numeric:tabular-nums}.hero-countdown small{color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.scroll-hint{position:absolute;bottom:18px;left:50%;transform:translate(-50%);color:var(--muted);font-size:1.4rem;animation:hint-bounce 2.2s ease-in-out infinite;pointer-events:none}@keyframes hint-bounce{0%,to{transform:translate(-50%);opacity:.5}50%{transform:translate(-50%,10px);opacity:1}}.hero-fx{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden}.hero-fx .sparkle{position:absolute;width:4px;height:4px;border-radius:50%;background:#fff;opacity:0;animation:sparkle 4s ease-in-out infinite;box-shadow:0 0 8px 2px #ffffff80}@keyframes sparkle{0%,to{opacity:0;transform:scale(.4)}50%{opacity:var(--s-max, .9);transform:scale(1)}}.hero-fx .blob{position:absolute;width:42vmin;height:42vmin;border-radius:50%;filter:blur(70px);opacity:.5;animation:blob-drift 16s ease-in-out infinite alternate}@keyframes blob-drift{0%{transform:translate(-6%,-4%) scale(1)}to{transform:translate(8%,6%) scale(1.15)}}.hero-fx .grid-floor{position:absolute;left:-20%;right:-20%;bottom:-12%;height:44%;background:repeating-linear-gradient(90deg,var(--chip-border) 0 1px,transparent 1px 70px),repeating-linear-gradient(0deg,var(--chip-border) 0 1px,transparent 1px 44px);transform:perspective(420px) rotateX(58deg);mask-image:linear-gradient(180deg,transparent,#000 45%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 45%);opacity:.6}.hero-fx .ember{position:absolute;bottom:-10px;width:3px;height:3px;border-radius:50%;background:var(--accent);opacity:0;animation:ember-rise 9s linear infinite}@keyframes ember-rise{0%{opacity:0;transform:translateY(0)}12%{opacity:.85}80%{opacity:.35}to{opacity:0;transform:translateY(-78vh) translate(4vw)}}.hero-fx .confetti{position:absolute;top:-20px;width:9px;height:14px;border-radius:3px;opacity:0;animation:confetti-fall 8s linear infinite}@keyframes confetti-fall{0%{opacity:0;transform:translateY(0) rotate(0)}8%{opacity:.9}90%{opacity:.7}to{opacity:0;transform:translateY(85vh) rotate(680deg)}}.home-section{padding:0 8px}.home-section .section-head{text-align:center;max-width:720px;margin:0 auto 42px}.home-section .section-head .eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.28em;font-size:.75rem;color:var(--accent);margin-bottom:14px}.home-section .section-head h2{margin:0 0 14px;font-size:clamp(1.8rem,4vw,2.8rem);color:var(--text-primary)}.home-section .section-head p{margin:0;color:var(--muted);line-height:1.8}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}.hero-fx{display:none}}.concept-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:1080px;margin:0 auto}.concept-card{padding:30px 26px;border-radius:26px;background:var(--bg-card);border:1px solid var(--border-color);transition:transform .25s ease,border-color .25s ease}.concept-card:hover{transform:translateY(-6px);border-color:var(--chip-border)}.concept-card .icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:16px;font-size:1.5rem;background:var(--chip-bg);border:1px solid var(--chip-border);margin-bottom:18px}.concept-card h3{margin:0 0 10px;font-size:1.15rem;color:var(--text-primary)}.concept-card p{margin:0;color:var(--muted);line-height:1.7;font-size:.95rem}.upcoming-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;max-width:1080px;margin:0 auto}.upcoming-grid.single{max-width:640px}.event-card{position:relative;display:flex;flex-direction:column;gap:16px;padding:28px;border-radius:28px;background:var(--bg-card);border:1px solid var(--border-color);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.event-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--grad)}.event-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.event-card .event-cover{margin:-28px -28px 0;max-height:360px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.35)}.event-card .event-cover img{width:100%;height:auto;max-height:360px;object-fit:contain;display:block}.event-card .event-date-badge{display:inline-flex;flex-direction:column;align-items:center;width:fit-content;padding:10px 16px;border-radius:16px;background:var(--chip-bg);border:1px solid var(--chip-border);line-height:1.2}.event-date-badge strong{font-size:1.5rem}.event-date-badge span{text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;color:var(--accent)}.event-card h3{margin:0;font-size:1.45rem;color:var(--text-primary)}.event-card .event-meta{color:var(--muted);font-size:.92rem;line-height:1.6}.event-card .event-desc{color:var(--muted);line-height:1.7;font-size:.95rem;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.event-card .primary-btn{margin-top:auto}.upcoming-empty{text-align:center;padding:44px 24px;border-radius:26px;border:1px dashed var(--border-color);color:var(--muted);max-width:640px;margin:0 auto}.archives-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px;max-width:1080px;margin:0 auto}.archive-card{position:relative;border-radius:26px;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-card);cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}.archive-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:var(--shadow-lg)}.archive-cover{position:relative;aspect-ratio:4 / 3;overflow:hidden}.archive-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.archive-card:hover .archive-cover img{transform:scale(1.06)}.archive-cover.placeholder{display:grid;place-items:center;background:radial-gradient(circle at 25% 25%,var(--chip-bg),transparent 60%),radial-gradient(circle at 75% 75%,var(--gradient-mm-soft),transparent 55%),var(--bg-secondary);color:var(--accent);font-size:2.6rem}.archive-count{position:absolute;top:12px;right:12px;padding:6px 12px;border-radius:999px;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:.78rem}.archive-info{padding:18px 20px 20px}.archive-info h3{margin:0 0 6px;font-size:1.15rem;color:var(--text-primary)}.archive-info p{margin:0;color:var(--muted);font-size:.88rem}.archive-open-hint{margin-top:10px;color:var(--accent);font-size:.85rem}.archive-lock{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:.85rem}.archive-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px 10px 0}.archive-thumb{position:relative;border:none;padding:0;border-radius:10px;overflow:hidden;aspect-ratio:4 / 3;cursor:pointer;background:var(--bg-secondary)}.archive-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.archive-thumb:hover img{transform:scale(1.1)}.archive-thumb .thumb-more{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:rgba(0,0,0,.55);color:#fff;font-weight:700;font-size:.95rem}.auth-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(3,8,18,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:lb-in .25s ease}.auth-card{position:relative;width:min(440px,100%);max-height:92vh;overflow-y:auto;padding:30px 28px 28px;border-radius:26px;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-lg)}.auth-close{position:absolute;top:14px;right:14px}.auth-head{text-align:center;margin-bottom:20px}.auth-head .auth-lock{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;font-size:1.5rem;background:var(--chip-bg);border:1px solid var(--chip-border);margin-bottom:12px}.auth-head h3{margin:0 0 8px;font-size:1.25rem;color:var(--text-primary)}.auth-head p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.6}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;border-radius:14px;background:rgba(0,0,0,.25);margin-bottom:18px}.auth-tabs button{padding:10px 8px;border:none;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer;font-size:.9rem;transition:background .2s ease,color .2s ease}.auth-tabs button.active{background:var(--chip-bg);color:var(--text-primary);font-weight:600}.auth-form{display:grid;gap:12px}.auth-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text],.auth-row input{width:100%;padding:13px 15px;border-radius:13px;border:1px solid var(--border-color);background:rgba(0,0,0,.25);color:var(--text-primary)}.auth-form input:focus{outline:none;border-color:var(--accent)}.auth-check{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:.88rem;line-height:1.5;cursor:pointer}.auth-check input{margin-top:3px;width:16px;height:16px;accent-color:var(--accent);flex:0 0 auto}.auth-error{padding:10px 14px;border-radius:12px;background:rgba(251,113,133,.12);border:1px solid rgba(251,113,133,.3);color:#fda4af;font-size:.88rem}.auth-form .primary-btn{width:100%;text-align:center}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;flex-direction:column;background:rgba(3,8,18,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:lb-in .25s ease}@keyframes lb-in{0%{opacity:0}to{opacity:1}}.lightbox-top{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;color:var(--muted)}.lightbox-top strong{color:#fff}.lightbox-close{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#fff;width:42px;height:42px;border-radius:50%;font-size:1.1rem;cursor:pointer}.lightbox-stage{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 12px 18px;min-height:0}.lightbox-stage img{max-width:min(92vw,1200px);max-height:76vh;object-fit:contain;border-radius:14px;box-shadow:0 30px 90px #0009}.lightbox-nav{flex:0 0 auto;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:#fff;font-size:1.3rem;cursor:pointer;transition:background .2s ease}.lightbox-nav:hover{background:rgba(255,255,255,.16)}.lightbox-nav:disabled{opacity:.25;cursor:default}.lightbox-caption{text-align:center;color:var(--muted);padding:0 22px 22px;min-height:1.4em}.lightbox-thumbs{display:flex;gap:8px;overflow-x:auto;padding:0 22px 22px;justify-content:safe center}.lightbox-thumbs img{height:58px;width:82px;object-fit:cover;border-radius:8px;opacity:.45;cursor:pointer;border:2px solid transparent;flex:0 0 auto;transition:opacity .2s ease}.lightbox-thumbs img.current{opacity:1;border-color:var(--accent)}.home-footer{text-align:center;padding:40px 16px 20px;border-top:1px solid var(--border-color);color:var(--muted)}.home-footer .footer-brand{font-size:1.3rem;font-weight:800;color:var(--text-primary);margin-bottom:10px}.home-footer nav{display:flex;justify-content:center;gap:1rem;margin:14px 0 4px;flex-wrap:wrap}.home-footer nav a{color:var(--muted);padding:8px 14px;border-radius:999px}.home-footer nav a:hover{color:#fff;background:rgba(255,255,255,.08)}.home-footer small{font-size:.8rem}.theme-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.theme-option{position:relative;border-radius:20px;border:2px solid var(--border-color);background:none;padding:0;overflow:hidden;cursor:pointer;text-align:left;color:var(--text-primary);transition:border-color .2s ease,transform .2s ease}.theme-option:hover{transform:translateY(-3px)}.theme-option.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--chip-bg)}.theme-swatch{height:86px;display:flex;align-items:flex-end;padding:10px;gap:6px}.theme-swatch i{display:block;width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.25)}.theme-option .theme-label{display:block;padding:12px 14px;font-weight:600;font-size:.92rem;background:var(--bg-card)}.theme-option .theme-label small{display:block;font-weight:400;color:var(--muted);margin-top:3px;font-size:.78rem}.theme-option .selected-check{position:absolute;top:10px;right:10px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#08060f;font-size:.85rem;font-weight:700}.logo-manager{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.logo-preview{display:grid;place-items:center;width:160px;height:90px;border-radius:16px;border:1px dashed var(--border-color);background:rgba(0,0,0,.25);overflow:hidden}.logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.gallery-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-top:16px}.gallery-admin-item{position:relative;border-radius:14px;overflow:hidden;border:1px solid var(--border-color);aspect-ratio:4 / 3}.gallery-admin-item img{width:100%;height:100%;object-fit:cover;display:block}.gallery-admin-item .danger-btn{position:absolute;top:6px;right:6px;padding:4px 10px;font-size:.75rem}.upload-drop{display:block;margin-top:16px;border:2px dashed var(--border-color);border-radius:18px;padding:26px;text-align:center;color:var(--muted);cursor:pointer;transition:border-color .2s ease,background .2s ease}.upload-drop:hover,.upload-drop.drag{border-color:var(--accent);background:var(--chip-bg)}.upload-drop input{display:none}@media (max-width: 640px){.home-hero{min-height:calc(100svh - 150px);padding-top:24px}.hero-next{border-radius:24px;padding:14px 18px}.hero-countdown div{min-width:44px}.lightbox-nav{width:40px;height:40px}}
