:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12100f;--panel:#1e1a17;--panel-2:#29231f;--text:#fff9ed;--muted:#b8ac9f;--line:#ffffff24;--accent:#e2a135;--accent-2:#ef6a47;--green:#34c889;--blue:#61a8ff;--danger:#ff6b6b}*{box-sizing:border-box}body{background:radial-gradient(circle at top left, #ef6a472e, transparent 34rem), radial-gradient(circle at bottom right, #34c88924, transparent 30rem), var(--bg);color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}button{font:inherit}.app-shell{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;width:min(1120px,100% - 28px);min-height:100vh;margin:0 auto;padding:24px 0;display:grid}.hero-panel,.seat-card,.bar-card,.summary-card{border:1px solid var(--line);background:#1e1a17e0;border-radius:8px;box-shadow:0 22px 80px #00000047}.hero-panel{grid-column:1/-1;padding:26px}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:850}h1,h2,p{overflow-wrap:break-word}h1,h2{letter-spacing:0;margin:0;line-height:1.04}h1{font-size:clamp(34px,7vw,64px)}h2{font-size:28px}.hero-panel p:last-child,.empty-copy{max-width:720px;color:var(--muted);margin:12px 0 0}.session-meta{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.session-meta span{border:1px solid var(--line);min-height:30px;color:var(--text);background:#ffffff0f;border-radius:8px;align-items:center;padding:0 10px;font-weight:760;display:inline-flex}.seat-card{grid-column:1;padding:clamp(16px,3vw,26px)}.hall-plan-scroll{padding-bottom:4px;overflow-x:auto}.hall-plan{aspect-ratio:1.72;background:#08070657;border:2px solid #ffffff29;border-radius:10px;grid-template-rows:76px minmax(350px,1fr) 42px;grid-template-columns:74px minmax(560px,1fr) 58px;width:100%;min-width:720px;display:grid;overflow:hidden}.sofa-zone{border-top:9px solid #ffffff1f;grid-area:1/2;grid-template-rows:18px 1fr;gap:4px;padding:2px 28px 4px;display:grid;transform:translateY(18px)}.zone-label{color:var(--muted);text-align:center;font-size:10px;font-weight:760}.sofa-seats{grid-template-columns:auto auto 30px auto 84px 30px auto auto 30px;justify-content:center;align-items:flex-start;gap:7px;display:grid}.wall-table,.seat-table{background:linear-gradient(135deg,#ffffff2e,#0000 45%),#8c9f70;border:1px solid #ccdcaa38;border-radius:2px;box-shadow:inset 0 0 12px #ffffff1a}.wall-table{width:30px;height:38px}.sofa-gap{width:84px}.bar-seat-zone{border-left:9px solid #ffffff1f;grid-area:2/1;align-content:end;gap:8px;padding:8px 10px 16px;display:grid}.bar-seats{justify-content:center;gap:10px;display:grid}.main-seat-zone{grid-area:2/2;grid-template-columns:repeat(6,minmax(44px,1fr));align-items:stretch;gap:clamp(14px,2.4vw,28px);padding:18px 76px 4px 28px;display:grid}.cinema-row{grid-template-rows:1fr 22px;gap:5px;min-width:0;display:grid}.cinema-row:nth-child(odd) .cinema-row-seats{transform:translateY(20px)}.cinema-row-seats{flex-direction:column;justify-content:flex-end;gap:24px;padding-bottom:18px;display:flex}.seat-pair{flex-direction:column;justify-content:center;align-items:center;display:flex}.seat-with-table{display:contents}.seat-table{width:clamp(36px,4.5vw,52px);height:30px}.side-screen{background:var(--accent-2);width:6px;color:var(--text);border-radius:999px;grid-area:1/3/span 3;justify-self:center;place-items:center;margin:190px 0 54px;display:grid;position:relative;box-shadow:0 0 24px #ef6a476b}.side-screen span{writing-mode:vertical-rl;font-weight:850;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.row-label{color:var(--muted);text-align:center;font-size:13px;font-weight:760}.seat{aspect-ratio:1;width:clamp(34px,4vw,46px);min-width:0;color:var(--text);background:var(--panel-2);cursor:pointer;border:1px solid #0000;border-radius:8px;font-weight:830;transition:transform .14s,border-color .14s,background .14s}.seat:not(:disabled):hover,.seat:not(:disabled):focus-visible{border-color:var(--accent);transform:translateY(-1px)}.seat-free{background:#34c8893d}.seat-reserved{color:#fff9edc7;background:#61a8ff42}.seat-sold{color:#fff9ed6b;background:#ffffff1c}.seat-blocked,.seat-unavailable{color:#fff9ed75;background:#ff6b6b2e}.seat.is-selected{background:var(--accent);color:#1d1407;box-shadow:0 8px 24px #e2a13542}.seat:disabled{cursor:not-allowed}.seat-type-sofa{aspect-ratio:1.55;border-radius:14px;width:clamp(42px,5vw,58px)}.seat-type-vip{border-radius:999px}.legend{color:var(--muted);flex-wrap:wrap;gap:12px;margin-top:24px;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.seat-type-note{color:var(--muted);margin:10px 0 0;font-size:12px}.dot{aspect-ratio:1;background:var(--panel-2);border-radius:50%;width:10px}.dot.free{background:var(--green)}.dot.selected{background:var(--accent)}.dot.reserved{background:var(--blue)}.dot.sold{background:#77716a}.dot.blocked{background:var(--danger)}.summary-card{grid-area:2/2/span 2;padding:22px;position:sticky;top:16px}.bar-card{grid-column:1;gap:18px;padding:clamp(16px,3vw,24px);display:grid}.bar-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.bar-heading strong{color:var(--accent);font-size:22px}.bar-menu{gap:16px;display:grid}.bar-category{gap:10px;display:grid}.summary-subtitle{margin:0;font-size:16px}.bar-category-toggle{border:1px solid var(--line);width:100%;min-height:58px;color:var(--text);cursor:pointer;text-align:left;background:#ffffff0f;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.bar-category-toggle span{gap:4px;min-width:0;display:grid}.bar-category-toggle strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-category-toggle small{color:var(--muted)}.bar-category-toggle i{width:28px;height:28px;color:var(--accent);background:#e2a13524;border-radius:8px;flex:none;place-items:center;font-size:20px;font-style:normal;font-weight:850;display:grid}.bar-items{gap:8px;display:grid}.bar-item{border:1px solid var(--line);background:#ffffff0d;border-radius:8px;gap:12px;padding:12px;display:grid}.bar-item.is-unavailable{background:#ffffff09;border-color:#ffffff24}.bar-item-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.bar-item-info{min-width:0;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;gap:4px;padding:0;display:grid}.bar-item-title{min-width:0;color:var(--text);align-items:center;gap:8px;display:flex}.bar-item-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hit-badge{background:var(--accent);color:#11100f;letter-spacing:0;border-radius:999px;flex:none;align-items:center;min-height:20px;padding:0 7px;font-size:11px;font-style:normal;font-weight:950;display:inline-flex}.bar-item-description-button{border:1px solid var(--line);min-height:34px;color:var(--accent);cursor:pointer;white-space:nowrap;background:#ffffff0f;border-radius:8px;padding:0 12px;font-weight:850}.bar-item-description-button:hover,.bar-item.is-expanded .bar-item-description-button{background:#e2a1352e}.bar-item-info>span:not(.bar-item-title),.bar-item small,.amount-lines span{color:var(--muted)}.bar-item-info span{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bar-item-info b{min-height:22px;color:var(--accent);background:#e2a1351a;border:1px solid #e2a13559;border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:850;display:inline-flex}.bar-item-details{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding-top:10px;display:grid}.bar-item-details img{aspect-ratio:1;object-fit:cover;background:#ffffff14;border-radius:8px;width:76px}.bar-item-details p{color:var(--muted);margin:0;line-height:1.45}.quantity-control{border:1px solid var(--line);background:#ffffff0f;border-radius:8px;grid-template-columns:34px 32px 34px;align-items:center;width:min(100%,280px);display:grid;overflow:hidden}.quantity-control button{width:34px;height:34px;color:var(--text);cursor:pointer;background:0 0;border:0;font-weight:850}.quantity-control button:not(:disabled):hover{background:#e2a13533}.quantity-control button:disabled{cursor:not-allowed;opacity:.35}.quantity-control span{color:var(--text);text-align:center;font-weight:850}.summary-session{color:var(--text);gap:4px;margin:10px 0 0;font-weight:780;display:grid}.summary-session span{color:var(--muted);font-size:13px;font-weight:500}.selected-list{border:1px solid var(--line);border-radius:8px;gap:1px;margin:18px 0;padding:0;list-style:none;display:grid;overflow:hidden}.selected-list.compact{margin-top:10px}.selected-list li{background:#ffffff0d;justify-content:space-between;gap:14px;padding:12px;display:flex}.selected-list span{color:var(--muted)}.summary-subtitle{margin-top:18px}.amount-lines{border-top:1px solid var(--line);gap:8px;margin-top:18px;padding-top:18px;display:grid}.amount-lines div{justify-content:space-between;gap:12px;display:flex}.total-line{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding-top:18px;display:flex}.total-line strong{color:var(--accent);font-size:24px}.email-field{color:var(--text);gap:7px;margin-top:18px;font-size:14px;font-weight:760;display:grid}.email-field input{border:1px solid var(--line);width:100%;min-height:46px;color:var(--text);background:#ffffff12;border-radius:8px;outline:none;padding:0 12px}.email-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #e2a13529}.email-field input:disabled{opacity:.66}.email-field span{color:var(--muted);font-size:12px;font-weight:520;line-height:1.35}.reserve-button{background:var(--accent);color:#1d1407;cursor:pointer;border:0;border-radius:8px;width:100%;min-height:50px;margin-top:18px;font-weight:850}.reserve-button:disabled{cursor:not-allowed;opacity:.5}.success-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:12px;display:grid}.success-actions .reserve-button{margin-top:0}.payment-button{background:linear-gradient(135deg, var(--accent), #f4c96a)}.close-button{border:1px solid var(--line);color:var(--text);background:#ffffff14;margin-top:12px}.success-box{background:#34c8891f;border:1px solid #34c8895c;border-radius:8px;gap:4px;margin-top:18px;padding:14px;display:grid}.success-box span,.success-box small{color:var(--muted)}.error-message{color:var(--danger);margin:14px 0 0}.legal-consent{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.45}.legal-consent a,.legal-footer a,.back-link,.legal-index-list a{color:var(--accent);text-decoration:none}.legal-consent a:hover,.legal-footer a:hover,.back-link:hover,.legal-index-list a:hover{text-decoration:underline}.legal-footer{grid-column:1/-1;padding:4px 0 18px}.legal-links{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:10px 16px;font-size:12px;display:flex}.legal-shell{width:min(920px,100% - 28px);min-height:100vh;margin:0 auto;padding:24px 0}.legal-card{border:1px solid var(--line);background:#1e1a17eb;border-radius:8px;padding:clamp(18px,4vw,34px);box-shadow:0 22px 80px #00000047}.back-link{margin-bottom:22px;font-size:14px;font-weight:760;display:inline-flex}.legal-date{color:var(--muted);margin:10px 0 0;font-size:13px}.legal-lead{max-width:760px;color:var(--text);margin:18px 0 0;font-size:18px;line-height:1.5}.legal-content{gap:22px;margin-top:28px;display:grid}.legal-content section{border-top:1px solid var(--line);padding-top:18px}.legal-content h2{font-size:22px}.legal-content p,.legal-content li{color:var(--muted);line-height:1.6}.legal-content p{margin:12px 0 0}.legal-content ul{gap:8px;margin:12px 0 0;padding-left:20px;display:grid}.legal-index-list{gap:10px;margin-top:28px;display:grid}.legal-index-list a{border:1px solid var(--line);background:#ffffff0d;border-radius:8px;gap:6px;padding:14px;display:grid}.legal-index-list strong{color:var(--text)}.legal-index-list span{color:var(--muted);line-height:1.45}.state-message{min-height:340px;color:var(--muted);place-items:center;display:grid}@media (width<=820px){.app-shell{grid-template-columns:1fr}.seat-card,.bar-card,.summary-card{grid-area:auto/1;position:static}}@media (width<=520px){.app-shell{width:calc(100% - 20px);padding:10px 0}.hero-panel{padding:18px}.seat{border-radius:7px;font-size:13px}.bar-heading{grid-template-columns:1fr}.bar-item-head{grid-template-columns:minmax(0,1fr) auto}.bar-item-description-button{min-width:96px;padding:0 10px}.quantity-control{width:100%}}
