.theme-toggle{border:1px solid var(--border-color);border-radius:var(--border-radius);background:color-mix(in srgb, var(--surface-strong) 88%, transparent);width:42px;height:42px;color:var(--text-muted);box-shadow:none;cursor:pointer;transition:var(--transition-ui), transform .24s ease, filter .24s ease;place-items:center;padding:0;display:grid}.theme-toggle:hover{background:var(--primary-soft);color:var(--primary-color);transform:translateY(-1px)}.theme-toggle svg{width:20px;height:20px}.theme-toggle.compact{width:38px;height:38px}.app-shell{background:var(--bg-color);grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{border-right:1px solid var(--border-color);background:var(--surface-color);height:100vh;color:var(--text-color);flex-direction:column;padding:20px 16px;display:flex;position:sticky;top:0}.app-brand{min-height:52px;color:var(--text-strong);align-items:center;gap:12px;margin-bottom:28px;padding:0 8px;display:flex}.app-brand-mark{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);object-fit:cover;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}.app-brand strong,.app-brand small{display:block}.app-brand strong{color:var(--text-strong);font-family:var(--font-display);font-size:16px}.app-brand small{color:var(--text-muted);font-size:11px;font-weight:var(--font-weight-semibold);margin-top:2px}.app-nav{gap:4px;display:grid}.app-nav a{border-radius:var(--border-radius);min-height:42px;color:var(--text-muted);font-size:14px;font-weight:var(--font-weight-semibold);transition:var(--transition-ui);border:1px solid #0000;align-items:center;gap:11px;padding:0 12px;display:flex}.app-nav a svg{width:18px;height:18px}.app-nav a.active,.app-nav a:hover{border-color:color-mix(in srgb, var(--primary-color) 20%, transparent);background:var(--primary-soft);color:var(--primary-color)}.app-user{border-top:1px solid var(--border-color);gap:10px;margin-top:auto;padding:16px 8px 0;display:grid}.app-user span{color:var(--text-strong);font-size:13px;font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-user button{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);min-height:40px;color:var(--text-color);font-weight:var(--font-weight-semibold);cursor:pointer;justify-content:center;align-items:center;gap:8px;display:flex}.app-user button svg{width:17px;height:17px}.app-user button:hover{border-color:color-mix(in srgb, var(--danger-color) 35%, var(--border-color));color:var(--danger-color)}.app-main{min-width:0;padding:28px 32px 48px}@media (width<=860px){.app-shell{grid-template-columns:1fr}.app-sidebar{height:auto;position:static}.app-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.app-main{padding:22px 18px 40px}}.admin-shell{--admin-sidebar-width:264px;grid-template-columns:var(--admin-sidebar-width) minmax(0, 1fr);background:0 0}.admin-sidebar{z-index:50;width:var(--admin-sidebar-width);border-color:var(--border-color);background:color-mix(in srgb, var(--surface-color) 92%, var(--bg-color));padding:20px 14px;box-shadow:8px 0 30px #11111606}.admin-sidebar .app-brand{border-bottom:1px solid var(--border-color);margin-bottom:18px;padding:0 8px 20px}.admin-sidebar .app-brand strong{letter-spacing:-.01em;font-size:15px}.admin-sidebar .app-brand small{color:var(--primary-color);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-top:3px;font-size:9px}.app-nav-label{color:var(--text-muted);font-family:var(--font-mono);font-size:9px;font-weight:var(--font-weight-bold);letter-spacing:.11em;text-transform:uppercase;margin:18px 11px 6px}.admin-sidebar .app-nav a{border-radius:9px;min-height:44px;padding:0 12px;position:relative}.admin-sidebar .app-nav a.active{border-color:color-mix(in srgb, var(--primary-color) 22%, transparent);background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary-color)}.admin-sidebar .app-nav a.active:after{background:var(--primary-color);content:"";border-radius:50%;width:5px;height:5px;position:absolute;right:12px}.admin-sidebar .app-user{padding:16px 4px 0}.app-store-link{border-radius:var(--border-radius);min-height:38px;color:var(--text-muted);align-items:center;gap:9px;padding:0 10px;font-size:13px;display:flex}.app-store-link:hover{background:var(--primary-soft);color:var(--primary-color)}.app-store-link svg{width:16px}.app-user-profile,.admin-topbar-user{align-items:center;gap:10px;min-width:0;display:flex}.app-user-profile{border-top:1px solid var(--border-color);padding:14px 6px 4px}.app-user-profile>span:last-child{min-width:0}.app-user-profile strong,.app-user-profile small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.app-user-profile small{color:var(--text-muted);margin-top:2px;font-size:10px}.app-user-avatar{border:1px solid color-mix(in srgb, var(--primary-color) 28%, var(--border-color));background:var(--primary-soft);width:34px;height:34px;color:var(--primary-color);font-weight:var(--font-weight-bold);border-radius:10px;flex:0 0 34px;place-items:center;display:grid}.app-workspace{min-width:0}.admin-topbar{z-index:40;border-bottom:1px solid var(--border-color);background:color-mix(in srgb, var(--bg-color) 82%, transparent);-webkit-backdrop-filter:blur(22px)saturate(140%);backdrop-filter:blur(22px)saturate(140%);justify-content:space-between;align-items:center;gap:24px;min-height:68px;padding:0 30px;display:flex;position:sticky;top:0}.admin-breadcrumb{min-width:0;color:var(--text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.admin-breadcrumb svg{width:14px}.admin-breadcrumb strong{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-topbar-actions{align-items:center;gap:9px;display:flex}.admin-notification,.admin-menu-toggle{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);width:38px;height:38px;color:var(--text-muted);place-items:center;display:grid;position:relative}.admin-notification svg,.admin-menu-toggle svg{width:18px}.admin-notification>span{border:1px solid var(--surface-color);background:var(--primary-color);border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:7px}.admin-topbar-user{border-left:1px solid var(--border-color);margin-left:5px;padding-left:14px}.admin-topbar-user strong{text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:12px;overflow:hidden}.admin-menu-toggle,.admin-sidebar-backdrop{display:none}.admin-shell .app-main{min-height:calc(100vh - 68px);padding:30px clamp(20px,3vw,42px) 56px}:root[data-resolved-theme=dark] .admin-sidebar{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#08080ae0;box-shadow:8px 0 40px #0000002e}@media (width<=980px){.admin-shell{display:block}.admin-sidebar{height:100vh;transition:transform .28s cubic-bezier(.16,1,.3,1);position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.admin-shell.menu-open .admin-sidebar{transform:translate(0)}.admin-menu-toggle{display:grid}.admin-sidebar-backdrop{z-index:45;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#05050673;border:0;display:block;position:fixed;inset:0}.admin-topbar{padding:0 18px}}@media (width<=620px){.admin-breadcrumb>span,.admin-breadcrumb svg,.admin-topbar-user{display:none}.admin-shell .app-main{padding:22px 15px 42px}}.chatbot{z-index:50;flex-direction:column;align-items:flex-end;gap:14px;display:flex;position:fixed;bottom:22px;right:22px}.chatbot-toggle{background:linear-gradient(135deg, color-mix(in srgb, var(--accent-color) 88%, #fff 12%) 0%, var(--primary-color) 100%);color:#fff;width:62px;height:62px;box-shadow:0 18px 42px color-mix(in srgb, var(--primary-color) 28%, transparent);cursor:pointer;isolation:isolate;border:1px solid #ffffff6b;border-radius:50%;place-items:center;transition:transform .22s,box-shadow .22s,filter .22s;display:grid;position:relative;overflow:hidden}.chatbot-toggle:before{z-index:-1;border-radius:inherit;background:var(--brand-gradient);opacity:.34;filter:blur(14px);content:"";animation:5s linear infinite chatbotAura;position:absolute;inset:-12px}.chatbot-toggle:hover{box-shadow:var(--box-shadow-hover);filter:saturate(1.08);transform:translateY(-3px)scale(1.04)}.chatbot-toggle.open{transform:none}.chatbot-toggle-core{background:#ffffff29;border:2px solid;border-radius:12px 12px 12px 6px;width:30px;height:24px;position:relative;box-shadow:inset 0 0 0 1px #ffffff2e}.chatbot-toggle-core:before,.chatbot-toggle-core:after{content:"";background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;top:8px}.chatbot-toggle-core:before{left:8px}.chatbot-toggle-core:after{right:8px}.chatbot-toggle-dot{background:#22c55e;border:2px solid #fff;border-radius:50%;width:11px;height:11px;position:absolute;bottom:-5px;right:-5px}.chatbot-panel{border:1px solid var(--border-color);background:var(--surface-color);width:min(390px,100vw - 32px);height:min(560px,100vh - 120px);box-shadow:var(--box-shadow-hover);-webkit-backdrop-filter:var(--panel-blur);backdrop-filter:var(--panel-blur);border-radius:22px;grid-template-rows:auto 1fr auto;animation:.24s both chatbotPanelIn;display:grid;overflow:hidden}.chatbot-panel header,.chatbot-panel form{align-items:center;gap:10px;padding:14px;display:flex}.chatbot-panel header{background:linear-gradient(135deg, color-mix(in srgb, var(--surface-inset) 92%, var(--primary-color) 8%), color-mix(in srgb, var(--surface-inset) 72%, var(--primary-color) 28%));color:var(--text-color);justify-content:space-between}.chatbot-title{align-items:center;gap:10px;display:inline-flex}.chatbot-title strong{color:var(--text-color);font-weight:var(--font-weight-display);letter-spacing:0}.chatbot-title small{color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-semibold);margin-top:2px;display:block}.chatbot-title-icon{width:30px;height:30px;color:color-mix(in srgb, var(--accent-color) 76%, #fff 24%);background:#ffffff24;border-radius:10px;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #ffffff29}.chatbot-panel header button,.chatbot-panel form button{background:var(--brand-gradient);color:#fff;font-weight:var(--font-weight-display);border:0;border-radius:12px;padding:10px 14px;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 22px #0284c738}.chatbot-panel header button{color:var(--text-color);background:#ffffff24;box-shadow:inset 0 0 0 1px #ffffff2e}.chatbot-panel header button:hover,.chatbot-panel form button:hover{transform:translateY(-1px);box-shadow:0 14px 26px #0284c747}.chatbot-messages{background:linear-gradient(180deg, var(--surface-inset), color-mix(in srgb, var(--surface-strong) 82%, transparent));flex-direction:column;gap:10px;padding:16px;display:flex;overflow-y:auto}.chatbot-message{border-radius:16px;max-width:84%;margin:0;padding:11px 13px;font-size:14px;line-height:1.45;animation:.18s both chatbotMessageIn;box-shadow:0 10px 24px #0f172a0f}.chatbot-message.user{background:var(--brand-gradient);color:#fff;border-bottom-right-radius:6px;align-self:flex-end}.chatbot-message.assistant{background:var(--surface-strong);color:var(--text-color);border-bottom-left-radius:6px;align-self:flex-start}.chatbot-panel form{border-top:1px solid var(--border-color);background:var(--surface-strong)}.chatbot-panel input{border:1px solid var(--border-color);background:var(--surface-strong);min-width:0;color:var(--text-color);border-radius:14px;outline:0;flex:1;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.chatbot-panel input:focus{border-color:#0284c78a;box-shadow:0 0 0 4px #0284c724}[data-theme=dark] .chatbot-panel,[data-resolved-theme=dark] .chatbot-panel{background:#0e0e0ef5;border-color:#ffffff29;box-shadow:0 28px 88px #000000a3,0 0 0 1px #38bdf829}[data-theme=dark] .chatbot-panel header,[data-resolved-theme=dark] .chatbot-panel header{color:#fff;background:linear-gradient(135deg,#050505 0%,#111 58%,#0284c761 100%);border-bottom:1px solid #ffffff1f}[data-theme=dark] .chatbot-title strong,[data-resolved-theme=dark] .chatbot-title strong{color:#fff}[data-theme=dark] .chatbot-title small,[data-resolved-theme=dark] .chatbot-title small{color:#ffffffb8}[data-theme=dark] .chatbot-panel header button,[data-resolved-theme=dark] .chatbot-panel header button{color:#fff}[data-theme=dark] .chatbot-messages,[data-resolved-theme=dark] .chatbot-messages{background:linear-gradient(#050505 0%,#0d0d0d 100%)}[data-theme=dark] .chatbot-message.assistant,[data-resolved-theme=dark] .chatbot-message.assistant{color:#fff;background:#191919;border:1px solid #ffffff24;box-shadow:0 12px 28px #00000057}[data-theme=dark] .chatbot-panel form,[data-resolved-theme=dark] .chatbot-panel form{background:#111;border-top-color:#ffffff24}[data-theme=dark] .chatbot-panel input,[data-resolved-theme=dark] .chatbot-panel input{color:#fff;background:#050505;border-color:#ffffff29}[data-theme=dark] .chatbot-panel input::placeholder,[data-resolved-theme=dark] .chatbot-panel input::placeholder{color:#ffffffb8}[data-theme=dark] .chatbot-toggle,[data-resolved-theme=dark] .chatbot-toggle{border-color:#ffffff3d;box-shadow:0 18px 48px #0284c752,0 0 0 1px #ffffff14}@keyframes chatbotAura{to{transform:rotate(360deg)}}@keyframes chatbotPanelIn{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes chatbotMessageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=560px){.chatbot{bottom:14px;right:14px}.chatbot-panel{width:calc(100vw - 28px);height:min(520px,100vh - 104px)}}.public-layout{background:var(--bg-color);flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}.public-layout>main,.public-layout>section{flex:none;width:100%}.public-header{z-index:30;border-bottom:1px solid var(--border-color);background:color-mix(in srgb, var(--surface-color) 94%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:center;min-height:68px;padding:0 max(24px,50vw - 620px);display:flex;position:sticky;top:0}.public-brand{align-items:center;gap:10px;display:inline-flex}.public-brand>span,.public-brand strong,.public-brand small{display:block}.public-brand strong{color:var(--text-strong);font-family:var(--font-display);font-size:16px}.public-brand small{color:var(--text-muted);font-size:10px;font-weight:var(--font-weight-semibold);margin-top:1px}.public-header nav{align-items:center;gap:10px;display:flex}.public-header nav>a{border-radius:var(--border-radius);min-height:38px;color:var(--text-muted);font-size:14px;font-weight:var(--font-weight-semibold);border:1px solid #0000;align-items:center;gap:7px;padding:0 11px;display:inline-flex}.public-header nav>a svg{width:17px;height:17px}.public-header nav>a.active,.public-header nav>a:hover{border-color:color-mix(in srgb, var(--primary-color) 18%, transparent);background:var(--primary-soft);color:var(--primary-color)}.public-account{position:relative}.public-avatar-button,.public-account-avatar{background:var(--primary-color);color:var(--primary-contrast);font-weight:var(--font-weight-bold);border-radius:50%;place-items:center;display:grid}.public-avatar-button{cursor:pointer;border:0;width:38px;height:38px}.public-avatar-button:focus-visible,.public-account-menu a:focus-visible,.public-account-menu button:focus-visible{box-shadow:var(--focus-ring);outline:0}.public-account-menu{z-index:40;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);width:min(286px,100vw - 32px);box-shadow:var(--box-shadow-hover);display:grid;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden}.public-account-summary{border-bottom:1px solid var(--border-color);grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:14px;display:grid}.public-account-avatar{width:42px;height:42px}.public-account-summary strong,.public-account-summary small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.public-account-summary small{color:var(--text-muted);margin-top:3px;font-size:12px}.public-account-menu a,.public-account-menu button{width:100%;min-height:42px;color:var(--text-color);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0 14px;font-size:14px;display:flex}.public-account-menu a svg,.public-account-menu button svg{width:17px;height:17px}.public-account-menu a:hover,.public-account-menu button:hover,.public-account-menu .account-menu-item.is-active{background:var(--primary-soft);color:var(--primary-color)}.public-account-menu button.danger{border-top:1px solid var(--border-color);color:var(--danger-color)}.public-mobile-menu{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);width:40px;height:40px;color:var(--text-color);place-items:center;display:none}.public-mobile-menu svg{width:20px;height:20px}.public-footer{z-index:1;border-top:1px solid var(--border-color);background:var(--surface-color);margin-top:auto;position:relative}.public-footer-content{grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(150px,.7fr));gap:40px;max-width:1240px;margin:0 auto;padding:42px 24px 34px;display:grid}.public-footer-brand{max-width:440px}.public-footer-brand .public-brand{margin-bottom:16px}.public-footer-brand p{color:var(--text-muted);font-size:14px}.public-footer-links,.public-footer-contact{align-content:start;gap:12px;display:grid}.public-footer-links>strong,.public-footer-contact>strong{color:var(--text-strong);font-family:var(--font-display);margin-bottom:3px;font-size:14px}.public-footer-links a,.public-footer-contact>a{width:fit-content;color:var(--text-muted);font-size:14px;font-weight:var(--font-weight-medium);align-items:center;gap:8px;transition:color .2s;display:inline-flex}.public-footer-links a:hover,.public-footer-contact>a:hover{color:var(--primary-color)}.public-footer-links svg,.public-footer-contact>a svg{flex:none;width:16px;height:16px}.public-footer-socials{align-items:center;gap:8px;margin-top:4px;display:flex}.public-footer-socials a{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-muted);width:36px;height:36px;color:var(--text-strong);transition:var(--transition-ui);place-items:center;display:grid}.public-footer-socials a:hover{border-color:var(--primary-color);background:var(--primary-soft);color:var(--primary-color);transform:translateY(-2px)}.public-footer-socials svg{width:18px;height:18px}.public-footer-bottom{border-top:1px solid var(--border-color);max-width:1240px;color:var(--text-muted);justify-content:space-between;align-items:center;gap:20px;margin:0 auto;padding:18px 24px;font-size:12px;display:flex}@media (width<=980px){.public-footer-content{grid-template-columns:minmax(240px,1.4fr) repeat(2,minmax(150px,1fr))}.public-footer-contact{grid-column:2/-1}}@media (width<=760px){.public-header{min-height:62px;padding:0 16px}.public-mobile-menu{display:grid}.public-header nav{border-bottom:1px solid var(--border-color);background:var(--surface-color);box-shadow:var(--box-shadow);flex-direction:column;align-items:stretch;padding:10px 16px 16px;display:none;position:absolute;top:calc(100% + 1px);left:0;right:0}.public-header nav.is-open{display:flex}.public-header nav>a{justify-content:flex-start}.public-account{display:flex}.public-account-menu{left:0;right:auto}.public-footer-content{grid-template-columns:1fr;gap:28px;padding:34px 16px 28px}.public-footer-contact{grid-column:auto}.public-footer-bottom{flex-direction:column;align-items:flex-start;gap:6px;padding:16px}}.state,.error-state{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);color:var(--text-muted);text-align:center;box-shadow:var(--box-shadow);place-items:center;gap:12px;padding:28px;animation:.35s both fadeSlideIn;display:grid}.state-fullscreen{min-height:100vh}.state-spinner{border:4px solid #dbe3ef;border-top-color:var(--primary-color);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.error-state{color:#991b1b;background:#fff1f2eb;border-color:#dc262640;margin-bottom:18px}.error-state strong{color:#7f1d1d}.error-state button{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);color:var(--text-color);font-weight:var(--font-weight-semibold);padding:9px 14px;transition:transform .25s,box-shadow .25s,border-color .25s}.error-state button:hover:not(:disabled){box-shadow:var(--box-shadow);border-color:#0ea5e970;transform:translateY(-2px)scale(1.03)}.pagination{color:var(--text-color);grid-template-columns:40px auto 40px;justify-content:center;align-items:center;gap:14px;margin-top:24px;display:grid}.pagination button{border:1px solid var(--border-color);background:var(--surface-strong);width:40px;height:40px;color:var(--text-color);cursor:pointer;transition:var(--transition-ui);border-radius:8px;place-items:center;padding:0;display:grid}.pagination-nav svg{stroke-width:2px;width:22px;height:22px}.pagination button:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary-color) 44%, var(--border-color));background:var(--primary-soft);color:var(--primary-color);transform:translateY(-2px)}.pagination button:disabled{cursor:not-allowed;opacity:.42}.pagination-summary{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-medium);text-align:center;white-space:nowrap}@media (width<=520px){.pagination{grid-template-columns:38px auto 38px;gap:10px}.pagination button{width:38px;height:38px}}.qr-card{border-radius:var(--border-radius);background:#fff;border:8px solid #fff;place-items:center;width:max-content;max-width:100%;display:inline-grid;box-shadow:0 12px 30px #0f172a24}.qr-card svg{width:min(180px,100%);height:auto;display:block}@keyframes spin{to{transform:rotate(360deg)}}.admin-page{max-width:1280px;margin:0 auto}.admin-tabs{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);grid-template-columns:repeat(3,minmax(110px,1fr));margin-bottom:20px;display:inline-grid;overflow:hidden}.admin-tabs button{border:0;border-right:1px solid var(--border-color);min-height:42px;color:var(--text-muted);font-weight:var(--font-weight-bold);cursor:pointer;background:0 0;padding:0 16px}.admin-tabs button:last-child{border-right:0}.admin-tabs button.active{background:var(--primary-soft);color:var(--primary-color)}.admin-toolbar{justify-content:flex-end;margin-bottom:14px;display:flex}.admin-grid{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:24px;display:grid}.admin-form,.admin-panel{border:1px solid var(--border-color);border-radius:var(--border-radius-xl);background:var(--surface-color);box-shadow:var(--box-shadow);-webkit-backdrop-filter:var(--panel-blur);backdrop-filter:var(--panel-blur);transition:var(--transition-ui);animation:.38s both fadeSlideIn}.admin-form{gap:15px;padding:22px;display:grid;position:sticky;top:24px}.admin-form h2{color:var(--text-strong);font-size:22px}.admin-panel{overflow:hidden}.admin-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(160px,1fr) minmax(120px,1fr) repeat(3,auto);align-items:center;gap:12px;padding:15px 16px;transition:transform .24s,background-color .24s,box-shadow .24s;display:grid}.admin-row:hover{background:color-mix(in srgb, var(--primary-soft) 50%, transparent);box-shadow:inset 3px 0 0 var(--primary-color);transform:translate(3px)}.admin-row:last-child{border-bottom:0}.admin-row strong{color:var(--text-strong)}.admin-row span{color:var(--text-muted)}.admin-user-row{grid-template-columns:minmax(140px,1fr) minmax(160px,1fr) auto auto auto auto}.admin-event-row{grid-template-columns:minmax(160px,1fr) minmax(150px,1fr) minmax(150px,1fr) auto auto}.admin-commerce-row{grid-template-columns:minmax(210px,1fr) minmax(180px,1fr) auto 130px}.admin-order-list{gap:16px;display:grid}.admin-order-card{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);box-shadow:var(--box-shadow);gap:20px;padding:22px;display:grid}.admin-order-toggle{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:18px;padding:0;display:flex}.admin-order-toggle:hover strong:last-child,.admin-order-toggle:focus-visible strong:last-child{color:var(--primary-color)}.admin-order-toggle:focus-visible{border-radius:var(--border-radius);box-shadow:var(--focus-ring);outline:none}.admin-order-card h2{margin:4px 0;font-size:24px}.admin-order-toggle small,.admin-order-detail-grid small{color:var(--text-muted)}.admin-order-toggle-status{justify-items:end;gap:8px;display:grid}.admin-order-toggle-status>strong{color:var(--text-muted);font-size:12px}.admin-order-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.admin-order-detail-grid section{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-muted);align-content:start;gap:6px;padding:14px;display:grid}.admin-order-detail-grid section>span{color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-bold);text-transform:uppercase}.admin-order-ticket-detail{border-top:1px solid var(--border-color);gap:16px;padding-top:18px;display:grid}.admin-order-ticket-detail h3{margin-top:4px;font-size:20px}.admin-order-ticket-list{gap:10px;display:grid}.admin-order-ticket-row{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-muted);grid-template-columns:minmax(130px,.5fr) minmax(260px,1.5fr) auto;align-items:center;gap:14px;padding:13px;display:grid}.admin-order-ticket-row>span:first-child{gap:4px;display:grid}.admin-order-ticket-row code{min-width:0;color:var(--text-color);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.admin-order-ticket-row button{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);color:var(--text-color);font-weight:var(--font-weight-bold);cursor:pointer;padding:8px 12px}.admin-row small{color:var(--text-muted)}.admin-id{text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:hidden}.ticket-scanner{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);max-width:720px;box-shadow:var(--box-shadow);gap:18px;padding:24px;display:grid}.ticket-scanner h2{margin-top:6px}.ticket-scanner p{color:var(--text-muted);margin-top:8px}.ticket-scanner label{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-bold);gap:8px;display:grid}.ticket-scanner input{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);width:100%;color:var(--text-color);padding:12px 14px}.ticket-scanner dl{gap:10px;margin:0;display:grid}.ticket-scanner dl div{border-top:1px solid var(--border-color);justify-content:space-between;gap:16px;padding-top:10px;display:flex}.ticket-scanner dd{overflow-wrap:anywhere;text-align:right;min-width:0;margin:0}.admin-status-pill{border:1px solid var(--border-color);background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-display);white-space:nowrap;border-radius:999px;justify-content:center;justify-self:start;align-items:center;padding:6px 10px;display:inline-flex}.admin-status-pill.active{border-color:color-mix(in srgb, var(--success-color) 32%, transparent);background:color-mix(in srgb, var(--success-color) 12%, var(--surface-strong));color:var(--success-color)}.admin-status-pill.inactive{border-color:color-mix(in srgb, var(--danger-color) 30%, transparent);background:color-mix(in srgb, var(--danger-color) 10%, var(--surface-strong));color:var(--danger-color)}.admin-row button{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);color:var(--text-color);font-weight:var(--font-weight-bold);cursor:pointer;padding:8px 12px;transition:transform .24s,box-shadow .24s,border-color .24s,color .24s}.admin-row button:hover{border-color:color-mix(in srgb, var(--primary-color) 42%, var(--border-color));color:var(--primary-color);box-shadow:var(--box-shadow);transform:translateY(-2px)}@media (width<=960px){.admin-grid,.admin-row,.admin-user-row,.admin-event-row,.admin-commerce-row,.admin-order-detail-grid,.admin-order-ticket-row{grid-template-columns:1fr}.admin-order-toggle{flex-direction:column;align-items:stretch}.admin-order-toggle-status{justify-items:start}.admin-form{position:static}.admin-tabs{width:100%;display:grid}}.auth-page{background:linear-gradient(135deg, color-mix(in srgb, var(--primary-soft) 46%, transparent), transparent 58%), var(--bg-color);grid-template-columns:minmax(0,1fr) 460px;min-height:100vh;display:grid}.compact-auth{grid-template-columns:1fr}.auth-visual{color:#fff;background:linear-gradient(135deg,#38bdf838,#0284c7c2),url(/assets/hero-BzH79qzj.png) 50%/cover;align-items:flex-end;min-height:100vh;padding:56px;display:flex}.auth-visual h1{letter-spacing:0;white-space:nowrap;max-width:760px;margin:10px 0 16px;font-size:54px;line-height:1}.auth-visual p{color:#dbeafe;max-width:620px;font-size:18px}.auth-kicker{color:#38bdf8;font-size:12px;font-weight:var(--font-weight-display);letter-spacing:0;text-transform:uppercase}.auth-panel{background:color-mix(in srgb, var(--surface-strong) 72%, transparent);-webkit-backdrop-filter:var(--panel-blur);backdrop-filter:var(--panel-blur);place-items:center;padding:32px;display:grid}.auth-form{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);width:min(100%,380px);box-shadow:var(--box-shadow);gap:18px;padding:26px;animation:.38s both fadeSlideIn;display:grid}.auth-form h2{margin-top:6px;font-size:34px;line-height:1}.auth-form label,.movie-form label,.search-box{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-bold);gap:8px;display:grid}.auth-form input,.movie-form input,.movie-form textarea,.search-box input{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);width:100%;color:var(--text-color);outline:none;padding:12px 14px}.auth-form input:focus,.movie-form input:focus,.movie-form textarea:focus,.search-box input:focus{border-color:var(--primary-color);box-shadow:var(--focus-ring);transform:translateY(-1px)}.auth-error{border-radius:var(--border-radius);background:color-mix(in srgb, var(--danger-color) 10%, var(--surface-strong));color:var(--danger-color);font-size:14px;font-weight:var(--font-weight-semibold);padding:12px 14px;animation:.32s both fadeSlideIn;box-shadow:0 12px 28px #ef44441f}.auth-link{color:var(--text-muted);text-align:center}.auth-link a{color:var(--primary-color);font-weight:var(--font-weight-bold)}@media (width<=1120px){.auth-page{grid-template-columns:1fr}.auth-visual{min-height:42vh;padding:32px}}@media (width<=640px){.auth-visual h1{white-space:normal;font-size:36px}}.admin-dashboard{width:100%;max-width:1480px;margin:0 auto}.dashboard-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.dashboard-heading h1{letter-spacing:-.035em;margin-top:7px;font-size:clamp(30px,3vw,42px)}.dashboard-heading p{color:var(--text-muted);margin-top:10px;font-size:14px}.dashboard-refresh{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);min-height:42px;color:var(--text-color);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--box-shadow);transition:var(--transition-ui);align-items:center;gap:9px;padding:0 15px;display:inline-flex}.dashboard-refresh:hover{border-color:color-mix(in srgb, var(--primary-color) 35%, var(--border-color));color:var(--primary-color);transform:translateY(-2px)}.dashboard-refresh svg{width:16px}.dashboard-stats{grid-template-columns:1.25fr repeat(4,minmax(150px,1fr));gap:14px;margin-bottom:18px;display:grid}.dashboard-stat,.dashboard-card{border:1px solid var(--border-color);border-radius:var(--border-radius-xl);background:color-mix(in srgb, var(--surface-color) 94%, transparent);box-shadow:var(--box-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:relative;overflow:hidden}.dashboard-stat{min-width:0;min-height:140px;transition:var(--transition-ui);align-items:flex-start;gap:13px;padding:20px;display:flex}.dashboard-stat:hover{border-color:color-mix(in srgb, var(--primary-color) 25%, var(--border-color));box-shadow:var(--box-shadow-hover);transform:translateY(-3px)}.dashboard-stat.featured{background:radial-gradient(circle at 90% 0, color-mix(in srgb, var(--primary-color) 22%, transparent), transparent 46%), color-mix(in srgb, var(--surface-color) 94%, transparent)}.dashboard-stat-icon{border:1px solid color-mix(in srgb, var(--primary-color) 18%, var(--border-color));background:var(--primary-soft);width:38px;height:38px;color:var(--primary-color);border-radius:11px;flex:0 0 38px;place-items:center;display:grid}.dashboard-stat-icon svg{width:18px}.dashboard-stat div{gap:5px;min-width:0;display:grid}.dashboard-stat small,.dashboard-card header small{color:var(--text-muted);font-size:10px;font-weight:var(--font-weight-bold);letter-spacing:.08em;text-transform:uppercase}.dashboard-stat strong{color:var(--text-strong);letter-spacing:-.025em;font-size:clamp(22px,2vw,28px);line-height:1.15}.dashboard-stat div>span{color:var(--text-muted);font-size:11px;line-height:1.4}.dashboard-main-grid,.dashboard-bottom-grid{gap:18px;margin-bottom:18px;display:grid}.dashboard-main-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.65fr)}.dashboard-bottom-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.dashboard-card{padding:22px}.dashboard-card>header{justify-content:space-between;align-items:flex-start;gap:18px;min-height:48px;margin-bottom:18px;display:flex}.dashboard-card h2{letter-spacing:-.02em;margin-top:5px;font-size:18px}.dashboard-card>header>strong{color:var(--text-strong);font-size:18px}.dashboard-card>header a{color:var(--primary-color);font-size:12px;font-weight:var(--font-weight-semibold);align-items:center;gap:5px;display:inline-flex}.dashboard-card>header a svg{width:14px}.revenue-chart{height:250px;padding-bottom:28px;position:relative}.revenue-chart svg,.chart-grid{width:100%;height:calc(100% - 28px);position:absolute;inset:0 0 28px}.chart-grid{background-image:linear-gradient(to bottom, var(--border-color) 1px, transparent 1px);background-size:100% 25%}.chart-labels{color:var(--text-muted);font-family:var(--font-mono);text-transform:uppercase;justify-content:space-between;font-size:9px;display:flex;position:absolute;bottom:0;left:0;right:0}.status-card{flex-direction:column;align-items:center;display:flex}.status-card>header{width:100%}.status-donut{background:conic-gradient(var(--primary-color) 0 var(--paid), var(--border-color) var(--paid) 100%);border-radius:50%;place-items:center;width:148px;height:148px;margin:3px auto 22px;display:grid;position:relative}.status-donut:before{background:var(--surface-color);content:"";border-radius:50%;width:112px;height:112px;position:absolute}.status-donut div{z-index:1;justify-items:center;display:grid;position:relative}.status-donut strong{color:var(--text-strong);font-size:25px}.status-donut span{color:var(--text-muted);font-size:10px}.status-legend{gap:10px;width:100%;display:grid}.status-legend>div{color:var(--text-muted);grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:9px;font-size:12px;display:grid}.legend-dot{background:var(--text-muted);border-radius:50%;width:7px;height:7px}.legend-dot.paid{background:var(--primary-color)}.legend-dot.pending{background:var(--warning-color)}.legend-dot.cancelled,.legend-dot.expired{background:var(--danger-color)}.status-legend strong{color:var(--text-strong)}.schedule-list{display:grid}.schedule-row{border-top:1px solid var(--border-color);grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:15px;padding:14px 2px;display:grid}.schedule-time{color:var(--primary-color);font-family:var(--font-mono);font-size:15px;font-weight:var(--font-weight-bold)}.schedule-row div{gap:4px;display:grid}.schedule-row div strong{color:var(--text-strong);font-size:13px}.schedule-row div small{color:var(--text-muted);font-size:11px}.quick-links{gap:9px;display:grid}.quick-links>a{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-muted);transition:var(--transition-ui);grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:11px;padding:11px;display:grid}.quick-links>a:hover{border-color:color-mix(in srgb, var(--primary-color) 30%, var(--border-color));background:var(--primary-soft);color:var(--primary-color);transform:translate(3px)}.quick-links>a>svg:first-child{background:var(--surface-color);width:36px;height:36px;color:var(--primary-color);border-radius:10px;padding:9px}.quick-links>a>svg:last-child{width:15px;color:var(--text-muted)}.quick-links span{gap:3px;display:grid}.quick-links strong{color:var(--text-strong);font-size:12px}.quick-links small{color:var(--text-muted);font-size:10px}.dashboard-empty,.dashboard-updated{color:var(--text-muted);font-size:11px}.dashboard-empty{border-top:1px solid var(--border-color);text-align:center;padding:28px 0}.dashboard-updated{text-align:right}@media (width<=1240px){.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-stat.featured{grid-column:span 2}}@media (width<=820px){.dashboard-main-grid,.dashboard-bottom-grid{grid-template-columns:1fr}}@media (width<=620px){.dashboard-heading{flex-direction:column;align-items:stretch}.dashboard-refresh{width:fit-content}.dashboard-stats{grid-template-columns:1fr 1fr}.dashboard-stat,.dashboard-stat.featured{grid-column:auto}.dashboard-stat.featured{grid-column:1/-1}.dashboard-stat{flex-direction:column;min-height:130px}.dashboard-card{padding:17px}.schedule-row{grid-template-columns:54px minmax(0,1fr)}.schedule-row .admin-status-pill{display:none}}.booking-page{width:100%;max-width:1280px;margin:0 auto;padding:26px 24px 56px}.booking-breadcrumb{color:var(--text-muted);font-size:14px;font-weight:var(--font-weight-semibold);flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:24px;display:flex}.booking-breadcrumb a{color:var(--primary-color)}.booking-breadcrumb a:hover{text-decoration:underline}.booking-breadcrumb strong{color:var(--text-strong)}.booking-placeholder{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);max-width:680px;color:var(--text-muted);text-align:center;box-shadow:var(--box-shadow);place-items:center;gap:10px;margin:40px auto;padding:34px;display:grid}.booking-placeholder strong{color:var(--text-strong);font-size:21px}.booking-placeholder .primary-button{margin-top:8px}.booking-workspace{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:24px;display:grid}.seat-selection-panel{min-width:0}.booking-notice{background:color-mix(in srgb, #f5a623 22%, var(--surface-color));color:var(--text-strong);font-size:13px;font-weight:var(--font-weight-bold);text-align:center;border-left:4px solid #e99824;margin-bottom:14px;padding:11px 16px}.seat-legend{color:var(--text-color);font-size:13px;font-weight:var(--font-weight-semibold);flex-wrap:wrap;justify-content:center;gap:12px 26px;margin-bottom:22px;display:flex}.seat-legend span{align-items:center;gap:8px;display:inline-flex}.seat-legend i{border:1px solid #0000;border-radius:7px 7px 9px 9px;width:25px;height:19px;display:inline-block;position:relative}.seat-legend i:after{background:inherit;content:"";border-radius:0 0 4px 4px;height:4px;position:absolute;bottom:-4px;left:3px;right:3px}.seat-map-panel{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);min-height:500px;box-shadow:var(--box-shadow);padding:34px 28px 40px;overflow-x:auto}.booking-page-screen{width:min(720px,92%);height:68px;color:var(--text-muted);text-align:center;font-size:13px;font-weight:var(--font-weight-semibold);margin:0 auto 28px;position:relative;overflow:hidden}.booking-page-screen:before{border-top:5px solid color-mix(in srgb, var(--primary-color) 55%, #6b7890);height:50px;box-shadow:0 -8px 20px color-mix(in srgb, var(--primary-color) 18%, transparent);content:"";border-radius:50% 50% 0 0;position:absolute;top:8px;left:1%;right:1%}.booking-page-screen span{position:relative;top:35px}.booking-page-grid{grid-template-columns:repeat(10,44px);justify-content:center;gap:13px 11px;min-width:540px;padding:8px 0 18px;display:grid}.booking-page-seat{width:44px;height:36px;font-size:11px;font-weight:var(--font-weight-bold);cursor:pointer;border:1px solid #0000;border-radius:8px 8px 10px 10px;place-items:center;transition:transform .16s,box-shadow .16s,filter .16s;display:grid;position:relative}.booking-page-seat:after{background:inherit;content:"";border-radius:0 0 5px 5px;height:5px;position:absolute;bottom:-5px;left:4px;right:4px}.booking-page-seat:hover:not(:disabled){z-index:1;box-shadow:0 8px 18px color-mix(in srgb, var(--primary-color) 20%, transparent);transform:translateY(-3px)}.booking-page-seat:disabled{cursor:not-allowed}.seat-available,.legend-available{border-color:var(--border-strong);background:var(--seat-available);color:var(--seat-available-text)}.seat-selected,.legend-selected{background:var(--seat-selected);color:var(--primary-contrast)}.seat-held,.legend-held{background:var(--seat-held);color:#fff}.seat-sold,.legend-sold{background:var(--seat-sold);color:#fff}.booking-total-bar{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);box-shadow:var(--box-shadow);grid-template-columns:minmax(0,1fr) minmax(180px,.65fr);align-items:stretch;gap:0;margin-top:16px;display:grid}.booking-total-bar>div{border-right:1px solid var(--border-color);align-content:center;gap:5px;padding:18px 20px;display:grid}.booking-total-bar span{color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-semibold)}.booking-total-bar strong{color:var(--text-strong);overflow-wrap:anywhere}.booking-total-bar>div:nth-child(2) strong{color:var(--primary-color);font-size:19px}.booking-summary{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);box-shadow:var(--box-shadow);position:sticky;top:88px;overflow:hidden}.booking-movie-overview{grid-template-columns:104px minmax(0,1fr);align-items:start;gap:16px;padding:18px;display:grid}.booking-movie-poster{aspect-ratio:2/3;border-radius:var(--border-radius);background:var(--surface-inset);color:var(--primary-color);place-items:center;display:grid;overflow:hidden}.booking-movie-poster img{object-fit:cover;width:100%;height:100%}.booking-movie-poster svg{width:32px;height:32px}.booking-movie-overview h1{color:var(--primary-color);margin:4px 0 8px;font-size:21px;line-height:1.2}.booking-movie-overview span{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-semibold)}.booking-summary dl{border-top:1px dashed var(--border-strong);margin:0;display:grid}.booking-summary dl div{grid-template-columns:minmax(0,1fr) minmax(100px,.9fr);gap:12px;padding:13px 18px;display:grid}.booking-summary dt{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.booking-summary dt svg{flex:none;width:16px;height:16px}.booking-summary dd{color:var(--text-strong);font-size:13px;font-weight:var(--font-weight-semibold);overflow-wrap:anywhere;margin:0}.booking-summary-action{width:calc(100% - 36px);margin:16px 18px 18px}.booking-summary-action svg{width:18px;height:18px}.booking-confirmation{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);min-height:500px;box-shadow:var(--box-shadow);padding:26px}.booking-confirmation>header{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding-bottom:18px;display:flex}.booking-confirmation>header>svg{border:1px solid var(--border-strong);width:42px;height:42px;color:var(--primary-color);border-radius:50%;padding:9px}.booking-confirmation h2{color:var(--text-strong);margin-top:4px;font-size:23px}.booking-customer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:24px 0;display:grid}.booking-customer-grid div,.booking-ticket-review>div{gap:5px;display:grid}.booking-customer-grid span,.booking-ticket-review span{color:var(--text-muted);font-size:13px}.booking-customer-grid strong,.booking-ticket-review strong{color:var(--text-strong);overflow-wrap:anywhere}.booking-ticket-review{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);grid-template-columns:minmax(180px,1.25fr) minmax(100px,.6fr) minmax(180px,.9fr);align-items:center;gap:18px;padding:20px 0;display:grid}.booking-ticket-title{grid-template-columns:38px minmax(0,1fr);align-items:center}.booking-ticket-title svg{width:30px;height:30px;color:var(--primary-color)}.booking-ticket-total{border-top:1px dashed var(--border-strong);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding-top:18px}.booking-ticket-total strong{color:var(--primary-color);font-size:21px}.booking-confirmation-note{border-left:3px solid var(--primary-color);background:var(--primary-soft);color:var(--text-muted);margin-top:20px;padding:10px 12px;font-size:13px}.booking-summary-actions{grid-template-columns:1fr 1.2fr;gap:8px;margin:16px 18px 18px;display:grid}.booking-summary-actions .ghost-button,.booking-summary-actions .primary-button{width:100%}.booking-summary-actions svg{width:17px;height:17px}@media (width<=1020px){.booking-workspace{grid-template-columns:1fr}.booking-summary{position:static}}@media (width<=760px){.booking-customer-grid,.booking-ticket-review{grid-template-columns:1fr}.booking-ticket-total{grid-column:auto}}@media (width<=680px){.booking-page{padding:20px 16px 40px}.booking-notice{text-align:left}.seat-legend{justify-content:flex-start}.seat-map-panel{padding:26px 12px 34px}.booking-total-bar{grid-template-columns:1fr}.booking-total-bar>div{border-right:0;border-bottom:1px solid var(--border-color)}.booking-confirmation{min-height:0;padding:20px 16px}.booking-summary-actions{grid-template-columns:1fr}}.home-page,.movie-detail-page,.movies-page{z-index:1;width:100%;max-width:1240px;margin:0 auto;padding:24px 24px 56px;position:relative}.movies-page{min-height:70vh}.movies-page-header{margin-bottom:24px}.home-hero{border-radius:var(--border-radius-xl);color:#fff;width:100%;min-height:min(560px,100vh - 118px);box-shadow:var(--box-shadow);cursor:grab;-webkit-user-select:none;user-select:none;background:#101820;border:1px solid #ffffff14;align-items:flex-end;padding:48px;display:flex;position:relative;overflow:hidden}.home-hero:active{cursor:grabbing}.home-hero-track{will-change:transform;width:100%;height:100%;transition:transform .72s cubic-bezier(.2,.75,.2,1);display:flex;position:absolute;inset:0}.home-hero-slide{background-color:#101820;background-position:50% 28%;background-repeat:no-repeat;background-size:cover;flex:0 0 100%;width:100%;min-width:100%}.home-hero:after{pointer-events:none;content:"";background:linear-gradient(90deg,#080d12e6 0%,#080d128f 48%,#080d121a 78%),linear-gradient(#0000 42%,#080d12b8);position:absolute;inset:0}.home-hero-content{z-index:2;max-width:690px;animation:.45s both heroContentIn;position:relative}.home-hero .page-kicker{color:#76d8df}.home-hero h1{color:#fff;max-width:680px;margin:10px 0 14px;font-size:clamp(44px,7vw,76px);line-height:.98}.movie-duration-label{color:#d8e1e6;font-weight:var(--font-weight-semibold);display:inline-flex}.home-hero p{color:#d8e1e6;-webkit-line-clamp:3;-webkit-box-orient:vertical;max-width:620px;margin:14px 0 24px;font-size:16px;display:-webkit-box;overflow:hidden}.home-hero .primary-button svg{width:18px;height:18px}.hero-dots{z-index:3;gap:7px;display:flex;position:absolute;bottom:26px;right:28px}.hero-dots button{background:#ffffff73;border:0;border-radius:999px;width:8px;height:8px;padding:0;transition:width .2s,background-color .2s}.hero-dots button.active{background:#fff;width:28px}.movie-section,.showtime-section{margin-top:44px}.movie-section .page-header h1{color:#c55c5c;max-width:400px;margin-top:6px}.search-control{position:relative}.search-control svg{width:18px;height:18px;color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.search-control input{padding-left:42px}.public-movie-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;display:grid}.public-movie-card{min-width:0;animation:.4s both cardFloatIn}.movie-card-button{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;gap:8px;padding:0;display:grid}.public-poster,.detail-poster{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-inset);color:var(--primary-color);font-weight:var(--font-weight-display);place-items:center;display:grid;overflow:hidden}.public-poster{aspect-ratio:2/3;box-shadow:var(--box-shadow);border-radius:18px;font-size:34px;transition:transform .24s,box-shadow .24s,border-color .24s}.public-movie-card:hover .public-poster{border-color:color-mix(in srgb, var(--primary-color) 35%, var(--border-color));box-shadow:var(--box-shadow-hover);transform:translateY(-4px)}.public-poster img,.detail-poster img{object-fit:cover;width:100%;height:100%}.public-movie-card h2{color:color-mix(in srgb, var(--primary-color) 72%, #0c4f98);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:19px;line-height:1.25;overflow:hidden}.movie-card-meta{color:var(--text-muted);gap:3px;font-size:14px;display:grid}.movie-card-meta span{align-items:center;gap:4px;display:inline-flex}.movie-card-meta strong{color:var(--text-muted);font-weight:var(--font-weight-medium)}.movie-card-cta{border-radius:var(--border-radius-lg);background:var(--primary-color);width:100%;min-height:43px;color:var(--primary-contrast);font-size:14px;font-weight:var(--font-weight-bold);justify-content:center;align-items:center;gap:10px;margin-top:4px;transition:background-color .2s,transform .2s;display:inline-flex}.movie-card-cta svg{color:#ff8fa3;fill:#ff8fa3;stroke:#d86f86;width:20px;height:20px}.public-movie-card:hover .movie-card-cta{background:var(--primary-hover);transform:translateY(-1px)}.home-hot-movie-grid{gap:34px 24px}.home-hot-movie-grid .movie-card-button{gap:11px}.home-hot-movie-grid .public-poster{width:100%}.home-movie-release{color:var(--text-muted);font-size:14px;font-weight:var(--font-weight-semibold)}.movie-detail-hero{border-bottom:1px solid var(--border-color);grid-template-columns:300px minmax(0,1fr);align-items:stretch;gap:32px;padding:20px 0 36px;display:grid}.detail-poster{min-height:420px}.movie-detail-hero h1{margin:8px 0 14px;font-size:50px;line-height:1}.movie-detail-hero p{color:var(--text-muted)}.detail-meta{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;display:grid}.detail-meta div,.showtime-item{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);padding:14px}.detail-meta dt{color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-bold);text-transform:uppercase}.detail-meta dd{font-weight:var(--font-weight-bold);margin:6px 0 0}.showtime-list{gap:10px;display:grid}.showtime-modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(14px)saturate(120%);background:#050a0e8a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.showtime-modal{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);width:min(900px,100%);max-height:min(720px,100vh - 48px);animation:.22s both showtimeModalIn;overflow:hidden;box-shadow:0 28px 80px #00000057}.showtime-modal-glass{background:var(--showtime-panel);-webkit-backdrop-filter:blur(18px)saturate(115%)}:root:not([data-resolved-theme=dark]) .showtime-modal-glass{--showtime-panel:#fffffff7;--showtime-section:#f9f9fcfa;--showtime-control:#f1f1f6;--showtime-control-hover:#e9eafd;color:#25252d}:root[data-resolved-theme=dark] .showtime-modal-glass{--showtime-panel:#0a0a0cf7;--showtime-section:#0e0e12fa;--showtime-control:#17171d;--showtime-control-hover:#202135;color:#ededf0}:root:not([data-resolved-theme=dark]) .showtime-modal-backdrop{background:#11111661}.showtime-modal-header{border-bottom:1px solid var(--border-color);background:var(--showtime-section);justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 22px;display:flex}.showtime-modal-header h2{margin-top:5px;font-size:22px;line-height:1.25}.showtime-modal-close{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--showtime-control);width:38px;height:38px;color:var(--text-color);cursor:pointer;transition:var(--transition-ui);flex:none;place-items:center;display:grid}.showtime-modal-close:hover{border-color:var(--primary-color);color:var(--primary-color)}.showtime-modal-close svg{width:19px;height:19px}.showtime-modal-body{background:var(--showtime-panel);min-height:390px;max-height:calc(100vh - 150px);padding:22px;overflow-y:auto}.showtime-modal-body>h3{color:var(--text-strong);text-align:center;margin-bottom:18px;font-size:24px}.showtime-date-tabs{border-bottom:1px solid var(--border-color);border-radius:var(--border-radius) var(--border-radius) 0 0;background:var(--showtime-section);scrollbar-width:thin;gap:4px;display:flex;overflow:hidden}.showtime-date-tabs button{min-width:0;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;padding:8px 3px 10px;display:flex;position:relative}.showtime-date-tabs button:after{content:"";background:0 0;height:3px;position:absolute;bottom:-1px;left:0;right:0}.showtime-date-tabs button strong{color:var(--text-strong);font-size:20px;line-height:1}.showtime-date-tabs button span{font-size:9px;font-weight:var(--font-weight-bold);white-space:nowrap;text-transform:uppercase;line-height:1.1}.showtime-date-tabs button:hover,.showtime-date-tabs button.active{background:var(--showtime-control-hover);color:var(--primary-color)}.showtime-date-tabs button.active strong{color:var(--primary-color)}.showtime-date-tabs button.active:after{background:var(--primary-color)}.showtime-modal-list{margin-top:26px}.showtime-modal-list>strong{color:var(--text-strong);text-align:center;text-transform:uppercase;margin-bottom:12px;font-size:15px;display:block}.showtime-time-grid{grid-template-columns:repeat(auto-fit,minmax(145px,180px));justify-content:center;gap:10px;display:grid}.showtime-time-grid button{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--showtime-control);min-height:84px;color:var(--text-color);text-align:left;cursor:pointer;transition:var(--transition-ui), transform .2s ease;align-items:center;gap:10px;padding:11px 13px;display:flex}.showtime-time-grid button:hover{border-color:var(--primary-color);background:var(--showtime-control-hover);transform:translateY(-2px)}.showtime-time-grid button>svg{width:18px;height:18px;color:var(--primary-color);flex:none}.showtime-time-grid button span,.showtime-time-grid button strong,.showtime-time-grid button small{display:block}.showtime-time-grid button strong{color:var(--text-strong);font-size:17px}.showtime-time-grid button small{color:var(--text-muted);margin-top:3px;font-size:11px}.showtime-time-grid button .showtime-seat-count{color:var(--success-color);font-weight:var(--font-weight-semibold)}.showtime-modal-empty{min-height:220px;color:var(--text-muted);text-align:center;align-content:center;place-items:center;gap:8px;display:grid}.showtime-modal-empty svg{width:34px;height:34px;color:var(--primary-color);margin-bottom:4px}.showtime-modal-empty strong{color:var(--text-strong)}.showtime-item{grid-template-columns:180px minmax(0,1fr) 180px;align-items:center;gap:16px;display:grid}@keyframes heroContentIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes cardFloatIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes showtimeModalIn{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=760px){.home-page,.movie-detail-page,.movies-page{padding:16px 16px 40px}.home-hero{min-height:520px;padding:28px 22px}.home-hero h1{font-size:44px}.hero-dots{bottom:18px;right:20px}.public-movie-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.movie-detail-hero,.showtime-item,.detail-meta{grid-template-columns:1fr}.showtime-modal-backdrop{align-items:end;padding:0}.showtime-modal{border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;border-bottom:0;border-left:0;border-right:0;width:100%;max-height:calc(100vh - 24px)}.showtime-modal-header{padding:18px 16px}.showtime-modal-header h2{font-size:19px}.showtime-modal-body{max-height:calc(100vh - 110px);padding:20px 16px 28px}.showtime-modal-body>h3{font-size:20px}.showtime-date-tabs button{padding-inline:2px}.showtime-date-tabs button strong{font-size:18px}.showtime-time-grid{grid-template-columns:repeat(auto-fit,minmax(145px,180px))}}@media (width>=761px) and (width<=1080px){.public-movie-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 18px}}.movie-admin-page{max-width:1360px;margin:0 auto}.search-box{width:min(100%,320px)}.movie-admin-layout{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:24px;display:grid}.movie-form,.movie-list-panel{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);box-shadow:var(--box-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:.35s both fadeSlideIn}.movie-form{gap:14px;padding:22px;display:grid;position:sticky;top:24px}.movie-form h2{font-size:22px}.movie-form textarea{resize:vertical}.movie-hot-toggle{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-inset);cursor:pointer;align-items:flex-start;gap:10px;padding:12px;display:flex}.movie-hot-toggle input{width:18px;height:18px;accent-color:var(--primary-color);margin-top:2px}.movie-hot-toggle span{color:var(--text-muted);gap:2px;font-size:12px;display:grid}.movie-hot-toggle strong{color:var(--text-color);font-size:14px}.form-actions{gap:10px;display:flex}.movie-list-panel{padding:18px}.movie-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.movie-card{border:1px solid var(--border-color);border-radius:var(--border-radius-lg);background:#ffffffe6;grid-template-rows:220px 1fr auto;transition:transform .25s,box-shadow .25s,border-color .25s;display:grid;overflow:hidden;box-shadow:0 10px 28px #0284c714}.movie-card:hover{box-shadow:var(--box-shadow-hover);border-color:#0ea5e96b;transform:translateY(-4px)scale(1.02)}.movie-poster{color:#075985;font-size:38px;font-weight:var(--font-weight-display);background:linear-gradient(135deg,#e0f2fe,#f5f3ff);place-items:center;display:grid;overflow:hidden}.movie-poster img{object-fit:cover;width:100%;height:100%}.movie-card-body{gap:6px;padding:14px;display:grid}.movie-card-body h3{font-size:18px;line-height:1.2}.movie-card-title{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.movie-card-title span{color:#fff;font-size:10px;font-weight:var(--font-weight-bold);background:#dc2626;border-radius:4px;flex:none;padding:3px 6px}.movie-card-body p,.movie-card-body small{color:var(--text-muted)}.movie-card-actions{border-top:1px solid var(--border-color);grid-template-columns:1fr 1fr;display:grid}.movie-card-actions button{border:0;border-right:1px solid var(--border-color);color:var(--text-color);font-weight:var(--font-weight-bold);background:#ffffffdb;padding:12px;transition:background .24s,transform .24s}.movie-card-actions button:hover{background:#eef2ffcc;transform:translateY(-1px)}.movie-card-actions button:last-child{color:var(--danger-color);border-right:0}.empty-state{border:1px dashed var(--border-color);border-radius:var(--border-radius);color:var(--text-muted);text-align:center;font-weight:var(--font-weight-semibold);background:#ffffffb3;grid-column:1/-1;padding:28px}@media (width<=1060px){.movie-admin-layout{grid-template-columns:1fr}.movie-form{position:static}}.user-page{width:100%;max-width:1120px;margin:0 auto;padding:44px 28px 64px}.user-page>.page-header{margin-bottom:24px}.user-page>.page-header h1{margin-top:5px;font-size:38px;line-height:1.08}.user-page>.page-header p{max-width:580px;color:var(--text-muted);margin-top:8px;font-size:14px}.profile-page,.password-page{max-width:900px}.orders-page{max-width:1060px}.payment-card,.profile-form,.ticket-list,.order-list,.order-summary-panel,.order-relation-panel,.order-ticket-section,.payment-history-panel,.payment-attempts,.ticket-booking-summary,.ticket-qr-item,.payment-result{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);box-shadow:var(--box-shadow);-webkit-backdrop-filter:var(--panel-blur);backdrop-filter:var(--panel-blur);transition:var(--transition-ui);animation:.38s both fadeSlideIn}.payment-card,.profile-form,.password-card,.ticket-booking-summary{gap:22px;padding:26px;display:grid}.profile-form{padding:30px}.profile-card-head{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:16px;display:grid}.profile-card-head h2{font-size:25px}.profile-card-head p{color:var(--text-muted);margin-top:4px}.profile-avatar{background:var(--brand-gradient);color:#fff;width:56px;height:56px;font-weight:var(--font-weight-bold);box-shadow:0 14px 34px color-mix(in srgb, var(--primary-color) 18%, transparent);border-radius:50%;place-items:center;display:grid}.profile-field-list,.password-form{gap:18px;display:grid}.profile-field-row{gap:8px;display:grid}.profile-field-row label,.password-form label{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-bold)}.profile-field-control{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.profile-field-control input,.password-form input{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);width:100%;min-height:46px;color:var(--text-color);padding:12px 14px}.profile-field-control input:disabled{color:var(--text-muted);opacity:1}.profile-icon-button{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);width:42px;height:42px;color:var(--text-muted);cursor:pointer;transition:var(--transition-ui);place-items:center;padding:0;display:grid}.profile-icon-button:hover,.profile-icon-button:focus-visible{border-color:color-mix(in srgb, var(--primary-color) 32%, var(--border-color));color:var(--primary-color);box-shadow:var(--focus-ring)}.profile-icon-button svg,.profile-verified-badge svg{width:18px;height:18px}.profile-verified-badge,.profile-unverified-badge{border:1px solid var(--border-color);border-radius:var(--border-radius);min-height:42px;font-size:12px;font-weight:var(--font-weight-bold);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.profile-verified-badge{border-color:color-mix(in srgb, var(--success-color) 32%, transparent);background:color-mix(in srgb, var(--success-color) 10%, var(--surface-strong));color:var(--success-color)}.profile-unverified-badge{color:var(--text-muted)}.profile-actions{border-top:1px solid var(--border-color);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding-top:20px;display:flex}.password-card{border:1px solid var(--border-color);border-radius:var(--border-radius-xl);background:var(--surface-color);width:100%;max-width:none;box-shadow:var(--box-shadow);-webkit-backdrop-filter:var(--panel-blur);backdrop-filter:var(--panel-blur);margin:0}.password-form{grid-template-columns:repeat(2,minmax(0,1fr))}.password-form label:first-child,.password-form .profile-actions{grid-column:1/-1}.password-form .profile-actions{margin-top:2px}.password-steps{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-muted);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.password-steps span{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-bold);text-align:center;padding:11px 12px}.password-steps span.active{background:var(--primary-soft);color:var(--primary-color)}.payment-card dl,.ticket-booking-summary dl,.order-summary-panel dl,.payment-result dl{gap:12px;margin:0;display:grid}.payment-card dl div,.ticket-booking-summary dl div,.order-summary-panel dl div,.payment-result dl div{border-bottom:1px solid var(--border-color);justify-content:space-between;gap:18px;padding-bottom:13px;display:flex}.payment-card dt,.ticket-booking-summary dt,.order-summary-panel dt,.payment-result dt{color:var(--text-muted);font-weight:var(--font-weight-bold)}.payment-card dd,.ticket-booking-summary dd,.order-summary-panel dd,.payment-result dd{min-width:0;color:var(--text-strong);font-weight:var(--font-weight-display);text-align:right;overflow-wrap:anywhere;margin:0}.countdown{border:1px solid color-mix(in srgb, var(--primary-color) 20%, transparent);border-radius:var(--border-radius-lg);background:color-mix(in srgb, var(--primary-soft) 54%, var(--surface-strong));color:var(--primary-color);place-items:center;padding:24px;display:grid;box-shadow:inset 0 1px #ffffff14}.countdown strong{font-size:56px;line-height:1}.countdown.urgent{border-color:color-mix(in srgb, var(--danger-color) 30%, transparent);background:color-mix(in srgb, var(--danger-color) 10%, var(--surface-strong));color:var(--danger-color);animation:1s ease-in-out infinite buttonPulse}.ticket-list{overflow:hidden}.ticket-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(180px,1fr) minmax(220px,1fr) 138px;align-items:center;gap:16px;padding:16px;transition:transform .24s,background-color .24s,box-shadow .24s;display:grid}.ticket-row:hover{background:color-mix(in srgb, var(--primary-soft) 52%, transparent);box-shadow:inset 3px 0 0 var(--primary-color);transform:translate(4px)}.ticket-row:last-child{border-bottom:0}.ticket-row strong{color:var(--text-strong)}.ticket-row>span,.order-row>span,.payment-history-row>span,.admin-commerce-row>span{gap:4px;display:grid}.ticket-row code,.relation-id,.booking-item-row code,.ticket-qr-item code{min-width:0;color:var(--text-muted);overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.status-pill{border:1px solid var(--border-color);background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-display);border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;display:inline-flex}.status-pill.completed,.status-pill.paid,.status-pill.confirmed,.status-pill.issued{border-color:color-mix(in srgb, var(--success-color) 30%, transparent);background:color-mix(in srgb, var(--success-color) 12%, var(--surface-strong));color:var(--success-color)}.status-pill.cancelled,.status-pill.expired,.status-pill.failed{border-color:color-mix(in srgb, var(--danger-color) 30%, transparent);background:color-mix(in srgb, var(--danger-color) 10%, var(--surface-strong));color:var(--danger-color)}.status-pill.held,.status-pill.pending{border-color:color-mix(in srgb, var(--warning-color) 32%, transparent);background:color-mix(in srgb, var(--warning-color) 10%, var(--surface-strong));color:var(--warning-color)}.status-pill.used{color:var(--text-muted)}.payment-page{max-width:1120px}.payment-page>.page-header{text-align:center;justify-content:center}.payment-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}.payment-layout-single{grid-template-columns:minmax(0,760px);justify-content:center}.payment-attempts,.order-summary-panel,.order-relation-panel,.order-ticket-section,.payment-history-panel{padding:22px}.payment-attempts{gap:16px;display:grid}.payment-attempts h2,.order-summary-panel h2,.order-relation-panel h2,.payment-history-panel h2{font-size:22px}.payment-attempt,.payment-history-row{border-top:1px solid var(--border-color);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding-top:14px;display:grid}.payment-attempt>div{gap:4px;display:grid}.payment-attempt small,.payment-history-row small,.order-row small,.ticket-row small{color:var(--text-muted)}.payment-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.payment-expired{border:1px solid color-mix(in srgb, var(--danger-color) 24%, var(--border-color));border-radius:var(--border-radius);background:color-mix(in srgb, var(--danger-color) 7%, var(--surface-strong));gap:8px;padding:18px;display:grid}.payment-expired p,.payment-result p{color:var(--text-muted)}.order-list{border-radius:var(--border-radius-lg);overflow:hidden}.order-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(260px,1fr) minmax(120px,auto) 150px;align-items:center;gap:18px;padding:20px 22px;transition:background-color .2s,box-shadow .2s;display:grid}.order-row:last-child{border-bottom:0}.order-row:hover{background:color-mix(in srgb, var(--primary-soft) 45%, transparent);box-shadow:inset 3px 0 0 var(--primary-color)}.order-row>span:nth-child(2){color:var(--text-strong);font-size:16px;font-weight:var(--font-weight-bold);text-align:right}.order-row>.status-pill{width:100%}.orders-page>.page-header{align-items:end}.orders-page .search-box{width:min(100%,340px)}.orders-page .search-box input{background:var(--surface-color);min-height:46px}.orders-page .empty-state{padding:42px 20px}.order-detail-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:20px;display:grid}.order-summary-panel,.order-relation-panel,.payment-history-panel{gap:20px;display:grid}.order-summary-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.booking-item-list{border-top:1px solid var(--border-color);display:grid}.booking-item-row{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(90px,1fr) auto auto;align-items:center;gap:12px;padding:13px 0;display:grid}.order-showtime-summary{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-muted);gap:5px;padding:14px;display:grid}.order-showtime-summary span,.order-showtime-summary small,.ticket-qr-item small{color:var(--text-muted)}.order-ticket-section{gap:20px;margin-top:20px;padding:22px;scroll-margin-top:96px;display:grid}.order-ticket-section h2{margin-top:5px;font-size:22px}.payment-history-panel{margin-top:20px}.payment-history-row{grid-template-columns:minmax(0,1fr) auto 140px}.ticket-booking-summary{margin-bottom:20px}.ticket-qr-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;display:grid}.ticket-qr-item{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:20px;padding:20px;display:grid}.ticket-qr-item>div{gap:10px;min-width:0;display:grid}.ticket-qr-item h2,.ticket-qr-item h3{font-size:20px}.ticket-qr-item.invalid .qr-card{opacity:.42;filter:grayscale()}.payment-result-page{place-items:center;min-height:calc(100vh - 76px);display:grid}.payment-result{text-align:center;gap:18px;width:min(620px,100%);padding:30px;display:grid}.payment-result h1{font-size:34px}.payment-result-mark{border:1px solid var(--border-color);background:var(--surface-muted);width:64px;height:64px;color:var(--primary-color);font-size:34px;font-weight:var(--font-weight-bold);border-radius:50%;justify-self:center;place-items:center;display:grid}.payment-result.success .payment-result-mark{border-color:color-mix(in srgb, var(--success-color) 34%, transparent);background:color-mix(in srgb, var(--success-color) 11%, var(--surface-strong));color:var(--success-color)}.payment-result.cancelled .payment-result-mark{border-color:color-mix(in srgb, var(--danger-color) 34%, transparent);background:color-mix(in srgb, var(--danger-color) 9%, var(--surface-strong));color:var(--danger-color)}.payment-result dl{text-align:left}.profile-form label,.admin-form label{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-bold);gap:8px;display:grid}.profile-form input,.admin-form input,.admin-form select{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);color:var(--text-color);padding:12px 14px}@media (width<=720px){.ticket-row,.order-row,.order-detail-grid,.payment-layout,.payment-history-row,.booking-item-row,.ticket-qr-item{grid-template-columns:1fr}.user-page{padding:24px 16px 40px}.user-page>.page-header h1{font-size:31px}.payment-card,.profile-form,.password-card,.ticket-booking-summary,.order-summary-panel,.order-relation-panel,.order-ticket-section,.payment-history-panel{padding:18px}.ticket-qr-item .qr-card{justify-self:center}.payment-actions{flex-direction:column;align-items:stretch}.payment-actions>*{width:100%}.profile-field-control{grid-template-columns:minmax(0,1fr)}.password-form{grid-template-columns:1fr}.password-form label:first-child,.password-form .profile-actions{grid-column:auto}.profile-verified-badge,.profile-unverified-badge,.profile-icon-button{justify-self:start}.profile-actions{justify-content:stretch}.profile-actions .primary-button,.profile-actions .ghost-button{flex:1}}.register-page-wrapper{background:linear-gradient(135deg, color-mix(in srgb, var(--primary-soft) 50%, transparent), transparent 58%), var(--bg-color);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.register-page-box{border:1px solid var(--border-color);background:var(--surface-color);-webkit-backdrop-filter:var(--panel-blur);backdrop-filter:var(--panel-blur);border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow);text-align:center;width:100%;max-width:450px;padding:40px;animation:.36s both fadeSlideIn}.register-page-title{margin-bottom:24px;font-size:24px}.register-page-input{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-strong);width:100%;margin-bottom:16px;padding:12px 16px;font-size:16px;transition:border-color .3s,box-shadow .3s,transform .25s}.register-page-input:focus{border-color:var(--primary-color);box-shadow:var(--focus-ring);outline:none;transform:translateY(-1px)}.register-page-btn{background:var(--brand-gradient);color:#fff;border-radius:var(--border-radius);width:100%;font-size:16px;font-weight:var(--font-weight-bold);cursor:pointer;background-size:180% 180%;border:none;justify-content:center;align-items:center;gap:10px;margin-top:10px;padding:12px;transition:transform .25s,box-shadow .25s,filter .25s;display:inline-flex;position:relative;box-shadow:0 12px 26px #0284c733}.register-page-btn:hover:not(:disabled){box-shadow:var(--box-shadow-hover);animation:2.2s infinite gradientShift;transform:translateY(-2px)scale(1.03)}.register-page-btn:disabled{cursor:not-allowed;opacity:.68;animation:1.2s ease-in-out infinite buttonPulse}.register-page-btn:disabled:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.75s linear infinite spin}.register-page-error{border-radius:var(--border-radius);background:color-mix(in srgb, var(--danger-color) 10%, var(--surface-strong));color:var(--danger-color);text-align:left;margin-bottom:16px;padding:12px 14px;font-size:14px;animation:.32s both fadeSlideIn}.register-page-success{border-radius:var(--border-radius);background:color-mix(in srgb, var(--success-color) 11%, var(--surface-strong));color:var(--success-color);font-size:14px;font-weight:var(--font-weight-bold);margin-bottom:16px;padding:12px 14px;animation:.32s both fadeSlideIn}.register-page-link{color:var(--text-color);margin-top:20px;font-size:14px;display:block}.register-page-link a{color:var(--primary-color);font-weight:var(--font-weight-bold);text-decoration:none}.register-page-link a:hover{text-decoration:underline}.theater-schedule-page{width:100%;max-width:1240px;margin:0 auto;padding:36px 24px 64px}.schedule-page-header{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:26px;display:flex}.schedule-page-header h1{margin-top:6px;font-size:40px;line-height:1.08}.schedule-page-header p{color:var(--text-muted);margin-top:9px}.schedule-room-select{width:min(100%,290px);color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-bold);gap:7px;display:grid}.schedule-room-select>div{position:relative}.schedule-room-select svg{z-index:1;width:18px;height:18px;color:var(--primary-color);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.schedule-room-select select{border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--surface-color);width:100%;min-height:46px;color:var(--text-strong);font-weight:var(--font-weight-semibold);padding:0 38px 0 42px}.schedule-date-section{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--surface-color)}.schedule-date-tabs{scrollbar-width:thin;display:flex;overflow-x:auto}.schedule-date-tabs button{min-width:142px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:baseline;gap:3px;padding:18px 16px;display:flex;position:relative}.schedule-date-tabs button:after{content:"";background:0 0;height:3px;position:absolute;bottom:0;left:10px;right:10px}.schedule-date-tabs button strong{color:var(--text-strong);font-size:34px;line-height:1}.schedule-date-tabs button span{font-size:12px;font-weight:var(--font-weight-bold);text-transform:uppercase}.schedule-date-tabs button:hover,.schedule-date-tabs button.active,.schedule-date-tabs button.active strong{color:var(--primary-color)}.schedule-date-tabs button.active:after{background:var(--primary-color)}.schedule-legend{border-top:1px solid var(--border-color);color:var(--text-muted);justify-content:space-between;align-items:center;gap:18px;padding:14px 18px;font-size:13px;display:flex}.schedule-legend span{align-items:center;gap:8px;display:inline-flex}.schedule-legend i{background:color-mix(in srgb, var(--primary-color) 32%, var(--surface-muted));width:22px;height:14px}.schedule-legend svg{width:16px;height:16px;color:var(--primary-color)}.schedule-movie-grid{border-bottom:1px solid var(--border-color);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.schedule-movie{border-bottom:1px solid var(--border-color);grid-template-columns:190px minmax(0,1fr);gap:20px;min-width:0;padding:34px 18px;display:grid}.schedule-movie:nth-child(odd){border-right:1px solid var(--border-color)}.schedule-poster{aspect-ratio:2/3;border-radius:var(--border-radius-lg);background:var(--surface-inset);color:var(--primary-color);box-shadow:var(--box-shadow);place-items:center;display:grid;overflow:hidden}.schedule-poster img{object-fit:cover;width:100%;height:100%}.schedule-poster svg{width:38px;height:38px}.schedule-movie-content{min-width:0}.schedule-movie-content h2{color:var(--primary-color);font-size:21px;line-height:1.35}.schedule-movie-meta{color:var(--text-muted);flex-wrap:wrap;gap:8px 14px;margin-top:7px;font-size:13px;display:flex}.schedule-movie-meta span{align-items:center;gap:6px;display:inline-flex}.schedule-movie-meta svg{width:15px;height:15px;color:var(--primary-color)}.schedule-format{color:var(--text-strong);margin-top:24px;font-size:15px;display:block}.schedule-times{grid-template-columns:repeat(3,minmax(74px,1fr));gap:8px;margin-top:10px;display:grid}.schedule-times button{border:1px solid var(--border-color);background:var(--surface-muted);min-height:64px;color:var(--text-color);cursor:pointer;transition:var(--transition-ui), transform .2s ease;border-radius:2px;align-content:center;place-items:center;gap:4px;padding:7px 5px;display:grid}.schedule-times button:hover{border-color:var(--primary-color);background:var(--primary-soft);transform:translateY(-2px)}.schedule-times button.late{background:color-mix(in srgb, var(--primary-color) 24%, var(--surface-muted))}.schedule-times button strong{color:var(--text-strong);font-size:14px}.schedule-times button small{color:var(--text-muted);font-size:9px;font-weight:var(--font-weight-semibold);white-space:nowrap}.schedule-empty{min-height:330px;color:var(--text-muted);text-align:center;grid-column:1/-1;align-content:center;place-items:center;gap:8px;display:grid}.schedule-empty svg{width:38px;height:38px;color:var(--primary-color);margin-bottom:4px}.schedule-empty strong{color:var(--text-strong);font-size:18px}@media (width<=980px){.schedule-movie-grid{grid-template-columns:1fr}.schedule-movie:nth-child(odd){border-right:0}}@media (width<=680px){.theater-schedule-page{padding:24px 16px 44px}.schedule-page-header{flex-direction:column;align-items:stretch}.schedule-page-header h1{font-size:32px}.schedule-room-select{width:100%}.schedule-date-tabs button{min-width:112px;padding:15px 10px}.schedule-date-tabs button strong{font-size:28px}.schedule-legend{flex-direction:column;align-items:flex-start}.schedule-movie{grid-template-columns:110px minmax(0,1fr);gap:14px;padding:24px 0}.schedule-movie-content h2{font-size:17px}.schedule-format{margin-top:16px}.schedule-times{grid-template-columns:repeat(2,minmax(70px,1fr))}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:Inter, "SF Pro Text", "Segoe UI", sans-serif;--font-display:Inter, "SF Pro Display", "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SFMono-Regular", Consolas, monospace;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-display:700;--primary-color:#5e6ad2;--primary-hover:#4f5bc4;--primary-soft:#5e6ad21c;--primary-contrast:#fff;--accent-color:#5e6ad2;--accent-soft:#5e6ad21a;--brand-gradient:linear-gradient(135deg, #5e6ad2, #7c65d6);--warm-gradient:linear-gradient(135deg, #5e6ad2, #8b5cf6);--bg-color:#f7f7fa;--bg-elevated:#fff;--bg-muted:#f0f0f5;--surface-color:#fff;--surface-strong:#fff;--surface-muted:#f5f5f8;--surface-inset:#f0f0f4;--text-color:#25252d;--text-strong:#111116;--text-muted:#696b76;--border-color:#11111617;--border-strong:#11111629;--danger-color:#d84747;--success-color:#168568;--warning-color:#b87014;--seat-available:#e4e8eb;--seat-available-text:#44505c;--seat-selected:#5e6ad2;--seat-held:#d2912f;--seat-sold:#d84747;--border-radius:8px;--border-radius-lg:12px;--border-radius-xl:16px;--box-shadow:0 0 0 1px #11111606, 0 2px 8px #1111160a, 0 16px 38px #1111160f;--box-shadow-hover:0 0 0 1px #5e6ad21f, 0 8px 24px #11111614, 0 24px 60px #5e6ad21c;--focus-ring:0 0 0 3px #5e6ad240;--panel-blur:blur(20px);--transition-ui:color .24s cubic-bezier(.16,1,.3,1), background-color .24s cubic-bezier(.16,1,.3,1), border-color .24s cubic-bezier(.16,1,.3,1), box-shadow .24s cubic-bezier(.16,1,.3,1), transform .24s cubic-bezier(.16,1,.3,1)}:root[data-theme=dark],body.dark-theme{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-sans:Inter, "SF Pro Text", "Segoe UI", sans-serif;--font-display:Inter, "SF Pro Display", "Segoe UI", sans-serif;--primary-color:#5e6ad2;--primary-hover:#6872d9;--primary-soft:#5e6ad224;--primary-contrast:#fff;--accent-color:#6872d9;--accent-soft:#5e6ad224;--brand-gradient:linear-gradient(135deg, #5e6ad2, #6872d9);--warm-gradient:linear-gradient(135deg, #5e6ad2, #8b5cf6);--bg-color:#050506;--bg-elevated:#0a0a0c;--bg-muted:#0a0a0c;--surface-color:#ffffff0d;--surface-strong:#0f0f12;--surface-muted:#ffffff09;--surface-inset:#08080a;--text-color:#ededf0;--text-strong:#ededf0;--text-muted:#8a8f98;--border-color:#ffffff12;--border-strong:#ffffff1f;--danger-color:#ff7b7c;--success-color:#5bd2aa;--warning-color:#efb45c;--seat-available:#2a343d;--seat-available-text:#d7dee4;--seat-selected:#54c5ce;--seat-held:#d89a40;--seat-sold:#e65d5e;--border-radius:8px;--border-radius-lg:12px;--border-radius-xl:16px;--box-shadow:0 0 0 1px #ffffff0a, 0 2px 20px #0006, 0 0 40px #0003;--box-shadow-hover:0 0 0 1px #ffffff1a, 0 8px 40px #00000080, 0 0 80px #5e6ad21a;--focus-ring:0 0 0 3px #5e6ad27a;--panel-blur:blur(20px);--transition-ui:color .24s cubic-bezier(.16,1,.3,1), background-color .24s cubic-bezier(.16,1,.3,1), border-color .24s cubic-bezier(.16,1,.3,1), box-shadow .24s cubic-bezier(.16,1,.3,1), transform .24s cubic-bezier(.16,1,.3,1)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{background:var(--bg-color);min-height:100%;color:var(--text-color);font-family:var(--font-sans);font-synthesis:none;font-feature-settings:"cv02", "cv03", "cv04", "cv11";scroll-behavior:smooth;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;min-height:100vh;color:var(--text-color);background:var(--bg-color);font-family:var(--font-sans);text-rendering:optimizelegibility;transition:var(--transition-ui);margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text-strong);font-family:var(--font-display);letter-spacing:0}p{line-height:1.65}::selection{background:color-mix(in srgb, var(--primary-color) 22%, transparent);color:var(--text-strong)}.page-header{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px;animation:.42s both fadeSlideIn;display:flex}.page-header h1{color:var(--text-strong);font-size:38px;line-height:1.05;font-weight:var(--font-weight-display);margin-top:8px}.page-header p{max-width:720px;color:var(--text-muted);margin-top:14px}.page-kicker{color:var(--accent-color);font-size:12px;font-weight:var(--font-weight-bold);letter-spacing:0;text-transform:uppercase}.primary-button,.ghost-button{border-radius:var(--border-radius);min-height:46px;color:inherit;font-weight:var(--font-weight-bold);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:0 18px;transition:transform .26s,box-shadow .26s,border-color .26s,background .26s,color .26s,filter .26s;display:inline-flex;position:relative}.primary-button{background:var(--primary-color);color:#fff;box-shadow:0 8px 20px color-mix(in srgb, var(--primary-color) 20%, transparent)}.primary-button:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 12px 28px color-mix(in srgb, var(--primary-color) 24%, transparent);transform:translateY(-1px)}.ghost-button{border-color:var(--border-color);background:var(--surface-color);color:var(--text-color);box-shadow:none}.ghost-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary-color) 44%, var(--border-color));color:var(--primary-color);box-shadow:var(--box-shadow);transform:translateY(-1px)}.primary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.64}#root{min-height:100vh}.primary-button:disabled:after,.ghost-button:disabled:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.75s linear infinite spin}.success-banner{border:1px solid color-mix(in srgb, var(--success-color) 32%, transparent);border-radius:var(--border-radius);background:color-mix(in srgb, var(--success-color) 11%, var(--surface-strong));color:var(--success-color);font-weight:var(--font-weight-bold);box-shadow:0 14px 34px color-mix(in srgb, var(--success-color) 12%, transparent);margin-bottom:18px;padding:14px 16px;animation:.35s both fadeSlideIn}input,textarea,select{color:var(--text-color);caret-color:var(--primary-color);outline:0;transition:border-color .28s,box-shadow .28s,transform .24s,background-color .28s,color .28s}input:focus,textarea:focus,select:focus{border-color:var(--primary-color);box-shadow:var(--focus-ring)}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes buttonPulse{0%,to{filter:brightness()}50%{filter:brightness(1.06)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@media (width<=820px){.page-header{flex-direction:column;align-items:stretch}.page-header h1{font-size:32px}}:root{--section-space:clamp(72px, 9vw, 128px)}body:before{z-index:0;opacity:.35;content:"";pointer-events:none;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#00000006 3px 4px),url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E");position:fixed;inset:0}#root{z-index:1;position:relative}:root:not([data-resolved-theme=dark]) body{background-color:#0000;background-image:radial-gradient(at 50% -15%,#5e6ad221,#0000 40%),radial-gradient(at 0 48%,#8b5cf60e,#0000 32%),linear-gradient(#fff 0%,#f7f7fa 46%,#f2f2f7 100%);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}:root:not([data-resolved-theme=dark]) body:before{opacity:.65;background-image:linear-gradient(#11111606 1px,#0000 1px),linear-gradient(90deg,#11111606 1px,#0000 1px),url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");background-size:64px 64px,64px 64px,180px 180px}:root:not([data-resolved-theme=dark]) :where(.public-layout,.app-shell){background:0 0}:root:not([data-resolved-theme=dark]) .page-kicker{color:#5e6ad2;font-family:var(--font-mono);letter-spacing:.12em}:root:not([data-resolved-theme=dark]) .public-header{-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%);background:#ffffffc7;border-color:#11111614;box-shadow:inset 0 -1px #ffffffa6}:root:not([data-resolved-theme=dark]) :where(.public-account-menu,.auth-card,.login-card,.register-card,.profile-card,.order-card,.admin-card,.management-card,.state,.error-state){box-shadow:var(--box-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#fffffff5,#fafafde6);border-color:#11111614}:root:not([data-resolved-theme=dark]) .home-hero{background:#111116;border:1px solid #1111161a;box-shadow:0 0 0 1px #ffffffa6,0 28px 70px #1111162e,0 0 90px #5e6ad21a}:root:not([data-resolved-theme=dark]) .home-hero:before{z-index:1;content:"";pointer-events:none;background:radial-gradient(500px at 72% 28%,#5e6ad247,#0000 58%);position:absolute;inset:0}:root:not([data-resolved-theme=dark]) .home-hero h1{letter-spacing:-.035em}:root:not([data-resolved-theme=dark]) .home-hero .page-kicker{color:#aeb4ff}:root:not([data-resolved-theme=dark]) .movie-section .page-header h1,:root:not([data-resolved-theme=dark]) .public-movie-card h2{color:#111116}:root:not([data-resolved-theme=dark]) .public-poster{box-shadow:var(--box-shadow);border-color:#11111617}:root:not([data-resolved-theme=dark]) .public-movie-card:hover .public-poster{box-shadow:var(--box-shadow-hover);border-color:#5e6ad259;transform:translateY(-6px)scale(1.01)}:root:not([data-resolved-theme=dark]) :where(.primary-button,.movie-card-cta,.auth-submit,.login-button,.register-button){color:#fff;letter-spacing:normal;text-transform:none;background:#5e6ad2;border:1px solid #5e6ad27a;box-shadow:0 0 0 1px #ffffff2e,0 5px 15px #5e6ad23d,inset 0 1px #ffffff3d}:root:not([data-resolved-theme=dark]) :where(.primary-button,.movie-card-cta,.auth-submit,.login-button,.register-button):hover:not(:disabled){color:#fff;background:#4f5bc4;border-color:#4f5bc499;transform:translateY(-2px);box-shadow:0 7px 22px #5e6ad252,inset 0 1px #ffffff42}:root:not([data-resolved-theme=dark]) :where(input,textarea,select){background:#ffffffe0}:root:not([data-resolved-theme=dark]) :where(button,a,input,textarea,select):focus-visible{outline-offset:3px;outline:2px solid #5e6ad2cc}:root:not([data-resolved-theme=dark]) .public-footer{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:radial-gradient(circle at 8% 10%,#5e6ad21a,#0000 28%),linear-gradient(#fffffff0,#f7f7faeb);border-color:#11111614;overflow:hidden;box-shadow:inset 0 1px #ffffffe6}:root:not([data-resolved-theme=dark]) .public-footer-content{gap:clamp(32px,5vw,64px);padding-top:56px;padding-bottom:46px}:root:not([data-resolved-theme=dark]) .public-footer .public-brand{border-radius:var(--border-radius);width:fit-content}:root:not([data-resolved-theme=dark]) .public-footer .app-brand-mark{background:#fff;border-color:#5e6ad22e;box-shadow:0 6px 18px #5e6ad21f}:root:not([data-resolved-theme=dark]) .public-footer a,:root:not([data-resolved-theme=dark]) .public-footer span{color:#696b76}:root:not([data-resolved-theme=dark]) .public-footer .public-brand strong,:root:not([data-resolved-theme=dark]) .public-footer-links>strong,:root:not([data-resolved-theme=dark]) .public-footer-contact>strong{color:#111116}:root:not([data-resolved-theme=dark]) .public-footer .public-brand small{color:#5e6ad2}:root:not([data-resolved-theme=dark]) .public-footer-brand p{color:#696b76;max-width:360px;line-height:1.7}:root:not([data-resolved-theme=dark]) .public-footer-links>strong,:root:not([data-resolved-theme=dark]) .public-footer-contact>strong{letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:13px}:root:not([data-resolved-theme=dark]) .public-footer-links a,:root:not([data-resolved-theme=dark]) .public-footer-contact>a{min-height:32px;transition:var(--transition-ui);border-radius:6px;margin-left:-7px;padding:4px 7px}:root:not([data-resolved-theme=dark]) .public-footer-links a:hover,:root:not([data-resolved-theme=dark]) .public-footer-contact>a:hover{color:#4f5bc4;background:#5e6ad217;transform:translate(3px)}:root:not([data-resolved-theme=dark]) .public-footer-links a:hover svg,:root:not([data-resolved-theme=dark]) .public-footer-contact>a:hover svg{color:#5e6ad2}:root:not([data-resolved-theme=dark]) .public-footer-socials a{color:#25252d;background:#ffffffd1;border-color:#11111617;box-shadow:0 4px 12px #1111160d}:root:not([data-resolved-theme=dark]) .public-footer-socials a:hover{color:#5e6ad2;background:#5e6ad21a;border-color:#5e6ad24d;box-shadow:0 7px 18px #5e6ad221}:root:not([data-resolved-theme=dark]) .public-footer-bottom{color:#767883;background:#ffffff61;border-color:#11111614}:root:not([data-resolved-theme=dark]) .public-footer-bottom span:last-child{color:#5e6ad2;font-weight:var(--font-weight-medium)}:root[data-resolved-theme=dark] body{background-color:#0000;background-image:radial-gradient(at 50% -10%,#5e6ad238,#0000 42%),radial-gradient(at 4% 45%,#8b5cf61a,#0000 34%),radial-gradient(at 96% 62%,#3b55b41c,#0000 32%),linear-gradient(#0a0a0f 0%,#050506 48%,#020203 100%);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box}:root[data-resolved-theme=dark] body:before{opacity:.55;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px),url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");background-size:64px 64px,64px 64px,180px 180px}:root[data-resolved-theme=dark] :where(.public-layout,.app-shell){background:0 0}:root[data-resolved-theme=dark] .public-header{-webkit-backdrop-filter:blur(24px)saturate(130%);backdrop-filter:blur(24px)saturate(130%);background:#050506b8;border-color:#ffffff0f;box-shadow:inset 0 -1px #ffffff06}:root[data-resolved-theme=dark] :where(.public-account-menu,.auth-card,.login-card,.register-card,.profile-card,.order-card,.admin-card,.management-card,.state,.error-state){box-shadow:var(--box-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#ffffff13,#ffffff06);border-color:#ffffff12}:root[data-resolved-theme=dark] .public-account-menu{-webkit-backdrop-filter:blur(18px);background:linear-gradient(#121215f5,#0a0a0ce6)}:root[data-resolved-theme=dark] .home-hero{background:#0a0a0c;border-color:#ffffff17;box-shadow:0 0 0 1px #ffffff0a,0 28px 80px #00000080,0 0 100px #5e6ad21f}:root[data-resolved-theme=dark] .home-hero:before{z-index:1;content:"";pointer-events:none;background:radial-gradient(500px at 72% 28%,#5e6ad240,#0000 58%);position:absolute;inset:0}:root[data-resolved-theme=dark] .home-hero h1,:root[data-resolved-theme=dark] .page-header h1{color:#0000;letter-spacing:-.035em;background:linear-gradient(#fff,#ededefb8);-webkit-background-clip:text;background-clip:text}:root[data-resolved-theme=dark] .movie-section .page-header h1,:root[data-resolved-theme=dark] .public-movie-card h2{color:#ededf0}:root[data-resolved-theme=dark] .page-kicker{color:#8b94ed;font-family:var(--font-mono);letter-spacing:.12em}:root[data-resolved-theme=dark] .public-poster{box-shadow:var(--box-shadow);border-color:#ffffff12}:root[data-resolved-theme=dark] .public-movie-card:hover .public-poster{box-shadow:var(--box-shadow-hover);border-color:#5e6ad26b;transform:translateY(-6px)scale(1.01)}:root[data-resolved-theme=dark] :where(.primary-button,.movie-card-cta){box-shadow:0 0 0 1px #5e6ad280,0 4px 14px #5e6ad252,inset 0 1px #fff3}:root[data-resolved-theme=dark] :where(input,textarea,select){background:#0f0f12}:root[data-resolved-theme=dark] :where(button,a,input,textarea,select):focus-visible{outline-offset:3px;outline:2px solid #6872d9d9}:root[data-resolved-theme=dark] .public-footer{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#020203c7}:root:not([data-resolved-theme=dark]){--footer-bg:radial-gradient(circle at 8% 10%, #5e6ad21a, transparent 28%), linear-gradient(180deg, #fffffff0, #f7f7faeb);--footer-surface:#ffffffd1;--footer-bottom:#ffffff61;--footer-text:#696b76;--footer-heading:#111116;--footer-border:#11111614;--footer-shadow:0 4px 12px #1111160d}:root[data-resolved-theme=dark]{--footer-bg:radial-gradient(circle at 8% 10%, #5e6ad224, transparent 30%), linear-gradient(180deg, #0a0a0cf0, #020203f5);--footer-surface:#ffffff0b;--footer-bottom:#ffffff05;--footer-text:#8a8f98;--footer-heading:#ededf0;--footer-border:#ffffff12;--footer-shadow:0 6px 18px #00000038}:root .public-footer{border-color:var(--footer-border);background:var(--footer-bg);box-shadow:inset 0 1px color-mix(in srgb, var(--footer-heading) 5%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow:hidden}:root .public-footer-content{gap:clamp(32px,5vw,64px);padding-top:56px;padding-bottom:46px}:root .public-footer .public-brand{border-radius:var(--border-radius);width:fit-content}:root .public-footer .app-brand-mark{border-color:color-mix(in srgb, var(--primary-color) 20%, var(--footer-border));background:var(--footer-surface);box-shadow:var(--footer-shadow)}:root .public-footer a,:root .public-footer span,:root .public-footer p{color:var(--footer-text)}:root .public-footer .public-brand strong,:root .public-footer-links>strong,:root .public-footer-contact>strong{color:var(--footer-heading)}:root .public-footer .public-brand small{color:var(--primary-color)}:root .public-footer-links>strong,:root .public-footer-contact>strong{letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:13px}:root .public-footer-links a,:root .public-footer-contact>a{min-height:32px;transition:var(--transition-ui);border-radius:6px;margin-left:-7px;padding:4px 7px}:root .public-footer-links a:hover,:root .public-footer-contact>a:hover{background:var(--primary-soft);color:var(--primary-color);transform:translate(3px)}:root .public-footer-links a:hover svg,:root .public-footer-contact>a:hover svg{color:var(--primary-color)}:root .public-footer-socials a{border-color:var(--footer-border);background:var(--footer-surface);color:var(--footer-heading);box-shadow:var(--footer-shadow)}:root .public-footer-socials a:hover{border-color:color-mix(in srgb, var(--primary-color) 32%, var(--footer-border));background:var(--primary-soft);color:var(--primary-color);box-shadow:0 7px 18px color-mix(in srgb, var(--primary-color) 14%, transparent)}:root .public-footer-bottom{border-color:var(--footer-border);background:var(--footer-bottom);color:var(--footer-text)}:root .public-footer-bottom span:last-child{color:var(--primary-color);font-weight:var(--font-weight-medium)}@media (prefers-reduced-motion:no-preference){:root:not([data-resolved-theme=dark]) .home-hero:before,:root[data-resolved-theme=dark] .home-hero:before{animation:9s ease-in-out infinite ambientDrift}}@keyframes ambientDrift{0%,to{opacity:.75;transform:translate(0,0)scale(1)}50%{opacity:1;transform:translate(-2%,2%)scale(1.06)}}@media (width<=720px){:root:not([data-resolved-theme=dark]) .home-hero{padding:28px 22px}:root .public-footer-content{gap:28px;padding:38px 16px 30px}:root .public-footer-bottom{gap:7px;padding:17px 16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
