:root{--bg-base:#f8f9fc;--bg-primary:#fff;--bg-secondary:#fff;--bg-tertiary:#f1f3f9;--bg-elevated:#e8ebf2;--bg-overlay:#0006;--bg-sheet:#fff;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--text-inverse:#fff;--accent:#2563eb;--accent-light:#60a5fa;--accent-dark:#1d4ed8;--accent-glow:#2563eb1f;--accent-bg:#2563eb0f;--seat-available:#10b981;--seat-available-bg:#10b98114;--seat-occupied:#3b82f6;--seat-occupied-bg:#3b82f614;--seat-overdue:#f97316;--seat-overdue-bg:#f973160f;--seat-checkedin:#06b6d4;--seat-checkedin-bg:#06b6d414;--seat-inactive:#9ca3af;--seat-inactive-bg:#9ca3af14;--seat-onhold:#8b5cf6;--seat-onhold-bg:#8b5cf614;--success:#10b981;--success-bg:#10b98114;--warning:#f59e0b;--warning-bg:#f59e0b0f;--error:#ef4444;--error-bg:#ef44440f;--info:#3b82f6;--info-bg:#3b82f614;--border-subtle:#0f172a0d;--border-default:#0f172a17;--border-strong:#0f172a26;--border-accent:#2563eb33;--gradient-card:linear-gradient(145deg, #fff 0%, #f8fafc 100%);--gradient-card-hover:linear-gradient(145deg, #fff 0%, #f1f5f9 100%);--gradient-accent:linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%);--gradient-accent-subtle:linear-gradient(135deg, #2563eb14 0%, #1e3a8a08 100%);--gradient-surface:linear-gradient(180deg, #fff 0%, #f8f9fc 100%);--gradient-green:linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-orange:linear-gradient(135deg, #f97316 0%, #ea580c 100%);--gradient-red:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000014, 0 1px 3px #0000000a;--shadow-lg:0 8px 24px #0000001a;--shadow-xl:0 16px 48px #0000001f;--shadow-glow:0 0 20px var(--accent-glow);--shadow-inner:inset 0 1px 2px #0000000f;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--space-4xl:64px;--radius-xs:2px;--radius-sm:4px;--radius-md:4px;--radius-lg:6px;--radius-xl:8px;--radius-2xl:12px;--radius-full:9999px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SF Mono", "Fira Code", monospace;--tap-target:48px;--tap-target-lg:56px;--bottom-nav-height:64px;--header-height:52px;--z-base:0;--z-sticky:10;--z-dropdown:20;--z-sheet:30;--z-modal:40;--z-toast:50;--z-overlay:60;--ease-default:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.32, .72, 0, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.1s;--duration-normal:.2s;--duration-slow:.35s}[data-theme=dark]{--bg-base:#09090b;--bg-primary:#0c0c10;--bg-secondary:#141418;--bg-tertiary:#1c1c22;--bg-elevated:#24242c;--bg-overlay:#000000b8;--bg-sheet:#18181e;--text-primary:#eeeef0;--text-secondary:#8b8b9e;--text-muted:#55556a;--text-inverse:#09090b;--accent:#3b82f6;--accent-light:#60a5fa;--accent-dark:#2563eb;--accent-glow:#3b82f62e;--accent-bg:#3b82f614;--seat-available:#34d399;--seat-available-bg:#34d39914;--seat-occupied:#60a5fa;--seat-occupied-bg:#60a5fa14;--seat-overdue:#fb923c;--seat-overdue-bg:#fb923c14;--seat-checkedin:#22d3ee;--seat-checkedin-bg:#22d3ee14;--seat-inactive:#52525b;--seat-inactive-bg:#52525b14;--seat-onhold:#a78bfa;--seat-onhold-bg:#a78bfa14;--success:#34d399;--success-bg:#34d39914;--warning:#fbbf24;--warning-bg:#fbbf2414;--error:#f87171;--error-bg:#f8717114;--info:#60a5fa;--info-bg:#60a5fa14;--border-subtle:#ffffff0a;--border-default:#ffffff12;--border-strong:#ffffff1f;--border-accent:#7c5cfc33;--gradient-card:linear-gradient(145deg, #ffffff05 0%, #ffffff01 100%);--gradient-card-hover:linear-gradient(145deg, #ffffff0a 0%, #ffffff04 100%);--gradient-accent:linear-gradient(135deg, #7c5cfc 0%, #6366f1 100%);--gradient-accent-subtle:linear-gradient(135deg, #7c5cfc1a 0%, #6366f10a 100%);--gradient-surface:linear-gradient(180deg, #ffffff08 0%, #fff0 100%);--gradient-green:linear-gradient(135deg, #34d399 0%, #10b981 100%);--gradient-orange:linear-gradient(135deg, #fb923c 0%, #f97316 100%);--gradient-red:linear-gradient(135deg, #f87171 0%, #ef4444 100%);--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #0000004d, 0 1px 3px #0003;--shadow-lg:0 8px 24px #0006;--shadow-xl:0 16px 48px #00000080;--shadow-glow:0 0 20px var(--accent-glow);--shadow-inner:inset 0 1px 2px #0000004d}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-size:16px}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--bg-base);color:var(--text-primary);min-height:100dvh;line-height:1.5;transition:background-color .3s,color .3s}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}img{max-width:100%;display:block}ul,ol{list-style:none}::-webkit-scrollbar{width:3px;height:3px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#00000014}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#ffffff14}.text-display{letter-spacing:-.025em;font-size:32px;font-weight:800;line-height:1.1}.text-h1{letter-spacing:-.02em;font-size:26px;font-weight:700;line-height:1.2}.text-h2{letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:1.3}.text-h3{font-size:16px;font-weight:600;line-height:1.35}.text-body-lg{font-size:15px;font-weight:400;line-height:1.55}.text-body{font-size:14px;font-weight:400;line-height:1.5}.text-caption{font-size:13px;font-weight:500;line-height:1.4}.text-tiny{letter-spacing:.03em;font-size:11px;font-weight:500;line-height:1.3}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-accent{color:var(--accent)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-error{color:var(--error)}@keyframes pulse-overdue{0%,to{box-shadow:0 0 #fb923c00}50%{box-shadow:0 0 12px 2px #fb923c26}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.15)}}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes check-bounce{0%{transform:scale(0)}50%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes glow-breathe{0%,to{box-shadow:0 0 16px var(--accent-glow)}50%{box-shadow:0 0 32px var(--accent-glow)}}.app-main{min-height:100dvh;transition:margin-left .3s var(--ease-default)}@media (min-width:1024px){.app-main{margin-left:248px}}@media (min-width:1440px){.app-main{margin-left:264px}}.page{min-height:100dvh;padding-bottom:calc(var(--bottom-nav-height) + 12px);flex-direction:column;display:flex}@media (min-width:1024px){.page{padding-bottom:0}}.page-content{padding:var(--space-lg);padding-top:calc(var(--header-height) + var(--space-lg));flex:1;width:100%;max-width:960px;margin:0 auto}@media (min-width:1024px){.page-content{max-width:1200px;padding:var(--space-2xl);padding-top:calc(var(--header-height) + var(--space-2xl))}}@media (min-width:1440px){.page-content{max-width:1400px}}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.flex-1{flex:1}.grid{display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);transition:all var(--duration-normal) var(--ease-default);box-shadow:var(--shadow-sm)}.card:hover{border-color:var(--border-default)}.card-glass{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);background:#fff9}[data-theme=dark] .card-glass{background:#ffffff05}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);gap:var(--space-sm);transition:all var(--duration-normal) var(--ease-default);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";height:2px;position:absolute;top:0;left:0;right:0}.stat-card.green:before{background:var(--gradient-green)}.stat-card.orange:before{background:var(--gradient-orange)}.stat-card.red:before{background:var(--gradient-red)}.stat-card.accent:before{background:var(--gradient-accent)}.stat-card.blue:before{background:linear-gradient(135deg,#60a5fa,#3b82f6)}.stat-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:11px;font-weight:600}.stat-value{letter-spacing:-.02em;font-size:26px;font-weight:800;line-height:1}.stat-trend{border-radius:var(--radius-full);align-items:center;gap:3px;width:fit-content;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.stat-trend.up{color:var(--success);background:var(--success-bg)}.stat-trend.down{color:var(--error);background:var(--error-bg)}.skeleton{background:linear-gradient(90deg, var(--bg-tertiary) 25%, var(--bg-elevated) 50%, var(--bg-tertiary) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite shimmer}.skeleton-text{height:14px}.skeleton-heading{width:60%;height:22px}.skeleton-circle{border-radius:var(--radius-full)}.empty-state{padding:var(--space-3xl) var(--space-xl);text-align:center;justify-content:center;align-items:center;gap:var(--space-md);flex-direction:column;display:flex}.empty-state-icon{border-radius:var(--radius-xl);background:var(--accent-bg);width:56px;height:56px;color:var(--accent);justify-content:center;align-items:center;display:flex}.empty-state-title{font-size:16px;font-weight:600}.empty-state-description{color:var(--text-secondary);max-width:260px;font-size:13px}@media (min-width:640px){.page-content{padding:var(--space-xl);padding-top:calc(var(--header-height) + var(--space-xl))}}@media (min-width:1024px){.page{padding-bottom:0}.page-content{padding:var(--space-2xl);padding-top:calc(var(--header-height) + var(--space-2xl))}.desktop-4-col{gap:var(--space-lg)!important;grid-template-columns:repeat(4,1fr)!important;display:grid!important}.desktop-row{gap:var(--space-xl)!important;grid-template-columns:1fr 1fr!important;align-items:start!important;display:grid!important}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}}.badge{letter-spacing:.03em;border-radius:var(--radius-full);white-space:nowrap;transition:all var(--duration-fast) var(--ease-default);align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-success{color:var(--success);background:var(--success-bg)}.badge-warning{color:var(--warning);background:var(--warning-bg)}.badge-error{color:var(--error);background:var(--error-bg)}.badge-info{color:var(--info);background:var(--info-bg)}.badge-accent{color:var(--accent);background:var(--accent-bg)}.badge-neutral{color:var(--text-secondary);background:var(--bg-tertiary)}.badge-dot:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;animation:2s infinite pulse-dot}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-content{animation:page-enter .4s var(--ease-spring) both}button:active:not(:disabled),[role=button]:active:not(:disabled){transform:scale(.97)}.card-interactive{cursor:pointer;transition:all var(--duration-normal) var(--ease-default)}.card-interactive:hover{box-shadow:var(--shadow-md);border-color:var(--border-default);transform:translateY(-2px)}.card-interactive:active{box-shadow:var(--shadow-sm);transform:translateY(0)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.link-hover{transition:color var(--duration-fast) var(--ease-default);position:relative}.link-hover:after{content:"";width:0;height:1.5px;transition:width var(--duration-normal) var(--ease-default);background:currentColor;position:absolute;bottom:-1px;left:0}.link-hover:hover:after{width:100%}@keyframes count-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-count{animation:count-up .5s var(--ease-spring) both}.animate-count:first-child{animation-delay:50ms}.animate-count:nth-child(2){animation-delay:.1s}.animate-count:nth-child(3){animation-delay:.15s}.animate-count:nth-child(4){animation-delay:.2s}@keyframes list-item-enter{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.animate-list>*{animation:list-item-enter .3s var(--ease-spring) both}.animate-list>:first-child{animation-delay:20ms}.animate-list>:nth-child(2){animation-delay:40ms}.animate-list>:nth-child(3){animation-delay:60ms}.animate-list>:nth-child(4){animation-delay:80ms}.animate-list>:nth-child(5){animation-delay:.1s}.animate-list>:nth-child(6){animation-delay:.12s}.animate-list>:nth-child(7){animation-delay:.14s}.animate-list>:nth-child(8){animation-delay:.16s}.animate-list>:nth-child(9){animation-delay:.18s}.animate-list>:nth-child(10){animation-delay:.2s}.text-gradient{background:var(--gradient-accent);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glow-border{border:1px solid var(--border-accent);box-shadow:var(--shadow-glow)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hidden-mobile{display:none}@media (min-width:768px){.hidden-mobile{display:initial}.hidden-desktop{display:none}}.spin{animation:1s linear infinite spin}.blink{animation:1.5s ease-in-out infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes god-mode-gradient{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes god-mode-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.god-mode-banner{z-index:200;background:linear-gradient(135deg,#dc2626 0%,#b91c1c 25%,#991b1b 50%,#b91c1c 75%,#dc2626 100%) 0 0/200% 200%;animation:4s infinite god-mode-gradient;position:sticky;top:0;box-shadow:0 2px 12px #dc262659}.god-mode-banner__content{justify-content:space-between;align-items:center;gap:12px;max-width:1400px;margin:0 auto;padding:8px 16px;display:flex}.god-mode-banner__left{color:#fff;align-items:center;gap:8px;min-width:0;font-size:.82rem;font-weight:500;display:flex}.god-mode-banner__icon{filter:drop-shadow(0 0 4px #fff6);flex-shrink:0}.god-mode-banner__pulse{color:#fbbf24;flex-shrink:0;animation:1.5s ease-in-out infinite god-mode-pulse}.god-mode-banner__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.god-mode-banner__text strong{letter-spacing:.04em;font-weight:700}.god-mode-banner__separator{opacity:.5;margin:0 6px}.god-mode-banner__exit{-webkit-backdrop-filter:blur(8px);color:#fff;border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;background:#ffffff26;border:1px solid #fff3;flex-shrink:0;align-items:center;gap:6px;padding:5px 14px;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.god-mode-banner__exit:hover:not(:disabled){background:#ffffff47;transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.god-mode-banner__exit:active{transform:scale(.97)}.god-mode-banner__exit:disabled{opacity:.6;cursor:not-allowed}@media (max-width:480px){.god-mode-banner__content{padding:6px 12px}.god-mode-banner__left{font-size:.75rem}.god-mode-banner__separator,.god-mode-banner__exit span{display:none}.god-mode-banner__exit{padding:5px 10px}}@keyframes slideUp{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}
