.page-enter-active,.page-leave-active{transition:opacity .18s ease,transform .18s ease}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-6px)}.queue-mask{position:fixed;inset:0;z-index:80;background:#141820b8;display:flex;align-items:center;justify-content:center;padding:28px}.queue-card{width:100%;max-width:320px;background:#fff;border-radius:18px;padding:28px 22px 22px;text-align:center;animation:rise .25s ease}.queue-card h3{font-size:16px;margin-bottom:8px;color:var(--ink)}.queue-card p{font-size:12.5px;color:var(--ink-3);line-height:1.8}.queue-card .count{margin-top:14px;font-size:13px;font-weight:700;color:var(--brand);background:var(--brand-softer);border-radius:999px;padding:8px 0}:root{--brand: #d92b2b;--brand-deep: #a81d1d;--brand-light: #fdecec;--brand-softer: #fff5f5;--gold: #d99b1c;--gold-soft: #fff8e6;--green: #1f9d55;--green-soft: #e6f6ec;--blue: #2b6cb0;--blue-soft: #e8f1fb;--orange: #c05621;--orange-soft: #feebc8;--ink: #1f2430;--ink-2: #4b5563;--ink-3: #8a94a3;--ink-4: #b7bec8;--line: #eaeef3;--bg: #f4f6f8;--card: #ffffff;--r-s: 8px;--r-m: 14px;--r-l: 20px;--sh-s: 0 2px 10px rgba(31, 36, 48, .06);--sh-m: 0 6px 22px rgba(31, 36, 48, .09);--sh-brand: 0 8px 24px rgba(217, 43, 43, .28);--tap: rgba(217, 43, 43, .06)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}#app{max-width:480px;margin:0 auto;min-height:100vh;background:var(--bg);position:relative}@media (min-width: 600px){body{background:#e6e9ee;padding:24px 0}#app{max-width:390px;min-height:800px;border-radius:32px;box-shadow:0 24px 60px #0f172a2e;overflow:hidden;border:1px solid #dfe4ea}}img{display:block;max-width:100%}button{font-family:inherit}a{color:var(--blue);text-decoration:none}.appbar{position:sticky;top:0;z-index:20;height:46px;display:flex;align-items:center;gap:8px;padding:0 12px;color:#fff;font-weight:600;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-deep) 100%)}.appbar .back{width:28px;height:28px;display:grid;place-items:center;font-size:20px;cursor:pointer;border-radius:50%}.appbar .back:active{background:#ffffff2e}.appbar .title{font-size:15px;letter-spacing:.5px}.hero{position:relative;overflow:hidden;padding:26px 20px 74px;background:radial-gradient(120% 90% at 10% -10%,#ffffff38,#fff0 60%),linear-gradient(150deg,var(--brand) 0%,var(--brand-deep) 100%);color:#fff;text-align:center}.hero:after{content:"";position:absolute;right:-46px;bottom:-70px;width:210px;height:210px;border-radius:50%;border:26px solid rgba(255,255,255,.07)}.hero .org{font-size:11px;opacity:.85;letter-spacing:1.5px}.hero h1{font-size:27px;line-height:1.28;letter-spacing:2px;margin:8px 0 6px;font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.14)}.hero .sub{font-size:12px;opacity:.9}.hero .badges{display:flex;gap:6px;justify-content:center;margin-top:12px;flex-wrap:wrap}.hero .badge{font-size:10px;padding:3px 9px;border-radius:999px;background:#ffffff2e;border:1px solid rgba(255,255,255,.28)}.card{background:var(--card);border-radius:var(--r-m);box-shadow:var(--sh-s);margin:0 12px 12px}.card.pad{padding:16px}.card.pull{margin-top:-58px;position:relative;z-index:2}.sec{padding:14px 16px}.sec+.sec{border-top:1px solid var(--line)}.sec h3{font-size:14px;font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:6px}.sec h3:before{content:"";width:3px;height:13px;border-radius:2px;background:var(--brand)}.notice{margin:12px;padding:10px 12px;border-radius:var(--r-s);font-size:12px;line-height:1.6;display:flex;gap:6px;align-items:flex-start}.notice.info{background:var(--blue-soft);color:var(--blue)}.notice.warn{background:var(--gold-soft);color:#8a6312}.notice.ok{background:var(--green-soft);color:var(--green)}.notice.stop{background:#f1f3f5;color:var(--ink-2)}.stock{text-align:center;padding:18px 16px 16px}.stock .label{font-size:12px;color:var(--ink-3)}.stock .num{font-size:34px;font-weight:800;color:var(--brand);line-height:1.15;letter-spacing:-.5px}.stock .num small{font-size:13px;color:var(--ink-4);font-weight:500;margin-left:4px}.stock .meter{height:6px;border-radius:999px;background:var(--line);margin:12px 0 8px;overflow:hidden}.stock .meter i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brand),#f0625f);transition:width .5s ease}.stock .time{font-size:11px;color:var(--ink-3)}.steps{display:flex;align-items:center}.step{flex:1;text-align:center}.step .dot{width:30px;height:30px;margin:0 auto 6px;border-radius:50%;background:var(--brand-softer);color:var(--brand);font-weight:800;font-size:13px;display:grid;place-items:center;border:1px solid #f7d4d4}.step .txt{font-size:11px;color:var(--ink-2)}.step-arrow{color:var(--ink-4);font-size:12px;margin-top:-16px}.rows{list-style:none}.rows li{font-size:12.5px;color:var(--ink-2);padding:5px 0 5px 16px;position:relative;line-height:1.65}.rows li:before{content:"";position:absolute;left:2px;top:12px;width:5px;height:5px;border-radius:50%;background:var(--brand);opacity:.5}.chain{font-size:12.5px;color:var(--ink-2);line-height:2}.chain .more{color:var(--ink-3);font-size:11px}.chain .cinema{padding:7px 0;border-bottom:1px dashed var(--line);line-height:1.6}.chain .cinema:last-child{border-bottom:none}.chain .cinema .cn{color:var(--ink);font-weight:600}.chain .cinema .ad{color:var(--ink-3);font-size:12px;margin-top:1px}.chain .cinema .tel{display:inline-block;margin-top:2px;font-size:12px;color:var(--brand);text-decoration:none}.chain .tip{margin:8px 0 0;font-size:11.5px;color:var(--ink-3);line-height:1.7}.field{margin-bottom:14px}.field>label{display:block;font-size:12px;color:var(--ink-2);margin-bottom:6px;font-weight:600}.input{width:100%;height:44px;padding:0 14px;font-size:15px;color:var(--ink);background:#fbfcfd;border:1.5px solid var(--line);border-radius:var(--r-s);outline:none;transition:border-color .2s}.input:focus{border-color:var(--brand);background:#fff}.input::placeholder{color:var(--ink-4);font-size:13px}.input[readonly]{color:var(--ink-3)}.code-row{display:flex;gap:8px}.code-row .input{flex:1}.agree{display:flex;align-items:flex-start;gap:8px;font-size:11.5px;color:var(--ink-3);line-height:1.6;margin:4px 0 16px}.agree input{width:15px;height:15px;margin-top:2px;accent-color:var(--brand);flex-shrink:0}.btn{display:block;width:100%;height:46px;border:none;border-radius:999px;font-size:16px;font-weight:700;cursor:pointer;transition:transform .12s,opacity .2s;background:linear-gradient(135deg,var(--brand),var(--brand-deep));color:#fff;box-shadow:var(--sh-brand)}.btn:active{transform:scale(.985)}.btn:disabled{background:#d8dde3;color:#fff;box-shadow:none}.btn.ghost{background:#fff;color:var(--brand);border:1.5px solid var(--brand);box-shadow:none}.btn.soft{background:var(--brand-softer);color:var(--brand);box-shadow:none}.btn.sm{height:34px;font-size:12.5px;width:auto;padding:0 14px;border-radius:999px}.btn.sms{height:44px;width:auto;padding:0 14px;font-size:13px;border-radius:var(--r-s);background:#fff;color:var(--brand);border:1.5px solid var(--brand);box-shadow:none;white-space:nowrap}.btn.sms:disabled{color:var(--ink-4);border-color:var(--line);background:#f7f8fa}.actions{padding:12px 16px calc(16px + env(safe-area-inset-bottom));display:grid;gap:10px}.search{position:sticky;top:46px;z-index:10;background:var(--bg);padding:12px}.search .box{display:flex;align-items:center;gap:8px;height:42px;padding:0 14px;background:#fff;border-radius:999px;box-shadow:var(--sh-s)}.search input{flex:1;border:none;outline:none;font-size:14px;background:transparent}.hot-line{font-size:11px;color:var(--ink-3);padding:4px 20px 8px}.hot-line b{color:var(--brand);font-weight:600}.uni-list{padding:0 12px 20px}.uni{display:flex;align-items:center;gap:12px;background:#fff;border-radius:var(--r-m);padding:13px 14px;margin-bottom:8px;box-shadow:var(--sh-s);cursor:pointer;transition:background .15s}.uni:active{background:var(--brand-softer)}.uni .idx{width:26px;height:26px;flex-shrink:0;border-radius:8px;background:var(--brand-softer);color:var(--brand);font-size:12px;font-weight:700;display:grid;place-items:center}.uni .name{flex:1;font-size:14px;font-weight:600}.uni .meta{font-size:11px;color:var(--ink-3);font-weight:400;margin-top:2px}.uni .go{color:var(--ink-4);font-size:18px}.uni.selected{border:1.5px solid var(--brand)}.exam-head{position:sticky;top:46px;z-index:10;background:#fff;padding:12px 16px 10px;box-shadow:var(--sh-s)}.exam-head .line{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-2);margin-bottom:8px}.bar{height:5px;background:var(--line);border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),#f0625f);border-radius:999px;transition:width .35s ease}.q-card{background:#fff;margin:12px;padding:16px;border-radius:var(--r-m);box-shadow:var(--sh-s);animation:rise .3s ease}.q-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.q-head .no{font-size:13px;font-weight:700;color:var(--ink)}.q-body{font-size:15.5px;line-height:1.7;margin-bottom:14px}.opt{display:flex;gap:10px;align-items:flex-start;padding:12px 13px;margin-bottom:9px;border:1.5px solid var(--line);border-radius:var(--r-s);background:#fbfcfd;cursor:pointer;transition:all .18s}.opt .key{width:22px;height:22px;flex-shrink:0;border-radius:50%;background:#fff;border:1.5px solid var(--line);color:var(--ink-2);font-size:12px;font-weight:700;display:grid;place-items:center;transition:all .18s}.opt .txt{flex:1;font-size:14px;line-height:1.5}.opt:active{transform:scale(.995)}.opt.on{border-color:var(--brand);background:var(--brand-softer)}.opt.on .key{background:var(--brand);border-color:var(--brand);color:#fff}.nav-dots{display:flex;flex-wrap:wrap;gap:7px;padding:12px 16px;background:#fff;margin:0 12px 12px;border-radius:var(--r-m);box-shadow:var(--sh-s)}.nav-dots i{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;font-size:12px;font-style:normal;background:#f4f6f8;color:var(--ink-3);cursor:pointer}.nav-dots i.done{background:var(--brand-softer);color:var(--brand)}.nav-dots i.cur{background:var(--brand);color:#fff;font-weight:700}.result{text-align:center;padding:34px 20px 10px}.result .face{width:74px;height:74px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;font-size:34px;color:#fff}.result .face.win{background:linear-gradient(135deg,#23b05d,#1f9d55);box-shadow:0 10px 26px #1f9d554d}.result .face.lose{background:linear-gradient(135deg,#98a2b0,#7c8794);box-shadow:0 10px 26px #7c879440}.result h2{font-size:20px;margin-bottom:6px}.result p{font-size:13px;color:var(--ink-2);line-height:1.7}.result .chances{margin-top:14px;font-size:12px;color:var(--ink-3)}.result .chances b{font-size:20px;color:var(--brand);margin:0 3px}.review{margin:16px 12px 0;background:#fff;border-radius:var(--r-m);box-shadow:var(--sh-s);overflow:hidden}.review .rh{padding:11px 14px;background:#fafbfc;font-size:13px;font-weight:700;color:var(--ink-2);border-bottom:1px solid var(--line)}.review .ri{padding:12px 14px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.75}.review .ri:last-child{border-bottom:none}.review .ri .q{color:var(--ink)}.review .ri .no{font-weight:700;color:var(--brand);margin-right:4px}.review .ri .yours{color:#c0392b;font-size:12px;display:block;margin-top:3px}.review .ri .right{color:var(--green);font-size:12px;display:block}.ticket-wrap{padding:16px 12px 24px}.ticket{background:#fff;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--sh-m);position:relative}.ticket .top{background:linear-gradient(135deg,var(--brand),var(--brand-deep));color:#fff;padding:18px 18px 20px;position:relative;overflow:hidden}.ticket .top:before{content:"";position:absolute;top:-34px;right:-22px;width:120px;height:120px;border-radius:50%;border:16px solid rgba(255,255,255,.09)}.ticket .top .org{font-size:10.5px;opacity:.85;letter-spacing:1px}.ticket .top .nm{font-size:19px;font-weight:800;margin:6px 0 3px;letter-spacing:1px}.ticket .top .tp{font-size:11.5px;opacity:.85}.perf{position:relative;height:22px;background:#fff}.perf:before,.perf:after{content:"";position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:var(--bg);transform:translateY(-50%)}.perf:before{left:-11px}.perf:after{right:-11px}.perf .dash{position:absolute;left:22px;right:22px;top:50%;border-top:1.5px dashed var(--line)}.ticket .body{padding:6px 18px 18px;text-align:center}.qr{width:172px;margin:10px auto 6px;padding:8px;border:1px solid var(--line);border-radius:var(--r-s);background:#fff}.qr img{width:100%;height:auto;display:block}.qr .tip{margin-top:8px;padding:6px 8px;border-radius:6px;background:var(--brand-light);border:1px solid #f0b9b9;color:var(--brand-deep);font-size:12px;font-weight:700;line-height:1.5}.qr .tip:before{content:"⚠ "}.serial{font-family:SFMono-Regular,Consolas,monospace;font-size:16px;letter-spacing:1.5px;color:var(--ink);background:var(--gold-soft);border:1px dashed var(--gold);border-radius:var(--r-s);padding:11px 8px;margin:12px 0;word-break:break-all}.serial .lb{display:block;font-size:10.5px;color:#9a7414;letter-spacing:0;font-family:inherit;margin-bottom:4px}.kv{display:flex;justify-content:space-between;font-size:12.5px;padding:7px 0;border-bottom:1px dashed var(--line);text-align:left}.kv:last-child{border-bottom:none}.kv span{color:var(--ink-3)}.kv b{color:var(--ink);font-weight:600}.remind{margin-top:14px;background:var(--brand-softer);border:1px solid #f7d4d4;border-radius:var(--r-s);padding:12px;font-size:12px;color:#96241f;line-height:1.8;text-align:left}.remind b{font-size:12.5px}.tk-item{display:flex;align-items:center;gap:12px;background:#fff;margin:0 12px 10px;padding:13px 14px;border-radius:var(--r-m);box-shadow:var(--sh-s);cursor:pointer}.tk-item .ic{width:40px;height:40px;border-radius:10px;background:var(--brand-softer);display:grid;place-items:center;color:var(--brand);font-size:19px;flex-shrink:0}.tk-item .info{flex:1;min-width:0}.tk-item .t1{font-size:14px;font-weight:600}.tk-item .t2{font-size:11.5px;color:var(--ink-3);font-family:monospace;margin-top:2px}.tag{display:inline-block;font-size:11px;padding:2px 8px;border-radius:999px;font-weight:600}.tag.green{background:var(--green-soft);color:var(--green)}.tag.gray{background:#f1f3f5;color:var(--ink-3)}.tag.red{background:var(--brand-light);color:var(--brand)}.tag.blue{background:var(--blue-soft);color:var(--blue)}.tag.orange{background:var(--orange-soft);color:var(--orange)}.empty{text-align:center;padding:54px 20px;color:var(--ink-3);font-size:13px}.empty .big{font-size:40px;margin-bottom:10px;opacity:.4}.mask{position:fixed;inset:0;background:#0f172a8c;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px;animation:fade .2s ease}.modal{background:#fff;border-radius:var(--r-l);width:100%;max-width:360px;max-height:78vh;display:flex;flex-direction:column;animation:rise .25s ease}.modal h3{font-size:16px;padding:16px 18px 10px}.modal .txt{padding:0 18px 8px;overflow-y:auto;font-size:12.5px;color:var(--ink-2);line-height:1.85}.modal .txt h4{font-size:13px;color:var(--ink);margin:12px 0 4px}.policy{margin:0 0 6px;white-space:pre-line}.modal .foot{padding:12px 18px 18px}.toast{position:fixed;left:50%;bottom:96px;transform:translate(-50%);background:#1f2430eb;color:#fff;padding:10px 18px;border-radius:999px;font-size:13px;z-index:90;max-width:84vw;animation:rise .2s ease}.loading{display:grid;place-items:center;padding:60px 0;color:var(--ink-3);font-size:13px}.spin{width:22px;height:22px;border:2.5px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:10px}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pop{0%{transform:scale(.8);opacity:0}60%{transform:scale(1.06)}to{transform:scale(1);opacity:1}}.pop{animation:pop .4s ease}
