:root{--red:#f84464;--ink:#292929;--muted:#777}*{box-sizing:border-box}body{margin:0;background:#f4f5f8;color:var(--ink);font-family:Roboto,Arial,sans-serif}.topbar{height:64px;background:#fff}.brand{font-family:Montserrat,sans-serif;font-size:23px;font-weight:500;color:#252525;text-decoration:none;letter-spacing:-1.4px}.brand span{color:#ed3e58;font-weight:700}.search-box{width:550px;height:36px;border:1px solid #e4e4e4;border-radius:5px;display:flex;align-items:center;padding:0 12px;color:#333}.search-box span{font-size:26px;margin-right:9px}.search-box input{border:0;outline:0;width:100%;font-size:14px}.city,.user-name{font-size:14px;color:#111}.chevron{font-size:17px;margin-left:10px}.avatar{border:1px solid #ddd;border-radius:50%;font-size:18px;width:29px;height:29px;text-align:center;color:#bbb}.navline{height:41px;border-top:1px solid #f1f1f1;border-bottom:1px solid #ddd;background:#fff}.navline a{font-size:14px;color:#1f2840;text-decoration:none}.navline .smaller a{font-size:12px}.desktop-page{min-height:calc(100vh - 105px);background:#f1f3f7}.account-panel{height:450px;border:1px solid #cbd7e8;border-radius:16px;background:#fff;overflow:hidden;padding:20px}.account-panel h1{font-size:24px;font-weight:600;margin:2px 0 28px}.close-btn{font-size:30px;background:0;border:0;font-weight:200;line-height:1}.menu-item{height:86px;display:flex;align-items:center;gap:18px;text-decoration:none;color:#444;padding:0 8px;font-size:17px}.menu-item.active{height:62px;background:#eff2f8;border-radius:10px;color:var(--red);font-weight:600}.menu-icon{width:26px;text-align:center;font-size:21px;font-weight:400}.round{color:#aaa;font-size:30px}.menu-item i{font-style:normal;font-size:23px}.ticket-row{gap:20px}.desktop-ticket{height:327px;width:702px;background:#fff;border:1px solid #e2e2e2;border-radius:4px;padding:15px;display:flex;gap:32px}.desktop-poster,.mobile-poster{position:relative;flex:none;overflow:hidden;color:white;background:linear-gradient(174deg,#4c96bf 0%,#96d1e6 45%,#75624e 47%,#e0caa5 62%,#29231e 100%);font-family:Montserrat,sans-serif;text-align:center}.desktop-poster{width:150px;height:220px;border-radius:7px;padding-top:36px;font-size:14px;font-family:cursive}.desktop-poster:after,.mobile-poster:after{content:"";position:absolute;background:#6e5137;bottom:0;left:5%;width:62%;height:44%;transform:skewY(-20deg);border-top:4px solid #eee4d1}.desktop-poster span,.mobile-poster span{position:relative;z-index:1}.desktop-poster small{position:absolute;z-index:2;bottom:10px;left:10px;color:#fff;font:700 8px Roboto}.ticket-details{flex:1;font-size:13px}.ticket-details h2{font-size:16px;color:#000;margin:2px 0 4px}.ticket-details p{margin:0 0 6px;color:#475063}.ticket-details h3{font-size:14px;color:#172030;margin:19px 0 5px}.ticket-details h4{font-size:18px;color:#596270;margin:7px 0}.audi{color:#1f283a!important}.price-line{display:flex;justify-content:space-between;font-size:13px;margin:7px 0;color:#172030}.price-line b{font-weight:400;font-size:12px}.price-line small{color:#9b9b9b}.paid{border-top:1px dashed #ddd;margin-top:17px;padding-top:14px;display:flex;justify-content:space-between;font-size:14px}.paid strong{font-size:21px}.booking-btn{width:200px;height:41px;background:#fff;border:1px solid var(--red);color:var(--red);border-radius:8px;font-size:14px}.ticket-meta{font-size:12px;margin-top:18px}.ticket-meta small{font-size:10px;color:#777}.ticket-meta p{margin-top:7px;color:#555}
.mobile-page{min-height:100vh;padding:28px 30px 70px;background:#eef1f6}.mobile-title{height:54px;display:flex;justify-content:center;align-items:center;font-size:26px;color:#353535;position:relative}.mobile-title .share{margin-left:13px;font-size:35px;transform:rotate(-30deg)}.mobile-title button{position:absolute;right:0;top:1px;border:2px solid #ed6b80;background:transparent;color:#ed6b80;border-radius:50%;font-size:39px;line-height:48px;width:58px;height:58px;font-weight:200}.mobile-ticket{margin-top:24px;background:white;border-radius:19px;overflow:hidden;box-shadow:0 6px 11px #0002}.movie-info{padding:23px 30px 22px;position:relative;gap:26px}.mobile-poster{width:118px;height:175px;border-radius:17px;padding-top:28px;font-size:11px;font-family:cursive}.mobile-poster em{position:absolute;z-index:2;bottom:0;left:0;right:0;background:#ed4260;border-radius:0 0 17px 17px;font:15px Roboto;padding:7px 0}.movie-info h1{font-size:28px;line-height:1.15;margin:8px 0 12px;font-weight:700;color:#111}.movie-info p{margin:6px 0;font-size:20px;color:#747474}.vertical-ticket{position:absolute;right:13px;top:88px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:16px;color:#555}.support-bar{background:#f7f7f7;border-radius:24px;padding:12px;text-align:center;font-size:19px;color:#616161;margin:0 31px 19px}.scan-row{display:flex;align-items:center;justify-content:center;gap:56px;padding:3px 22px 37px;text-align:center}.qr-code{width:112px;height:112px;background:repeating-linear-gradient(90deg,#000 0 6px,#fff 6px 10px),repeating-linear-gradient(#000 0 7px,#fff 7px 11px);background-blend-mode:screen;position:relative}.qr-code:after{content:"";position:absolute;inset:17px;background:linear-gradient(90deg,#fff 30%,transparent 30% 60%,#fff 60%),linear-gradient(#fff 30%,transparent 30% 60%,#fff 60%);mix-blend-mode:screen}.scan-row p{font-size:19px;color:#777;margin:0 0 20px}.scan-row h2{font-size:29px;font-weight:400;margin:0 0 13px}.scan-row b{font-size:18px}.cancel{background:#f4f4f4;text-align:center;padding:10px;color:#777;font-size:17px}.total{padding:21px 24px;display:flex;justify-content:space-between;font-size:19px}.rate-button{width:100%;border:0;background:#fff;border-radius:15px;margin:44px 0 79px;height:67px;font-size:43px;line-height:1;box-shadow:0 1px 2px #0002}.rate-button span{font-size:19px;margin-left:18px;vertical-align:6px;color:#555}.reward{background:linear-gradient(135deg,#795dc6,#b993fa);border-radius:18px;padding:28px 30px 38px;color:white;box-shadow:0 3px 6px #0003}.reward h2{font-size:29px;margin:0 0 35px}.reward-card{background:#554389;border-radius:11px;text-align:center;padding:18px;height:185px}.gift{font-size:74px;line-height:95px}.reward-card p{font-size:17px;margin:0;color:#ddd}
/* Keep every desktop payment detail inside the ticket card. */
@media (min-width:768px){.desktop-ticket{height:auto;min-height:327px}.ticket-details{line-height:1.15}.ticket-details h2{margin-bottom:3px}.ticket-details p{margin-bottom:4px}.ticket-details h3{margin:14px 0 4px}.ticket-details h4{font-size:17px;margin:5px 0}.price-line{margin:5px 0}.paid{margin-top:12px;padding-top:12px}}
@media (max-width:575px){.mobile-page{padding-left:20px;padding-right:20px}.movie-info{padding-left:17px;padding-right:20px;gap:16px}.mobile-poster{width:100px;height:150px}.movie-info h1{font-size:22px}.movie-info p{font-size:16px}.support-bar{font-size:16px;margin:0 16px 19px}.scan-row{gap:25px}.scan-row h2{font-size:23px}.scan-row p,.scan-row b{font-size:15px}.qr-code{width:95px;height:95px}.reward h2{font-size:24px}}

/* Amount breakdown used by the mobile e-ticket. */
.mobile-price{padding:18px 24px 12px;border-bottom:1px dashed #d7d7d7}.mobile-price div{display:flex;justify-content:space-between;font-size:18px;margin-bottom:10px}.mobile-price b{font-weight:500}.total b{font-size:25px}
.qr-image{width:112px;height:112px;object-fit:contain;display:block}
.status-badge{display:inline-block;border-radius:999px;background:#fff0f1;color:#d92d49;font:600 11px Roboto,Arial,sans-serif;letter-spacing:.15px;padding:4px 8px;margin-left:6px;vertical-align:2px}.movie-info .status-badge{margin:0 0 8px 0;font-size:12px}.movie-info .status-badge+p{margin-top:2px}
.desktop-poster,.mobile-poster{background:url("movie-poster.png?v=2") center/cover no-repeat}.desktop-poster:after,.mobile-poster:after,.desktop-poster span,.mobile-poster span{display:none}
