:root{color-scheme:dark;--mint:#78e2a6;--muted:#828184;--bg:#090909;--rose:#60373f}*{box-sizing:border-box}body{margin:0;background:#000;color:#f7f7f5;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline:2px solid var(--mint);outline-offset:5px}button:disabled{cursor:default}button,dialog{border:0}button{background:none}svg{display:block}h1,h2,p{margin:0}.phone{position:relative;width:390px;height:844px;margin:auto;background:var(--bg);isolation:isolate;overflow:hidden}.map-screen{position:absolute;inset:0;display:flex;flex-direction:column;transition:opacity .65s,transform 1s cubic-bezier(.2,.7,.1,1);transform-origin:var(--zoom-x,50%) var(--zoom-y,50%)}.header{display:flex;align-items:center;justify-content:space-between;padding:52px 20px 0;text-align:center;flex:none}.header h1{font-size:17px;font-weight:650;letter-spacing:-.55px}.header p{font-size:11px;color:#88878a;margin-top:4px}.circle{width:34px;height:34px;border-radius:50%;background:#171719a6;display:grid;place-items:center;backdrop-filter:blur(10px)}.circle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.back-static{cursor:default}.showtimes{display:flex;align-self:center;padding:3px;margin-top:20px;background:#131315;border-radius:28px;gap:2px}.showtimes button{border-radius:24px;padding:8px 13px;font-size:12px;color:#a7a6aa;white-space:nowrap;transition:background .25s,color .25s}.showtimes small{font-size:8px;margin-left:2px;color:#6d6c71;letter-spacing:.3px}.showtimes .active{background:#f6f5f2;color:#080808;box-shadow:0 1px 10px #ffffff0d}.showtimes .active small{color:#58575b}.screen-mark{position:relative;flex:none;height:112px;margin-top:9px;text-align:center;background:radial-gradient(ellipse at 50% 0,#ffffff06,transparent 65%)}.screen-mark svg{width:100%;height:65px;overflow:visible}.screen-mark path{fill:none;stroke:url(#fade);stroke-width:1.5}.screen-mark .glow-line{stroke-width:4;filter:url(#glow);opacity:.4}.screen-mark span{display:block;color:#6d6b70;font-size:8px;letter-spacing:4px;margin-top:-4px}.seating{display:flex;flex-direction:column;justify-content:center;flex:1;padding:7px 19px 22px 11px;min-height:0}.seat-grid{display:grid;grid-template-columns:10px repeat(4,minmax(0,1fr)) 13px repeat(8,minmax(0,1fr));align-items:center;justify-items:center;row-gap:23px;column-gap:6px}.row-label{font-size:9px;color:#66656a;justify-self:start}.seat{width:15px;height:14px;position:relative;border-radius:4.5px;background:#2b2b30;box-shadow:inset 0 0 0 1px #ffffff04;padding:0;transition:background .2s,box-shadow .2s,transform .2s;color:transparent;font-size:8px;font-weight:700;line-height:14px}.seat:before{content:"";position:absolute;inset:-10px -5px}.seat.taken{background:transparent;box-shadow:inset 0 0 0 1px #242428;cursor:default}.seat.recliner:not(.taken){background:var(--rose)}.seat.selected{background:var(--mint)!important;color:#113623;box-shadow:0 0 0 6px #78e2a61c,0 0 20px #78e2a630;transform:scale(1.08)}.seat:not(.taken):hover{filter:brightness(1.3)}.legend{display:flex;justify-content:center;gap:16px;margin-top:39px;white-space:nowrap;color:#929094;font-size:9px}.legend span{display:flex;align-items:center;gap:5px}.legend i{width:9px;height:9px;border-radius:3px;background:#2b2b30}.legend .taken{background:transparent;border:1px solid #242428}.legend .recliner{background:var(--rose)}.legend .selected{background:var(--mint)}.booking-bar{background:#111113;border-top:1px solid #ffffff03;border-radius:22px 22px 0 0;padding:20px 21px 39px;display:flex;align-items:center;justify-content:space-between;flex:none;height:119px}.booking-bar p{font-size:10px;color:#aaa8ad;margin-bottom:4px}.booking-bar strong{font-size:16px;letter-spacing:-.3px}.booking-bar strong.empty{color:var(--mint)}.button{height:46px;border-radius:40px;font-weight:600;font-size:13px;padding:0 24px;transition:transform .2s,background .2s}.button:active{transform:scale(.97)}.mint{background:var(--mint);color:#072112}.booking-bar .button{min-width:134px}.mint:disabled{background:#222125;color:#626167}.white{background:#f6f6f2;color:#111}.outline{border:1px solid #ffffff16;background:#11111244}.view-screen{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .7s;overflow:hidden;background:#030202}#theatre{position:absolute;inset:0}#theatre canvas{display:block;width:100%;height:100%}.view-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0002,transparent 24%,transparent 65%,#0009)}.view-header{position:absolute;top:57px;left:20px;right:20px;display:flex;align-items:center;opacity:0;transition:opacity .6s}.view-pill{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:10px 13px;border:1px solid #ffffff06;border-radius:24px;background:#10101091;backdrop-filter:blur(12px);white-space:nowrap;font-size:12px}.view-pill i{width:6px;height:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 8px #78e2a6}.seat-sheet{position:absolute;bottom:0;left:0;right:0;padding:15px 21px 60px;background:linear-gradient(145deg,#121115f7,#0b0b0cf2);border-radius:24px 24px 0 0;backdrop-filter:blur(22px);border-top:1px solid #ffffff04;transform:translateY(105%);transition:transform .8s cubic-bezier(.22,1.18,.35,1)}.handle{width:36px;height:3px;border-radius:9px;background:#454348;margin:0 auto 17px}.sheet-heading{display:flex;align-items:center;justify-content:space-between}.eyebrow{font-size:9px;letter-spacing:1.5px;color:#a5e3be;font-weight:600;margin-bottom:7px}h2{font-size:24px;letter-spacing:-1px;line-height:1.12;font-weight:650}.subheading{font-size:11px;color:#969297;margin-top:6px}.mini-map{width:64px;display:grid;grid-template-columns:repeat(4,1fr) 4px repeat(8,1fr);gap:2px;position:relative;margin-right:8px;margin-top:9px}.mini-map:before{content:"";position:absolute;left:0;right:0;height:7px;top:-12px;border-top:1px solid #c9c8c6;border-radius:50%}.mini-map i{height:3px;width:3px;border-radius:1px;background:#343238}.mini-map i.rose{background:#503039}.mini-map i.on{background:var(--mint);box-shadow:0 0 5px #78e2a6}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:19px}.stats>div{background:#ffffff05;border-radius:12px;padding:10px 10px 9px;min-width:0}.stats strong{display:block;font-size:17px;font-weight:650;letter-spacing:-.5px}.stats span{display:block;font-size:9px;color:#8b878d;margin-top:4px;white-space:nowrap}.sheet-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:7px;margin-top:16px}.sheet-actions .button{padding:0 12px}.phone.viewing .map-screen{opacity:0;transform:scale(2.5);pointer-events:none}.phone.viewing .view-screen{opacity:1;pointer-events:auto}.phone.arrived .seat-sheet{transform:translateY(0)}.phone.arrived .view-header{opacity:1}.toast{position:absolute;top:108px;left:50%;width:max-content;max-width:85%;transform:translate(-50%,-10px);background:#242427ee;border:1px solid #ffffff0c;backdrop-filter:blur(15px);font-size:11px;line-height:1.6;padding:11px 15px;border-radius:14px;text-align:center;opacity:0;pointer-events:none;z-index:20;transition:.25s}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{position:absolute;inset:0;width:100%;height:100%;max-height:none;max-width:none;margin:0;padding:0;background:#090a09ed;color:inherit;backdrop-filter:blur(20px);z-index:30}dialog::backdrop{background:#0009}.confirmation-inner{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}.checkmark{width:64px;height:64px;border-radius:50%;background:#78e2a616;margin-bottom:28px;display:grid;place-items:center}.checkmark svg{width:32px;fill:none;stroke:var(--mint);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.confirmation-inner h2{font-size:30px;margin-top:4px}.confirm-caption{font-size:12px;color:#928f95;margin-top:12px}.ticket{width:100%;margin:34px 0 15px;padding:23px 20px;border:1px solid #ffffff12;border-radius:17px;display:flex;align-items:center;justify-content:space-between;text-align:left;background:linear-gradient(135deg,#ffffff06,#ffffff01)}.ticket span{font-size:8px;letter-spacing:1.5px;color:#aaa7ad}.ticket div strong{display:block;font-size:18px;margin-top:12px}.ticket p{font-size:10px;color:#939096;margin-top:7px}.demo-note{font-size:10px;color:#7d7a81}.confirmation-inner>.button{margin-top:30px;width:100%}@media(min-width:600px){body{min-height:100vh;display:grid;place-items:center;padding:24px}.phone{border-radius:34px;box-shadow:0 0 0 1px #ffffff0c,0 28px 100px #000;flex:none}}@media(max-width:599px){.phone{width:100%;height:100svh;height:100dvh}.header{padding-top:max(28px,env(safe-area-inset-top))}.view-header{top:max(28px,env(safe-area-inset-top))}.booking-bar{padding-bottom:max(28px,env(safe-area-inset-bottom));height:112px}.seat-sheet{padding-bottom:max(32px,calc(env(safe-area-inset-bottom) + 16px))}.seating{padding-top:20px;padding-bottom:38px}.screen-mark{height:120px}.seat-grid{row-gap:clamp(15px,2.6vh,28px)}}@media(max-height:730px){.header{padding-top:18px}.screen-mark{height:85px}.seat-grid{row-gap:16px}.legend{margin-top:24px}.seating{padding-bottom:20px}.booking-bar{height:95px;padding-bottom:20px}.seat-sheet{padding-bottom:22px}.view-header{top:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.15s!important;animation-duration:.15s!important}.phone.viewing .map-screen{transform:none}}
