*{box-sizing:border-box}body{color:#fff;background:#0f172a;margin:0;font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:flex}.sidebar{background:linear-gradient(#3b0764,#111827);border-right:1px solid #ffffff14;width:260px;padding:24px}.brand{align-items:center;gap:12px;margin-bottom:35px;display:flex}.brand-icon{background:#facc15;border-radius:16px;place-items:center;width:48px;height:48px;font-size:24px;display:grid}.brand h2{color:#facc15;margin:0}.brand p{color:#d1d5db;margin:4px 0 0}.nav-menu{flex-direction:column;gap:10px;display:flex}.nav-menu a{color:#e5e7eb;background:#ffffff0a;border-radius:12px;padding:12px 14px}.nav-menu a.active,.nav-menu a:hover{color:#fff;background:#7c3aed}.main-content{background:radial-gradient(circle at 100% 0,#7c3aed59,#0000 35%),#0f172a;flex:1;padding:30px}.page-header{margin-bottom:24px}.page-header h1{color:#facc15;margin:0;font-size:34px}.page-header p{color:#cbd5e1;margin-top:8px}.dashboard-grid,.stats-grid,.timer-grid{gap:20px;display:grid}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.dashboard-card,.form-card,.table-card,.empty-card,.stat-card,.timer-card{background:#0f172af2;border:1px solid #a855f759;border-radius:20px;padding:22px;box-shadow:0 20px 45px #00000040}.dashboard-card:hover{border-color:#facc15;transform:translateY(-3px)}.dashboard-card h2,.empty-card h2,.stat-card h2{color:#facc15;margin-top:0}.form-card{max-width:560px}form{flex-direction:column;gap:12px;display:flex}label{color:#e5e7eb;font-weight:700}input,select{color:#fff;background:#020617;border:1px solid #6d28d9;border-radius:12px;outline:none;width:100%;padding:12px 14px}input:focus,select:focus{border-color:#facc15}.primary-btn,.secondary-btn,.small-btn,.timer-actions button{cursor:pointer;border:none;border-radius:12px;padding:12px 16px;font-weight:700}.primary-btn{color:#fff;background:#7c3aed}.primary-btn:hover{background:#6d28d9}.secondary-btn{color:#111827;background:#facc15}.small-btn{color:#fff;background:#7c3aed}.summary-box{background:#facc1514;border:1px solid #facc1559;border-radius:16px;margin-top:8px;padding:16px}.summary-box h2{color:#facc15}.info-message,.success-message{color:#86efac;margin-top:16px;font-weight:700}.timer-page-header{justify-content:space-between;align-items:center;display:flex}.timer-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}.timer-card{position:relative}.timer-card.good{border-color:#22c55e99}.timer-card.warning{border-color:#facc15cc}.timer-card.danger{border-color:#ef4444e6;animation:1s infinite pulseCard}.timer-card-top{justify-content:space-between;gap:10px;display:flex}.timer-card h2{color:#facc15;margin:0}.people-badge{color:#fff;background:#7c3aed;border-radius:999px;height:fit-content;padding:8px 10px;font-size:13px}.timer-display{text-align:center;color:#facc15;background:#020617;border-radius:18px;margin:22px 0;padding:18px;font-size:46px;font-weight:900}.timer-card.warning .timer-display{color:#fde68a}.timer-card.danger .timer-display{color:#fecaca}.timer-details{color:#d1d5db}.timer-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.timer-actions button{color:#fff;background:#334155}.timer-actions button:hover{background:#475569}.timer-actions .complete-btn{background:#16a34a}.timer-actions .complete-btn:hover{background:#15803d}.time-up-box{color:#fecaca;text-align:center;background:#7f1d1d;border-radius:12px;margin-top:12px;padding:12px;font-weight:700}.table-card{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:850px}th,td{text-align:left;border-bottom:1px solid #ffffff14;padding:14px}th{color:#facc15}td{color:#e5e7eb}td span{color:#94a3b8}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:22px}.stat-card p{color:#cbd5e1;margin:0}.stat-card h2{margin-bottom:0;font-size:32px}.status-pill{border-radius:999px;padding:6px 10px;font-size:13px;font-weight:700}.status-pill.active{color:#a7f3d0;background:#065f46}.status-pill.completed{color:#bfdbfe;background:#1e3a8a}@keyframes pulseCard{0%{transform:scale(1)}50%{transform:scale(1.015)}to{transform:scale(1)}}@media (width<=800px){.app-shell{flex-direction:column}.sidebar{width:100%}.nav-menu{flex-direction:row;overflow-x:auto}.nav-menu a{white-space:nowrap}.main-content{padding:18px}.timer-page-header{flex-direction:column;align-items:flex-start;gap:12px}.page-header h1{font-size:26px}.timer-display{font-size:36px}}.public-timer-screen{color:#fff;background:radial-gradient(circle at 0 0,#7c3aed80,#0000 35%),radial-gradient(circle at 100% 100%,#facc152e,#0000 35%),#050816;min-height:100vh;padding:28px;overflow-x:hidden}.public-header{background:#0f172ad1;border:1px solid #a855f766;border-radius:24px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:28px;padding:20px 24px;display:flex;box-shadow:0 20px 45px #00000059}.public-brand{align-items:center;gap:16px;display:flex}.public-logo{background:linear-gradient(135deg,#7c3aed,#facc15);border-radius:20px;place-items:center;width:64px;height:64px;font-size:32px;display:grid;box-shadow:0 10px 30px #7c3aed73}.public-brand h1{color:#facc15;letter-spacing:1px;margin:0;font-size:34px}.public-brand p{color:#dbeafe;margin:4px 0 0;font-size:17px}.public-stats{gap:16px;display:flex}.public-stats div{text-align:center;background:#020617cc;border:1px solid #facc154d;border-radius:18px;min-width:150px;padding:14px 18px}.public-stats span{color:#cbd5e1;margin-bottom:5px;font-size:13px;display:block}.public-stats strong{color:#facc15;font-size:32px;display:block}.public-timer-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:22px;display:grid}.public-session-card{background:#0f172aeb;border:2px solid #a855f773;border-radius:28px;min-height:310px;padding:24px;position:relative;overflow:hidden;box-shadow:0 22px 55px #0006}.public-session-card:before{content:"";opacity:.14;pointer-events:none;position:absolute;inset:0}.public-good{border-color:#22c55ecc}.public-good:before{background:radial-gradient(circle at 100% 0,#22c55e,#0000 45%)}.public-warning{border-color:#facc15f2;animation:1.5s infinite softWarningPulse}.public-warning:before{background:radial-gradient(circle at 100% 0,#facc15,#0000 45%)}.public-danger{border-color:#ef4444;animation:1s infinite dangerPulse}.public-danger:before{background:radial-gradient(circle at 100% 0,#ef4444,#0000 45%)}.public-card-top{z-index:1;justify-content:space-between;align-items:flex-start;gap:18px;display:flex;position:relative}.public-card-top h2{color:#fff;margin:0;font-size:28px}.public-card-top p{color:#cbd5e1;margin:8px 0 0;font-size:16px}.public-people-badge{color:#fff;text-align:center;background:#7c3aede6;border-radius:18px;min-width:78px;padding:10px 12px;font-size:26px;font-weight:900}.public-people-badge span{color:#e9d5ff;margin-top:2px;font-size:12px;font-weight:700;display:block}.public-countdown{z-index:1;text-align:center;letter-spacing:2px;color:#86efac;background:#020617e6;border-radius:24px;margin:32px 0 20px;padding:22px 16px;font-size:clamp(48px,8vw,92px);font-weight:1000;line-height:1;position:relative}.public-warning .public-countdown{color:#facc15}.public-danger .public-countdown{color:#fecaca}.public-status-row{z-index:1;justify-content:center;display:flex;position:relative}.public-status-row span{color:#fff;letter-spacing:.8px;background:#020617d1;border-radius:999px;padding:10px 20px;font-size:15px;font-weight:900}.public-good .public-status-row span{color:#86efac}.public-warning .public-status-row span{color:#fde68a}.public-danger .public-status-row span{color:#fecaca}.public-message{z-index:1;text-align:center;color:#dbeafe;margin:16px 0 0;font-size:18px;font-weight:700;position:relative}.public-empty{text-align:center;background:#0f172ae6;border:1px solid #a855f773;border-radius:30px;max-width:760px;margin:80px auto;padding:50px;box-shadow:0 25px 60px #00000059}.public-empty h2{color:#facc15;margin:0;font-size:42px}.public-empty p{color:#cbd5e1;font-size:20px}.public-footer{text-align:center;color:#cbd5e1;margin-top:28px;font-size:16px}@keyframes dangerPulse{0%{transform:scale(1);box-shadow:0 0 #ef444400}50%{transform:scale(1.015);box-shadow:0 0 35px #ef444473}to{transform:scale(1);box-shadow:0 0 #ef444400}}@keyframes softWarningPulse{0%{box-shadow:0 22px 55px #0006}50%{box-shadow:0 0 35px #facc1552}to{box-shadow:0 22px 55px #0006}}@media (width<=900px){.public-header{flex-direction:column;align-items:flex-start}.public-stats{width:100%}.public-stats div{flex:1}}@media (width<=600px){.public-timer-screen{padding:16px}.public-header{padding:18px}.public-brand h1{font-size:26px}.public-brand p{font-size:14px}.public-logo{width:52px;height:52px;font-size:26px}.public-stats{flex-direction:column}.public-timer-grid{grid-template-columns:1fr}.public-session-card{min-height:280px;padding:10px}.public-card-top h2{font-size:23px}.public-countdown{font-size:52px}}.package-form-card{margin-bottom:20px}.package-form-card h2{color:#facc15;margin-top:0}.package-actions{margin-bottom:16px}.checkbox-row{align-items:center;gap:10px;display:flex}.checkbox-row input{width:auto}.brand-icon{background:0 0;border-radius:0;width:120px;height:auto}.brand-logo{object-fit:contain;width:120px;height:auto;display:block}.brand{align-items:center}.package-section-header{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.package-section-header h2{color:#facc15;margin:0}.package-row-card{background:#020617b3;border:1px solid #a855f766;border-radius:16px;margin-top:12px;padding:16px}.package-row-title{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.remove-package-btn{color:#fff;cursor:pointer;background:#7f1d1d;border:none;border-radius:10px;padding:8px 12px;font-weight:700}.row-total-box{background:#facc1514;border:1px solid #facc1540;border-radius:14px;margin-top:12px;padding:12px}.row-total-box p{color:#e5e7eb;margin:5px 0}.row-total-box h3{color:#facc15;margin:10px 0 0}.chart-row-top{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:14px;display:flex}.chart-row-top span{color:#6b7280;font-size:13px}.chart-bar-group{flex-direction:column;gap:5px;display:flex}.chart-bar-track{background:#f1f2f4;border-radius:999px;height:10px;overflow:hidden}.chart-bar{border-radius:999px;height:100%;transition:width .35s}@media (prefers-reduced-motion:reduce){.chart-bar{transition:none}}@media (width<=520px){.chart-bar-label{max-width:50%;font-size:12px}.chart-bar-value{font-size:11px}}@media (prefers-reduced-motion:reduce){.chart-bar{transition:none}}.chart-card{background:#fff;border:1px solid #e6e6e6;border-radius:12px;margin-bottom:24px;padding:20px}.chart-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.chart-header h2{margin:0 0 4px;font-size:18px}.chart-header p{color:#6b7280;margin:0;font-size:13px}.chart-toggle{gap:6px;display:flex}.chart-toggle button{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #e6e6e6;border-radius:999px;padding:6px 14px;font-size:13px}.chart-toggle button.active{color:#fff;background:#111827;border-color:#111827}.chart-body{flex-direction:column;gap:18px;display:flex}.chart-row{flex-direction:column;gap:4px;display:flex}.chart-bar-track{background:#f1f2f4;border-radius:8px;height:34px;position:relative;overflow:hidden}.chart-bar{border-radius:8px;height:100%;transition:width .35s;position:absolute;top:0;left:0}.chart-bar.sessions{background:#93c5fd}.chart-bar.revenue{background:#a7f3c9}.chart-bar-label,.chart-bar-value{z-index:1;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;align-items:center;height:100%;display:flex;position:absolute;top:0;overflow:hidden}.chart-bar-label{color:#111827;max-width:60%;font-size:13px;font-weight:600;left:12px}.chart-bar-label.muted{color:#4b5563;font-weight:500}.chart-bar-value{color:#374151;font-size:12px;right:12px}.chart-legend{color:#6b7280;gap:16px;margin-top:4px;font-size:12px;display:flex}.legend-dot{border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.legend-dot.sessions{background:#93c5fd}.legend-dot.revenue{background:#a7f3c9}@media (width<=520px){.chart-bar-label{max-width:50%;font-size:12px}.chart-bar-value{font-size:11px}}@media (prefers-reduced-motion:reduce){.chart-bar{transition:none}}.ticket-btn{color:#fff;white-space:nowrap;cursor:pointer;background:#111827;border:1px solid #111827;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600}.ticket-btn:hover{background:#374151;border-color:#374151}.ticket-btn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}
