@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-B2xhLi22.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-CMZtQduZ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-CGAr0uHJ.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CaVNZxsx.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D_Q6m-an.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-OnFqUBEL.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-5PZORFv8.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:var(--text-body);background:var(--canvas);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:var(--canvas);min-width:320px;margin:0}button,input,select,textarea{font:inherit}#root{min-height:100vh}:root{--display-font:"Space Grotesk Variable", Inter, ui-sans-serif, system-ui, sans-serif;--body-font:"Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif}:root,[data-theme=light]{--canvas:#f6f8fb;--canvas-raised:#edf2f7;--surface-1:#fff;--surface-2:#eef3f8;--surface-3:#e4ebf3;--text-primary:#0e1b35;--text-body:#24344d;--text-secondary:#42526a;--text-muted:#64748b;--border:#d3dce8;--border-strong:#9eadc0;--accent:#0b64dd;--accent-deep:#094dab;--accent-hover:#0755bd;--accent-soft:#0b64dd;--accent-pale:#dbeafe;--focus-ring:#0b64dd38;--brand-tint:#0b64dd1f;--brand-tint-strong:#0b64dd33;--brand-border:#0b64dd8c;--brand-border-soft:#0b64dd59;--brand-glow:#0b64dd3d;--brand-shadow:#0b64dd2e;--overlay:#0e1b3585;--shadow:0 18px 50px #0e1b3524;--nav-bg:#f6f8fbf5;--success-bg:#e6f6ed;--success-text:#166534;--warning-bg:#fff4d6;--warning-text:#92400e;--danger-bg:#fde9e7;--danger-text:#b42318;--information-bg:#e7f1ff;--information-text:#0755bd;--qr-paper:#fff;--qr-ink:#101820;--bg:var(--canvas);--deep:var(--canvas-raised);--surface-low:var(--surface-1);--surface:var(--surface-2);--surface-high:var(--surface-3);--surface-highest:#d9e3ef;--body:var(--text-body);--secondary:var(--text-secondary);--muted:var(--text-muted);--text:var(--text-primary)}[data-theme=dark]{--canvas:#08101f;--canvas-raised:#0b1728;--surface-1:#0e1b2d;--surface-2:#14243a;--surface-3:#1c304b;--text-primary:#f7faff;--text-body:#e5edf7;--text-secondary:#c7d1de;--text-muted:#8e9bad;--border:#2a3d57;--border-strong:#526882;--accent:#3b82f6;--accent-deep:#2563c7;--accent-hover:#60a5fa;--accent-soft:#60a5fa;--accent-pale:#bfdbfe;--focus-ring:#60a5fa47;--brand-tint:#3b82f624;--brand-tint-strong:#3b82f63d;--brand-border:#60a5fa9e;--brand-border-soft:#60a5fa66;--brand-glow:#3b82f64d;--brand-shadow:#00000047;--overlay:#000000b8;--shadow:0 20px 60px #00000061;--nav-bg:#08101ff5;--success-bg:#123a2a;--success-text:#b8f0ce;--warning-bg:#493514;--warning-text:#f8d48a;--danger-bg:#491c24;--danger-text:#ffc4c0;--information-bg:#102e5e;--information-text:#a8caff;--qr-paper:#fff;--qr-ink:#101820;--bg:var(--canvas);--deep:var(--canvas-raised);--surface-low:var(--surface-1);--surface:var(--surface-2);--surface-high:var(--surface-3);--surface-highest:#24405f;--body:var(--text-body);--secondary:var(--text-secondary);--muted:var(--text-muted);--text:var(--text-primary)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);min-width:320px;color:var(--body);font-family:var(--body-font);margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.theme-control{align-items:center;min-width:104px;display:inline-flex}.theme-control select{border:1px solid var(--border);background:var(--surface-2);width:100%;min-height:36px;color:var(--text-body);border-radius:8px;padding:7px 9px;font-size:.72rem}.theme-control-compact{min-width:88px}.theme-control-compact select{min-height:36px;padding:7px 8px}.theme-switch{border:1px solid var(--border);background:var(--surface-2);min-height:36px;color:var(--text-body);border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:7px 11px;font-size:.72rem;font-weight:700;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.theme-switch:hover{border-color:var(--accent);background:var(--surface-3);color:var(--accent)}.theme-switch>span:first-child{background:var(--brand-tint);width:17px;height:17px;color:var(--accent);border-radius:50%;place-items:center;font-size:.8rem;display:grid}.theme-switch-compact{min-height:32px;padding:6px 9px;font-size:.65rem}.admin-login-theme{position:absolute;top:24px;right:24px}.admin-sidebar-footer .theme-switch{justify-content:flex-start;width:100%}.admin-mobile-header .theme-switch{margin-left:auto}.admin-login-page{position:relative}h1,h2,h3,.page-title,.brand{font-family:var(--display-font)}a{color:inherit}.app-shell{background:var(--bg);min-height:100vh}.topbar{z-index:20;border-bottom:1px solid var(--border);background:var(--nav-bg);height:72px;transition:transform .22s,height .22s,box-shadow .22s;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:28px;width:min(1280px,100% - 64px);height:100%;margin:auto;display:flex}.topbar-compact{background:var(--deep);height:56px;box-shadow:0 4px 20px #00000080}.topbar-hidden{transform:translateY(-100%)}.brand{color:var(--accent-soft);letter-spacing:-.05em;white-space:nowrap;align-items:center;gap:9px;font-size:1.5rem;font-weight:800;text-decoration:none;display:inline-flex}.brand>span:last-child>span{color:var(--text)}.brand-mark{background:var(--accent);width:32px;height:32px;color:var(--text);border-radius:9px;place-items:center;font-size:.8rem;display:grid;transform:rotate(-12deg)}.desktop-nav{align-items:center;gap:7px;margin-right:auto;display:flex}.desktop-nav a,.ghost{color:var(--muted);background:0 0;border:0;border-radius:10px;padding:10px 13px;font-size:.9rem;text-decoration:none}.desktop-nav a:hover,.desktop-nav a.active,.ghost:hover{color:var(--text);background:var(--surface-high)}.desktop-nav a.active{color:var(--accent-soft);box-shadow:inset 0 -2px var(--accent)}.account-menu .ghost{color:var(--accent-soft);transition:color .2s,background .2s}.account-menu .ghost:hover:not(:disabled){color:var(--danger-text);background:#93000a33}.topbar-actions{align-items:center;gap:10px;display:flex}.location-pill,.search-button{border:1px solid var(--border);background:var(--surface);min-height:38px;color:var(--secondary);border-radius:10px;align-items:center;gap:7px;padding:8px 12px;font-size:.78rem;text-decoration:none;display:inline-flex}.location-pill:hover,.search-button:hover{border-color:var(--accent);color:var(--accent-soft)}.location-pill{cursor:pointer}.location-chevron{border-bottom:1.5px solid;border-right:1.5px solid;flex:0 0 7px;width:7px;height:7px;margin:-4px 1px 0;transform:rotate(45deg)}.search-button{justify-content:center;width:40px;font-size:1.35rem}.location-picker-backdrop,.trailer-modal-backdrop{z-index:60;background:#000000c7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.location-picker,.trailer-modal{border:1px solid var(--border);background:var(--surface);border-radius:20px;width:min(520px,100%);max-height:min(720px,100vh - 40px);padding:28px;position:relative;overflow:hidden;box-shadow:0 30px 80px #000}.location-picker{flex-direction:column;height:min(720px,100vh - 40px);min-height:0;display:flex}.location-picker h2,.trailer-modal h2{color:var(--text);letter-spacing:-.04em;margin:0;font-size:1.55rem}.location-picker-copy{color:var(--muted);margin:8px 0 18px;font-size:.8rem;line-height:1.5}.location-search{align-items:center;margin-bottom:14px;display:flex;position:relative}.location-search>span:not(.sr-only){color:var(--muted);font-size:1.1rem;position:absolute;left:13px}.location-search input{width:100%;padding-left:36px}.province-list{scrollbar-width:thin;scrollbar-color:var(--accent) var(--surface);grid-auto-rows:max-content;align-content:start;gap:6px;max-height:360px;padding-right:3px;display:grid;overflow:hidden auto}.province-list::-webkit-scrollbar{width:6px}.province-list::-webkit-scrollbar-thumb{background:var(--accent);border-radius:999px}.province-option{background:var(--surface-low);width:100%;color:var(--body);text-align:left;border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;transition:border-color .2s,background .2s;display:flex}.province-option:hover{border-color:var(--accent);background:var(--surface-high)}.province-option.active{border-color:var(--brand-border);background:var(--brand-tint)}.province-option span{gap:4px;min-width:0;display:grid}.province-option strong{color:var(--body);font-size:.78rem}.province-option small{color:var(--muted);font-size:.65rem}.province-option.active strong,.province-option b{color:var(--accent-soft)}.location-picker-footer,.trailer-modal-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:16px;font-size:.68rem;display:flex}.location-picker .province-list{flex:auto;min-height:0}.location-picker-footer{flex:none}.location-picker-footer strong{color:var(--accent-soft)}.trailer-modal{width:min(860px,100%)}.trailer-modal-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px;display:flex}.trailer-frame{aspect-ratio:16/9;border:1px solid var(--border);background:var(--deep);border-radius:12px;overflow:hidden}.trailer-frame iframe{border:0;width:100%;height:100%;display:block}.cinema-page-location{color:var(--muted);align-items:center;gap:10px;margin-top:18px;font-size:.7rem;display:flex}.cinema-page-location .location-pill{display:inline-flex}.admin-address small{color:var(--accent-soft);margin-top:5px;font-size:.68rem;display:block}.account-menu{color:var(--secondary);align-items:center;gap:8px;font-size:.8rem;display:flex}.account-avatar{background:var(--accent);width:32px;height:32px;color:var(--text);border-radius:50%;place-items:center;font-weight:800;display:grid}main{min-height:60vh}main>*{width:min(1216px,100% - 64px);margin-left:auto;margin-right:auto}.primary,.secondary,.danger{border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 17px;font-weight:750;text-decoration:none;transition:transform .2s,opacity .2s,border-color .2s,background .2s;display:inline-flex}.primary{border:1px solid var(--accent);background:linear-gradient(135deg, var(--accent), var(--accent-deep));color:var(--text);box-shadow:0 10px 25px -5px var(--brand-shadow)}.primary:hover{background:var(--accent-hover)}.secondary{border:1px solid var(--border);background:var(--surface-high);color:var(--body)}.secondary:hover{border-color:var(--accent);color:var(--accent-soft)}.danger{background:var(--danger-bg);color:var(--danger-text);border:0}button:disabled{cursor:not-allowed;opacity:.45}button:not(:disabled):active,a.primary:active{transform:translateY(1px)}.eyebrow{color:var(--accent-soft);letter-spacing:.2em;margin:0 0 10px;font-size:.68rem;font-weight:800}h1,h2,h3,p{margin-top:0}h2{letter-spacing:-.04em}.page-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.page-title{color:var(--text);letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,3.1rem);line-height:1.05}.breadcrumb{width:min(1216px,100% - 64px);color:var(--muted);flex-wrap:wrap;align-items:center;gap:9px;margin:0 auto 24px;padding-top:28px;font-size:.75rem;display:flex}.breadcrumb a{color:var(--accent-soft);text-decoration:none}.breadcrumb strong{color:var(--body);font-weight:600}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}input,select,textarea{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--body);border-radius:10px;outline:0;padding:11px 13px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}input::placeholder,textarea::placeholder{color:var(--muted)}textarea{resize:vertical;min-height:110px;line-height:1.55}.spotlight-hero{background-color:var(--deep);border-bottom:1px solid var(--border);background-position:50%;background-size:cover;width:100%;min-height:620px;position:relative}.spotlight-shade,.detail-hero-shade{background:linear-gradient(90deg, #0f0e0dfa 0%, #0f0e0dcc 42%, #0f0e0d40 100%), linear-gradient(0deg, var(--bg) 0%, transparent 55%);position:absolute;inset:0}.spotlight-content{align-items:end;width:min(1216px,100% - 64px);min-height:620px;margin:auto;padding:0 0 82px;display:flex;position:relative}.spotlight-copy{max-width:690px}.spotlight-copy h1{color:var(--text);letter-spacing:-.06em;margin:12px 0 16px;font-size:clamp(2.5rem,5vw,4rem);line-height:1}.spotlight-copy>p:not(.eyebrow){max-width:610px;color:var(--secondary);line-height:1.65}.hero-badges,.metadata-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.age-badge,.format-badge,.rating-badge,.metadata-row span{letter-spacing:.04em;border-radius:6px;align-items:center;gap:4px;padding:5px 9px;font-size:.65rem;font-weight:800;display:inline-flex}.age-badge{background:var(--danger-bg);color:var(--danger-text)}.format-badge{border:1px solid var(--brand-border-soft);background:color-mix(in srgb, var(--canvas) 82%, transparent);color:var(--accent-pale)}.rating-badge{border:1px solid var(--border);color:var(--accent-soft);background:#0f0e0de6}.rating-badge small{color:var(--muted);font-weight:500}.hero-duration{color:var(--secondary);font-size:.8rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.hero-pager{gap:8px;display:flex;position:absolute;bottom:54px;right:0}.hero-pager span{background:var(--surface-highest);border-radius:5px;width:10px;height:5px}.hero-pager span.active{background:var(--accent);width:34px}.quick-booking{z-index:2;border:1px solid var(--border);background:var(--surface-low);border-radius:24px;margin-top:-42px;padding:24px;position:relative;box-shadow:0 20px 45px #00000073}.quick-booking-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;padding-bottom:17px;display:flex}.quick-booking-heading>div{align-items:center;gap:10px;display:flex}.quick-booking-heading h2{color:var(--accent-soft);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1rem}.quick-booking-heading small{color:var(--muted)}.quick-dot{background:var(--accent);border-radius:50%;width:10px;height:10px}.quick-booking-grid{grid-template-columns:repeat(4,1fr) auto;align-items:end;gap:12px;display:grid}.quick-step{color:var(--secondary);gap:7px;font-size:.75rem;display:grid}.quick-step>span{align-items:center;gap:7px;display:flex}.quick-step b{background:var(--surface-highest);width:18px;height:18px;color:var(--accent-soft);border-radius:50%;place-items:center;font-size:.65rem;display:grid}.quick-booking-submit{white-space:nowrap;min-height:46px}.catalog-section,.promotion-section,.showtimes-section{padding:64px 0 0}.catalog-section{position:relative}.section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px;padding-bottom:22px;display:flex}.catalog-section>.filter-tabs{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;margin:0;padding:6px;position:absolute;top:64px;right:0}.section-heading h2{color:var(--text);margin:0;font-size:clamp(1.7rem,3vw,2.3rem)}.section-heading p:not(.eyebrow){color:var(--muted);margin:8px 0 0}.section-heading>a{color:var(--accent-soft);font-size:.85rem;text-decoration:none}.search-form{gap:8px;display:flex}.search-form input{width:230px}.filter-tabs,.city-chips,.date-strip,.format-filters{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.filter-tabs{margin-bottom:24px}.filter-chip,.date-chip{border:1px solid var(--border);background:var(--surface);color:var(--secondary);white-space:nowrap;border-radius:999px;flex:none;padding:9px 14px}.filter-chip:hover,.date-chip:hover{border-color:var(--accent)}.filter-chip.active,.date-chip.active{border-color:var(--accent);background:var(--accent);color:var(--text)}.movie-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid}.movie-card{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;transition:transform .2s,border-color .2s;overflow:hidden}.movie-card:hover{border-color:var(--accent);background:var(--surface)}.movie-poster-shell{aspect-ratio:2/3;background:var(--surface-high);text-decoration:none;display:block;position:relative;overflow:hidden}.poster-image,.ticket-poster-image{background-color:var(--surface-high);height:100%;color:var(--accent-soft);background-position:50%;background-size:cover;place-items:center;font-size:4rem;font-weight:800;display:grid}.poster-overlay{color:var(--text);opacity:0;background:#0f0e0db3;place-items:center;font-size:2rem;transition:opacity .2s;display:grid;position:absolute;inset:0}.movie-poster-shell:hover .poster-overlay{opacity:1}.movie-badges{gap:5px;display:flex;position:absolute;top:12px;left:12px}.poster-rating{position:absolute;top:12px;right:12px}.movie-info{flex-direction:column;gap:9px;padding:15px;display:flex}.movie-info h3{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.02rem;overflow:hidden}.movie-info h3:hover{color:var(--accent-soft)}.movie-info a{text-decoration:none}.movie-info>p{color:var(--muted);margin:0;font-size:.78rem}.movie-info>p span{color:var(--border-strong)}.movie-showtimes{flex-wrap:wrap;gap:5px;min-height:27px;display:flex}.movie-showtimes a,.showtime-placeholder{border:1px solid var(--border);background:var(--surface);color:var(--accent-pale);border-radius:6px;padding:5px 7px;font-size:.67rem;text-decoration:none}.movie-showtimes a:hover{border-color:var(--accent)}.showtime-placeholder{color:var(--muted)}.movie-buy{border:1px solid var(--border);color:var(--accent-soft);border-radius:9px;justify-content:space-between;padding:9px 11px;font-size:.8rem;font-weight:700;display:flex}.movie-buy:hover{border-color:var(--accent);background:var(--accent);color:var(--text)}.promotion-section{padding-top:48px;padding-bottom:80px}.promotion-grid{grid-template-columns:2fr 1fr;gap:24px;display:grid}.promotion-card{border:1px solid var(--border);background:var(--surface-low);border-radius:20px;min-height:324px;padding:28px;position:relative;overflow:hidden}.promotion-card h3{max-width:430px;color:var(--text);letter-spacing:-.04em;margin:16px 0 10px;font-size:1.7rem}.promotion-card p{max-width:540px;color:var(--secondary);line-height:1.6}.promotion-tag{border:1px solid var(--brand-border-soft);color:var(--accent-soft);letter-spacing:.05em;border-radius:999px;padding:6px 10px;font-size:.63rem;font-weight:800;display:inline-block}.promotion-price{color:var(--brand-tint-strong);font-size:7rem;line-height:1;position:absolute;bottom:8px;right:30px}.promotion-total{color:var(--accent-soft);margin-top:30px;font-size:1.2rem;display:block}.cinemas-page,.records-page,.ticket-detail-page,.booking-flow-page,.checkout-page{padding-bottom:80px}.cinemas-hero{padding-top:18px}.cinemas-hero>p{max-width:650px;color:var(--secondary);line-height:1.65}.network-count,.ticket-count,.session-badge,.hold-badge{border:1px solid var(--border);color:var(--accent-soft);border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.75rem;display:inline-flex}.cinema-search{max-width:560px;margin-top:20px;display:block}.cinema-search input{width:100%}.city-chips{margin:30px 0 24px}.cinema-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.cinema-card{border:1px solid var(--border);background:var(--surface-low);border-radius:18px;transition:transform .2s,border-color .2s;overflow:hidden}.cinema-card:hover{border-color:var(--accent);background:var(--surface)}.cinema-card-art{background:linear-gradient(145deg, var(--accent-deep), var(--deep) 78%);justify-content:space-between;align-items:end;min-height:170px;padding:18px;display:flex}.cinema-art-1{background:linear-gradient(145deg, var(--brand-deep), var(--deep) 78%)}.cinema-art-2{background:linear-gradient(145deg, var(--accent-hover), var(--deep) 78%)}.cinema-art-letter{color:var(--brand-border);font-size:5rem;font-weight:800}.cinema-card-art>div{flex-wrap:wrap;justify-content:end;gap:5px;display:flex}.format-chip{border:1px solid var(--brand-border-soft);color:var(--accent-pale);border-radius:4px;padding:5px 7px;font-size:.6rem}.cinema-card-body{padding:20px}.cinema-card-heading{justify-content:space-between;gap:12px;display:flex}.cinema-card-heading h2{color:var(--text);margin:0;font-size:1.3rem}.cinema-card-heading .eyebrow{margin-bottom:6px}.cinema-address{min-height:42px;color:var(--secondary);margin:15px 0}.cinema-meta{color:var(--muted);flex-wrap:wrap;gap:8px 16px;font-size:.8rem;display:flex}.price-list{border-top:1px solid var(--border);gap:9px;margin:18px 0;padding-top:16px;display:grid}.price-list div{color:var(--muted);justify-content:space-between;font-size:.8rem;display:flex}.price-list strong{color:var(--accent-soft)}.cinema-actions{gap:9px;display:flex}.cinema-actions>*{text-align:center;flex:1}.movie-detail-hero{background-color:var(--deep);background-position:50%;background-size:cover;width:100%;min-height:660px;position:relative}.movie-detail-grid{z-index:1;grid-template-columns:340px 1fr;gap:52px;width:min(1216px,100% - 64px);margin:auto;padding:50px 0 70px;display:grid;position:relative}.detail-poster-wrap{aspect-ratio:2/3;border:1px solid var(--border);background:var(--surface);border-radius:16px;position:relative;overflow:hidden;box-shadow:0 25px 50px #0009}.detail-poster-wrap .poster-image{position:absolute;inset:0}.detail-poster-wrap .movie-badges{z-index:1;flex-direction:column}.detail-poster-wrap .poster-rating{z-index:1}.poster-meta{color:var(--muted);justify-content:space-between;gap:12px;padding:12px 2px;font-size:.72rem;display:flex}.poster-meta button{color:var(--accent-soft);background:0 0;border:0}.detail-copy{align-self:center}.detail-copy h1{color:var(--text);margin:12px 0 4px}.metadata-row span{border:1px solid var(--border);background:var(--surface);color:var(--accent-pale)}.original-title{color:var(--muted);margin-bottom:22px}.detail-meta-grid{border:1px solid var(--border);background:#1d1b1ad6;border-radius:14px;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0;padding:16px;display:grid}.detail-meta-grid div{gap:5px;display:grid}.detail-meta-grid small{color:var(--muted);font-size:.68rem}.detail-meta-grid strong{color:var(--body);font-size:.78rem}.detail-description{max-width:760px;color:var(--secondary);line-height:1.7}.detail-cast{background:#1d1b1ac7;border:1px solid #504537cc;border-radius:12px;gap:8px;max-width:760px;margin:18px 0;padding:13px;font-size:.78rem;display:grid}.detail-cast div{gap:16px;display:flex}.detail-cast span{width:76px;color:var(--muted);flex:none}.detail-cast strong{color:var(--body);font-weight:600}.date-strip{margin-bottom:22px}.date-chip{text-align:center;border-radius:12px;gap:4px;min-width:105px;display:grid}.date-chip small{color:var(--muted);text-transform:uppercase;font-size:.63rem}.date-chip strong{color:var(--text);font-size:1.15rem}.date-chip span{color:var(--secondary);font-size:.7rem}.date-chip.active small,.date-chip.active strong,.date-chip.active span{color:var(--text)}.showtime-toolbar{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:22px;padding:15px;font-size:.72rem;font-weight:800;display:flex}.showtime-toolbar select{min-height:38px}.format-filters{margin-left:auto}.showtime-days{gap:18px;display:grid}.showtime-day{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;padding:22px}.showtime-day-heading{border-bottom:1px solid var(--border);justify-content:space-between;gap:15px;padding-bottom:18px;display:flex}.showtime-day-heading h3{color:var(--text);margin:0 0 5px}.showtime-day-heading p{color:var(--muted);margin:0;font-size:.78rem}.showtime-day-heading a{color:var(--accent-soft);font-size:.75rem;text-decoration:none}.showtime-list{flex-wrap:wrap;gap:10px;padding-top:18px;display:flex}.showtime-card{border:1px solid var(--border);background:var(--surface);border-radius:11px;gap:5px;min-width:130px;padding:13px;text-decoration:none;display:grid}.showtime-card:hover{border-color:var(--accent);background:var(--surface-high)}.showtime-card strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.1rem}.showtime-card span{color:var(--muted);font-size:.7rem}.showtime-card small{background:var(--surface-highest);width:fit-content;color:var(--accent-soft);border-radius:4px;padding:4px 6px;font-size:.62rem}.booking-flow-page,.checkout-page{width:min(1216px,100% - 64px)}.hold-badge{background:var(--surface);margin-left:auto}.showtime-meta-bar{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;align-items:center;gap:32px;padding:18px;display:flex}.showtime-meta-movie{flex:1;align-items:center;gap:13px;display:flex}.showtime-meta-movie h1{color:var(--text);margin:5px 0 0;font-size:1.2rem}.mini-poster{border:1px solid var(--border);width:48px;height:68px;color:var(--accent-soft);background-position:50%;background-size:cover;border-radius:8px;flex:none;place-items:center;font-weight:800;display:grid}.showtime-meta-item{border-left:1px solid var(--border);gap:4px;min-width:190px;padding-left:24px;display:grid}.showtime-meta-item small,.record-total small,.ticket-card-stub small{color:var(--muted);letter-spacing:.08em;font-size:.62rem}.showtime-meta-item strong{color:var(--text);font-size:.85rem}.showtime-meta-item span{color:var(--accent-soft);font-size:.75rem}.seat-workspace{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:22px;margin-top:22px;display:grid}.seat-map-panel,.seat-summary-panel,.checkout-card,.countdown-card{border:1px solid var(--border);background:var(--surface-low);border-radius:16px}.seat-map-panel{padding:24px}.panel-heading,.summary-heading,.card-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel-heading h2,.card-title h2{color:var(--text);margin:0;font-size:1.25rem}.zoom-control{border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:8px 10px;font-size:.75rem}.screen-curve{border-top:4px solid var(--accent);width:78%;height:32px;box-shadow:0 -12px 35px var(--brand-glow);text-align:center;border-radius:50% 50% 0 0;margin:60px auto 0;position:relative}.screen-curve span{border:1px solid var(--accent);background:var(--surface-low);color:var(--accent-pale);letter-spacing:.12em;border-radius:999px;padding:4px 12px;font-size:.62rem;position:relative;top:-15px}.screen-note{color:var(--muted);text-align:center;margin:7px 0 34px;font-size:.7rem}.seat-map-scroll{padding-bottom:10px;overflow-x:auto}.seat-map{gap:11px;min-width:560px;display:grid}.seat-row{justify-content:center;align-items:center;gap:10px;display:flex}.seat-row-items{gap:7px;display:flex}.seat-row-items>span:nth-child(7){margin-left:21px}.row-label{width:20px;color:var(--accent-soft);text-align:center;font-size:.75rem;font-weight:800}.seat{border:1px solid var(--border);background:var(--surface);width:31px;height:31px;color:var(--secondary);border-radius:8px;place-items:center;padding:0;font-size:.68rem;display:grid}.seat:hover:not(:disabled){border-color:var(--accent)}.seat.vip{border-color:var(--brand-border-soft);color:var(--accent-soft)}.seat.couple{border-color:var(--warning-text);background:var(--warning-bg);color:var(--warning-text)}.seat.chosen{border-color:var(--accent-soft);background:var(--accent);color:var(--text);box-shadow:0 0 14px var(--brand-border)}.seat.held{border-color:color-mix(in srgb, var(--warning-text) 60%, transparent);background:var(--warning-bg);color:var(--warning-text)}.seat.sold{background:var(--surface-high);color:var(--muted);opacity:.45}.seat-legend{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;gap:13px 22px;margin-top:22px;padding-top:18px;font-size:.7rem;display:flex}.seat-legend span{align-items:center;gap:6px;display:inline-flex}.seat-dot{border:1px solid var(--border);background:var(--surface);border-radius:5px;width:16px;height:16px;display:inline-block}.seat-dot.vip{border-color:var(--accent-soft)}.seat-dot.chosen{background:var(--accent)}.seat-dot.held{background:var(--warning-bg)}.seat-dot.sold{background:var(--surface-high);opacity:.45}.seat-summary-panel{padding:22px;position:sticky;top:88px}.summary-heading{border-bottom:1px solid var(--border);padding-bottom:15px}.summary-heading span{color:var(--accent-soft);font-size:.8rem}.summary-movie{border-bottom:1px solid var(--border);gap:12px;padding:16px 0;display:flex}.summary-movie strong,.summary-movie span{display:block}.summary-movie strong{color:var(--text);font-size:.87rem}.summary-movie span{color:var(--muted);margin-top:4px;font-size:.72rem}.selected-seat-list{gap:9px;padding:16px 0;display:grid}.summary-line{color:var(--muted);justify-content:space-between;font-size:.78rem;display:flex}.summary-line strong{color:var(--accent-soft)}.selected-seat{border:1px solid var(--border);background:var(--surface);border-radius:9px;align-items:center;gap:9px;padding:9px;display:flex}.selected-seat div{flex:1}.selected-seat strong,.selected-seat small{display:block}.selected-seat strong{color:var(--body);font-size:.75rem}.selected-seat small{color:var(--muted);font-size:.65rem}.selected-seat>b{color:var(--text);font-size:.73rem}.seat-token{background:var(--accent);width:35px;height:31px;color:var(--text);border-radius:7px;place-items:center;font-size:.68rem;font-weight:800;display:grid}.summary-total,.price-breakdown .grand-total{border-top:1px solid var(--border);color:var(--secondary);justify-content:space-between;align-items:baseline;padding:16px 0;display:flex}.summary-total strong,.grand-total strong{color:var(--accent-soft);font-size:1.4rem}.summary-cta,.pay-button{width:100%}.security-note{color:var(--muted);text-align:center;margin:15px 0 0;font-size:.68rem;line-height:1.6}.checkout-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.checkout-grid{grid-template-columns:minmax(0,7fr) minmax(330px,5fr);align-items:start;gap:22px;display:grid}.checkout-main,.checkout-side{gap:18px;display:grid}.checkout-side{position:sticky;top:88px}.checkout-card,.countdown-card{padding:22px}.booking-movie-card{grid-template-columns:110px 1fr;gap:18px;display:grid}.booking-movie-cover{height:165px;position:relative}.booking-movie-cover .mini-poster{width:100%;height:100%}.booking-movie-cover .age-badge{position:absolute;top:8px;left:8px}.booking-movie-card h2{color:var(--text);margin:8px 0}.booking-movie-card p:not(.eyebrow){color:var(--muted);font-size:.8rem}.booking-venue{border:1px solid var(--border);background:var(--surface);border-radius:10px;gap:7px;margin-top:25px;padding:13px;display:grid}.booking-venue strong{color:var(--body);font-size:.8rem}.booking-venue span{color:var(--accent-soft);font-size:.75rem}.card-title{border-bottom:1px solid var(--border);padding-bottom:14px}.card-title a{color:var(--accent-soft);font-size:.73rem;text-decoration:none}.card-title small{color:var(--muted);font-size:.62rem}.booking-seat-list{gap:9px;padding:16px 0;display:grid}.checkout-item{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-items:center;gap:10px;padding:11px;display:flex}.checkout-item div{flex:1}.checkout-item strong,.checkout-item small{display:block}.checkout-item strong{color:var(--body);font-size:.8rem}.checkout-item small{color:var(--muted);font-size:.68rem}.checkout-item>b{color:var(--text);font-size:.78rem}.promo-row{border-top:1px solid var(--border);gap:8px;padding-top:15px;display:flex}.promo-row input{flex:1}.price-breakdown{color:var(--muted);gap:10px;padding-top:16px;font-size:.78rem;display:grid}.price-breakdown>div{justify-content:space-between;display:flex}.price-breakdown strong{color:var(--body)}.success-text{color:var(--success-text)!important}.countdown-card{border-color:#7c3aed99}.countdown-card>div:first-child{color:var(--body);justify-content:space-between;gap:10px;font-size:.8rem;font-weight:700;display:flex}.countdown-card>div strong{color:var(--accent-soft);font-variant-numeric:tabular-nums;font-size:1.25rem}.countdown-card p{color:var(--muted);margin:12px 0 0;font-size:.72rem}.progress{background:var(--surface-highest);border-radius:99px;height:7px;margin-top:15px;overflow:hidden}.progress i{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-soft));height:100%;display:block}.payment-options{gap:9px;padding:16px 0;display:grid}.payment-option{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--body);text-align:left;border-radius:10px;grid-template-columns:36px 1fr 20px;align-items:center;gap:10px;padding:11px;display:grid}.payment-option.active{border-color:var(--accent)}.payment-option>span:nth-child(2){gap:4px;display:grid}.payment-option strong{font-size:.78rem}.payment-option small{color:var(--muted);font-size:.65rem}.payment-option i{color:var(--accent-soft);font-style:normal}.cancel-link{width:100%;color:var(--muted);background:0 0;border:0;margin-top:12px;font-size:.75rem;text-decoration:underline}.records-heading{border-bottom:1px solid var(--border);padding-bottom:24px}.records-heading>p{max-width:750px;color:var(--secondary);margin:12px 0 0;line-height:1.6}.record-toolbar{justify-content:space-between;align-items:center;gap:14px;padding:22px 0;display:flex}.record-toolbar .filter-tabs{margin:0}.record-toolbar input{width:280px}.record-list,.ticket-list{gap:16px;display:grid}.booking-record,.ticket-card{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;justify-content:space-between;gap:24px;padding:22px;text-decoration:none;transition:transform .2s,border-color .2s;display:flex}.booking-record:hover,.ticket-card:hover{border-color:var(--accent);background:var(--surface)}.record-main,.ticket-card-info{align-items:center;gap:16px;min-width:0;display:flex}.ticket-poster-image{background-color:var(--surface-high);border-radius:10px;flex:none;width:85px;height:126px}.record-copy{min-width:0}.record-status{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.68rem;display:flex}.record-status strong{color:var(--body)}.record-copy h2,.ticket-card h2{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:9px 0 5px;font-size:1.15rem;overflow:hidden}.record-copy p,.ticket-card p{color:var(--muted);margin:0;font-size:.78rem}.record-details{color:var(--secondary);flex-wrap:wrap;gap:12px;margin-top:12px;font-size:.72rem;display:flex}.record-total{flex-direction:column;align-items:end;gap:7px;min-width:185px;display:flex}.record-total strong{color:var(--text);font-size:1.2rem}.record-action{color:var(--accent-soft);margin-top:8px;font-size:.73rem}.status{white-space:nowrap;border-radius:999px;width:fit-content;padding:6px 9px;font-size:.65rem;font-weight:800;display:inline-flex}.status.confirmed,.status.succeeded,.status.active{background:var(--success-bg);color:var(--success-text)}.status.pending,.status.held{background:var(--warning-bg);color:var(--warning-text)}.status.cancelled,.status.expired,.status.failed,.status.used{background:var(--danger-bg);color:var(--danger-text)}.ticket-card{padding:0;overflow:hidden}.ticket-card-info{flex:1;padding:22px}.ticket-card-stub{border-left:1px dashed var(--border-strong);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:8px;width:220px;padding:20px;display:flex}.ticket-card-stub strong{color:var(--accent-soft);font-family:ui-monospace,monospace;font-size:.75rem}.ticket-card-stub>span{color:var(--accent-soft);font-size:.72rem}.qr-code{background:var(--text);border-radius:8px;grid-template-columns:repeat(9,1fr);gap:2px;width:116px;height:116px;padding:8px;display:grid}.qr-code i{background:0 0}.qr-code i.filled{background:#141312}.ticket-detail-layout{grid-template-columns:360px 1fr;align-items:start;gap:32px;padding-bottom:70px;display:grid}.ticket-stub-large{border:1px dashed var(--border-strong);background:var(--surface-low);border-radius:18px;flex-direction:column;align-items:center;gap:15px;padding:34px;display:flex;position:relative}.ticket-stub-top{text-align:center;gap:12px;width:100%;display:grid}.ticket-code{color:var(--accent-soft);letter-spacing:-.07em;overflow-wrap:anywhere;font-size:clamp(2.2rem,6vw,4rem);font-weight:800}.ticket-qr-label{color:var(--muted);font-family:ui-monospace,monospace;font-size:.63rem}.ticket-stub-movie{border-top:1px dashed var(--border);width:100%;color:var(--body);align-items:center;gap:10px;padding-top:15px;font-size:.78rem;display:flex}.ticket-information{padding:22px 0}.ticket-intro{color:var(--secondary)}.ticket-information dl{margin:25px 0}.ticket-information dl div{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:15px 0;display:flex}.ticket-information dt{color:var(--muted)}.ticket-information dd{color:var(--body);text-align:right;margin:0}.ticket-checkin{width:fit-content}.state-card{border:1px dashed var(--border);min-height:130px;color:var(--muted);text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:13px;margin:22px 0;padding:25px;display:flex}.state-icon{border:1px solid var(--accent);width:34px;height:34px;color:var(--accent-soft);border-radius:10px;place-items:center;display:inline-grid}.loading-state{color:var(--secondary)}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:17px;height:17px;animation:.8s linear infinite spin}.error-state{color:var(--danger-text);background:#93000a29;justify-content:space-between}.error-state>div{align-items:center;gap:10px;display:flex}.empty-state{flex-direction:column}.alert{border-radius:10px;justify-content:space-between;gap:12px;padding:14px;display:flex}.alert.success{background:var(--success-bg);color:var(--success-text)}.alert.error{background:var(--danger-bg);color:var(--danger-text)}.form-error{color:var(--danger-text);font-size:.78rem}.form-hint{color:var(--muted);grid-column:1/-1;margin:-2px 0 0;font-size:.72rem;line-height:1.5}.success-panel,.warning-panel{border-radius:11px;margin-top:16px;padding:16px}.success-panel{background:var(--success-bg);color:var(--success-text)}.success-panel p{margin:8px 0 12px}.warning-panel{background:var(--danger-bg);color:var(--danger-text)}.site-footer{border-top:1px solid var(--border);background:var(--deep);width:100%;min-height:428px;padding:54px max(32px,50% - 608px) 28px}.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:34px;display:grid}.footer-grid>div{flex-direction:column;gap:10px;display:flex}.footer-brand p{max-width:330px;color:var(--muted);font-size:.8rem;line-height:1.6}.footer-brand strong{color:var(--accent-soft);font-size:.8rem}.footer-grid h3{color:var(--text);margin:0 0 6px;font-size:.9rem}.footer-grid a,.footer-link{color:var(--muted);font-size:.78rem;text-decoration:none}.footer-grid a:hover{color:var(--accent-soft)}.partner-list{flex-wrap:wrap;gap:6px;display:flex}.partner-list span{border:1px solid var(--border);color:var(--muted);border-radius:5px;padding:6px 8px;font-size:.65rem}.footer-bottom{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:20px;margin-top:35px;padding-top:20px;font-size:.68rem;display:flex}.mobile-nav{display:none}.modal-backdrop{z-index:50;background:#000000c7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.auth-modal{border:1px solid var(--border);background:var(--surface);border-radius:20px;gap:14px;width:min(430px,100%);padding:34px;display:grid;position:relative;box-shadow:0 30px 80px #000}.auth-mark{background:var(--accent);width:42px;height:42px;color:var(--text);border-radius:12px;place-items:center;display:grid}.auth-modal h2{color:var(--text);margin:0;font-size:1.8rem}.auth-copy{color:var(--muted);margin:-5px 0 6px;font-size:.82rem;line-height:1.5}.auth-modal label{color:var(--secondary);gap:7px;font-size:.78rem;display:grid}.auth-modal input{width:100%}.modal-close{color:var(--muted);background:0 0;border:0;font-size:1.5rem;position:absolute;top:13px;right:14px}.link-button{color:var(--accent-soft);background:0 0;border:0;font-size:.78rem}.auth-page-shell{place-items:center;min-height:calc(100vh - 72px);padding:48px 16px;display:grid}.auth-result{border:1px solid var(--border);background:var(--surface-1);width:min(520px,100%);box-shadow:var(--shadow);text-align:center;border-radius:16px;padding:40px}.auth-result-icon{background:var(--brand-tint);width:56px;height:56px;color:var(--accent);font-family:var(--display-font);border-radius:12px;place-items:center;margin:18px auto;font-size:1.8rem;font-weight:700;display:grid}.auth-result-icon.success{background:var(--success-bg);color:var(--success-text)}.auth-result-icon.error{background:var(--danger-bg);color:var(--danger-text)}.auth-result h1{color:var(--text);margin:0;font-size:clamp(1.8rem,4vw,2.7rem)}.auth-result p:not(.eyebrow){color:var(--muted);line-height:1.6}.auth-result-link{margin-top:12px;text-decoration:none;display:inline-flex}.admin-page{width:min(1216px,100% - 64px);margin:0 auto;padding:42px 0 80px}.admin-page>.page-heading{margin-bottom:14px}.admin-page>.page-heading .primary{white-space:nowrap}.admin-lead{max-width:700px;color:var(--secondary);margin:0 0 30px;line-height:1.6}.admin-nav{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-bottom:38px;padding-bottom:13px;display:flex}.admin-nav a{color:var(--muted);border:1px solid #0000;border-radius:10px;padding:9px 12px;font-size:.76rem;font-weight:700;text-decoration:none;transition:color .2s,border-color .2s,background .2s}.admin-nav a:hover,.admin-nav a:focus-visible{border-color:var(--accent);background:var(--surface-high);color:var(--accent-soft)}.admin-toolbar{border:1px solid var(--border);background:var(--surface-low);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;margin:24px 0;padding:14px;display:flex}.admin-toolbar input{flex:260px;min-width:190px}.admin-toolbar select{min-width:170px}.admin-checkbox{color:var(--secondary);align-items:center;gap:8px;font-size:.76rem;display:inline-flex}.admin-checkbox input{width:16px;min-width:16px;height:16px;accent-color:var(--accent)}.admin-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px;display:grid}.admin-stat-card{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;gap:12px;min-height:180px;padding:22px;text-decoration:none;transition:transform .2s,border-color .2s;display:grid}.admin-stat-card:hover{border-color:var(--accent);transform:translateY(-3px)}.admin-stat-card strong{color:var(--text);letter-spacing:-.06em;font-size:3rem}.admin-stat-card>span:last-child{color:var(--accent-soft);margin-top:auto;font-size:.76rem}.admin-stat-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:700}.admin-table-wrap{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:780px;font-size:.78rem}.admin-table th{border-bottom:1px solid var(--border);color:var(--muted);letter-spacing:.08em;text-align:left;text-transform:uppercase;padding:14px 16px;font-size:.65rem;font-weight:800}.admin-table td{color:var(--secondary);vertical-align:middle;border-bottom:1px solid #504537a6;padding:16px}.admin-table tr:last-child td{border-bottom:0}.admin-table td:first-child{min-width:230px;color:var(--body)}.admin-table td strong,.admin-table td small{display:block}.admin-table td strong{color:var(--text);font-weight:700}.admin-table td small{max-width:300px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:.68rem;overflow:hidden}.admin-actions,.admin-card-footer,.form-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.compact-button{border-radius:8px;min-height:34px;padding:8px 10px;font-size:.7rem}.admin-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-entity-card{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;grid-template-columns:100px 1fr;transition:transform .2s,border-color .2s;display:grid;overflow:hidden}.admin-entity-card:hover{border-color:var(--accent);transform:translateY(-2px)}.admin-card-mark{background:linear-gradient(145deg, var(--brand-deep), var(--deep) 78%);min-height:220px;color:var(--brand-border);place-items:center;font-size:4rem;font-weight:800;display:grid}.admin-card-mark-1{background:linear-gradient(145deg, var(--accent-hover), var(--deep) 78%)}.admin-card-mark-2{background:linear-gradient(145deg, var(--accent-deep), var(--deep) 78%)}.admin-entity-content{flex-direction:column;min-width:0;padding:20px;display:flex}.admin-card-heading,.admin-panel-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.admin-card-heading h2,.admin-panel-heading h2{color:var(--text);letter-spacing:-.03em;margin:0;font-size:1.2rem}.admin-card-heading .eyebrow,.admin-panel-heading .eyebrow{margin-bottom:7px}.admin-count{border:1px solid var(--border);color:var(--accent-soft);border-radius:999px;flex:none;padding:6px 8px;font-size:.65rem}.admin-address{min-height:45px;color:var(--secondary);margin:18px 0;font-size:.8rem;line-height:1.55}.admin-card-footer{margin-top:auto}.admin-card-footer>*{text-align:center;flex:1}.admin-card-footer .primary{flex:1.5}.admin-breadcrumb{color:var(--muted);align-items:center;gap:9px;margin-bottom:20px;font-size:.72rem;display:flex}.admin-breadcrumb a{color:var(--accent-soft);text-decoration:none}.admin-breadcrumb strong{color:var(--body);font-weight:600}.admin-room-list{gap:12px;display:grid}.admin-room-row{border:1px solid var(--border);background:var(--surface-low);border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:20px;transition:border-color .2s,transform .2s;display:flex}.admin-room-row:hover{border-color:var(--accent);transform:translateY(-2px)}.admin-room-row h2{color:var(--text);margin:0 0 7px;font-size:1.05rem}.admin-room-row>div:first-child>span{color:var(--muted);font-size:.72rem}.admin-seat-layout{grid-template-columns:minmax(0,330px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.admin-seat-layout>*,.admin-panel{min-width:0}.admin-panel{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;padding:20px}.admin-seat-layout>.admin-panel:first-child{position:sticky;top:24px}.admin-panel-heading{border-bottom:1px solid var(--border);margin-bottom:18px;padding-bottom:14px}.admin-panel-heading>span{color:var(--muted);text-align:right;font-size:.68rem}.admin-seat-layout>.admin-panel:first-child>.secondary{width:100%;margin-top:16px}.admin-seat-layout>.admin-panel:first-child .admin-form-grid{gap:10px}.admin-seat-layout>.admin-panel:first-child .admin-form-grid .admin-field:last-child{grid-column:1/-1}.admin-seat-actions{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;gap:14px;margin-top:18px;padding:20px;display:grid}.admin-seat-actions-heading{justify-content:space-between;align-items:start;gap:18px;display:flex}.admin-seat-actions-heading h2{color:var(--text);letter-spacing:-.03em;margin:0;font-size:1.1rem}.admin-seat-actions-heading p:not(.eyebrow){max-width:520px;color:var(--muted);margin:7px 0 0;font-size:.72rem;line-height:1.5}.admin-seat-legend{border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--muted);flex-wrap:wrap;gap:8px 16px;padding:12px 0;font-size:.68rem;display:flex}.admin-seat-legend span{align-items:center;gap:7px;display:inline-flex}.admin-seat-dot{border:1px solid var(--border);background:var(--surface);border-radius:3px;width:9px;height:9px}.admin-seat-dot-vip{border-color:var(--accent-soft);background:var(--brand-tint-strong)}.admin-seat-dot-couple{border-color:var(--warning-text);background:var(--warning-bg)}.admin-seat-delete-list{background:0 0;border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:0;padding:0;display:grid}.admin-seat-action-row{background:var(--surface);border:1px solid #504537bf;border-radius:10px;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:8px;min-width:0;padding:8px;display:grid}.admin-seat-action-row:hover{border-color:var(--accent);background:var(--surface-high)}.admin-seat-token{background:var(--surface-high);width:32px;height:32px;color:var(--body);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;font-size:.66rem;font-weight:800;display:grid}.admin-seat-token-vip{background:var(--brand-tint-strong);color:var(--accent-pale)}.admin-seat-token-couple{background:var(--warning-bg);color:var(--warning-text)}.admin-seat-action-copy{gap:3px;min-width:0;display:grid}.admin-seat-action-copy strong{color:var(--body);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.admin-seat-action-copy small{color:var(--muted);font-size:.6rem}.admin-seat-managed{color:var(--muted);white-space:nowrap;font-size:.62rem}.admin-seat-action-row .compact-button{min-height:30px;padding:6px 8px}.admin-seat-map{scrollbar-color:var(--accent) var(--surface);scrollbar-width:thin;gap:10px;max-height:560px;padding:12px 4px 14px 0;display:grid;overflow:auto}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.admin-field{min-width:0;color:var(--secondary);align-content:start;gap:7px;font-size:.75rem;display:grid}.admin-field-wide{grid-column:1/-1}.admin-field input,.admin-field select,.admin-field textarea{width:100%}.admin-field>span:first-child{color:var(--secondary);letter-spacing:.02em;font-size:.72rem;font-weight:700}.textarea-shell{gap:7px;display:grid;position:relative}.textarea-shell textarea{min-height:128px;padding-bottom:30px}.textarea-shell small{color:var(--muted);font-variant-numeric:tabular-nums;pointer-events:none;font-size:.62rem;position:absolute;bottom:10px;right:12px}.number-field{border:1px solid var(--border);background:var(--surface);border-radius:10px;grid-template-columns:38px minmax(0,1fr) 38px;min-height:44px;transition:border-color .2s,box-shadow .2s;display:grid;overflow:hidden}.number-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.number-field button{background:var(--surface-high);color:var(--accent-soft);border:0;place-items:center;font-size:1.15rem;font-weight:700;transition:background .2s,color .2s;display:grid}.number-field button:hover:not(:disabled){background:var(--brand-tint-strong);color:var(--text)}.number-field button:disabled{cursor:not-allowed;opacity:.35}.number-field input{border:0;border-right:1px solid var(--border);border-left:1px solid var(--border);width:100%;min-width:0;min-height:42px;color:var(--text);text-align:center;font-variant-numeric:tabular-nums;box-shadow:none;background:0 0;border-radius:0;padding:8px 4px;font-weight:750}.number-field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-field input{-moz-appearance:textfield}.admin-form{gap:16px;display:grid}.admin-form .form-actions{justify-content:end;padding-top:4px}.admin-modal{border:1px solid var(--border);background:var(--surface);scrollbar-color:var(--accent) var(--surface-low);scrollbar-width:thin;border-radius:20px;width:min(620px,100%);max-height:calc(100vh - 40px);padding:30px;position:relative;overflow:auto;box-shadow:0 30px 80px #000}.admin-modal::-webkit-scrollbar{width:8px;height:8px}.tmdb-results::-webkit-scrollbar{width:8px;height:8px}.admin-seat-map::-webkit-scrollbar{width:8px;height:8px}.admin-modal::-webkit-scrollbar-track{background:var(--surface-low);border-radius:999px}.tmdb-results::-webkit-scrollbar-track{background:var(--surface-low);border-radius:999px}.admin-seat-map::-webkit-scrollbar-track{background:var(--surface-low);border-radius:999px}.admin-modal::-webkit-scrollbar-thumb{border:2px solid var(--surface-low);background:var(--accent);border-radius:999px}.tmdb-results::-webkit-scrollbar-thumb{border:2px solid var(--surface-low);background:var(--accent);border-radius:999px}.admin-seat-map::-webkit-scrollbar-thumb{border:2px solid var(--surface-low);background:var(--accent);border-radius:999px}.admin-modal::-webkit-scrollbar-thumb:hover{background:var(--accent-hover)}.tmdb-results::-webkit-scrollbar-thumb:hover{background:var(--accent-hover)}.admin-seat-map::-webkit-scrollbar-thumb:hover{background:var(--accent-hover)}.admin-modal h2{color:var(--text);letter-spacing:-.04em;margin:0 0 22px;font-size:1.65rem}.admin-modal .modal-close{top:16px;right:18px}.admin-copy{color:var(--secondary);line-height:1.6}.confirm-modal{width:min(440px,100%)}.confirm-modal .form-actions{justify-content:end;margin-top:24px}.booking-context{gap:2px;font-size:.7rem;line-height:1.3;display:grid}.booking-context strong{color:var(--text);font-size:.72rem}.booking-context small{color:var(--muted)}.booking-context .status{width:fit-content;padding:1px 6px;font-size:.58rem}.modal-overlay{z-index:60;background:#000000c7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--border);background:var(--surface);border-radius:20px;width:min(480px,100%);max-height:calc(100vh - 40px);padding:24px;overflow:auto;box-shadow:0 30px 80px #000}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3{color:var(--text);margin:0;font-size:1.2rem}.modal-close{color:var(--muted);background:0 0;border:0;font-size:1.5rem;line-height:1}.modal-body{gap:12px;margin-bottom:16px;display:grid}.modal-body label{color:var(--secondary);gap:6px;font-size:.75rem;display:grid}.modal-body textarea{border:1px solid var(--border);background:var(--surface-low);width:100%;min-height:60px;color:var(--text);font:inherit;resize:vertical;border-radius:10px;padding:10px 12px}.modal-body textarea:focus{border-color:var(--accent);outline:none}.modal-footer{border-top:1px solid var(--border);justify-content:end;align-items:center;gap:10px;padding-top:12px;display:flex}.admin-shell .tmdb-modal{gap:14px;display:grid}.admin-shell .tmdb-search{gap:8px;display:flex}.admin-shell .tmdb-search input{flex:1}.admin-shell .tmdb-bulk-toolbar{border:1px solid var(--border);background:var(--surface-high);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.admin-shell .tmdb-bulk-toolbar strong{color:var(--accent-soft);font-size:.72rem}.admin-shell .tmdb-bulk-toolbar small{color:var(--muted);margin-right:auto;font-size:.63rem}.admin-shell .tmdb-bulk-toolbar .admin-checkbox{color:var(--body)}.admin-shell .tmdb-results{scrollbar-color:var(--accent) var(--surface-low);scrollbar-width:thin;gap:8px;max-height:min(52vh,480px);padding:2px 6px 2px 0;display:grid;overflow:auto}.admin-shell .tmdb-result{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:24px 54px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;transition:border-color .2s,background .2s;display:grid}.admin-shell .tmdb-select{place-items:center;min-height:44px;display:grid}.admin-shell .tmdb-select input,.admin-shell .tmdb-bulk-toolbar input{width:18px;min-height:18px;accent-color:var(--accent)}.admin-page-header{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:16px;margin-bottom:24px;display:flex}.admin-page-header>div{gap:4px;display:grid}.admin-page-header .eyebrow{margin:0}.admin-page-header h1{letter-spacing:-.04em;margin:0;font-size:1.8rem}.header-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.admin-detail-grid{grid-template-columns:minmax(0,1fr) 320px;gap:24px;display:grid}@media (width<=1024px){.admin-detail-grid{grid-template-columns:1fr}.detail-sidebar{order:-1}}.detail-section,.detail-sidebar{gap:16px;display:grid}.detail-card{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;overflow:hidden}.detail-card-header{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.detail-card-header .eyebrow{margin:0}.status-badge-large .status{padding:4px 10px;font-size:.7rem}.detail-grid{grid-template-columns:140px 1fr;gap:12px 20px;margin:0;padding:20px;display:grid}.detail-grid dt{color:var(--muted);font-size:.72rem;font-weight:600}.detail-grid dd{color:var(--body);margin:0;font-size:.82rem}.detail-grid small{color:var(--muted);margin-top:4px;font-size:.68rem;display:block}.detail-grid code{background:var(--surface-high);border-radius:6px;padding:2px 6px;font-family:ui-monospace,monospace;font-size:.75rem}.detail-grid .money-large{color:var(--accent-soft);font-size:1.25rem;font-weight:700}.detail-grid .text-muted{color:var(--muted)}.detail-grid.small{grid-template-columns:100px 1fr;font-size:.75rem}.detail-grid.small dt{font-size:.68rem}.detail-grid.small dd{font-size:.78rem}.seat-type-badge{background:var(--surface-high);color:var(--accent-soft);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:.6rem;font-weight:700;display:inline-block}.quick-actions{gap:10px;padding:20px;display:grid}.quick-actions .full-width{width:100%}.admin-shell .tmdb-poster{background-color:var(--surface-high);width:54px;height:76px;color:var(--accent-soft);background-position:50%;background-size:cover;border-radius:7px;place-items:center;font-weight:800;display:grid}.admin-shell .tmdb-result-copy{min-width:0}.admin-shell .tmdb-result-copy strong,.admin-shell .tmdb-result-copy small,.admin-shell .tmdb-result-copy p{text-overflow:ellipsis;display:block;overflow:hidden}.admin-shell .tmdb-result-copy strong{color:var(--body);white-space:nowrap;font-size:.78rem}.admin-shell .tmdb-result-copy small{color:var(--accent-soft);white-space:nowrap;margin-top:4px;font-size:.64rem}.admin-shell .tmdb-result-copy p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:.66rem;line-height:1.45;display:-webkit-box}.admin-shell .tmdb-row-action{flex-wrap:wrap;justify-content:end;align-items:center;gap:7px;display:flex}.admin-shell .tmdb-status{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:.6rem;font-weight:800}.admin-shell .tmdb-status.success{background:var(--success-bg);color:var(--success-text)}.admin-shell .tmdb-row-error,.admin-shell .tmdb-row-success{margin-top:6px;font-size:.63rem;line-height:1.4;display:block}.admin-shell .tmdb-row-error{color:var(--danger-text)}.admin-shell .tmdb-row-success{color:var(--success-text)}.admin-shell .tmdb-batch-summary{color:var(--success-text);background:#1f533d59;border:1px solid #baf1d04d;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:.72rem;display:flex}.admin-shell .tmdb-batch-summary.has-error{color:var(--danger-text);background:#93000a33;border-color:#ffdad652}.admin-shell .tmdb-pagination{justify-content:center;align-items:center;gap:12px;display:flex}.admin-shell .tmdb-pagination strong{color:var(--secondary);font-variant-numeric:tabular-nums;font-size:.7rem}.admin-shell .tmdb-attribution{color:var(--muted);font-size:.62rem;line-height:1.45}.trailer-frame{position:relative}.trailer-frame iframe{transition:opacity .2s}.trailer-frame-loading iframe,.trailer-frame-error iframe{opacity:0}.trailer-frame-state{z-index:1;background:var(--deep);color:var(--secondary);text-align:center;align-content:center;place-items:center;gap:10px;padding:20px;font-size:.78rem;display:grid;position:absolute;inset:0}.trailer-frame-state strong{color:var(--body)}.trailer-frame-error{color:var(--danger-text)}.trailer-frame-error span{color:var(--muted)}.trailer-modal-actions{align-items:center;gap:8px;display:flex}.admin-seat-row{align-items:center;gap:8px;min-width:max-content;display:flex}.admin-seat-row>b{width:22px;color:var(--accent-soft);text-align:center;font-size:.75rem}.admin-seat{border:1px solid var(--border);background:var(--surface);width:38px;height:38px;color:var(--secondary);border-radius:8px;font-size:.72rem;transition:transform .2s,border-color .2s,background .2s;position:relative}.admin-seat:hover{border-color:var(--accent);transform:translateY(-2px)}.admin-seat span{color:var(--accent-soft);font-size:.48rem;font-weight:800;position:absolute;bottom:1px;right:3px}.admin-seat-vip{border-color:var(--brand-border);background:var(--brand-tint);color:var(--accent-pale)}.admin-seat-couple{border-color:var(--warning-text);background:var(--warning-bg);color:var(--warning-text)}.checkout-page{padding-top:8px}.checkout-heading{border-bottom:1px solid var(--border);padding:18px 0 22px}.checkout-heading .page-title{max-width:720px}.checkout-grid{grid-template-columns:minmax(0,1fr) 386px;gap:24px}.checkout-main,.checkout-side{gap:16px}.checkout-card,.countdown-card{background:var(--surface);padding:24px}.booking-movie-card{grid-template-columns:138px minmax(0,1fr);gap:22px}.booking-movie-cover{height:190px}.booking-movie-card h2{letter-spacing:-.04em;font-size:1.55rem}.booking-movie-card p:not(.eyebrow){line-height:1.55}.booking-venue{margin-top:20px}.checkout-item{min-height:66px}.promo-row{align-items:center;min-height:64px}.promo-row>div{flex:1;gap:4px;display:grid}.promo-row>div strong{color:var(--body);font-size:.8rem}.promo-row>div small{color:var(--muted);font-size:.68rem;line-height:1.45}.promo-icon{border:1px solid var(--border);width:32px;height:32px;color:var(--accent-soft);border-radius:8px;place-items:center;display:grid}.promo-disabled{color:var(--muted);flex:none;font-size:.65rem}.price-breakdown{border-top:1px solid var(--border);gap:12px;padding-top:18px;display:grid}.price-breakdown>div{color:var(--muted);justify-content:space-between;align-items:baseline;gap:16px;font-size:.78rem;display:flex}.price-breakdown>div strong{color:var(--body);font-variant-numeric:tabular-nums}.price-breakdown .grand-total{margin-top:4px;padding-top:18px}.price-breakdown .grand-total span{color:var(--body);font-size:.9rem;font-weight:700}.price-breakdown .grand-total strong{color:var(--accent-soft);font-variant-numeric:tabular-nums;font-size:1.55rem}.countdown-card{border-color:var(--accent);background:var(--surface-low)}.countdown-card>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.countdown-card>div:first-child span{color:var(--secondary);font-size:.78rem}.countdown-card>div:first-child strong{color:var(--accent-soft);font-variant-numeric:tabular-nums;font-size:1.65rem}.countdown-card .progress{background:var(--surface-highest);border-radius:999px;height:6px;margin:16px 0 11px;overflow:hidden}.countdown-card .progress i{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-hover));height:100%;transition:width .2s;display:block}.countdown-card p{color:var(--muted);margin:0;font-size:.7rem;line-height:1.55}.payment-card{gap:16px;display:grid}.payment-options{gap:9px;display:grid}.payment-option{border:1px solid var(--border);background:var(--surface-low);width:100%;color:var(--body);text-align:left;border-radius:11px;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:11px;padding:12px;transition:border-color .2s,background .2s,transform .2s;display:grid}.payment-option:hover{border-color:var(--accent);background:var(--surface-high)}.payment-option.active{border-color:var(--accent);background:var(--brand-tint)}.payment-option:active{transform:translateY(1px)}.payment-option>span:nth-child(2){gap:4px;min-width:0;display:grid}.payment-option strong{color:var(--body);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.payment-option small{color:var(--muted);font-size:.65rem;line-height:1.35}.payment-logo{background:var(--surface-highest);width:34px;height:34px;color:var(--accent-soft);border-radius:9px;place-items:center;font-size:.9rem;font-weight:800;display:grid}.payment-option.active .payment-logo{background:var(--accent);color:var(--text)}.payment-option>i{color:var(--accent-soft);text-align:center;font-size:.8rem;font-style:normal}.payment-note{border:1px solid var(--border);color:var(--muted);border-radius:9px;margin:-5px 0 0;padding:10px 11px;font-size:.67rem;line-height:1.5}.cancel-link{width:100%;color:var(--muted);background:0 0;border:0;font-size:.72rem}.cancel-link:hover:not(:disabled){color:var(--danger-text)}.records-page{padding-top:16px}.account-records-page .records-heading{padding:10px 0 26px}.records-heading .page-heading{align-items:center}.record-toolbar{border-bottom:1px solid var(--border);padding:18px 0}.record-toolbar .filter-tabs{min-width:0}.record-search{align-items:center;width:min(320px,100%);display:flex;position:relative}.record-search>span:not(.sr-only){z-index:1;color:var(--muted);font-size:1.15rem;position:absolute;left:13px}.record-search input{width:100%;padding-left:36px}.record-list,.ticket-list{padding-top:20px}.booking-record,.ticket-card{border-color:var(--border);background:var(--surface)}.booking-record:hover,.ticket-card:hover{background:var(--surface-high)}.record-main,.ticket-card-info{flex:1}.record-copy h2,.ticket-card h2{font-size:1.25rem}.record-copy p,.ticket-card p{line-height:1.5}.ticket-card{align-items:center}.ticket-card-stub{border-left:1px dashed var(--border-strong);justify-items:end;gap:8px;min-width:132px;padding-left:22px;display:grid}.ticket-card-stub strong{color:var(--accent-soft);letter-spacing:.04em;font-size:.75rem}.ticket-card-stub span{color:var(--accent-soft);font-size:.7rem}.qr-code{border:5px solid var(--qr-ink);background:var(--qr-paper);width:108px;height:108px;box-shadow:0 0 0 1px var(--border);object-fit:contain;border-radius:5px;padding:8px;display:block}.qr-code-loading{background:var(--surface-high)}.status.expired{border-color:color-mix(in srgb, var(--warning-text) 50%, transparent);background:var(--warning-bg);color:var(--warning-text)}.ticket-detail-page{padding-top:8px}.ticket-detail-layout{grid-template-columns:minmax(310px,420px) minmax(0,1fr);align-items:start;gap:54px;padding:20px 0 0;display:grid}.ticket-stub-large{border:1px solid var(--border);background:var(--surface-low);border-radius:20px;justify-items:center;gap:20px;padding:26px;display:grid;box-shadow:0 18px 42px #00000052}.ticket-stub-top{border-bottom:1px dashed var(--border-strong);grid-template-columns:1fr auto;align-items:center;gap:7px 12px;width:100%;padding-bottom:16px;display:grid}.ticket-stub-top .eyebrow{grid-column:1/-1;margin:0}.ticket-code{color:var(--accent-soft);letter-spacing:.08em;font-size:.72rem;font-weight:800}.ticket-stub-top .status{grid-column:1/-1}.ticket-qr-frame{justify-items:center;gap:11px;display:grid}.ticket-qr-frame .qr-code{border-width:8px;width:218px;height:218px;padding:14px}.ticket-qr-label{color:var(--muted);letter-spacing:.09em;text-align:center;font-size:.64rem;font-weight:700}.ticket-stub-movie{border-top:1px dashed var(--border-strong);align-items:center;gap:13px;width:100%;padding-top:18px;display:flex}.ticket-stub-movie .ticket-poster-image{width:58px;height:82px}.ticket-stub-movie div{gap:5px;min-width:0;display:grid}.ticket-stub-movie strong{color:var(--text);font-size:.85rem}.ticket-stub-movie span{color:var(--muted);font-size:.68rem;line-height:1.45}.ticket-information{min-width:0;padding:22px 0}.ticket-information .page-heading{align-items:center}.ticket-information .page-title{max-width:560px}.ticket-intro{max-width:560px;color:var(--secondary);margin:17px 0 25px;line-height:1.6}.ticket-information dl{border-top:1px solid var(--border);max-width:620px;margin:0;display:grid}.ticket-information dl>div{border-bottom:1px solid var(--border);grid-template-columns:150px minmax(0,1fr);gap:18px;padding:15px 0;display:grid}.ticket-information dt{color:var(--muted);font-size:.74rem}.ticket-information dd{color:var(--body);margin:0;font-size:.8rem;font-weight:650}.ticket-detail-actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.ticket-detail-actions>*{min-width:150px}.checkin-message{background:var(--success-bg);width:100%;color:var(--success-text);border-radius:10px;gap:5px;padding:13px;font-size:.72rem;line-height:1.45;display:grid}.checkin-message strong{font-size:.78rem}@media (width>=721px){body{font-size:14px}.brand{font-size:1.35rem}.desktop-nav a,.ghost{font-size:.82rem}.page-title{font-size:clamp(1.75rem,3.4vw,2.6rem)}.spotlight-copy h1{font-size:clamp(2.25rem,4.5vw,3.5rem)}.section-heading h2{font-size:clamp(1.5rem,2.5vw,2rem)}.movie-info h3{font-size:.95rem}.movie-info>p,.cinema-meta,.cinema-address{font-size:.74rem}.cinema-card-heading h2{font-size:1.15rem}.detail-copy h1{font-size:2.55rem}.panel-heading h2,.card-title h2{font-size:1.1rem}.record-copy h2,.ticket-card h2{font-size:1.05rem}.record-copy p,.ticket-card p{font-size:.72rem}.admin-page{width:auto;max-width:1180px;margin:0;padding:34px 42px 64px}}.admin-shell{background:var(--bg);min-height:100vh}.admin-sidebar{z-index:35;border-right:1px solid var(--border);background:var(--deep);flex-direction:column;width:232px;padding:25px 14px 18px;display:flex;position:fixed;inset:0 auto 0 0}.admin-sidebar-brand{border-bottom:1px solid var(--border);gap:9px;padding:0 10px 25px;display:grid;position:relative}.admin-sidebar-close{border:1px solid var(--border);background:var(--surface);width:28px;height:28px;color:var(--muted);border-radius:7px;display:none;position:absolute;top:-2px;right:0}.admin-sidebar-brand .brand{font-size:1.3rem}.admin-sidebar-label{color:var(--accent-soft);letter-spacing:.15em;font-size:.58rem;font-weight:800}.admin-sidebar-nav{gap:4px;padding-top:25px;display:grid}.admin-sidebar-nav a{color:var(--muted);border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:11px 12px;font-size:.78rem;font-weight:650;text-decoration:none;transition:color .2s,background .2s,border-color .2s;display:flex}.admin-sidebar-nav a>span:first-child{width:20px;color:var(--muted);text-align:center;font-size:1rem}.sepay-qr-panel{border:1px solid var(--border);background:var(--surface-low);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:14px;padding:24px;display:flex}.sepay-qr-panel h2{color:var(--text);margin:0;font-size:1.15rem}.qr-image{border:1px solid var(--border);background:#fff;border-radius:12px;padding:8px}.qr-bank-info{text-align:left;gap:8px;width:100%;display:grid}.qr-info-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:6px 0;font-size:.8rem;display:flex}.qr-info-row span{color:var(--muted)}.qr-info-row strong{color:var(--body)}.qr-payment-code{letter-spacing:.08em;font-family:ui-monospace,monospace;color:var(--accent-soft)!important}.btn-copy{border:1px solid var(--border);background:var(--surface);color:var(--accent-soft);cursor:pointer;border-radius:6px;padding:3px 8px;font-size:.7rem}.btn-copy:hover{border-color:var(--accent)}.qr-expire-note{color:var(--muted);margin:0;font-size:.75rem}.qr-important{color:var(--warning-text);background:var(--warning-bg);border-radius:8px;margin:0;padding:8px 12px;font-size:.7rem}.qr-expired{color:var(--danger-text);font-size:.85rem}.timer-bar-wrap{background:var(--surface-high);border-radius:2px;width:100%;height:4px;margin-bottom:8px;overflow:hidden}.timer-bar{background:var(--accent);height:100%;transition:width 1s linear}.timer-label{color:var(--secondary);margin:0;font-size:.78rem}.checkout-expired{color:var(--danger-text)}.checkout-confirmed{color:var(--success-text)}.checkout-cancelled{color:var(--muted)}.btn-full{width:100%}.btn-sm{min-height:34px;padding:7px 12px;font-size:.72rem}.summary-actions{gap:10px;margin-top:14px;display:grid}.bulk-preview{border:1px solid var(--border);background:var(--surface);border-radius:12px;gap:10px;margin-top:14px;padding:14px;display:grid}.bulk-preview.valid{border-color:var(--accent)}.bulk-preview.invalid{border-color:var(--danger-bg)}.bulk-preview>strong{color:var(--body);font-size:.82rem}.bulk-preview-list{flex-wrap:wrap;gap:8px;display:flex}.bulk-preview-list>span{border:1px solid var(--border);background:var(--surface-low);color:var(--secondary);border-radius:8px;padding:6px 10px;font-size:.72rem}.bulk-preview-list>span.available{border-color:var(--accent);color:var(--accent-soft)}.bulk-preview-list>span.conflict{border-color:var(--danger-bg);color:var(--danger-text)}.free-slots-box{border:1px dashed var(--border-strong);background:var(--surface-low);border-radius:12px;gap:10px;margin-top:14px;padding:14px;display:grid}.free-slots-head{gap:3px;display:grid}.free-slots-head>strong{color:var(--body);font-size:.82rem}.free-slots-head>span{color:var(--muted);font-size:.7rem}.free-slots-controls,.free-slots-list{flex-wrap:wrap;gap:8px;display:flex}.free-slot-chip{border:1px solid var(--accent);background:var(--focus-ring);color:var(--accent-soft);cursor:pointer;border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:700;transition:background .2s,border-color .2s}.free-slot-chip:hover{background:var(--brand-tint-strong);border-color:var(--accent-hover)}.free-slots-empty{color:var(--muted);margin:0;font-size:.75rem}.free-slots-busy{color:var(--secondary);margin:0;font-size:.72rem}.form-hint-warning{color:var(--warning-text);margin-top:6px;font-size:.7rem;display:block}.admin-sidebar-nav a.active{border-color:var(--brand-border);background:var(--focus-ring);color:var(--accent-pale)}.admin-sidebar-nav a.active>span:first-child{color:var(--accent-soft)}.admin-sidebar-footer{border-top:1px solid var(--border);gap:10px;margin-top:auto;padding:18px 10px 0;display:grid}.admin-operator{align-items:center;gap:9px;min-width:0;display:flex}.admin-operator .account-avatar{flex:none;width:30px;height:30px;font-size:.7rem}.admin-operator div{gap:3px;min-width:0;display:grid}.admin-operator strong{color:var(--body);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.admin-operator small{color:var(--muted);font-size:.62rem}.admin-logout,.admin-back-link{color:var(--muted);background:0 0;border:0;align-items:center;gap:9px;padding:8px 0;font-size:.7rem;text-decoration:none;display:flex}.admin-logout{color:var(--accent-soft);transition:color .2s,background .2s}.admin-logout:hover:not(:disabled){color:var(--danger-text);background:#93000a33}.admin-back-link:hover{color:var(--accent-soft)}.admin-main{min-height:100vh;margin-left:232px}.admin-main main{min-height:100vh}.admin-main main>.admin-page{width:auto;max-width:1180px;margin:0}.admin-mobile-header,.admin-sidebar-scrim{display:none}.admin-login-page{grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:clamp(48px,9vw,150px);width:min(1080px,100% - 64px);min-height:100vh;margin:auto;padding:48px 0;display:grid}.admin-login-brand{max-width:490px}.admin-login-brand .brand{margin-bottom:34px;font-size:1.55rem}.admin-login-brand h1{color:var(--text);letter-spacing:-.06em;margin:12px 0 18px;font-size:clamp(2rem,4vw,3rem);line-height:1.02}.admin-login-brand>p:not(.eyebrow){max-width:430px;color:var(--secondary);margin:0;font-size:.85rem;line-height:1.7}.admin-security{border:1px solid var(--border);background:var(--surface-low);border-radius:12px;align-items:center;gap:12px;max-width:390px;margin-top:34px;padding:13px 14px;display:flex}.admin-security>span{color:var(--accent-soft);font-size:1.1rem}.admin-security div{gap:4px;display:grid}.admin-security strong{color:var(--body);font-size:.74rem}.admin-security small{color:var(--muted);font-size:.65rem}.admin-login-card{border:1px solid var(--border);background:var(--surface-low);border-radius:16px;gap:15px;padding:30px;display:grid;box-shadow:0 18px 42px #00000047}.admin-login-card h2{color:var(--text);letter-spacing:-.045em;margin:0;font-size:1.65rem}.admin-login-copy{color:var(--muted);margin:-5px 0 7px;font-size:.76rem;line-height:1.55}.admin-login-card>label:not(.admin-checkbox){color:var(--secondary);gap:7px;font-size:.72rem;display:grid}.admin-login-card>label:not(.admin-checkbox) input{width:100%}.admin-login-options{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-login-options .admin-checkbox{color:var(--secondary);align-items:center;gap:7px;display:inline-flex}.admin-login-options .admin-checkbox input{width:16px;min-width:16px;height:16px;min-height:16px;accent-color:var(--accent);padding:0}.admin-login-options .admin-checkbox{font-size:.68rem}.admin-muted-link{color:var(--accent-soft);font-size:.68rem}.admin-login-error{color:var(--danger-text);background:#93000a33;border:1px solid #93000aa6;border-radius:9px;margin:0;padding:10px 11px;font-size:.7rem;line-height:1.45}.admin-login-submit{width:100%;margin-top:2px}.admin-login-card .admin-back-link{justify-content:center;margin-top:5px;font-size:.7rem}.admin-stat-grid{gap:14px;margin-top:28px}.admin-stat-card{border-radius:14px;gap:9px;min-height:154px;padding:19px;transition:border-color .2s,background .2s}.admin-dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:14px;margin-top:14px;display:grid}.admin-dashboard-grid .admin-panel{min-width:0}.admin-panel-heading>a{color:var(--accent-soft);font-size:.68rem;text-decoration:none}.admin-recent-list{display:grid}.admin-recent-row{border-bottom:1px solid #504537a6;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;text-decoration:none;display:grid}.admin-recent-row:last-child{border-bottom:0}.admin-recent-row:hover strong{color:var(--accent-soft)}.admin-recent-time{color:var(--accent-soft);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:750}.admin-recent-row strong,.admin-recent-row small{display:block}.admin-recent-row strong{color:var(--body);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.admin-recent-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:.64rem;overflow:hidden}.admin-recent-date{color:var(--muted);text-align:right;white-space:nowrap;font-size:.62rem}.admin-quick-links{gap:7px;display:grid}.admin-quick-links a{border:1px solid #0000;border-radius:9px;grid-template-columns:27px minmax(0,1fr);gap:2px 9px;padding:10px;text-decoration:none;transition:border-color .2s,background .2s;display:grid}.admin-quick-links a:hover{border-color:var(--border);background:var(--surface)}.admin-quick-links a>span{color:var(--accent-soft);grid-row:span 2;font-size:1rem}.admin-quick-links strong{color:var(--body);font-size:.72rem}.admin-quick-links small{color:var(--muted);font-size:.62rem;line-height:1.4}.admin-stat-card:hover{background:var(--surface);transform:none}.admin-stat-card strong{font-size:2.35rem}.admin-table-wrap{border-radius:12px}.admin-table{font-size:.72rem}.admin-table th{padding:12px 14px;font-size:.6rem}.admin-table td{padding:13px 14px}.admin-table tr:hover td{background:var(--surface)}.admin-card-grid{gap:14px}.admin-entity-card{border-radius:14px;transition:border-color .2s,background .2s}.admin-entity-card:hover{background:var(--surface);transform:none}.admin-card-mark{min-height:190px;font-size:3.2rem}.admin-entity-content{padding:17px}.admin-room-row{padding:16px;transition:border-color .2s,background .2s}.admin-room-row:hover{background:var(--surface);transform:none}.admin-panel{padding:18px}.admin-seat{transition:border-color .2s,background .2s}.admin-seat:hover{transform:none}.admin-toolbar{border-radius:12px;margin:20px 0;padding:11px}.admin-modal{border-radius:16px}@media (width<=720px){body:has(.admin-shell){padding-bottom:0}.admin-sidebar{width:min(280px,86vw);transition:transform .2s;transform:translate(-100%)}.admin-sidebar-open .admin-sidebar{transform:translate(0)}.admin-sidebar-scrim{z-index:34;background:#000000a6;border:0;position:fixed;inset:0}.admin-sidebar-open .admin-sidebar-scrim{display:block}.admin-main{margin-left:0}.admin-mobile-header{border-bottom:1px solid var(--border);background:var(--deep);align-items:center;gap:10px;min-height:60px;padding:0 16px;display:flex}.admin-sidebar-close{display:block}.admin-mobile-header .brand{margin-right:auto;font-size:1.15rem}.admin-mobile-header>span{color:var(--accent-soft);letter-spacing:.12em;font-size:.55rem;font-weight:800}.admin-menu-button{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--body);border-radius:8px;font-size:1rem}.admin-main main>.admin-page{width:calc(100% - 32px);padding:24px 0 48px}.admin-login-page{width:calc(100% - 32px);padding:34px 0 44px;display:block}.admin-login-brand{max-width:none}.admin-login-brand .brand{margin-bottom:27px;font-size:1.3rem}.admin-login-brand h1{margin-bottom:13px;font-size:2rem}.admin-login-brand>p:not(.eyebrow){font-size:.76rem;line-height:1.55}.admin-security{margin-top:22px}.admin-login-card{border-radius:14px;margin-top:28px;padding:22px 18px}.admin-login-card h2{font-size:1.4rem}.admin-login-options{flex-direction:column;align-items:flex-start;gap:8px}.admin-page>.page-heading{flex-direction:column;align-items:start;gap:14px}.admin-page>.page-heading>.primary,.admin-page>.page-heading>button{width:100%}.admin-card-grid,.admin-seat-layout,.admin-dashboard-grid{grid-template-columns:1fr}.admin-seat-layout>.admin-panel:first-child{position:static}.admin-seat-actions{padding:16px}.admin-seat-delete-list{grid-template-columns:1fr}.admin-seat-action-row{grid-template-columns:34px minmax(0,1fr) auto auto}.admin-seat-map{max-height:420px}.admin-sidebar-brand{padding-right:42px}}[data-theme=light] .topbar{background:#f6f8fbf5}[data-theme=light] .topbar-compact{background:#edf2f7fa;box-shadow:0 4px 20px #0e1b351f}[data-theme=light] .mobile-nav{background:#fffffffa;box-shadow:0 -8px 24px #0e1b351f}[data-theme=light] .spotlight-shade,[data-theme=light] .detail-hero-shade{background:linear-gradient(90deg,#08101ff0 0%,#08101fb8 52%,#08101f3d 100%),linear-gradient(#0000 28%,#08101fc2 100%)}[data-theme=light] .spotlight-copy h1,[data-theme=light] .spotlight-copy>p:not(.eyebrow),[data-theme=light] .hero-duration{color:#f7faff;text-shadow:0 1px 18px #08101f6b}[data-theme=light] .spotlight-copy .eyebrow{color:#a8caff}[data-theme=light] .format-badge,[data-theme=light] .rating-badge{color:#f7faff;background:#08101f9e;border-color:#ffffff61}[data-theme=light] .poster-overlay{background:#08101f94}[data-theme=light] .admin-sidebar{background:var(--surface-1)}[data-theme=light] .cinema-card-art{background:#e8f1ff}[data-theme=light] .cinema-art-1{background:#dceafe}[data-theme=light] .cinema-art-2{background:#e2edff}[data-theme=light] .cinema-art-letter{color:var(--accent-deep)}[data-theme=light] .format-chip{border-color:var(--brand-border);color:var(--accent-deep);background:#ffffffad}[data-theme=light] .cinema-card-body{background:var(--surface-1)}[data-theme=light] .cinema-card-heading h2{color:var(--text-primary)}[data-theme=light] .cinema-address,[data-theme=light] .cinema-meta,[data-theme=light] .price-list div{color:var(--text-secondary)}[data-theme=light] .price-list strong{color:var(--accent-deep)}[data-theme=light] .admin-sidebar-scrim,[data-theme=light] .modal-backdrop,[data-theme=light] .location-picker-backdrop,[data-theme=light] .trailer-modal-backdrop{background:var(--overlay)}[data-theme=light] .qr-image{background:var(--qr-paper)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=720px){.location-picker-backdrop{padding:12px 12px calc(80px + env(safe-area-inset-bottom));place-items:end center}.trailer-modal-backdrop{place-items:end center;padding:12px}.location-picker{border-radius:16px;width:100%;height:min(620px,100vh - 92px);max-height:calc(100vh - 92px);padding:22px 18px}@supports (height:100dvh){.location-picker{height:min(620px,100dvh - 92px);max-height:calc(100dvh - 92px)}}.trailer-modal{border-radius:16px;width:100%;max-height:calc(100vh - 24px);padding:22px 18px}.location-picker h2,.trailer-modal h2{font-size:1.25rem}.province-list{max-height:min(46vh,330px)}.location-picker-footer,.trailer-modal-footer{align-items:end}.location-picker-footer>span{max-width:70%;line-height:1.45}.trailer-modal-heading{margin-bottom:13px}.trailer-modal-footer{margin-top:13px}.cinema-page-location{flex-direction:column;align-items:start;gap:7px}}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=721px){.app-shell main>*{width:min(1180px,90vw)}.app-shell .topbar{height:68px}.app-shell .topbar-inner{gap:22px;width:min(1180px,90vw)}.app-shell .topbar-compact{height:54px}.app-shell .brand{font-size:1.28rem}.app-shell .desktop-nav a,.app-shell .ghost{padding:9px 11px;font-size:.8rem}.app-shell .topbar-actions{gap:8px}.app-shell .location-pill,.app-shell .search-button{min-height:36px;padding:7px 10px}.app-shell .search-button{width:38px}.app-shell .primary,.app-shell .secondary,.app-shell .danger{border-radius:10px;min-height:41px;padding:10px 14px}.app-shell .eyebrow{margin-bottom:8px;font-size:.64rem}.app-shell .page-title{font-size:clamp(1.65rem,2.8vw,2.1rem)}.app-shell .breadcrumb{width:min(1180px,90vw);margin-bottom:18px;padding-top:22px}.app-shell input,.app-shell select{min-height:41px;padding:9px 11px}.app-shell .spotlight-hero{min-height:540px}.app-shell .spotlight-content{width:min(1180px,90vw);min-height:540px;padding-bottom:60px}.app-shell .spotlight-copy{max-width:600px}.app-shell .spotlight-copy h1{margin:10px 0 12px;font-size:clamp(1.85rem,3.1vw,2.35rem)}.app-shell .spotlight-copy>p:not(.eyebrow){max-width:550px;font-size:.88rem;line-height:1.5}.app-shell .spotlight-copy .hero-badges{margin-bottom:18px}.app-shell .spotlight-copy .eyebrow{margin-bottom:7px}.app-shell .hero-actions{gap:10px;margin-top:18px}.app-shell .hero-pager{bottom:42px}.app-shell .quick-booking{border-radius:18px;margin-top:-32px;padding:19px}.app-shell .quick-booking-heading{margin-bottom:14px;padding-bottom:13px}.app-shell .quick-booking-heading h2{font-size:.9rem}.app-shell .quick-booking-grid{gap:10px}.app-shell .quick-step{gap:6px;font-size:.7rem}.app-shell .quick-step select{min-height:39px;padding:8px 10px}.app-shell .quick-booking-submit{min-height:41px}.app-shell .catalog-section,.app-shell .promotion-section,.app-shell .showtimes-section{padding-top:50px}.app-shell .section-heading{gap:18px;margin-bottom:28px;padding-bottom:18px}.app-shell .section-heading h2{font-size:clamp(1.35rem,2.1vw,1.65rem)}.app-shell .section-heading p:not(.eyebrow){margin-top:6px}.app-shell .catalog-section>.filter-tabs{top:50px}.app-shell .filter-chip,.app-shell .date-chip{padding:8px 12px}.app-shell .movie-grid{gap:16px}.app-shell .movie-info{gap:7px;padding:13px}.app-shell .movie-info h3{font-size:.9rem}.app-shell .movie-info>p{font-size:.72rem}.app-shell .movie-showtimes a,.app-shell .showtime-placeholder{padding:4px 6px;font-size:.63rem}.app-shell .movie-buy{padding:8px 10px;font-size:.74rem}.app-shell .promotion-section{padding-bottom:64px}.app-shell .promotion-grid{gap:18px}.app-shell .promotion-card{border-radius:18px;min-height:280px;padding:24px}.app-shell .promotion-card h3{margin:13px 0 8px;font-size:1.45rem}.app-shell .promotion-card p{line-height:1.5}.app-shell .promotion-price{font-size:6rem;right:24px}.app-shell .cinemas-page,.app-shell .records-page,.app-shell .ticket-detail-page,.app-shell .booking-flow-page,.app-shell .checkout-page{padding-bottom:64px}.app-shell .cinemas-hero>p{line-height:1.52}.app-shell .city-chips{margin:22px 0 18px}.app-shell .cinema-grid{gap:14px}.app-shell .cinema-card{border-radius:16px}.app-shell .cinema-card-art{min-height:145px;padding:15px}.app-shell .cinema-art-letter{font-size:4.2rem}.app-shell .cinema-card-body{padding:16px}.app-shell .cinema-card-heading h2{font-size:1.08rem}.app-shell .cinema-address{min-height:38px;margin:12px 0}.app-shell .price-list{margin:14px 0;padding-top:13px}.app-shell .movie-detail-hero{min-height:560px}.app-shell .movie-detail-grid{grid-template-columns:290px 1fr;gap:38px;width:min(1180px,90vw);padding:38px 0 52px}.app-shell .detail-poster-wrap{border-radius:14px}.app-shell .poster-meta{padding:10px 2px}.app-shell .detail-copy h1{font-size:2.25rem}.app-shell .original-title{margin-bottom:17px}.app-shell .detail-meta-grid{gap:8px;margin:16px 0;padding:13px}.app-shell .detail-description{line-height:1.55}.app-shell .detail-cast{margin:14px 0;padding:11px}.app-shell .date-strip{margin-bottom:18px}.app-shell .date-chip{min-width:96px}.app-shell .showtime-toolbar{margin-bottom:18px;padding:12px}.app-shell .showtime-days{gap:14px}.app-shell .showtime-day{border-radius:14px;padding:18px}.app-shell .showtime-day-heading{padding-bottom:14px}.app-shell .showtime-list{gap:8px;padding-top:14px}.app-shell .showtime-card{min-width:118px;padding:11px}.app-shell .showtime-card strong{font-size:1rem}.app-shell .booking-flow-page,.app-shell .checkout-page{width:min(1180px,90vw)}.app-shell .showtime-meta-bar{gap:24px;padding:15px}.app-shell .showtime-meta-item{min-width:170px;padding-left:18px}.app-shell .seat-workspace{grid-template-columns:minmax(0,1fr) 320px;gap:18px;margin-top:18px}.app-shell .seat-map-panel{padding:20px}.app-shell .screen-curve{margin-top:44px}.app-shell .screen-note{margin-bottom:26px}.app-shell .seat-summary-panel{padding:18px}.app-shell .checkout-heading{margin-bottom:18px;padding:12px 0 18px}.app-shell .checkout-grid{grid-template-columns:minmax(0,1fr) 350px;gap:18px}.app-shell .checkout-main,.app-shell .checkout-side{gap:14px}.app-shell .checkout-card,.app-shell .countdown-card{padding:19px}.app-shell .booking-movie-card{grid-template-columns:118px minmax(0,1fr);gap:17px}.app-shell .booking-movie-cover{height:170px}.app-shell .booking-movie-card h2{font-size:1.3rem}.app-shell .booking-venue{margin-top:16px;padding:11px}.app-shell .booking-seat-list{padding:13px 0}.app-shell .checkout-item{min-height:58px;padding:9px}.app-shell .countdown-card>div:first-child strong{font-size:1.4rem}.app-shell .record-list,.app-shell .ticket-list{gap:12px}.app-shell .booking-record,.app-shell .ticket-card{border-radius:14px;gap:18px;padding:18px}.app-shell .record-main,.app-shell .ticket-card-info{gap:13px}.app-shell .ticket-poster-image{width:74px;height:110px}.app-shell .record-copy h2,.app-shell .ticket-card h2{font-size:1.08rem}.app-shell .record-total{min-width:160px}.app-shell .ticket-detail-layout{grid-template-columns:minmax(290px,370px) minmax(0,1fr);gap:42px;padding-top:14px}.app-shell .ticket-stub-large{border-radius:16px;gap:16px;padding:21px}.app-shell .ticket-qr-frame .qr-code{width:196px;height:196px}.app-shell .ticket-information{padding:16px 0}.app-shell .ticket-intro{margin:14px 0 21px}.app-shell .ticket-information dl>div{grid-template-columns:132px minmax(0,1fr);padding:12px 0}.app-shell .ticket-detail-actions{margin-top:22px}.app-shell .site-footer{min-height:360px;padding-top:44px}.app-shell .footer-grid{gap:28px}.app-shell .footer-bottom{margin-top:28px;padding-top:17px}.app-shell .auth-modal{padding:28px}.app-shell .auth-modal h2{font-size:1.6rem}.app-shell .tmdb-footer-attribution{color:var(--muted);margin:12px 0 0;font-size:.62rem;line-height:1.45}.admin-shell .admin-page-actions{flex-wrap:wrap;gap:8px;display:flex}}@media (width<=720px){.app-shell .topbar{height:56px}.app-shell .topbar-actions{min-width:0}.app-shell .topbar-actions>*{flex:none}.app-shell .customer-header-theme{display:none}.app-shell .topbar-actions .login-button{white-space:nowrap}.app-shell .topbar-inner{width:calc(100% - 28px);min-width:0}.app-shell .brand{font-size:1.08rem}.app-shell .brand-mark{width:26px;height:26px}.app-shell .search-button{width:33px;min-height:33px}.app-shell .location-pill{max-width:145px;min-height:33px;padding:7px 8px;font-size:.65rem;display:inline-flex;overflow:hidden}.app-shell .location-pill span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-shell .login-button{min-height:33px;padding:7px 10px}.app-shell .breadcrumb{width:calc(100% - 28px);margin-bottom:15px;padding-top:15px}.app-shell main>*,.app-shell .booking-flow-page,.app-shell .checkout-page{width:calc(100% - 28px)}.app-shell .spotlight-hero,.app-shell .spotlight-content{min-height:425px}.app-shell .spotlight-content{padding:0 14px 21px}.app-shell .spotlight-copy h1{margin:8px 0 11px;font-size:1.6rem}.app-shell .spotlight-copy>p:not(.eyebrow){font-size:.76rem;line-height:1.45}.app-shell .hero-actions{gap:8px;margin-top:16px}.app-shell .hero-actions .primary,.app-shell .hero-actions .secondary{min-height:38px;padding:9px 11px;font-size:.72rem}.app-shell .hero-pager{bottom:28px}.app-shell .quick-booking{border-radius:16px;margin-top:-7px;padding:16px}.app-shell .quick-booking-heading{align-items:start;margin-bottom:12px;padding-bottom:11px}.app-shell .quick-booking-heading h2{font-size:.82rem}.app-shell .quick-booking-heading small{text-align:right;font-size:.65rem}.app-shell .quick-step{min-height:48px;padding:7px 8px}.app-shell .quick-step select{min-height:35px;padding:7px 8px;font-size:.68rem}.app-shell .quick-booking-submit{min-height:40px;font-size:.74rem}.app-shell .catalog-section{padding-top:27px}.app-shell .catalog-heading{margin-bottom:13px}.app-shell .section-heading{gap:12px;margin-bottom:20px}.app-shell .section-heading h2{font-size:1.05rem}.app-shell .section-heading p:not(.eyebrow){margin-top:5px;font-size:.72rem;line-height:1.45}.app-shell .catalog-section>.filter-tabs{margin-bottom:14px}.app-shell .filter-chip,.app-shell .date-chip{padding:7px 10px;font-size:.7rem}.app-shell .movie-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.app-shell .movie-badges,.app-shell .poster-rating{top:8px}.app-shell .movie-badges{left:8px}.app-shell .poster-rating{right:8px}.app-shell .age-badge,.app-shell .format-badge,.app-shell .rating-badge{padding:4px 6px;font-size:.56rem}.app-shell .movie-info{gap:6px;padding:10px}.app-shell .movie-info h3{font-size:.8rem}.app-shell .movie-info>p{font-size:.66rem}.app-shell .movie-showtimes{gap:4px}.app-shell .movie-showtimes a,.app-shell .showtime-placeholder{padding:4px 5px;font-size:.58rem}.app-shell .movie-buy{padding:7px 8px;font-size:.67rem}.app-shell .promotion-card{flex-basis:260px;min-height:154px;padding:14px}.app-shell .promotion-card h3{margin:8px 0 5px;font-size:.94rem}.app-shell .promotion-card p{font-size:.66rem;line-height:1.45}.app-shell .promotion-total{margin-top:13px;font-size:.82rem}.app-shell .cinemas-page,.app-shell .records-page,.app-shell .ticket-detail-page,.app-shell .booking-flow-page,.app-shell .checkout-page{padding-bottom:52px}.app-shell .cinema-grid{gap:12px}.app-shell .cinema-card-art{min-height:120px;padding:12px}.app-shell .cinema-art-letter{font-size:3rem}.app-shell .cinema-card-body{padding:13px}.app-shell .cinema-card-heading h2{font-size:.92rem}.app-shell .cinema-address{min-height:34px;margin:9px 0;font-size:.68rem}.app-shell .cinema-meta,.app-shell .price-list div{font-size:.66rem}.app-shell .cinema-actions{gap:6px}.app-shell .cinema-actions .primary,.app-shell .cinema-actions .secondary{min-height:35px;padding:8px 7px;font-size:.66rem}.app-shell .movie-detail-hero{min-height:0}.app-shell .movie-detail-grid{width:calc(100% - 28px);padding:25px 0 35px;display:block}.app-shell .detail-poster-wrap{width:min(190px,58vw);margin:0 auto 13px}.app-shell .poster-meta{justify-content:center;font-size:.64rem}.app-shell .detail-copy h1{margin:8px 0 3px;font-size:1.85rem}.app-shell .original-title{margin-bottom:14px;font-size:.72rem}.app-shell .detail-meta-grid{grid-template-columns:repeat(2,1fr);gap:9px;margin:13px 0;padding:11px}.app-shell .detail-meta-grid small{font-size:.61rem}.app-shell .detail-meta-grid strong{font-size:.7rem}.app-shell .detail-description{font-size:.76rem;line-height:1.5}.app-shell .detail-cast{margin:12px 0;font-size:.7rem}.app-shell .detail-cast div{gap:10px}.app-shell .detail-cast span{width:62px}.app-shell .showtime-toolbar{margin-bottom:15px;padding:10px}.app-shell .showtime-day{padding:14px}.app-shell .showtime-day-heading{gap:10px;padding-bottom:12px}.app-shell .showtime-day-heading h3{font-size:.9rem}.app-shell .showtime-list{gap:7px;padding-top:12px}.app-shell .showtime-card{min-width:102px;padding:9px}.app-shell .showtime-card strong{font-size:.9rem}.app-shell .showtime-card span,.app-shell .showtime-card small{font-size:.62rem}.app-shell .showtime-meta-bar{flex-wrap:wrap;align-items:start;gap:13px;padding:13px}.app-shell .showtime-meta-movie{flex-basis:100%}.app-shell .showtime-meta-item{flex:1;min-width:0;padding-left:12px}.app-shell .seat-workspace,.app-shell .checkout-grid{grid-template-columns:1fr;gap:14px}.app-shell .seat-workspace>*,.app-shell .checkout-grid>*{min-width:0}.app-shell .seat-map-panel{min-width:0;padding:15px}.app-shell .seat-map-scroll{max-width:100%}.app-shell .panel-heading h2,.app-shell .card-title h2{font-size:1rem}.app-shell .screen-curve{margin-top:35px}.app-shell .screen-note{margin-bottom:21px}.app-shell .seat-summary-panel,.app-shell .checkout-card,.app-shell .countdown-card{padding:15px}.app-shell .checkout-heading{padding:8px 0 14px}.app-shell .checkout-heading .page-title{font-size:1.75rem}.app-shell .booking-movie-card{grid-template-columns:88px minmax(0,1fr);gap:12px}.app-shell .booking-movie-cover{height:132px}.app-shell .booking-movie-card h2{font-size:1.08rem}.app-shell .booking-venue{margin-top:13px;padding:9px}.app-shell .record-list,.app-shell .ticket-list{gap:10px}.app-shell .booking-record,.app-shell .ticket-card{gap:13px;padding:14px;display:grid}.app-shell .record-main,.app-shell .ticket-card-info{gap:10px}.app-shell .ticket-poster-image{width:62px;height:92px}.app-shell .record-copy h2,.app-shell .ticket-card h2{margin:6px 0 4px;font-size:.92rem}.app-shell .record-copy p,.app-shell .ticket-card p{font-size:.68rem}.app-shell .record-details{gap:8px;margin-top:8px;font-size:.64rem}.app-shell .record-total{border-top:1px solid var(--border);align-items:start;min-width:0;padding-top:10px}.app-shell .ticket-card-stub{border-top:1px dashed var(--border-strong);border-left:0;justify-content:space-between;min-width:0;padding:10px 0 0;display:flex}.app-shell .ticket-detail-layout{flex-direction:column;gap:22px;padding-top:8px;display:flex}.app-shell .ticket-stub-large{gap:14px;width:100%;padding:18px}.app-shell .ticket-qr-frame .qr-code{width:180px;height:180px}.app-shell .ticket-information{padding:0}.app-shell .ticket-information .page-title{font-size:1.7rem}.app-shell .ticket-intro{margin:12px 0 18px;font-size:.74rem}.app-shell .ticket-information dl>div{grid-template-columns:105px minmax(0,1fr);gap:12px;padding:11px 0}.app-shell .ticket-detail-actions{margin-top:19px}.app-shell .ticket-detail-actions>*{flex:1;min-width:0}.app-shell .auth-modal{padding:25px 20px}.admin-shell .admin-modal{width:100%;max-height:calc(100vh - 24px);padding:22px 18px}.admin-shell .tmdb-admin-modal{width:100%}.admin-shell .tmdb-search{flex-direction:column;align-items:stretch}.admin-shell .tmdb-search .compact-button{width:100%}.admin-shell .tmdb-results{max-height:min(48vh,360px)}.admin-shell .tmdb-result{grid-template-columns:24px 40px minmax(0,1fr);align-items:start}.admin-shell .tmdb-poster{width:40px;height:56px}.admin-shell .tmdb-row-action{grid-column:3;justify-content:start;padding-top:4px}.admin-shell .tmdb-bulk-toolbar{flex-direction:column;align-items:stretch}.admin-shell .tmdb-bulk-toolbar small{margin-right:0}.admin-shell .tmdb-bulk-toolbar .primary{width:100%}.admin-shell .tmdb-batch-summary{flex-direction:column;align-items:stretch}.admin-shell .tmdb-batch-summary .compact-button{width:100%}.admin-shell .tmdb-pagination{justify-content:space-between}.trailer-modal-footer{flex-direction:column;align-items:stretch}.trailer-modal-actions{flex-wrap:wrap}.trailer-modal-actions>*{flex:1}.app-shell .tmdb-footer-attribution{margin-top:10px;font-size:.58rem}.admin-shell .admin-page-actions{width:100%}.admin-shell .admin-page-actions>*{flex:1}.spotlight-hero,.spotlight-content{min-height:485px}.spotlight-content{padding-bottom:25px}.quick-booking{margin-top:-8px}.quick-booking-grid{gap:8px}.quick-step{background:var(--surface);border:1px solid #504537cc;border-radius:10px;justify-content:space-between;align-items:center;min-height:54px;padding:8px 10px;display:flex}.quick-step>span{min-width:42%}.quick-step select{width:55%;min-height:38px;padding:8px 9px;font-size:.72rem}.catalog-section{padding-top:32px}.catalog-section>.filter-tabs{background:0 0;border:0;border-radius:0;margin-bottom:18px;padding:0 0 4px;position:static}.catalog-heading{margin-bottom:16px}.promotion-section{padding-top:0;padding-bottom:0}.promotion-section .section-heading{border-bottom:0;margin-bottom:12px;padding-bottom:0}.promotion-section .section-heading h2{font-size:1.2rem}.promotion-section .section-heading>a{font-size:.7rem}.promotion-grid{gap:12px;padding-bottom:4px;display:flex;overflow-x:auto}.promotion-card{border-radius:16px;flex:0 0 280px;min-height:165px;padding:16px}.promotion-card h3{margin:10px 0 6px;font-size:1rem}.promotion-card p{margin-bottom:8px;font-size:.7rem}.promotion-card .primary{min-height:34px;padding:8px 11px;font-size:.68rem}.promotion-price{font-size:4rem;bottom:0;right:10px}.promotion-total{margin-top:16px;font-size:.9rem}.site-footer{min-height:204px;padding:32px 24px}.site-footer .footer-grid{display:block}.site-footer .footer-grid>div:not(.footer-brand){display:none}.site-footer .footer-brand p{max-width:300px;margin:8px 0 12px;font-size:.7rem}.site-footer .footer-brand strong{display:none}.site-footer .footer-bottom{margin-top:14px;padding-top:12px;font-size:.62rem}.site-footer .footer-bottom span:last-child{display:none}}@media (width<=360px){.app-shell .topbar-inner{gap:6px;width:calc(100% - 20px)}.app-shell .location-pill{display:none}.app-shell .topbar-actions{gap:6px}.app-shell .login-button{padding-inline:8px}}@media (width>=721px) and (width<=1024px){.desktop-nav{gap:0}.desktop-nav a{padding-inline:8px;font-size:.78rem}.location-pill{display:none}.movie-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-booking-grid{grid-template-columns:repeat(2,1fr)}.quick-booking-submit{grid-column:span 2}.movie-detail-grid{grid-template-columns:280px 1fr;gap:30px}.seat-workspace,.checkout-grid{grid-template-columns:minmax(0,1fr) 320px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:span 2}}@media (width<=720px){body{padding-bottom:68px}.topbar{height:60px}.topbar-inner{gap:8px;width:calc(100% - 32px)}.brand{gap:6px;font-size:1.15rem}.brand-mark{width:27px;height:27px;font-size:.65rem}.desktop-nav,.account-name,.account-menu .ghost{display:none}.topbar-actions{margin-left:auto}.search-button{width:35px;min-height:35px}.login-button{min-height:35px;padding:8px 11px;font-size:.72rem}.account-avatar{width:30px;height:30px}.mobile-nav{z-index:30;border-top:1px solid var(--border);background:#0f0e0df7;justify-content:space-around;padding:7px 8px 8px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0009}.mobile-nav a,.mobile-nav button{color:var(--muted);background:0 0;border:0;justify-items:center;gap:2px;text-decoration:none;display:grid}.mobile-nav a.active,.mobile-nav button:hover{color:var(--accent-soft)}.mobile-nav span{font-size:1.15rem}.mobile-nav small{font-size:.6rem}.site-footer{padding:38px 16px 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:26px 18px}.footer-brand{grid-column:span 2}.footer-grid>div:last-child{grid-column:span 1}.footer-bottom{flex-direction:column;gap:7px;margin-top:26px}.breadcrumb{width:calc(100% - 32px);margin-bottom:18px;padding-top:18px;font-size:.68rem}.breadcrumb span:not(.hold-badge){display:none}main>*,.booking-flow-page,.checkout-page{width:calc(100% - 32px)}.spotlight-hero{background-position:62%;min-height:485px}.spotlight-content{width:100%;min-height:485px;padding:0 16px 25px}.spotlight-shade{background:linear-gradient(#0f0e0d2e 0%,#0f0e0dad 48%,#0f0e0d 96%)}.spotlight-copy h1{font-size:2rem;line-height:1.05}.spotlight-copy>p:not(.eyebrow){font-size:.8rem;line-height:1.5}.hero-actions{grid-template-columns:1fr auto;display:grid}.hero-actions .primary{width:100%}.hero-pager{bottom:16px;right:16px}.quick-booking{border-radius:16px;margin-top:-2px;padding:16px}.quick-booking-heading{flex-direction:column;align-items:start;gap:8px}.quick-booking-heading h2{font-size:.9rem}.quick-booking-grid{grid-template-columns:1fr}.quick-booking-submit{grid-column:auto;width:100%}.catalog-section,.promotion-section,.showtimes-section{padding-top:32px}.section-heading,.catalog-heading{flex-direction:column;align-items:start;gap:12px}.movie-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.movie-card{padding:8px}.movie-poster-shell{border-radius:12px}.movie-info{gap:7px;padding:8px 0 0}.movie-info h3{font-size:.8rem}.movie-info>p{font-size:.65rem}.movie-showtimes{gap:3px}.movie-showtimes a,.showtime-placeholder{padding:4px 5px;font-size:.58rem}.movie-buy{padding:8px;font-size:.67rem}.promotion-grid{gap:12px;padding-bottom:4px;display:flex;overflow-x:auto}.promotion-card{border-radius:16px;flex:0 0 280px;min-height:165px;padding:16px}.promotion-card h3{margin:10px 0 6px;font-size:1rem}.promotion-card p{margin-bottom:8px;font-size:.7rem}.promotion-price{font-size:4rem;bottom:0;right:10px}.promotion-total{margin-top:16px;font-size:.9rem}.cinema-grid{grid-template-columns:1fr}.cinema-card-art{min-height:130px}.cinema-card-body{padding:16px}.cinema-actions{flex-direction:column}.movie-detail-hero{min-height:auto}.movie-detail-grid{grid-template-columns:1fr;gap:22px;width:calc(100% - 32px);padding:25px 0 40px}.detail-poster-wrap{aspect-ratio:2/3;width:min(100%,380px);height:min(380px,140vw);margin:auto}.detail-copy h1{font-size:2rem}.detail-meta-grid{grid-template-columns:repeat(2,1fr)}.detail-cast{margin:10px 0}.detail-cast div{align-items:start}.detail-cast span{width:70px}.showtime-toolbar{flex-direction:column;align-items:start}.format-filters{width:100%;margin-left:0}.showtime-day{padding:15px}.showtime-day-heading{flex-direction:column}.showtime-list{grid-template-columns:repeat(2,1fr);display:grid}.showtime-card{min-width:0}.showtime-meta-bar{flex-wrap:wrap;align-items:start;gap:14px;padding:14px}.showtime-meta-item{border-left:0;min-width:calc(50% - 7px);padding-left:0}.hold-badge{justify-content:center;width:100%;margin-left:0}.seat-workspace,.checkout-grid{grid-template-columns:1fr}.booking-flow-page{padding-bottom:170px}.seat-map-panel{padding:15px 10px}.seat-summary-panel{z-index:50;border:0;border-top:1px solid var(--border);border-radius:0;gap:8px;width:100%;padding:12px 16px 18px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 24px #0009}.seat-summary-panel .summary-heading{border:0;padding:0}.seat-summary-panel .summary-movie,.seat-summary-panel .selected-seat-list,.seat-summary-panel .security-note{display:none}.seat-summary-panel .summary-total{border-top:0;padding:0}.seat-summary-panel .summary-total span{font-size:.72rem}.seat-summary-panel .summary-total strong{font-size:1.1rem}.seat-summary-panel .summary-cta{min-height:46px}.checkout-side{position:static}:is(.app-shell:has(.booking-flow-page) .mobile-nav,.app-shell:has(.checkout-page) .mobile-nav){display:none}:is(body:has(.booking-flow-page),body:has(.checkout-page)){padding-bottom:0}.screen-curve{margin-top:38px}.seat-row-items{gap:5px}.seat-row-items>span:nth-child(7){margin-left:11px}.seat{width:27px;height:27px;font-size:.6rem}.seat-map{min-width:470px}.seat-legend{gap:10px 14px}.seat-legend span{font-size:.63rem}.checkout-heading{flex-direction:column;align-items:start}.session-badge{justify-content:center;width:100%}.booking-movie-card{grid-template-columns:78px 1fr;padding:14px}.booking-movie-cover{height:117px}.booking-movie-card h2{font-size:1rem}.booking-venue{margin-top:14px;padding:9px}.checkout-card,.countdown-card{padding:15px}.promo-row{flex-direction:column}.records-heading .page-heading{flex-direction:column;align-items:start}.record-toolbar{flex-direction:column;align-items:stretch}.record-toolbar input,.record-toolbar .filter-tabs{width:100%}.booking-record,.ticket-card{flex-direction:column;align-items:stretch;gap:15px;padding:13px}.record-main,.ticket-card-info{align-items:start;gap:10px;padding:0}.ticket-poster-image{width:64px;height:94px}.record-copy h2,.ticket-card h2{font-size:.92rem}.record-total{border-top:1px solid var(--border);align-items:start;min-width:0;padding-top:13px}.ticket-card-stub{border-top:1px dashed var(--border);border-left:0;width:calc(100% + 26px);margin:0 -13px -13px;padding:15px}.ticket-detail-layout{grid-template-columns:1fr;gap:18px}.ticket-stub-large{padding:24px}.ticket-information{padding:0}.ticket-information .page-heading{flex-direction:column;align-items:start}.ticket-checkin{width:100%}.state-card{font-size:.8rem}.auth-modal{padding:26px 20px}}.app-shell,.admin-shell,.admin-login-page{color:var(--text-body)}.app-shell .topbar,.admin-shell .admin-sidebar,.admin-shell .admin-mobile-header{border-color:var(--border);background:var(--canvas-raised)}.app-shell .spotlight-hero{border-color:var(--border);min-height:clamp(520px,72vh,720px)}.app-shell .spotlight-content{min-height:clamp(520px,72vh,720px);padding-bottom:clamp(56px,8vw,104px)}.app-shell .spotlight-copy h1{max-width:760px;font-family:var(--display-font);letter-spacing:-.055em;font-size:clamp(3rem,7vw,6.5rem);line-height:.92}.app-shell .quick-booking{background:var(--surface-1);box-shadow:var(--shadow);border-radius:16px}.app-shell .catalog-section,.app-shell .promotion-section,.app-shell .showtimes-section{padding-top:clamp(48px,7vw,96px)}.app-shell .section-heading h2,.app-shell .detail-copy h1,.app-shell .cinemas-hero h1,.app-shell .records-heading h1,.app-shell .ticket-information h1,.app-shell .checkout-heading h1{font-family:var(--display-font)}.app-shell .movie-card,.app-shell .cinema-card,.app-shell .promotion-card,.app-shell .showtime-day,.app-shell .booking-record,.app-shell .ticket-card,.app-shell .checkout-card,.app-shell .countdown-card,.app-shell .seat-map-panel,.app-shell .seat-summary-panel{border-color:var(--border);background:var(--surface-1)}.app-shell .movie-card:hover,.app-shell .cinema-card:hover,.app-shell .booking-record:hover,.app-shell .ticket-card:hover{border-color:var(--accent);background:var(--surface-1);transform:translateY(-2px)}.admin-main main>.admin-page{max-width:1440px}.admin-shell .admin-panel,.admin-shell .admin-stat-card,.admin-shell .admin-table-wrap,.admin-shell .admin-entity-card,.admin-shell .admin-room-row,.admin-shell .admin-toolbar,.admin-shell .admin-modal,.admin-shell .tmdb-result,.admin-shell .tmdb-bulk-toolbar{border-color:var(--border);background:var(--surface-1)}.admin-shell .admin-stat-card:hover,.admin-shell .admin-entity-card:hover,.admin-shell .admin-room-row:hover{border-color:var(--accent);background:var(--surface-1)}.admin-shell .admin-stat-card strong,.admin-shell .admin-page .page-title{font-family:var(--display-font)}.admin-shell .admin-sidebar-nav a.active{border-color:var(--brand-border);background:var(--brand-tint);color:var(--accent-soft)}.admin-shell .admin-table th{background:var(--surface-2);color:var(--text-secondary)}.app-shell .topbar{background:var(--surface-1);height:76px;box-shadow:0 2px 10px #0e1b350d}.app-shell .topbar-inner{width:min(1440px,100% - 64px)}.app-shell .desktop-nav{gap:24px;margin-inline:auto}.app-shell .desktop-nav a{color:var(--text-secondary);border-radius:0;padding:10px 0 8px;font-size:.84rem;font-weight:600}.app-shell .desktop-nav a:hover,.app-shell .desktop-nav a.active{color:var(--accent);background:0 0}.app-shell .desktop-nav a.active{box-shadow:inset 0 -2px var(--accent)}.app-shell .topbar-actions{gap:12px}.app-shell .location-pill,.app-shell .search-button{background:var(--surface-2);color:var(--text-secondary)}.app-shell .login-button{min-height:42px;box-shadow:none;border-radius:8px;padding-inline:20px}.app-shell .customer-header-theme{display:inline-flex}.app-shell main>.spotlight-hero{width:100%;max-width:none;margin-inline:0}.app-shell .spotlight-hero,.app-shell .spotlight-content{min-height:640px}.app-shell .spotlight-content{width:min(1440px,100% - 64px);padding-bottom:64px}.app-shell .spotlight-shade{background:linear-gradient(90deg,#08101fe6 0%,#08101fa8 44%,#08101f29 100%),linear-gradient(#0000 34%,#08101fe6 100%)}.app-shell .spotlight-copy{max-width:760px}.app-shell .spotlight-copy h1{color:#f7faff;font-size:clamp(3rem,7vw,5.5rem);line-height:.94}.app-shell .spotlight-copy>p:not(.eyebrow){color:#e5edf7;max-width:620px}.app-shell .hero-badges{margin-bottom:18px}.app-shell .hero-badges .format-badge,.app-shell .hero-badges .rating-badge{color:#f7faff;background:#08101f99;border-color:#ffffff47}.app-shell main>.quick-booking,.app-shell main>.catalog-section,.app-shell main>.promotion-section{width:min(1440px,100% - 64px)}.app-shell .quick-booking{background:var(--surface-1);border-radius:12px;margin-top:-40px;padding:24px;box-shadow:0 18px 42px #0e1b3524}.app-shell .quick-booking-heading{display:none}.app-shell .quick-booking-grid{grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:16px}.app-shell .quick-step{color:var(--text-secondary);gap:6px;font-size:.72rem;font-weight:700}.app-shell .quick-step>span{text-transform:uppercase;letter-spacing:.1em}.app-shell .quick-step b{display:none}.app-shell .quick-step select{background:var(--surface-2);width:100%;color:var(--text-body)}.app-shell .quick-booking-submit{min-height:44px;box-shadow:none;white-space:nowrap;border-radius:8px;padding-inline:20px}.app-shell .catalog-section,.app-shell .promotion-section{padding-top:72px}.app-shell .catalog-heading{margin-bottom:24px}.app-shell .catalog-section>.filter-tabs{background:var(--surface-2);border-radius:8px;top:72px}.app-shell .filter-chip{background:0 0;border-radius:6px}.app-shell .filter-chip.active{border-color:var(--border);background:var(--surface-1);color:var(--accent)}.app-shell .movie-grid{gap:24px}.app-shell .movie-card{border-radius:12px;box-shadow:0 4px 14px #0e1b350d}.app-shell .movie-card:hover{transform:translateY(-2px)}.app-shell .movie-info{padding:16px}.app-shell .movie-info h3{font-size:1rem}.app-shell .movie-info>p{color:var(--text-secondary)}.app-shell .movie-starting-price{color:var(--accent);margin-top:6px;font-weight:700;display:block}.app-shell .movie-showtimes a,.app-shell .showtime-placeholder{background:var(--surface-2);color:var(--text-body)}.app-shell .movie-buy{color:var(--accent);border-radius:8px}.app-shell .promotion-section{padding-bottom:72px}.app-shell .promotion-banner{border:1px solid var(--border);background:var(--surface-1);border-radius:12px;align-items:center;gap:20px;padding:24px 28px;display:flex;position:relative;overflow:hidden}.app-shell .promotion-banner-icon{background:var(--brand-tint);width:64px;height:64px;color:var(--accent);border-radius:10px;flex:0 0 64px;place-items:center;font-size:1.8rem;display:grid}.app-shell .promotion-banner-copy{flex:1}.app-shell .promotion-banner-copy h2{color:var(--text-primary);margin:4px 0 5px;font-size:clamp(1.2rem,2vw,1.7rem)}.app-shell .promotion-banner-copy p{color:var(--text-secondary);margin:0;font-size:.82rem}.app-shell .promotion-banner .secondary{background:var(--surface-1);flex:none}.app-shell .mobile-nav .theme-switch{border:1px solid var(--border);background:var(--surface-2);min-width:46px;min-height:40px;color:var(--text-secondary);border-radius:8px;padding:4px 5px;display:grid}.app-shell .mobile-nav .theme-switch>span:first-child{width:16px;height:16px}.app-shell main>.cinemas-page{width:min(1440px,100% - 64px);padding-bottom:80px}.app-shell .cinemas-hero{border-bottom:1px solid var(--border);background:var(--canvas-raised);margin-inline:-32px;padding:64px 32px 48px}.app-shell .cinemas-hero-inner{text-align:center;width:min(920px,100%);margin:0 auto}.app-shell .cinemas-hero .page-heading{display:block}.app-shell .cinemas-hero .page-title{font-size:clamp(2.3rem,5vw,4rem)}.app-shell .cinemas-hero>.cinemas-hero-inner>p{max-width:720px;color:var(--text-secondary);margin:14px auto 0;line-height:1.6}.app-shell .cinemas-hero-status{border:1px solid var(--brand-border-soft);background:var(--brand-tint);color:var(--accent);letter-spacing:.12em;border-radius:999px;align-items:center;gap:8px;margin-bottom:16px;padding:7px 12px;font-size:.68rem;font-weight:800;display:inline-flex}.app-shell .cinemas-hero-status>span:not(.status-dot){color:var(--text-muted)}.app-shell .status-dot,.app-shell .cinema-open-status>span{background:var(--success-text);border-radius:50%;width:7px;height:7px}.app-shell .cinema-hero-stats{grid-template-columns:repeat(3,1fr);gap:10px;max-width:620px;margin:28px auto 0;display:grid}.app-shell .cinema-hero-stats div{border:1px solid var(--border);background:var(--surface-1);border-radius:10px;gap:4px;padding:14px 10px;display:grid}.app-shell .cinema-hero-stats strong{color:var(--accent);font-family:var(--display-font);font-variant-numeric:tabular-nums;font-size:1.25rem}.app-shell .cinema-hero-stats span{color:var(--text-secondary);font-size:.68rem}.app-shell .cinema-directory{padding-top:56px}.app-shell .cinema-directory-toolbar{justify-content:space-between;align-items:end;gap:24px;margin-bottom:20px;display:flex}.app-shell .cinema-directory-toolbar h2{color:var(--text-primary);font-family:var(--display-font);margin:0;font-size:clamp(1.5rem,3vw,2.2rem)}.app-shell .cinema-directory-toolbar .location-pill{flex:none}.app-shell .cinema-search{max-width:640px;margin:0 0 10px;display:block;position:relative}.app-shell .cinema-search>span:not(.sr-only){z-index:1;color:var(--text-muted);font-size:1.2rem;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.app-shell .cinema-search input{background:var(--surface-1);width:100%;padding-left:40px}.app-shell .cinema-directory-note{color:var(--text-muted);margin:0 0 24px;font-size:.76rem}.app-shell .cinema-directory-note strong{color:var(--accent)}.app-shell .cinema-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.app-shell .cinema-card{background:var(--surface-1);border-radius:14px;box-shadow:0 8px 24px #0e1b3514}.app-shell .cinema-card-art{background:var(--surface-3);min-height:208px;padding:16px;position:relative}.app-shell .cinema-art-1{background:var(--brand-soft)}.app-shell .cinema-art-2{background:var(--surface-2)}.app-shell .cinema-art-mark{color:var(--brand-border);font-family:var(--display-font);letter-spacing:-.08em;font-size:4.6rem;font-weight:700;position:absolute;bottom:12px;left:16px}.app-shell .cinema-art-badges{flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:14px;left:16px}.app-shell .cinema-card-art .format-chip{border-color:var(--brand-border-soft);background:var(--brand-tint);color:var(--accent);border-radius:4px;font-size:.6rem;font-weight:800}.app-shell .cinema-room-count{border:1px solid var(--border);background:var(--canvas-raised);color:var(--text-secondary);border-radius:5px;padding:6px 8px;font-size:.66rem;font-weight:700;position:absolute;bottom:14px;right:14px}.app-shell .cinema-card-body{padding:20px}.app-shell .cinema-card-heading{align-items:start}.app-shell .cinema-card-heading h2{font-size:1.1rem}.app-shell .cinema-open-status{color:var(--success-text);white-space:nowrap;align-items:center;gap:5px;padding-top:3px;font-size:.64rem;display:inline-flex}.app-shell .cinema-address{min-height:42px;color:var(--text-secondary);gap:8px;margin:14px 0 10px;font-size:.76rem;line-height:1.5;display:flex}.app-shell .cinema-address>span:first-child{color:var(--accent);flex:none}.app-shell .cinema-meta{color:var(--text-muted);flex-wrap:wrap;gap:8px 16px;font-size:.72rem;display:flex}.app-shell .price-list{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;margin:18px 0;padding:12px}.app-shell .price-list div{font-size:.72rem}.app-shell .cinema-actions>*{border-radius:8px;min-height:42px;padding:10px 9px;font-size:.7rem}.app-shell main>.movie-detail-hero{background-color:var(--surface-1);border-bottom:1px solid var(--border);width:100%;max-width:none;min-height:0;margin-inline:0}.app-shell .movie-detail-hero:before{content:"";z-index:0;background:linear-gradient(180deg, #ffffff94, var(--surface-1) 82%);position:absolute;inset:0}[data-theme=dark] .app-shell .movie-detail-hero:before{background:linear-gradient(180deg, #08101f94, var(--surface-1) 82%)}.app-shell .detail-hero-shade{z-index:0;background:linear-gradient(90deg, #f6f8fbd6, #f6f8fbf0 58%, var(--surface-1) 100%)}[data-theme=dark] .app-shell .detail-hero-shade{background:linear-gradient(90deg, #08101fc7, #08101fe6 58%, var(--surface-1) 100%)}.app-shell .movie-detail-grid{grid-template-columns:280px minmax(0,1fr);gap:48px;width:min(1280px,100% - 64px);padding:48px 0 56px}.app-shell .detail-poster-wrap{border-color:var(--border);border-radius:12px;box-shadow:0 18px 36px #0e1b3524}.app-shell .detail-poster-wrap .format-badge{border-color:var(--border);background:var(--surface-1);color:var(--accent);justify-content:space-between;inset:auto 12px 12px}.app-shell .detail-copy{align-self:center;min-width:0}.app-shell .detail-copy .metadata-row span{border:1px solid var(--border);background:var(--surface-2);color:var(--text-body);border-radius:4px}.app-shell .detail-copy h1{max-width:850px;color:var(--text-primary);font-family:var(--display-font);margin:10px 0 5px;font-size:clamp(2.4rem,4.5vw,4.2rem);line-height:.98}.app-shell .original-title{color:var(--text-muted)}.app-shell .detail-meta-grid{background:0 0;border-width:1px 0;border-radius:0;margin:20px 0;padding:16px 0}.app-shell .detail-meta-grid small{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.app-shell .detail-meta-grid strong{color:var(--text-body)}.app-shell .detail-description{max-width:760px;color:var(--text-secondary)}.app-shell .detail-cast{max-width:780px;color:var(--text-body);background:0 0;border:0;margin:18px 0;padding:0}.app-shell .detail-cast span{color:var(--text-muted)}.app-shell .detail-cast strong{color:var(--text-body)}.app-shell .showtimes-section{width:min(1280px,100% - 64px);margin-inline:auto;padding:64px 0 88px}.app-shell .showtimes-section .section-heading{align-items:end;margin-bottom:28px}.app-shell .showtimes-section .section-heading h2{font-size:clamp(2rem,4vw,3rem)}.app-shell .showtimes-section .section-heading p:not(.eyebrow){color:var(--text-secondary)}.app-shell .showtime-info{border:1px solid var(--border);background:var(--surface-1);color:var(--text-muted);border-radius:8px;padding:9px 12px;font-size:.7rem}.app-shell .showtime-filter-label{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;margin-bottom:9px;font-size:.7rem;font-weight:800;display:block}.app-shell .date-strip{gap:10px;margin-bottom:24px}.app-shell .date-chip{background:var(--surface-1);border-radius:10px;min-width:106px}.app-shell .date-chip.active{border-color:var(--accent);background:var(--accent)}.app-shell .date-chip.active small,.app-shell .date-chip.active strong,.app-shell .date-chip.active span{color:#fff}.app-shell .showtime-toolbar{background:var(--surface-1);border-radius:12px;align-items:end;padding:18px}.app-shell .showtime-toolbar>label{min-width:min(360px,100%);color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;gap:6px;font-size:.7rem;font-weight:800;display:grid}.app-shell .showtime-toolbar select{background:var(--surface-2);min-height:42px;color:var(--text-body)}.app-shell .format-filters{align-items:center;margin-left:auto}.app-shell .format-filters>span{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:800}.app-shell .showtime-days{gap:18px}.app-shell .showtime-day{background:var(--surface-1);border-radius:12px;padding:0;overflow:hidden;box-shadow:0 8px 24px #0e1b350f}.app-shell .showtime-day-heading{background:var(--surface-2);align-items:center;padding:18px 20px}.app-shell .showtime-day-heading h3{font-size:1.05rem}.app-shell .showtime-day-heading p{color:var(--text-muted)}.app-shell .showtime-count{color:var(--accent);font-size:.7rem;font-weight:800}.app-shell .showtime-list{gap:12px;padding:20px}.app-shell .showtime-card{background:var(--surface-1);border-radius:10px;min-width:150px;padding:14px}.app-shell .showtime-card strong{color:var(--accent);font-family:var(--display-font);font-size:1.3rem}.app-shell .showtime-card span{color:var(--text-muted)}.app-shell .showtime-card small{background:var(--brand-soft);color:var(--accent-deep)}@media (width<=1100px) and (width>=721px){.app-shell .cinema-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.app-shell .topbar{height:60px}.app-shell .topbar .location-pill{display:none}.app-shell main>.cinemas-page{width:calc(100% - 32px)}.app-shell .cinemas-hero{margin-inline:-16px;padding:48px 16px 32px}.app-shell .cinema-directory{padding-top:40px}.app-shell .cinema-directory-toolbar{flex-direction:column;align-items:flex-start;gap:14px}.app-shell .cinema-directory-toolbar .location-pill{display:inline-flex}.app-shell .cinema-hero-stats{gap:8px}.app-shell .cinema-hero-stats strong{font-size:1rem}.app-shell .cinema-hero-stats span{font-size:.6rem}.app-shell .cinema-grid{grid-template-columns:1fr;gap:16px}.app-shell .cinema-card-art{min-height:176px}.app-shell .cinema-card-body{padding:16px}.app-shell .cinema-card-heading h2{font-size:1rem}.app-shell .cinema-address{min-height:0}.app-shell .topbar-inner{width:calc(100% - 32px)}.app-shell .customer-header-theme{display:none}.app-shell .spotlight-hero,.app-shell .spotlight-content{min-height:520px}.app-shell main>.movie-detail-hero{min-height:0}.app-shell .movie-detail-grid{width:calc(100% - 32px);padding:32px 0 40px;display:block}.app-shell .detail-poster-wrap{width:min(220px,68vw);margin:0 auto 12px}.app-shell .detail-copy h1{margin-top:10px;font-size:clamp(2rem,10vw,3rem)}.app-shell .showtimes-section{width:calc(100% - 32px);padding:48px 0 64px}.app-shell .showtimes-section .section-heading{flex-direction:column;align-items:start}.app-shell .showtime-info{width:100%}.app-shell .date-strip{margin-inline:-2px}.app-shell .showtime-toolbar{flex-direction:column;align-items:stretch;gap:14px}.app-shell .showtime-toolbar>label{min-width:0}.app-shell .format-filters{flex-wrap:wrap;align-items:flex-start;margin-left:0}.app-shell .showtime-day-heading{flex-direction:column;align-items:flex-start;gap:6px}.app-shell .showtime-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.app-shell .showtime-card{min-width:0}.app-shell .spotlight-content{width:100%;padding:0 16px 32px}.app-shell .spotlight-copy h1{font-size:clamp(2.3rem,12vw,4rem)}.app-shell main>.quick-booking,.app-shell main>.catalog-section,.app-shell main>.promotion-section{width:calc(100% - 32px)}.app-shell .quick-booking{border-radius:12px;margin-top:-18px;padding:16px}.app-shell .quick-booking-heading{display:flex}.app-shell .quick-booking-grid{grid-template-columns:1fr}.app-shell .quick-booking-submit{width:100%}.app-shell .catalog-section,.app-shell .promotion-section{padding-top:48px}.app-shell .catalog-section>.filter-tabs{top:auto}.app-shell .promotion-section{padding-bottom:48px}.app-shell .promotion-banner{flex-wrap:wrap;align-items:flex-start;gap:14px;padding:18px}.app-shell .promotion-banner-icon{flex-basis:48px;width:48px;height:48px;font-size:1.3rem}.app-shell .promotion-banner-copy{flex-basis:calc(100% - 64px)}.app-shell .promotion-banner-copy h2{font-size:1.08rem}.app-shell .promotion-banner-copy p{font-size:.72rem;line-height:1.5}.app-shell .promotion-banner .secondary{width:100%}.admin-login-theme{top:14px;right:16px}}.app-shell .booking-steps{border:1px solid var(--border);background:var(--surface-1);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:4px 0 18px;padding:10px;display:grid}.app-shell .booking-step{min-height:38px;color:var(--text-muted);justify-content:center;align-items:center;gap:8px;font-size:.7rem;font-weight:700;display:flex}.app-shell .booking-step span{border:1px solid var(--border-strong);border-radius:50%;place-items:center;width:23px;height:23px;font-size:.65rem;display:grid}.app-shell .booking-step.complete{color:var(--success-text)}.app-shell .booking-step.complete span{border-color:var(--success-text);background:var(--success-bg)}.app-shell .booking-step.active{color:var(--accent)}.app-shell .booking-step.active span{border-color:var(--accent);background:var(--accent);color:#fff}.app-shell .booking-flow-page,.app-shell .checkout-page{width:min(1280px,100% - 64px);padding-bottom:88px}.app-shell .showtime-meta-bar{background:var(--surface-1);border-radius:12px;gap:24px;padding:20px;box-shadow:0 8px 24px #0e1b350f}.app-shell .showtime-meta-movie h1{color:var(--text-primary);font-family:var(--display-font);font-size:1.35rem}.app-shell .showtime-meta-item strong{color:var(--text-primary)}.app-shell .showtime-meta-item span{color:var(--text-secondary)}.app-shell .seat-workspace{grid-template-columns:minmax(0,1fr) 350px;gap:20px;margin-top:20px}.app-shell .seat-map-panel,.app-shell .seat-summary-panel,.app-shell .checkout-card,.app-shell .sepay-qr-panel{border-color:var(--border);background:var(--surface-1);border-radius:12px;box-shadow:0 8px 24px #0e1b350f}.app-shell .seat-map-panel{padding:24px}.app-shell .seat-map-panel .panel-heading{border-bottom:1px solid var(--border);padding-bottom:16px}.app-shell .seat-map-panel .panel-heading h2,.app-shell .seat-summary-panel .summary-heading h2{color:var(--text-primary);font-family:var(--display-font)}.app-shell .screen-curve{border-top-color:var(--accent);box-shadow:0 -10px 30px var(--brand-shadow);margin-top:48px}.app-shell .screen-curve span{border-color:var(--border-strong);background:var(--surface-1);color:var(--accent)}.app-shell .screen-note{color:var(--text-muted);margin-bottom:28px}.app-shell .seat-map-scroll{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;padding:16px 8px 12px}.app-shell .seat-map{gap:12px;min-width:600px}.app-shell .seat-row-items{gap:8px}.app-shell .seat{background:var(--surface-1);width:34px;height:34px;color:var(--text-body);border-radius:8px}.app-shell .seat.standard.available{border-color:var(--border-strong)}.app-shell .seat.vip{border-color:var(--accent);background:var(--brand-soft);color:var(--accent-deep)}.app-shell .seat.couple{border-color:var(--warning-text);background:var(--warning-bg);color:var(--warning-text)}.app-shell .seat.chosen{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:none}.app-shell .seat-legend{color:var(--text-secondary);gap:12px 20px;margin-top:18px;padding-top:16px}.app-shell .seat-legend .seat{width:18px;height:18px}.app-shell .seat-summary-panel{padding:22px;top:92px}.app-shell .summary-heading{padding-bottom:16px}.app-shell .summary-heading span{color:var(--accent);font-weight:700}.app-shell .summary-movie,.app-shell .selected-seat-list{border-color:var(--border)}.app-shell .summary-movie strong,.app-shell .selected-seat strong{color:var(--text-primary)}.app-shell .summary-movie span,.app-shell .selected-seat small,.app-shell .security-note{color:var(--text-secondary)}.app-shell .summary-total strong,.app-shell .summary-line strong{color:var(--accent)}.app-shell .summary-cta{box-shadow:none}.app-shell .checkout-page{padding-top:8px}.app-shell .checkout-heading{border-bottom-color:var(--border);padding:20px 0 22px}.app-shell .checkout-heading .page-title{font-family:var(--display-font)}.app-shell .checkout-grid{grid-template-columns:minmax(0,7fr) minmax(330px,5fr);gap:20px}.app-shell .checkout-side{top:92px}.app-shell .checkout-card{padding:22px}.app-shell .booking-movie-card h2{color:var(--text-primary);font-family:var(--display-font)}.app-shell .booking-movie-card p:not(.eyebrow),.app-shell .booking-venue span{color:var(--text-secondary)}.app-shell .booking-venue,.app-shell .checkout-item{background:var(--surface-2)}.app-shell .checkout-item strong,.app-shell .checkout-item>b{color:var(--text-primary)}.app-shell .checkout-timer-card{border-color:var(--accent);background:var(--brand-soft)}.app-shell .timer-bar-wrap{background:var(--surface-3);height:7px}.app-shell .timer-bar{background:var(--accent)}.app-shell .timer-label{color:var(--text-secondary)}.app-shell .timer-label strong{color:var(--accent);font-variant-numeric:tabular-nums}.app-shell .checkout-expired,.app-shell .checkout-confirmed,.app-shell .checkout-cancelled{border-radius:8px;margin:0;padding:14px;font-weight:700}.app-shell .checkout-expired{background:var(--warning-bg);color:var(--warning-text)}.app-shell .checkout-confirmed{background:var(--success-bg);color:var(--success-text)}.app-shell .checkout-cancelled{background:var(--danger-bg);color:var(--danger-text)}.app-shell .sepay-qr-panel{text-align:left;align-items:stretch;padding:24px}.app-shell .sepay-qr-panel h2{color:var(--text-primary);font-family:var(--display-font);font-size:1.35rem}.app-shell .sepay-qr-panel .qr-image{border-color:var(--border-strong);border-radius:8px;align-self:center;width:240px;height:240px;padding:10px}.app-shell .qr-bank-info{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;padding:12px}.app-shell .qr-info-row strong{color:var(--text-primary)}.app-shell .qr-payment-code{color:var(--accent)!important}.app-shell .qr-important{background:var(--warning-bg);color:var(--warning-text)}@media (width<=720px){.app-shell .booking-flow-page,.app-shell .checkout-page{width:calc(100% - 32px);padding-bottom:64px}.app-shell .booking-steps{gap:3px;padding:7px}.app-shell .booking-step{text-align:center;gap:4px;min-height:46px;font-size:.58rem;display:grid}.app-shell .booking-step span{margin-inline:auto}.app-shell .showtime-meta-bar{align-items:flex-start;gap:14px;padding:15px}.app-shell .showtime-meta-movie{flex-basis:100%}.app-shell .showtime-meta-item{flex:1;min-width:0;padding-left:12px}.app-shell .seat-map-panel{padding:16px}.app-shell .seat-map-scroll{margin-inline:-4px}.app-shell .seat-summary-panel{padding:18px;position:static}.app-shell .checkout-heading{flex-direction:column;align-items:flex-start;gap:12px}.app-shell .checkout-grid{grid-template-columns:1fr}.app-shell .checkout-side{position:static}.app-shell .booking-movie-card{grid-template-columns:88px minmax(0,1fr);gap:12px}.app-shell .booking-movie-cover{height:132px}.app-shell .sepay-qr-panel .qr-image{width:220px;height:220px}}.admin-shell .admin-page{max-width:1280px;padding:32px 40px 72px}.admin-shell .admin-dashboard-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px;display:flex}.admin-shell .admin-dashboard-heading .page-title{font-family:var(--display-font);margin:0;font-size:clamp(2rem,3vw,2.75rem)}.admin-shell .admin-dashboard-heading .admin-lead{max-width:680px;margin:10px 0 0}.admin-shell .admin-dashboard-actions{flex:none;align-items:center;gap:9px;display:flex}.admin-shell .admin-dashboard-actions>*{white-space:nowrap}.admin-shell .admin-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:0}.admin-shell .admin-stat-card{background:var(--surface-1);border-radius:12px;min-height:168px;padding:18px;box-shadow:0 5px 18px #0e1b350f}.admin-shell .admin-stat-card:hover{border-color:var(--accent);transform:translateY(-2px)}.admin-shell .admin-stat-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-shell .admin-stat-label{color:var(--text-secondary);letter-spacing:.04em;font-size:.7rem}.admin-shell .admin-stat-icon{border:1px solid var(--border);background:var(--surface-2);width:31px;height:31px;color:var(--accent);border-radius:8px;place-items:center;font-size:1rem;display:grid}.admin-shell .admin-stat-card strong{color:var(--text-primary);font-family:var(--display-font);font-variant-numeric:tabular-nums;margin-top:13px;font-size:2.25rem}.admin-shell .admin-stat-card>span:last-child{color:var(--text-secondary);align-items:center;gap:6px;margin-top:auto;font-size:.7rem;display:flex}.admin-shell .admin-stat-card>span:last-child b{color:var(--accent)}.admin-shell .admin-stat-card-live>span:last-child i{background:var(--success-text);border-radius:50%;width:7px;height:7px}.admin-shell .admin-ops-overview{border:1px solid var(--border);background:var(--surface-1);border-radius:12px;margin-top:18px;padding:18px;box-shadow:0 5px 18px #0e1b350f}.admin-shell .admin-ops-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:15px;display:flex}.admin-shell .admin-ops-heading h2{color:var(--text-primary);font-family:var(--display-font);margin:0;font-size:1rem}.admin-shell .admin-ops-heading time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.66rem}.admin-shell .admin-ops-overview>.state-card{min-height:92px;margin:0}.admin-shell .admin-ops-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.admin-shell .admin-ops-card{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;grid-template-columns:34px minmax(0,1fr) 7px;align-items:center;gap:10px;min-height:82px;padding:13px;display:grid;position:relative}.admin-shell .admin-ops-icon{background:var(--surface-1);width:34px;height:34px;color:var(--accent);font-family:var(--display-font);border-radius:8px;place-items:center;font-size:.68rem;font-weight:700;display:grid}.admin-shell .admin-ops-card div{min-width:0}.admin-shell .admin-ops-card small,.admin-shell .admin-ops-card strong,.admin-shell .admin-ops-card em{display:block}.admin-shell .admin-ops-card small{color:var(--text-muted);margin-bottom:4px;font-size:.6rem}.admin-shell .admin-ops-card strong{color:var(--text-primary);text-overflow:ellipsis;font-size:.69rem;line-height:1.35;overflow:hidden}.admin-shell .admin-ops-card em{color:var(--text-muted);margin-top:3px;font-size:.56rem;font-style:normal;line-height:1.35}.admin-shell .admin-ops-card>i{background:var(--border-strong);border-radius:50%;width:7px;height:7px}.admin-shell .admin-ops-card.healthy>i{background:var(--success-text)}.admin-shell .admin-ops-card.warning>i{background:var(--warning-text)}.admin-shell .admin-ops-card.danger>i{background:var(--danger-text)}.admin-shell .admin-dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:18px;margin-top:18px}.admin-shell .admin-panel{background:var(--surface-1);border-radius:12px;padding:0;overflow:hidden;box-shadow:0 5px 18px #0e1b350f}.admin-shell .admin-panel-heading{background:var(--surface-2);align-items:center;min-height:82px;margin:0;padding:16px 18px}.admin-shell .admin-panel-heading h2{color:var(--text-primary);font-family:var(--display-font);font-size:1rem}.admin-shell .admin-panel-heading small{color:var(--text-muted);margin-top:4px;font-size:.65rem;display:block}.admin-shell .admin-panel-heading>a{color:var(--accent);font-weight:700}.admin-shell .admin-recent-list{padding:0 18px}.admin-shell .admin-recent-row{border-bottom-color:var(--border);grid-template-columns:58px minmax(0,1fr) 132px 92px;gap:12px;min-height:68px;padding:12px 0}.admin-shell .admin-recent-time{color:var(--accent);font-family:var(--display-font);font-variant-numeric:tabular-nums;font-size:.9rem}.admin-shell .admin-recent-row strong{color:var(--text-primary);font-size:.75rem}.admin-shell .admin-recent-row small,.admin-shell .admin-recent-date{color:var(--text-muted)}.admin-shell .admin-recent-date{white-space:normal;font-size:.62rem;line-height:1.4}.admin-shell .admin-operation-status{color:var(--text-muted);white-space:nowrap;justify-content:flex-end;align-items:center;gap:5px;font-size:.62rem;display:inline-flex}.admin-shell .admin-operation-status i{background:var(--border-strong);border-radius:50%;width:6px;height:6px}.admin-shell .admin-operation-status.live{color:var(--information-text)}.admin-shell .admin-operation-status.live i{background:var(--accent)}.admin-shell .admin-operation-status.soon{color:var(--warning-text)}.admin-shell .admin-operation-status.soon i{background:var(--warning-text)}.admin-shell .admin-operation-status.scheduled{color:var(--text-secondary)}.admin-shell .admin-quick-links{gap:0;padding:8px 12px 12px}.admin-shell .admin-quick-links a{border-bottom:1px solid var(--border);border-radius:0;grid-template-columns:27px minmax(0,1fr) auto;gap:2px 9px;padding:13px 8px}.admin-shell .admin-quick-links a:last-child{border-bottom:0}.admin-shell .admin-quick-links a>span{color:var(--accent)}.admin-shell .admin-quick-links strong{color:var(--text-primary);font-size:.73rem}.admin-shell .admin-quick-links small{color:var(--text-secondary)}.admin-shell .admin-quick-links b{color:var(--accent);grid-row:span 2;align-self:center;font-size:.9rem}@media (width<=900px){.admin-shell .admin-page{padding-inline:24px}.admin-shell .admin-dashboard-heading{flex-direction:column;align-items:flex-start}.admin-shell .admin-dashboard-actions{width:100%}.admin-shell .admin-dashboard-actions>*{flex:1;justify-content:center}.admin-shell .admin-recent-row{grid-template-columns:58px minmax(0,1fr) 92px}.admin-shell .admin-operation-status{display:none}.admin-shell .admin-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.admin-shell .admin-page{width:calc(100% - 32px);padding:24px 0 48px}.admin-shell .admin-stat-grid{grid-template-columns:1fr}.admin-shell .admin-ops-overview{padding:14px}.admin-shell .admin-ops-heading{flex-direction:column;align-items:flex-start;gap:5px}.admin-shell .admin-ops-grid,.admin-shell .admin-dashboard-grid{grid-template-columns:1fr}.admin-shell .admin-panel-heading{flex-direction:column;align-items:flex-start;gap:8px}.admin-shell .admin-recent-list{padding-inline:14px}.admin-shell .admin-recent-row{grid-template-columns:52px minmax(0,1fr);gap:7px}.admin-shell .admin-recent-date{grid-column:2}}.app-shell .records-page,.app-shell .ticket-detail-page{width:min(1280px,100% - 64px);padding-top:28px;padding-bottom:88px}.app-shell .records-heading{border-bottom-color:var(--border);padding:12px 0 28px}.app-shell .records-heading .page-title{font-family:var(--display-font);font-size:clamp(2.2rem,4vw,3.5rem)}.app-shell .records-heading>p{max-width:720px;color:var(--text-secondary);line-height:1.6}.app-shell .record-toolbar{border-bottom-color:var(--border);align-items:center;padding:18px 0}.app-shell .record-toolbar .filter-tabs{gap:6px;margin:0}.app-shell .record-toolbar .filter-chip{background:var(--surface-1);color:var(--text-secondary);border-radius:7px}.app-shell .record-toolbar .filter-chip.active{border-color:var(--accent);background:var(--accent);color:#fff}.app-shell .record-search input{background:var(--surface-1)}.app-shell .record-list,.app-shell .ticket-list{gap:14px;padding-top:22px}.app-shell .booking-record,.app-shell .ticket-card{background:var(--surface-1);border-radius:12px;gap:24px;padding:18px;box-shadow:0 6px 18px #0e1b350f}.app-shell .record-main,.app-shell .ticket-card-info{gap:15px}.app-shell .ticket-poster-image{border-radius:8px;width:78px;height:116px}.app-shell .record-status{color:var(--text-muted)}.app-shell .record-copy h2,.app-shell .ticket-card h2{color:var(--text-primary);font-family:var(--display-font);font-size:1.08rem}.app-shell .record-copy p,.app-shell .ticket-card p,.app-shell .record-details{color:var(--text-secondary)}.app-shell .record-total{min-width:170px}.app-shell .record-total strong{color:var(--text-primary);font-family:var(--display-font);font-variant-numeric:tabular-nums}.app-shell .record-action,.app-shell .ticket-card-stub strong,.app-shell .ticket-card-stub span{color:var(--accent)}.app-shell .ticket-card-stub{border-left-color:var(--border-strong)}.app-shell .ticket-card-stub .qr-code{border-color:var(--text-primary);background:var(--text-primary);width:96px;height:96px}.app-shell .ticket-card-stub .qr-code i.filled{background:var(--qr-ink)}.app-shell .ticket-detail-layout{grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:48px;padding-top:22px}.app-shell .ticket-stub-large{border-color:var(--border);background:var(--surface-1);border-radius:14px;gap:18px;padding:24px;box-shadow:0 10px 28px #0e1b3514}.app-shell .ticket-qr-frame .qr-code{border-color:var(--qr-ink);background:var(--qr-ink)}.app-shell .ticket-qr-frame .qr-code i.filled{background:var(--qr-ink)}.app-shell .ticket-information{padding:12px 0}.app-shell .ticket-information .page-title{color:var(--text-primary);font-family:var(--display-font)}.app-shell .ticket-intro{color:var(--text-secondary)}.app-shell .ticket-information dl{border-top-color:var(--border)}.app-shell .ticket-information dl>div{border-bottom-color:var(--border)}.app-shell .ticket-information dt{color:var(--text-muted)}.app-shell .ticket-information dd{color:var(--text-body)}@media (width<=720px){.app-shell .records-page,.app-shell .ticket-detail-page{width:calc(100% - 32px);padding-top:18px;padding-bottom:64px}.app-shell .records-heading .page-heading{flex-direction:column;align-items:flex-start;gap:10px}.app-shell .record-toolbar{flex-direction:column;align-items:stretch;gap:12px}.app-shell .record-toolbar .filter-tabs{max-width:100%;overflow-x:auto}.app-shell .record-search{width:100%}.app-shell .booking-record,.app-shell .ticket-card{gap:14px;padding:14px}.app-shell .record-main,.app-shell .ticket-card-info{align-items:flex-start}.app-shell .ticket-poster-image{width:62px;height:92px}.app-shell .record-copy h2,.app-shell .ticket-card h2{font-size:.92rem}.app-shell .record-total{border-top:1px solid var(--border);align-items:flex-start;width:100%;min-width:0;padding-top:12px}.app-shell .ticket-card-stub{border-left:0;border-top-color:var(--border-strong);align-items:center}.app-shell .ticket-detail-layout{gap:24px}.app-shell .ticket-stub-large{padding:18px}.app-shell .ticket-information{padding:0}}.admin-shell .admin-page{width:min(1440px,100% - 64px);max-width:none;padding:40px 0 80px}.admin-shell .admin-page>.page-heading,.admin-shell .admin-page-header{align-items:end;margin-bottom:24px}.admin-shell .admin-page>.page-heading .page-title,.admin-shell .admin-page-header h1{color:var(--text-primary);font-family:var(--display-font);letter-spacing:-.045em;font-size:clamp(2rem,3vw,2.75rem)}.admin-shell .admin-page>.page-heading .eyebrow,.admin-shell .admin-page-header .eyebrow{color:var(--accent)}.admin-shell .admin-lead,.admin-shell .admin-copy{color:var(--text-secondary)}.admin-shell .admin-toolbar{background:var(--surface-2);border-radius:10px;align-items:center;margin:0 0 18px;padding:12px}.admin-shell .admin-toolbar input,.admin-shell .admin-toolbar select{border-color:var(--border);background:var(--surface-1);min-height:42px}.admin-shell .admin-toolbar select{min-width:190px}.admin-shell .admin-checkbox{color:var(--text-secondary)}.admin-shell .admin-table-wrap{background:var(--surface-1);border-radius:12px;box-shadow:0 6px 20px #0e1b350f}.admin-shell .admin-table{min-width:820px;font-size:.78rem}.admin-shell .admin-table th{background:var(--surface-2);color:var(--text-secondary);letter-spacing:.12em;padding:13px 16px;font-size:.62rem}.admin-shell .admin-table td{border-bottom-color:var(--border);color:var(--text-secondary);padding:15px 16px}.admin-shell .admin-table td strong{color:var(--text-primary)}.admin-shell .admin-table td small{color:var(--text-muted)}.admin-shell .admin-table tr:hover td{background:var(--surface-2)}.admin-shell .admin-actions,.admin-shell .admin-card-footer,.admin-shell .form-actions,.admin-shell .action-button-group{gap:7px}.admin-shell .compact-button,.admin-shell .btn-sm{border-radius:7px;min-height:34px;font-size:.69rem}.admin-shell .admin-entity-card{background:var(--surface-1);border-radius:12px;box-shadow:0 6px 20px #0e1b350f}.admin-shell .admin-card-mark,.admin-shell .admin-card-mark-1,.admin-shell .admin-card-mark-2{background:var(--brand-soft);min-height:210px;color:var(--accent)}.admin-shell .admin-card-mark-1{background:var(--surface-3)}.admin-shell .admin-card-mark-2{background:var(--information-bg)}.admin-shell .admin-entity-content{padding:18px}.admin-shell .admin-card-heading h2,.admin-shell .admin-panel-heading h2,.admin-shell .admin-room-row h2,.admin-shell .admin-seat-actions-heading h2{color:var(--text-primary);font-family:var(--display-font)}.admin-shell .admin-count{border-color:var(--border);background:var(--surface-2);color:var(--accent)}.admin-shell .admin-address,.admin-shell .admin-room-row>div:first-child>span,.admin-shell .admin-seat-actions-heading p:not(.eyebrow){color:var(--text-secondary)}.admin-shell .admin-card-footer>*{min-height:38px}.admin-shell .admin-breadcrumb{color:var(--text-muted)}.admin-shell .admin-breadcrumb a{color:var(--accent)}.admin-shell .admin-breadcrumb strong{color:var(--text-body)}.admin-shell .admin-room-list{gap:10px}.admin-shell .admin-room-row{background:var(--surface-1);border-radius:10px;padding:16px 18px}.admin-shell .admin-seat-layout{grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:16px}.admin-shell .admin-panel,.admin-shell .admin-seat-actions{border-color:var(--border);background:var(--surface-1);border-radius:12px;box-shadow:0 6px 20px #0e1b350d}.admin-shell .admin-seat-layout>.admin-panel:first-child{top:20px}.admin-shell .admin-panel-heading{border-bottom-color:var(--border)}.admin-shell .admin-panel-heading>span,.admin-shell .admin-seat-managed{color:var(--text-muted)}.admin-shell .admin-seat-map{max-height:600px}.admin-shell .admin-seat{background:var(--surface-2);color:var(--text-body);border-radius:7px}.admin-shell .admin-seat-vip{border-color:var(--brand-border);background:var(--brand-soft);color:var(--information-text)}.admin-shell .admin-seat-couple{border-color:var(--warning-text);background:var(--warning-bg);color:var(--warning-text)}.admin-shell .admin-seat-action-row{border-color:var(--border);background:var(--surface-2);border-radius:8px}.admin-shell .admin-seat-action-row:hover{background:var(--surface-3)}.admin-shell .admin-seat-token{background:var(--surface-3);color:var(--text-body);border-radius:7px}.admin-shell .admin-seat-token-vip{background:var(--brand-soft);color:var(--information-text)}.admin-shell .admin-seat-token-couple{background:var(--warning-bg);color:var(--warning-text)}.admin-shell .admin-form-grid{gap:14px}.admin-shell .admin-field,.admin-shell .admin-field>span:first-child{color:var(--text-secondary)}.admin-shell .admin-modal{border-color:var(--border);background:var(--surface-1);border-radius:16px;width:min(680px,100%);padding:28px;box-shadow:0 24px 64px #0000006b}.admin-shell .admin-modal h2{color:var(--text-primary);font-family:var(--display-font)}.admin-shell .tmdb-admin-modal{width:min(880px,100%)}.admin-shell .tmdb-search input,.admin-shell .tmdb-bulk-toolbar,.admin-shell .tmdb-result,.admin-shell .free-slots-box,.admin-shell .bulk-preview{border-color:var(--border);background:var(--surface-2)}.admin-shell .tmdb-bulk-toolbar strong,.admin-shell .tmdb-result-copy strong{color:var(--text-primary)}.admin-shell .tmdb-bulk-toolbar small,.admin-shell .tmdb-result-copy p,.admin-shell .tmdb-attribution{color:var(--text-muted)}.admin-shell .tmdb-result{background:var(--surface-1);border-radius:9px}.admin-shell .tmdb-result:hover,.admin-shell .tmdb-result.selected{border-color:var(--brand-border);background:var(--brand-soft)}.admin-shell .tmdb-poster{background-color:var(--surface-3)}.admin-shell .tmdb-result-copy small,.admin-shell .tmdb-row-success{color:var(--accent)}.admin-shell .tmdb-batch-summary{border-color:var(--border-strong);background:var(--success-bg);color:var(--success-text);border-radius:8px}.admin-shell .tmdb-batch-summary.has-error{border-color:var(--danger-text);background:var(--danger-bg);color:var(--danger-text)}.admin-shell .showtime-form,.admin-shell .bulk-showtime-modal{max-width:none}.admin-shell .bulk-showtime-modal{width:min(980px,100%)}.admin-shell .admin-checkbox-field{gap:8px}.admin-shell .admin-checkbox-control{min-height:40px;color:var(--text-body);align-items:center;gap:8px;font-size:.76rem;line-height:1.4;display:flex}.admin-shell .admin-checkbox-control input[type=checkbox]{width:16px;min-width:16px;height:16px;min-height:16px;accent-color:var(--brand);flex:0 0 16px;margin:0;padding:0}.admin-shell .free-slots-box{border:1px solid var(--border);border-radius:10px;gap:12px;padding:14px;display:grid}.admin-shell .free-slots-head{gap:4px;display:grid}.admin-shell .free-slots-head strong{color:var(--text-primary)}.admin-shell .free-slots-head span,.admin-shell .free-slots-busy,.admin-shell .free-slots-empty{color:var(--text-muted);font-size:.7rem;line-height:1.5}.admin-shell .free-slots-controls{flex-wrap:wrap;gap:8px;display:flex}.admin-shell .free-slots-list{gap:10px;display:grid}.admin-shell .free-slots-controls input{flex:170px}.admin-shell .free-room{border:1px solid var(--border);background:var(--surface-1);border-radius:8px;gap:8px;min-width:0;padding:11px;display:grid}.admin-shell .free-room-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.admin-shell .free-room-heading strong{color:var(--text-primary);font-size:.74rem}.admin-shell .free-room-heading span{color:var(--text-muted);font-size:.65rem}.admin-shell .free-room-slots{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:7px;display:grid}.admin-shell .free-slot-chip{border:1px solid var(--border);background:var(--surface-1);min-width:0;color:var(--text-body);text-align:left;border-radius:7px;padding:8px 10px;font-size:.69rem;line-height:1.35;display:block}.admin-shell .free-slot-chip strong{white-space:nowrap;display:block}.admin-shell .free-slot-chip:hover{border-color:var(--accent);background:var(--brand-soft)}.admin-shell .bulk-preview{border:1px solid var(--border);border-radius:10px;gap:9px;padding:13px;display:grid}.admin-shell .bulk-preview.valid{border-color:var(--success-text);background:var(--success-bg)}.admin-shell .bulk-preview.invalid{border-color:var(--warning-text);background:var(--warning-bg)}.admin-shell .bulk-preview-capacity{color:var(--text-secondary);margin:0;font-size:.7rem;line-height:1.45}.admin-shell .bulk-preview-list{color:var(--text-secondary);gap:7px;font-size:.7rem;line-height:1.45;display:grid}.admin-shell .bulk-preview-list .available{gap:3px;min-width:0;display:grid}.admin-shell .bulk-preview-list .available strong{color:var(--success-text)}.admin-shell .bulk-preview-list .available span{overflow-wrap:anywhere}.admin-shell .bulk-preview-list .conflict{color:var(--warning-text)}.admin-shell .bulk-preview-list .available{color:var(--success-text)}.admin-shell>.admin-main .filter-tabs{flex-wrap:wrap;gap:6px;margin:0 0 18px;display:flex}.admin-shell .filter-tabs .tab-button{border:1px solid var(--border);background:var(--surface-1);min-height:36px;color:var(--text-secondary);border-radius:7px;padding:8px 12px;font-size:.7rem;font-weight:700}.admin-shell .filter-tabs .tab-button.active{border-color:var(--accent);background:var(--accent);color:#fff}.admin-shell .payment-code-pill{border:1px solid var(--border);background:var(--surface-2);max-width:180px;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;border-radius:5px;padding:5px 7px;display:inline-block;overflow:hidden}.admin-shell .admin-table .status{letter-spacing:.03em;border-radius:5px;font-size:.61rem}@media (width<=900px){.admin-shell .admin-page{width:calc(100% - 48px)}.admin-shell .admin-card-grid{grid-template-columns:1fr}}@media (width<=720px){.admin-shell .admin-page{width:calc(100% - 32px);padding:24px 0 52px}.admin-shell .admin-page>.page-heading,.admin-shell .admin-page-header{flex-direction:column;align-items:flex-start;gap:12px}.admin-shell .admin-page>.page-heading>*,.admin-shell .admin-page-header>*{width:100%}.admin-shell .admin-page-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.admin-shell .admin-page-actions>*{justify-content:center}.admin-shell .admin-toolbar{flex-direction:column;align-items:stretch}.admin-shell .admin-toolbar input,.admin-shell .admin-toolbar select,.admin-shell .admin-toolbar .admin-checkbox{width:100%}.admin-shell .admin-toolbar select{min-width:0}.admin-shell .admin-card-mark{min-height:132px}.admin-shell .admin-entity-card{grid-template-columns:72px minmax(0,1fr)}.admin-shell .admin-entity-content{padding:14px}.admin-shell .admin-card-footer{grid-template-columns:1fr 1fr;display:grid}.admin-shell .admin-card-footer .primary{grid-column:1/-1}.admin-shell .admin-room-row{flex-direction:column;align-items:stretch}.admin-shell .admin-room-row .admin-actions{grid-template-columns:1fr 1fr 1fr;display:grid}.admin-shell .admin-room-row .admin-actions>*{justify-content:center}.admin-shell .admin-seat-layout{grid-template-columns:1fr}.admin-shell .admin-seat-layout>.admin-panel:first-child{position:static}.admin-shell .admin-seat-delete-list{grid-template-columns:1fr}.admin-shell .admin-modal{max-height:calc(100vh - 24px);padding:22px 16px}.admin-shell .admin-form-grid{grid-template-columns:1fr}.admin-shell .admin-field-wide{grid-column:auto}.admin-shell .tmdb-search{flex-direction:column}.admin-shell .tmdb-result{grid-template-columns:22px 48px minmax(0,1fr)}.admin-shell .tmdb-poster{width:48px;height:68px}.admin-shell .tmdb-row-action{grid-column:2/-1;justify-content:flex-start}.admin-shell .admin-page-actions{gap:8px}.admin-shell .admin-page-actions>*{min-width:0;padding-inline:10px}.admin-shell .filter-tabs{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.admin-shell .filter-tabs .tab-button{white-space:nowrap;flex:none}.admin-shell .admin-table-wrap{margin-inline:0}.admin-shell .admin-table{min-width:760px}.admin-shell .admin-seat-actions{padding:16px}}.trailer-modal-backdrop,[data-theme=light] .trailer-modal-backdrop,[data-theme=dark] .trailer-modal-backdrop{background:color-mix(in srgb, var(--canvas) 78%, transparent);padding:24px}.trailer-modal{border-color:var(--border-strong);background:var(--surface-1);border-radius:16px;box-shadow:0 24px 60px #08101f6b}.notice-backdrop{background:var(--overlay)}.notice-dialog{border:1px solid var(--border-strong);background:var(--surface-1);width:min(440px,100%);box-shadow:var(--shadow);border-radius:16px;grid-template-columns:auto minmax(0,1fr);gap:16px;padding:24px;display:grid}.notice-dialog-icon{background:var(--warning-bg);width:34px;height:34px;color:var(--warning-text);border-radius:8px;place-items:center;font-weight:800;display:grid}.notice-dialog h2{color:var(--text-primary);font-family:var(--display-font);letter-spacing:-.035em;margin:0 0 8px;font-size:1.35rem}.notice-dialog p:not(.eyebrow){color:var(--text-secondary);margin:0;font-size:.82rem;line-height:1.55}.notice-dialog .primary{grid-column:1/-1;justify-self:end}.admin-shell .admin-main main>.admin-page{width:min(1440px,100% - 96px);max-width:none;margin-inline:32px}.admin-shell .admin-card-grid{gap:20px}.admin-shell .admin-entity-card{min-height:214px;box-shadow:none;border-radius:14px;grid-template-columns:86px minmax(0,1fr);transition:border-color .2s,background .2s}.admin-shell .admin-entity-card:hover{border-color:var(--accent);background:var(--surface-1);transform:none}.admin-shell .admin-card-mark,.admin-shell .admin-card-mark-1,.admin-shell .admin-card-mark-2{background:var(--brand-soft);min-height:100%;color:var(--accent);font-family:var(--display-font);letter-spacing:-.04em;text-align:center;overflow-wrap:anywhere;padding:12px;font-size:1.65rem}.admin-shell .admin-card-mark-1,.admin-shell .admin-card-mark-2{background:var(--surface-3);color:var(--accent)}.admin-shell .admin-card-tags{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.admin-shell .admin-card-tags>span{border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);border-radius:5px;padding:5px 8px;font-size:.64rem;font-weight:700}.admin-shell .admin-card-tags .admin-card-status{border-color:color-mix(in srgb, var(--success-text) 35%, var(--border));background:var(--success-bg);color:var(--success-text)}.admin-shell .admin-address{min-height:42px;margin:14px 0}.admin-shell .admin-toolbar-result{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:.72rem}.admin-shell .admin-checkbox{border:1px solid var(--border);background:var(--surface-1);white-space:nowrap;border-radius:8px;gap:7px;min-height:34px;padding:5px 8px;font-size:.7rem}.admin-shell .admin-checkbox input{width:14px;min-width:14px;height:14px;min-height:14px;margin:0}@media (width<=900px){.admin-shell .admin-main main>.admin-page{width:calc(100% - 64px);margin-inline:32px}}@media (width<=720px){.admin-shell .admin-main main>.admin-page{width:calc(100% - 32px);margin-inline:16px}.admin-shell .admin-card-grid{gap:12px}.admin-shell .admin-entity-card{grid-template-columns:64px minmax(0,1fr);min-height:0}.admin-shell .admin-card-mark,.admin-shell .admin-card-mark-1,.admin-shell .admin-card-mark-2{min-height:100%;font-size:1.05rem}.admin-shell .admin-toolbar-result{width:100%;margin-left:0}.notice-dialog{padding:20px}.notice-dialog .primary{width:100%}}
