:root{color-scheme:light;--ink: #17212b;--muted: #647180;--line: #e3edf0;--panel: #ffffff;--wash: #f3fbfc;--teal: #16a7a0;--teal-strong: #087e7a;--coral: #f26f5f;--amber: #d99a30;--violet: #5666c9;--night: #12242d;--shadow: 0 18px 45px rgba(29, 82, 94, .12);font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:linear-gradient(180deg,#ffffff 0%,#f6fcfd 34%,var(--wash) 100%)}button,input,select{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:#fff;color:var(--ink)}label{display:grid;gap:7px;color:var(--muted);font-size:13px}h1,h2,h3,h4,p{margin-top:0}.appShell{width:min(100%,520px);min-height:100vh;margin:0 auto;padding:14px 16px 32px}.homeHeader{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 2px 14px}.homeHeader h1{margin:5px 0 0;font-size:30px;letter-spacing:0}.brandLockup{display:inline-flex;align-items:center;gap:11px;color:#fff}.brandLockup img{width:52px;height:52px;object-fit:contain;border-radius:14px;background:#ffffffeb;box-shadow:0 12px 28px #171a2229}.brandLockup strong{display:block;font-size:20px;line-height:1.15;letter-spacing:0}.brandLockup span{display:block;margin-top:4px;color:#ffffffc7;font-size:12px}.brandLockup.compact{color:var(--ink)}.brandLockup.compact img{width:38px;height:38px;border-radius:10px}.brandLockup.compact strong{font-size:16px}.adminNav .brandLockup.compact{color:#fff;margin-bottom:8px}.appFooter{margin:22px 0 4px;color:#8b929f;text-align:center;font-size:12px}.avatarButton{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--night);box-shadow:0 12px 25px #171a2233}.hero{min-height:300px;border-radius:16px;margin:0 0 14px;padding:28px 22px 24px;background-position:center;background-size:cover;color:#fff;display:flex;align-items:flex-end;box-shadow:0 22px 48px #12242d33;overflow:hidden}.heroContent{max-width:380px}.hero h1{font-size:34px;line-height:1.12;margin:8px 0 12px;letter-spacing:0}.hero p{color:#ffffffd6;line-height:1.75;margin-bottom:18px}.eyebrow,.tag,.strategyBadge{display:inline-flex;align-items:center;width:fit-content;border-radius:999px;font-size:12px;font-weight:700}.eyebrow{color:#b5f2e9;letter-spacing:0}.eyebrow.dark{color:var(--teal)}.tag{padding:5px 9px;background:#eef7f5;color:var(--teal)}.strategyBadge{padding:7px 10px;color:#6b3d10;background:#fff3dc}.primaryButton,.secondaryButton,.quickAction,.sessionItem{min-height:44px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700}.primaryButton{padding:0 16px;color:#fff;background:var(--coral);box-shadow:0 12px 24px #f26f5f33}.primaryButton:hover{background:#df5e50}.secondaryButton{padding:0 14px;color:var(--teal);background:#e9f6f4}.quickGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.quickAction{flex-direction:column;min-height:86px;padding:10px;color:var(--ink);background:var(--panel);box-shadow:0 12px 28px #1f243014}.quickAction span{font-size:13px}.panel,.successPanel,.ticketDetail,.verifyResult,.adminSection{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 30px #1f243012}.panel{padding:16px;margin-bottom:14px}.panel h2,.sectionHeader h2,.loginPanel h2,.successPanel h2{font-size:18px;margin-bottom:6px}.muted,.panel p,.sectionHeader p,.loginPanel p{color:var(--muted);line-height:1.65;font-size:14px}.sectionHeader{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:20px 0 10px}.sectionHeader.inline{margin:0 0 14px}.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.venueChips{margin-bottom:2px}.chip{white-space:nowrap;padding:9px 12px;border-radius:999px;color:var(--muted);background:#fff;border:1px solid var(--line)}.chip.active{color:#fff;background:var(--night);border-color:var(--night)}.noticeBand{display:flex;align-items:center;gap:9px;min-height:46px;margin-bottom:4px;padding:0 14px;border:1px solid rgba(22,167,160,.22);border-radius:8px;color:#087e7a;background:#ecfbf9;font-size:13px;font-weight:700}.showList{display:grid;gap:12px}.inlineEmpty{min-height:150px;display:grid;place-items:center;gap:7px;padding:22px 16px;border:1px dashed var(--line);border-radius:8px;background:#ffffffa3;color:var(--muted);text-align:center}.inlineEmpty svg{color:var(--teal)}.inlineEmpty strong{color:var(--ink)}.inlineEmpty p{margin:0;font-size:13px}.showCard{display:grid;grid-template-columns:108px 1fr;gap:12px;min-height:150px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 28px #1f243012;transition:transform .18s ease,box-shadow .18s ease}.showCard:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.showCard img,.detailHero img,.bookingSummary img{width:100%;height:100%;object-fit:cover;border-radius:8px}.showCard h3{font-size:18px;margin:10px 0 6px}.showCard p{display:-webkit-box;overflow:hidden;color:var(--muted);line-height:1.55;font-size:13px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.sessionStrip{display:flex;flex-wrap:wrap;gap:8px}.sessionStrip span,.bookingSummary p{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:13px}.topbar{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:42px 1fr 42px;align-items:center;min-height:58px;margin:-14px -14px 14px;padding:8px 14px;background:#f5f7fae0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbarTitle{text-align:center;font-weight:800}.iconButton{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;color:var(--ink);background:#fff;border:1px solid var(--line)}.topbarSpacer{width:38px}.detailHero,.bookingSummary{display:grid;grid-template-columns:124px 1fr;gap:14px;margin-bottom:14px}.detailHero img{aspect-ratio:3 / 4}.detailHero h1,.bookingSummary h1{margin:8px 0 10px;font-size:26px;line-height:1.2;letter-spacing:0}.sessionList{display:grid;gap:10px}.sessionItem{width:100%;justify-content:space-between;padding:12px;color:var(--ink);background:#f9fafb;border:1px solid var(--line);text-align:left}.sessionItem span{display:inline-flex;align-items:center;gap:8px}.sessionItem small{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:500}.loginPanel{display:grid;gap:12px}.loginPanel.compact{grid-template-columns:1fr}.inputWithButton{display:grid;grid-template-columns:1fr 86px;gap:10px;align-items:end}.inputWithButton button{min-height:44px;border-radius:8px;color:#fff;background:var(--violet);font-weight:700}.devCode,.formMessage{margin:0;font-size:13px}.devCode{color:#8a4b00}.authShell{width:min(100%,520px);min-height:100vh;margin:0 auto;display:grid;grid-template-rows:minmax(310px,42vh) 1fr;background:#fff}.authVisual{display:flex;align-items:flex-end;padding:28px 22px;color:#fff;background-position:center;background-size:cover}.authBrand h1{margin:14px 0 12px;font-size:32px;line-height:1.16;letter-spacing:0}.authBrand p{max-width:420px;margin-bottom:0;color:#ffffffd6;line-height:1.7}.authPanel{position:relative;margin-top:-24px;padding:18px 16px 32px;border-radius:22px 22px 0 0;background:linear-gradient(180deg,#fff,#fbfaf6)}.authSteps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.stepDot{display:grid;justify-items:center;gap:6px;color:#9aa1ad;font-size:12px}.stepDot span{width:28px;height:28px;display:grid;place-items:center;border-radius:999px;border:1px solid var(--line);background:#fff}.stepDot.active{color:var(--teal);font-weight:800}.stepDot.active span{border-color:var(--teal);background:#e9f6f4}.authCard{display:grid;gap:14px;padding:20px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.authCard h2{margin-bottom:0;font-size:22px}.authCard p{margin-bottom:0;color:var(--muted);line-height:1.65}.authIcon{width:52px;height:52px;display:grid;place-items:center;border-radius:14px;color:var(--teal);background:#e8f5f3}.authIcon.phone{color:var(--violet);background:#f0eef9}.wechatButton{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;color:#fff;background:#16a34a;font-weight:800;box-shadow:0 14px 28px #16a34a33}.authBenefit{display:grid;gap:8px;padding-top:4px}.authBenefit span{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:13px}.authMessage{margin:12px 2px 0;color:#8a4b00;font-size:13px;line-height:1.55}.authStage{width:min(100%,520px);min-height:100vh;margin:0 auto;position:relative;background:#fbfaf6}.authStagePreview{min-height:100vh;opacity:.78;filter:saturate(.9);pointer-events:none}.modalBackdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:end center;padding:18px 14px;background:#171a2275;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.authModalCard{width:min(100%,440px);position:relative;display:grid;gap:14px;padding:22px;border-radius:18px;border:1px solid rgba(255,255,255,.7);background:linear-gradient(180deg,#fff,#fbfaf6);box-shadow:0 28px 70px #171a2247}.modalCloseButton{position:absolute;top:12px;right:12px;width:34px;height:34px;display:grid;place-items:center;border-radius:999px;color:var(--muted);background:#f5fafb;border:1px solid var(--line)}.authModalCard h2{margin:0;font-size:23px}.authModalCard p{margin:0;color:var(--muted);line-height:1.65;font-size:14px}.followCard{text-align:center}.followCard .authIcon{justify-self:center}.followQrBox{width:min(100%,238px);justify-self:center;padding:12px;border-radius:14px;border:1px solid var(--line);background:#fff}.followQrBox img{display:block;width:100%;border-radius:8px}.followBenefits{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.followBenefits span{min-height:42px;display:grid;place-items:center;padding:7px;border-radius:8px;background:#eef7f5;color:var(--teal);font-size:12px;font-weight:800}.detailSection{display:grid;gap:10px}.detailSection h2{margin-bottom:0}.detailSection>p{margin-bottom:0}.showRichText{display:grid;gap:10px;color:var(--muted);font-size:14px;line-height:1.75}.showRichText p,.showRichText ul,.showRichText ol,.showRichText blockquote,.showRichText figure{margin:0}.showRichText ul,.showRichText ol{padding-left:20px}.showRichText strong,.showRichText b{color:var(--ink)}.showRichText a{color:var(--coral);font-weight:800}.showRichText figure{display:grid;gap:6px}.showRichText img{max-width:100%;border-radius:8px;display:block}.showRichText figcaption{color:var(--muted);font-size:12px;text-align:center}.infoPills{display:flex;flex-wrap:wrap;gap:8px}.infoPills span{padding:8px 10px;border-radius:999px;color:var(--teal-strong);background:#ecfbf9;font-size:13px;font-weight:800}.castList{display:grid;gap:8px}.castList div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.castList div:last-child{border-bottom:0}.castList span{color:var(--muted);font-size:13px}.castList strong{color:var(--ink)}.placeLine{display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-weight:800}.checkingLine{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;border-radius:999px;color:var(--muted);background:#f5f7fa;font-size:13px}.checkingLine span{width:8px;height:8px;border-radius:999px;background:var(--teal);box-shadow:0 0 0 5px #0f6e641f}.phoneAuthPage{width:min(100%,520px);min-height:100vh;margin:0 auto;padding:22px 14px 32px;background:linear-gradient(180deg,rgba(23,26,34,.04),transparent 24%),#fbfaf6}.phoneAuthHeader{display:grid;gap:10px;padding:8px 4px 16px}.phoneAuthHeader h1{margin:0;font-size:30px}.phoneAuthHeader p{margin:0;color:var(--muted);line-height:1.65}.phoneSteps{margin:4px 0 14px}.phoneCard{box-shadow:var(--shadow)}.phoneModalCard{text-align:left}.phoneModalCard .authIcon{color:var(--coral);background:#fff1ef}.phoneModalCard h2{margin:5px 0 6px}.bookingSummary{background:#fff;padding:12px;border:1px solid var(--line);border-radius:8px}.bookingSummary img{aspect-ratio:1}.memberList{display:grid;gap:8px;margin-bottom:14px}.memberItem{min-height:70px;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}.memberItem.selected{border-color:var(--teal);background:#effaf8}.memberItem small{display:block;margin-top:4px;color:var(--muted)}.memberItem button{color:var(--coral);background:transparent;font-weight:700}.audienceForm{display:grid;gap:10px}.checkRow{display:inline-flex;align-items:center;gap:8px;grid-template-columns:auto 1fr}.checkRow input,.memberItem input{width:18px;min-height:18px}.attendancePanel{display:grid;gap:12px;margin-bottom:14px;padding:14px;border:1px solid rgba(201,83,63,.2);border-radius:8px;background:#fff7ee;color:#6b2f22}.attendancePanel strong{display:block;margin-bottom:5px;color:#5a291f}.attendancePanel p{margin:0;line-height:1.65;font-size:13px}.commitmentCheck{color:#5a291f;font-weight:800}.stickySubmit{position:sticky;bottom:10px;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:12px}.stickySubmit p{margin-bottom:0}.successPanel{display:grid;place-items:center;gap:8px;padding:24px 16px;text-align:center;color:var(--teal)}.seatSummary{margin-bottom:2px;color:var(--ink);font-weight:800;line-height:1.6}.bookingSeatList{width:100%;display:grid;gap:8px;margin:2px 0;color:var(--ink)}.bookingSeatList div{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:8px;background:#f7faf9;border:1px solid #e5efec}.bookingSeatList span{color:var(--muted)}.bookingSeatList strong{color:var(--teal-strong);text-align:right}.attendanceReminder{width:100%;padding:10px 12px;border-radius:8px;color:#6b2f22;background:#fff2e7;font-size:13px;line-height:1.55}.seatPositionPanel{width:100%;display:grid;gap:10px;margin-top:8px;padding:14px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,rgba(22,167,160,.05),transparent 38%),#fff;color:var(--ink);text-align:left}.seatPositionPanel.compact{margin:6px 0 8px;padding:12px;background:#fff}.seatPositionHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.seatPositionHead h3{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:16px}.seatPositionHead h3 svg{color:var(--teal)}.seatPositionHead p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.seatLegend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 9px;min-width:130px}.seatLegend span{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:11px;white-space:nowrap}.seatLegend i,.seatPositionDot{display:inline-block;width:8px;height:8px;border-radius:3px;background:#dce7eb}.seatLegend i.companion,.seatPositionDot.companion{background:var(--teal);box-shadow:0 0 0 2px #16a7a026}.seatLegend i.mine,.seatPositionDot.mine{background:var(--coral);box-shadow:0 0 0 3px #f26f5f2e}.seatPositionStage{min-height:28px;display:grid;place-items:center;border-radius:8px;color:#fff;background:linear-gradient(90deg,var(--night),var(--teal-strong));font-size:12px;font-weight:800}.seatSectionLabels,.seatPositionRow{display:grid;grid-template-columns:44px minmax(52px,1fr) 24px minmax(108px,2fr) 24px minmax(52px,1fr);gap:6px;align-items:center}.seatSectionLabels{color:var(--muted);font-size:10px;text-align:center}.seatSectionLabels em,.seatAisle{color:#9ba8b2;font-size:9px;font-style:normal;text-align:center}.seatPositionRows{display:grid;gap:4px;overflow-x:auto;padding:4px 1px}.seatPositionRow{min-width:340px;padding:2px 4px;border-radius:7px}.seatPositionRow.focus{background:#fff5f2;padding-top:17px;margin-top:3px}.seatPositionRow>span{color:var(--muted);font-size:10px;white-space:nowrap}.seatPositionBlock{display:flex;align-items:center;justify-content:center;gap:3px;min-height:11px;overflow:visible}.seatPositionMarker{position:relative;display:inline-flex;align-items:center;justify-content:center;width:8px;height:8px;flex:0 0 8px}.seatPositionMarker.here{z-index:3}.seatHereLabel{position:absolute;left:50%;bottom:14px;transform:translate(-50%);padding:2px 6px;border-radius:999px;background:var(--coral);color:#fff;box-shadow:0 5px 14px #6b2f2238;font-size:10px;font-style:normal;font-weight:900;line-height:1.3;white-space:nowrap;pointer-events:none}.seatHereLabel:after{content:"";position:absolute;left:50%;bottom:-4px;width:7px;height:7px;transform:translate(-50%) rotate(45deg);background:var(--coral)}.seatPositionBlock.left{justify-content:flex-end}.seatPositionBlock.right{justify-content:flex-start}.seatPositionNote{margin:0;color:var(--muted);font-size:11px;line-height:1.5;text-align:center}.toast{position:fixed;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));z-index:100;width:min(92vw,460px);transform:translate(-50%);padding:12px 14px;border-radius:8px;background:#20242c;color:#fff;box-shadow:var(--shadow);text-align:center;pointer-events:none}.ticketList{display:grid;gap:12px}.ticketCard{display:grid;grid-template-columns:1fr 96px;align-items:center;gap:12px;min-height:136px;padding:14px;color:var(--ink);background:#fff;border:1px solid var(--line);border-left:6px solid var(--teal);border-radius:8px;box-shadow:0 12px 28px #1f24300f}.ticketCard h2{font-size:19px;margin:10px 0 8px}.ticketCard p{color:var(--muted)}.ticketDetail{display:grid;justify-items:center;gap:12px;padding:24px 16px;text-align:center;border-top:6px solid var(--night);background:linear-gradient(180deg,#fffaf2,#fff 48%),var(--panel)}.ticketDetail dl,.verifyResult dl{width:100%;display:grid;gap:8px;margin:8px 0 0}.ticketDetail dl div,.verifyResult dl div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0;font-weight:700;text-align:right;overflow-wrap:anywhere}.verifyShell{width:min(100%,520px);min-height:100vh;margin:0 auto;padding:22px 14px 32px}.verifyHeader{padding:22px 6px 16px}.verifyHeader svg{color:var(--teal)}.verifyHeader h1{margin:12px 0 8px;font-size:30px}.verifyHeader p{color:var(--muted);line-height:1.65}.verifyResult{padding:18px;border-left:6px solid var(--teal)}.verifyResult.used{border-left-color:var(--amber)}.emptyPage{min-height:100vh;display:grid;place-content:center;gap:12px;padding:24px;text-align:center}.emptyIcon{width:64px;height:64px;display:grid;place-items:center;justify-self:center;border-radius:16px;color:var(--teal);background:#e9f6f4}.emptyPage p{color:var(--muted)}.adminShell{min-height:100vh;display:grid;grid-template-columns:240px 1fr;background:#f3f5f8}.adminNav{padding:24px;color:#fff;background:linear-gradient(180deg,#171a22f5,#171a22e6),url(https://images.unsplash.com/photo-1505686994434-e3cc5abf1330?auto=format&fit=crop&w=900&q=80);background-position:center;background-size:cover;display:flex;flex-direction:column;gap:10px}.adminNav h1{font-size:24px;margin-bottom:12px}.adminNav button{width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;color:#fff;background:#ffffff1f}.adminLoginShell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#171a22c7,#0f6e6473),url(https://images.unsplash.com/photo-1517457373958-b7bdd4587205?auto=format&fit=crop&w=1400&q=80);background-position:center;background-size:cover}.adminLoginCard{width:min(100%,420px);display:grid;gap:14px;padding:24px;border:1px solid rgba(255,255,255,.42);border-radius:12px;background:#fffffff0;box-shadow:0 24px 65px #171a2240}.adminLoginCard h1{margin-bottom:0;font-size:28px}.adminLoginCard p{margin-bottom:0;color:var(--muted);line-height:1.65}.adminMain{padding:28px;display:grid;gap:18px}.adminHeader,.adminSectionHead{display:flex;align-items:center;justify-content:space-between;gap:14px}.adminHeader h2{margin:6px 0 0;font-size:28px}.metricGrid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:14px}.metricCard{min-height:120px;display:grid;align-content:space-between;padding:16px;background:#fff;border:1px solid var(--line);border-radius:8px}.metricCard svg{color:var(--teal)}.metricCard span{color:var(--muted)}.metricCard strong{font-size:32px}.adminSection{padding:18px}.adminSection h3{margin-bottom:5px}.adminSection p{color:var(--muted);margin:0}.segmented{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.segmented button{min-height:42px;padding:0 14px;border-radius:8px;color:var(--muted);background:#f4f6f8;border:1px solid var(--line);font-weight:700}.segmented button.active{color:#fff;background:var(--teal);border-color:var(--teal)}.sessionAdminList{display:grid;gap:12px;margin-top:16px}.sessionAdminItem{display:grid;grid-template-columns:240px 1fr;gap:18px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fbfcfd}.sessionAdminItem h4{margin-bottom:6px}.seatMap{display:grid;gap:3px;overflow-x:auto;max-height:420px;padding-right:4px}.seatRow{display:grid;grid-template-columns:84px repeat(16,10px);align-items:center;gap:4px}.seatRow span{color:var(--muted);font-size:11px;white-space:nowrap}.seatRow i{width:10px;height:10px;border-radius:3px;background:#dfe5eb}.seatRow i.front{background:#eaf27b}.seatRow i.middle{background:#f1a448}.seatRow i.rear{background:#99d875}.seatRow i.occupied{background:var(--coral)}.twoCol{display:grid;grid-template-columns:1fr 1.2fr;gap:22px}.qrBox{display:grid;gap:10px;width:fit-content;margin-top:14px;padding:14px;border:1px dashed var(--line);border-radius:8px}.qrBox small{max-width:220px;color:var(--muted);overflow-wrap:anywhere}.smsLog{display:grid;gap:8px}.smsLog div{display:grid;grid-template-columns:150px 70px 1fr;gap:8px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.smsLog strong{color:var(--teal)}.smsLog small{color:var(--muted);overflow-wrap:anywhere}.auditLog{display:grid;gap:8px;margin-top:16px}.auditLog div{display:grid;grid-template-columns:minmax(180px,1fr) 150px minmax(240px,1.4fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.auditLog span{font-weight:800}.auditLog strong{color:var(--teal-strong);overflow-wrap:anywhere}.auditLog small{color:var(--muted);overflow-wrap:anywhere}@media(max-width:760px){.adminShell{grid-template-columns:1fr}.adminNav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:12px 14px}.adminNav h1{margin:0;font-size:18px}.adminNav button{width:auto;padding:0 12px}.adminMain{padding:14px}.adminHeader,.adminSectionHead{align-items:flex-start;flex-direction:column}.metricGrid,.sessionAdminItem,.twoCol,.smsLog div,.auditLog div{grid-template-columns:1fr}}body{background:radial-gradient(circle at 50% -120px,rgba(29,143,232,.18),transparent 320px),linear-gradient(180deg,#eaf8ff,#f8fcff 26%,#fff)}.appShell .topbarTitle{color:#12253b;font-size:18px;font-weight:900}.appShell .iconButton{width:38px;height:38px;border:0;border-radius:999px;color:#172330;background:#fffffff0;box-shadow:0 8px 20px #346c921c}.appShell .primaryButton,.appShell .secondaryButton,.appShell .quickAction,.appShell .sessionItem,.appShell .memberItem,.appShell .seatTicketChip,.verifyShell .primaryButton,.verifyShell .secondaryButton,.authCard .primaryButton,.authModalCard .primaryButton,.phoneCard .primaryButton{border-radius:12px}.appShell .tag,.appShell .eyebrow.dark{color:#247bd5}.appShell .tag{background:#e7f4ff}.appShell .showCardPoster,.appShell .featurePoster,.appShell .detailPoster,.appShell .mineAvatar,.appShell .ticketCardQr,.appShell .seatPositionPanel,.appShell .bookingSeatList div,.appShell .seatTicketChip{border-radius:14px}.appShell .attendancePanel,.appShell .mineNotice,.appShell .noticeBand,.appShell .attendanceReminder{color:#7a382f;background:#fff5ef}.ticketQrPanel{width:100%;display:grid;justify-items:center;gap:12px;padding:16px}.ticketInfoGrid{width:100%;display:grid;gap:0;padding:4px 16px}.emptyPage{display:grid;align-content:center;justify-items:center;gap:12px;padding:38px 24px;text-align:center}.emptyIcon{color:#247bd5;background:#e7f4ff}.emptyPage h1,.emptyPage p{max-width:320px}.emptyPage h1,.homeCard h2,.catalogHeader h1,.detailHero h1,.bookingSummary h1,.ticketCard h2,.mineHero h1,.ticketPassHead h1,.verifyHeader h1,.authModalCard h2{color:#12253b;letter-spacing:0}.brandLockup.compact{color:#12253b}.brandLockup.compact strong{color:#12253b;font-size:16px}.homeSchemeShell{width:min(100%,430px);padding:14px 14px 112px;background:linear-gradient(180deg,#eaf8ff,#f8fcff 18%,#fff)}.homeSchemeHeader{display:grid;grid-template-columns:minmax(126px,.92fr) minmax(138px,1fr) 38px;align-items:center;gap:8px;margin:4px 0 14px}.homeSchemeHeader .brandLockup.compact{min-width:0;gap:7px;color:#12253b}.homeSchemeHeader .brandLockup.compact img{width:42px;height:30px;border-radius:0;background:transparent;box-shadow:none}.homeSchemeHeader .brandLockup.compact strong{overflow:hidden;color:#12253b;font-size:18px;line-height:1.08;white-space:nowrap;text-overflow:ellipsis}.homeSchemeHeader .brandLockup.compact span{display:block;margin-top:3px;overflow:hidden;color:#53606f;font-size:10px;letter-spacing:3px;white-space:nowrap;text-overflow:ellipsis}.homeSchemeSearch{min-width:0;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 11px 0 14px;border:1px solid rgba(206,222,231,.65);border-radius:999px;color:#768392;background:#fffffff0}.homeSchemeHero{overflow:hidden;border:0;border-radius:18px;background-color:#cef;box-shadow:0 18px 40px #3c84ae24}.homeGenrePill,.chip{flex:0 0 auto;min-height:42px;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:999px;color:#26394d;background:#fffffff0;box-shadow:0 9px 22px #346c9217;font-size:15px;font-weight:900}.homeGenrePill{padding:0 18px}.chip{padding:0 16px}.homeGenrePill.active,.chip.active{color:#fff;background:linear-gradient(135deg,#ff7a73,#ff4e4d);box-shadow:0 10px 22px #ff4f4c3d}.homeCard,.homeAttendanceBanner,.panel,.successPanel,.catalogHeader,.showCard,.detailHero,.bookingSummary,.attendancePanel,.ticketCard,.mineHero,.mineMenu button,.mineNotice,.ticketQrPanel,.ticketInfoGrid,.ticketSchemeCard,.ticketMapSection .seatPositionPanel,.authModalCard,.loginPanel,.verifierMobileCard,.staffBindCard,.verifyResult,.inlineEmpty{border:1px solid rgba(237,242,245,.96);border-radius:18px;background:#fffffff7;box-shadow:0 12px 34px #1e537614}.catalogHeader,.detailHero,.bookingSummary,.mineHero,.verifierMobileCard,.staffBindCard{background:linear-gradient(135deg,#fffffffc,#e7f4ffe0)}.homeCard{margin-top:8px;padding:16px}.homeCardHead h2,.homeCard h2{margin:0;font-size:21px;line-height:1.2}.homeShowPoster,.showCardPoster,.featurePoster,.detailPoster,.bookingSummary img,.mineAvatar,.ticketCardQr,.followQrBox,.qrBox,.seatPositionPanel,.bookingSeatList div,.seatTicketChip,.verifyTicketCard img{border-radius:14px}.homeShowPoster{position:relative;height:70px;overflow:hidden;background:#e9eef3}.homeShowAction button,.primaryButton{min-height:46px;border-radius:12px;color:#fff;background:linear-gradient(135deg,#ff7a73,#ff4e4d);box-shadow:0 10px 22px #ff4f4c3d;font-weight:900}.homeShowAction button{min-height:34px;min-width:92px;font-size:14px}.secondaryButton,.textAction,.inputWithButton button,.ticketQrTitle button{border-radius:12px;color:#247bd5;background:#e7f4ff;font-weight:900}.wechatButton{min-height:46px;border-radius:12px;color:#fff;background:linear-gradient(135deg,#18b976,#15a7b3);box-shadow:0 10px 22px #15a7b32e;font-weight:900}.showCard,.ticketCard,.orderCard{border:1px solid #edf2f5}.showCard{overflow:hidden}.showCardAction{color:#247bd5;background:#e7f4ff}.sessionItem,.memberItem,.seatTicketChip,.bookingSeatList div{border:1px solid #edf2f5;border-radius:14px;background:#fbfdff}.seatTicketGrid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.ticketSchemePass.ticketDetail,.ticketSchemePass{display:grid;gap:12px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.ticketSchemePass .ticketPassHead{width:auto;min-height:174px;position:relative;display:grid;justify-items:stretch;align-content:space-between;gap:16px;overflow:hidden;padding:20px;border:0;border-radius:22px;color:#fff;background:radial-gradient(circle at 88% 16%,rgba(255,255,255,.24),transparent 34%),linear-gradient(135deg,#247bd5,#17a8b6 58%,#20ba70);box-shadow:0 18px 40px #247bd53d}.authStage{position:relative;overflow:hidden}.modalBackdrop{background:#12253b47;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.authModalCard{width:min(calc(100% - 28px),390px);padding:22px 18px}.authIcon{color:#247bd5;background:#e7f4ff}.followQrBox{border:1px solid #edf2f5;background:#fff}.loginPanel{padding:14px}.verifierToolTop{color:#53606f}.verifyHeader svg{color:#247bd5}.verifyHeader h1{font-size:26px}.verifyTicketCard{border:1px solid #edf2f5;border-radius:14px;background:#fbfdff}.verifyResult h2{color:#20ba70}.appShell .mineNotice{display:grid;gap:6px}.appShell,.verifyShell,.authStage,.authShell,.phoneAuthPage,.emptyPage{width:min(100%,390px);min-height:100vh;margin:0 auto;background:var(--ref-bg)}.homeSchemeShell{padding-top:14px}.homeSchemeHeader .brandLockup.compact{min-width:0;color:var(--ref-ink)}.homeSchemeHero{position:relative;width:100%;height:168px;display:block;overflow:hidden;padding:0;border:0;border-radius:12px;background:#101016;box-shadow:var(--ref-shadow);text-align:left}.homeCard,.panel,.successPanel,.catalogHeader,.showCard,.detailHero,.bookingSummary,.attendancePanel,.ticketCard,.mineHero,.mineMenu button,.mineNotice,.embeddedTicketPanel,.authModalCard,.loginPanel,.verifierMobileCard,.staffBindCard,.verifyResult,.inlineEmpty{border:1px solid var(--ref-line);border-radius:12px;background:var(--ref-card);box-shadow:var(--ref-shadow)}.homeCardHead{margin-bottom:11px}.homeShowAction button,.primaryButton{min-height:36px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#ff474b,#ff2f35);box-shadow:0 10px 22px #ff3b3f38;font-size:13px;font-weight:900}.catalogHeader,.detailHero,.bookingSummary,.mineHero,.verifierMobileCard,.staffBindCard{background:#fff;background-image:none}.catalogHeader h1{font-size:22px}.chip,.orderTabs button{position:relative;min-height:32px;padding:0;border-radius:0;color:#667085;background:transparent;box-shadow:none;font-size:13px;font-weight:800}.chip.active,.orderTabs button.active{color:var(--ref-red);background:transparent;box-shadow:none}.showCard{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:10px}.showCardAction,.secondaryButton,.textAction,.inputWithButton button,.ticketQrTitle button{color:var(--ref-red);background:#fff1f1;border-radius:8px}.detailHero,.bookingSummary{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;padding:14px}.tag,.eyebrow.dark{color:var(--ref-red)}.tag{background:#fff1f1}.attendancePanel,.guideCallout,.attendanceReminder{color:#2765b6;background:#eef6ff}.flowBottomCta{position:fixed;left:50%;bottom:0;z-index:35;width:min(100%,390px);min-height:70px;display:grid;grid-template-columns:minmax(0,1fr) 154px;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--ref-line);border-radius:0;background:#fffffffa;box-shadow:0 -12px 30px #18203814;transform:translate(-50%)}.ticketCard.orderCard{position:relative;gap:12px;padding:14px;border-color:var(--ref-line);border-left:1px solid var(--ref-line);border-radius:12px}.orderCardShow span{color:#8b95a5;font-size:12px}.orderCardActions span{color:#8b95a5;font-size:12px}.ticketSchemePass .ticketPassHead{min-height:150px;border-radius:12px;background:radial-gradient(circle at 88% 18%,rgba(255,255,255,.16),transparent 32%),linear-gradient(135deg,#ff474b,#ff3036);box-shadow:0 14px 28px #ff3b3f33}.ticketQrPanel,.ticketInfoGrid,.ticketSchemeCard,.ticketMapSection .seatPositionPanel{border:1px solid var(--ref-line);border-radius:12px;background:#fff;box-shadow:var(--ref-shadow)}.ticketMapSection .seatPositionStage{background:#d8dde6}.bottomTabItem svg{width:20px;height:20px}.bottomTabItem.active{color:var(--ref-red);background:transparent}.mineHero{position:relative;display:grid;gap:16px;padding:20px 16px 14px}.mineProfileRow{display:grid;grid-template-columns:62px minmax(0,1fr) 20px;align-items:center;gap:12px;padding-right:18px}.mineProfileRow>svg{color:#8b95a5;transform:rotate(180deg)}.mineAvatar{width:62px;height:62px;border-radius:50%;color:var(--ref-red);background:#fff1f1}.mineHero h1{margin:2px 0 5px;font-size:18px}.mineHero p{margin:0;color:#5e6a7a;font-size:12px}.mineStatButton{display:grid;justify-items:center;gap:4px;padding:0;border:0;border-right:1px solid var(--ref-line);background:transparent;color:inherit;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.mineStatButton:active{transform:translateY(1px)}.mineStatButton:focus-visible{outline:2px solid rgba(255,47,67,.28);outline-offset:4px}.mineStatButton:last-child{border-right:0}.mineOrderPanel .textAction{min-height:28px;padding:0;color:#7d8796;background:transparent;font-size:12px}.mineNotice{display:grid;gap:6px}body{min-height:100vh;background:radial-gradient(circle at 50% -120px,rgba(29,143,232,.18),transparent 320px),linear-gradient(180deg,#eaf8ff,#f8fcff 26%,#fff)}.appShell{width:min(100%,430px);padding:14px 14px 112px;background:linear-gradient(180deg,#eaf8ff,#f8fcff 18%,#fff)}.topbar{position:sticky;top:0;z-index:20;min-height:44px;grid-template-columns:40px 1fr 40px;margin:-2px 0 12px;padding:0;border-bottom:0;background:#eaf8ffdb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.iconButton{width:38px;height:38px;border:0;border-radius:999px;color:#172330;background:#fffffff0;box-shadow:0 8px 20px #346c921c}.panel,.successPanel,.verifyResult,.authCard,.phoneCard,.authModalCard,.bookingSummary,.detailHero,.showCard,.ticketCard,.mineHero,.mineMenu button,.attendancePanel,.catalogHeader,.loginPanel{border:0;border-radius:18px;background:#fffffff5;box-shadow:0 12px 34px #1e537614}.primaryButton,.secondaryButton,.sessionItem,.quickAction,.memberItem,.seatTicketChip,.textAction{border-radius:12px}.primaryButton{min-height:46px;color:#fff;background:linear-gradient(135deg,#ff7a73,#ff4e4d);box-shadow:0 10px 22px #ff4f4c3d}.eyebrow.dark,.tag{color:#247bd5}.showCard,.ticketCard{border:1px solid #edf2f5}.showCardPoster,.featurePoster,.detailPoster,.mineAvatar,.ticketCardQr,.followQrBox,.qrBox,.seatPositionPanel,.bookingSeatList div,.seatTicketChip{border-radius:14px}.sessionItem,.memberItem,.seatTicketChip,.bookingSeatList div{border:1px solid #edf2f5;background:#fbfdff}.detailHero{background:linear-gradient(135deg,#fffffffa,#e7f4ffdb)}.detailHero h1,.bookingSummary h1,.catalogHeader h1,.mineHero h1{color:#12253b;letter-spacing:0}.attendancePanel,.mineNotice,.noticeBand,.attendanceReminder{color:#7a382f;background:#fff5ef}.authStage,.phoneAuthPage,.verifyShell{width:min(100%,430px);background:linear-gradient(180deg,#eaf8ff,#f8fcff 24%,#fff)}.authStagePreview{opacity:.58;filter:saturate(.88) blur(1px)}.authShell{width:min(100%,430px);background:#fff}.authPanel{background:linear-gradient(180deg,#fff,#f8fcff)}.wechatButton{border-radius:12px}.ticketSchemeShell{min-height:100vh}.ticketSchemeShell .topbar{margin-bottom:10px}.ticketSchemePass{display:grid;gap:12px;padding:0;border:0;background:transparent;box-shadow:none}.ticketSchemePass .ticketPassHead h1{position:relative;z-index:1;max-width:260px;margin:10px 0 8px;color:#fff;font-size:29px;line-height:1.15;letter-spacing:0}.ticketQrPanel{width:100%;display:grid;justify-items:center;gap:12px;margin:0;padding:16px;border:0;border-radius:22px;background:#fffffffa;box-shadow:0 12px 34px #1e537614}.ticketQrPanel.used{background:linear-gradient(180deg,#fff,#f6f8fb)}.ticketQrTitle strong{display:block;color:#12253b;font-size:19px}.ticketQrTitle span{display:block;margin-top:4px;color:#6f7d8c;font-size:12px;font-weight:800}.ticketQrTitle button{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:999px;color:#247bd5;background:#e7f4ff}.ticketQrMeta{width:100%;justify-content:center;min-height:30px;padding:0 12px;border-radius:999px;background:#f4f9fd}.ticketQrMeta span{color:#6f7d8c;font-size:12px;font-weight:900}.ticketInfoGrid{width:100%;display:grid;gap:0;margin:0;padding:4px 16px;border-radius:18px;background:#fffffffa;box-shadow:0 12px 34px #1e537614}.ticketSchemeCard,.ticketMapSection .seatPositionPanel{margin:0;padding:16px;border:0;border-radius:18px;background:#fffffffa;box-shadow:0 12px 34px #1e537614}.ticketMapSection .seatPositionPanel{gap:12px}.ticketMapSection .seatPositionHead h3{color:#12253b;font-size:19px}.ticketMapSection .seatPositionStage{min-height:30px;border-radius:999px;background:linear-gradient(90deg,#247bd5,#17a8b6)}@media(max-width:420px){.showCard,.detailHero,.bookingSummary,.ticketCard{grid-template-columns:1fr}.showCard img,.bookingSummary img{aspect-ratio:16 / 9}.inputWithButton{grid-template-columns:1fr}.stickySubmit{align-items:stretch;flex-direction:column}}:root{--ink: #172330;--muted: #667382;--line: #dce9ea;--panel: #ffffff;--wash: #eef9f8;--teal: #13a6a1;--teal-strong: #0b7775;--coral: #ef6b5b;--amber: #d9a23a;--violet: #5367c6;--night: #20313c;--shadow: 0 18px 40px rgba(24, 91, 101, .12)}body{background:radial-gradient(circle at 18% 0%,rgba(19,166,161,.16),transparent 32%),linear-gradient(180deg,#f9fdfd,#eef9f8 42%,#f8fbfb)}.appShell{width:min(100%,540px);padding:14px 16px 88px}.homeMasthead{display:grid;gap:18px;padding:8px 0 6px}.homeNav{display:flex;align-items:center;justify-content:space-between;gap:12px}.homeIntro{padding:4px 2px 2px}.homeIntro h1{margin:6px 0 8px;font-size:32px;line-height:1.1;letter-spacing:0}.homeIntro p{max-width:320px;margin:0;color:var(--muted);line-height:1.7;font-size:14px}.brandLockup.compact img{width:42px;height:42px;border-radius:12px;box-shadow:0 10px 24px #1723301a}.brandLockup.compact strong{font-size:17px}.avatarButton{width:auto;height:40px;padding:0 12px;border-radius:999px;color:var(--teal-strong);background:#fff;border:1px solid rgba(19,166,161,.2);box-shadow:0 10px 24px #185b651a}.avatarButton span{margin-left:5px;font-size:13px;font-weight:800}.featureSpotlight{display:grid;grid-template-columns:128px minmax(0,1fr);gap:14px;margin:12px 0 14px;padding:12px;border:1px solid rgba(19,166,161,.18);border-radius:8px;background:linear-gradient(135deg,#e8faf8eb,#fffffff5),#fff;box-shadow:0 18px 42px #185b6524;cursor:pointer}.featurePoster{position:relative;min-height:176px;overflow:hidden;border-radius:8px;background:#e8f4f3}.featurePoster img{width:100%;height:100%;min-height:176px;display:block;object-fit:cover}.featurePoster span{position:absolute;left:8px;bottom:8px;padding:5px 8px;border-radius:999px;color:#fff;background:#172330c7;font-size:12px;font-weight:800}.featureCopy{min-width:0;display:grid;align-content:center;gap:9px}.featureCopy h2{margin:0;font-size:24px;line-height:1.18;letter-spacing:0}.featureCopy p{display:-webkit-box;margin:0;color:var(--muted);line-height:1.6;font-size:13px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.featureMeta{display:grid;gap:10px;margin-top:2px}.featureMeta>span{display:inline-flex;align-items:center;gap:6px;color:var(--teal-strong);font-size:13px;font-weight:800}.primaryButton{min-height:46px;border-radius:8px;background:var(--coral);box-shadow:0 13px 24px #ef6b5b38}.secondaryButton{border-radius:8px;color:var(--teal-strong);background:#e8f7f5}.quickGrid{gap:9px;margin:12px 0}.quickAction{min-height:78px;border:1px solid rgba(19,166,161,.14);border-radius:8px;color:var(--night);background:#ffffffe0;box-shadow:0 10px 24px #185b6514}.quickAction svg{color:var(--teal)}.noticeBand{min-height:auto;padding:12px 13px;border-radius:8px;border-color:#ef6b5b33;color:#7a382f;background:#fff5ef;line-height:1.5}.sectionHeader{margin:22px 0 12px}.sectionHeader h2,.panel h2,.successPanel h2{font-size:19px;letter-spacing:0}.chips{gap:9px;padding:0 0 10px}.chip{padding:9px 14px;border-color:#13a6a12e;color:var(--teal-strong);background:#ffffffc7;font-weight:800}.chip.active{background:var(--teal);border-color:var(--teal);box-shadow:0 10px 20px #13a6a12e}.showList{gap:11px}.showCard{grid-template-columns:100px minmax(0,1fr);gap:12px;min-height:136px;padding:10px;border-color:#13a6a124;border-radius:8px;background:#fffffff0;box-shadow:0 12px 30px #185b651a}.showCardPoster{position:relative;min-height:128px;overflow:hidden;border-radius:8px;background:#eef6f6}.showCardPoster img{width:100%;height:100%;display:block;object-fit:cover}.showCardPoster span{position:absolute;left:7px;bottom:7px;max-width:calc(100% - 14px);padding:4px 7px;border-radius:999px;color:#fff;background:#20313cd1;font-size:11px;font-weight:900}.showCardBody{min-width:0;display:grid;align-content:center;gap:7px}.showCardTitleRow{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.showCard h3{margin:0;font-size:18px;line-height:1.25}.showCardTitleRow strong{flex:0 0 auto;color:var(--amber);font-size:13px}.showCard p{margin:0;line-height:1.55}.sessionStrip span{color:var(--muted);font-size:12px}.showCardAction{width:fit-content;margin-top:1px;color:var(--teal-strong);font-size:13px;font-weight:900}.topbar{margin:-14px -16px 14px;padding:8px 16px;background:#f9fdfde6;border-bottom:1px solid rgba(220,233,234,.8)}.iconButton{border-radius:999px;background:#fff}.panel,.successPanel,.ticketDetail,.verifyResult{border-color:#13a6a124;border-radius:8px;box-shadow:0 12px 32px #185b6517}.detailHero{grid-template-columns:142px minmax(0,1fr);gap:14px;margin-bottom:14px;padding:12px;border:1px solid rgba(19,166,161,.16);border-radius:8px;background:linear-gradient(135deg,#fff,#effaf9),#fff;box-shadow:0 18px 40px #185b651f}.detailPoster{overflow:hidden;border-radius:8px}.detailPoster img{width:100%;height:100%;min-height:190px;display:block;object-fit:cover}.detailHeroContent{min-width:0;display:grid;align-content:center;gap:9px}.detailHero h1{margin:0;font-size:27px}.detailHero p{margin:0;color:var(--muted);line-height:1.65;font-size:14px}.detailFacts{display:grid;gap:6px;margin-top:2px}.detailFacts span{display:inline-flex;align-items:center;gap:6px;color:var(--teal-strong);font-size:12px;font-weight:800}.introPanel{background:linear-gradient(180deg,rgba(239,107,91,.06),transparent 46%),#fff}.infoPills span{border-radius:8px;color:var(--teal-strong);background:#eaf8f6}.castList div{padding:11px 0}.sessionItem{min-height:70px;padding:13px;border-color:#13a6a126;background:#fbfefd}.sessionItem>strong{color:var(--coral);white-space:nowrap}.attendanceGuide{display:grid;gap:12px}.guideCallout{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border-radius:8px;color:#7a382f;background:#fff5ef;font-size:13px;font-weight:800;line-height:1.55}.bookingSummary{grid-template-columns:112px minmax(0,1fr);gap:13px;padding:12px;border-color:#13a6a129;border-radius:8px;background:linear-gradient(135deg,#fff,#ecfaf8),#fff;box-shadow:0 16px 36px #185b651c}.bookingSummary img{aspect-ratio:3 / 4}.bookingSummary h1{margin:6px 0 9px;font-size:24px}.strategyBadge{padding:7px 10px;color:#7a382f;background:#fff1e9}.memberItem{border-color:#13a6a124;background:#fbfefd}.memberItem.selected{border-color:var(--teal);background:#eaf8f6;box-shadow:0 8px 18px #13a6a11a}.audienceForm{padding-top:4px}.attendancePanel{border-color:#ef6b5b33;border-radius:8px;background:linear-gradient(135deg,#fff7ef,#fff),#fff}.stickySubmit{bottom:12px;border-color:#13a6a12e;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.successPanel{margin-top:14px;padding:24px 14px 18px;color:var(--teal);background:linear-gradient(180deg,#ecfaf8,#fff 42%),#fff}.bookingSeatList div{border-color:#13a6a124;background:#fbfefd}.seatPositionPanel{border-color:#13a6a129;border-radius:8px;background:linear-gradient(180deg,rgba(19,166,161,.08),transparent 36%),#fff}.seatPositionStage{border-radius:999px;background:linear-gradient(90deg,#243744,#13a6a1)}.seatPositionDot{background:#e0ebee}.seatPositionMarker.empty{opacity:.38}.seatPositionDot.placeholder{background:#d8e5e8;box-shadow:none}.seatPositionMarker.reference{opacity:.38}.seatPositionDot.referenceDot{background:#d8e5e8;box-shadow:none}.seatPositionRow.focus{background:#fff3ef}.ticketList{gap:12px}.ticketCard{grid-template-columns:minmax(0,1fr) auto;min-height:146px;padding:14px;border:1px solid rgba(19,166,161,.16);border-left:0;border-radius:8px;background:linear-gradient(135deg,#fff,#effaf9),#fff;box-shadow:0 16px 36px #185b651c}.ticketCardMain{min-width:0}.ticketCard h2{margin:10px 0 8px;font-size:20px}.ticketCard p{margin-bottom:8px}.ticketCardMain strong{color:var(--teal-strong)}.ticketCardQr{padding:8px;border-radius:8px;background:#fff;box-shadow:inset 0 0 0 1px #13a6a124}.orderCard{grid-template-columns:1fr;gap:12px}.orderCardActions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid rgba(19,166,161,.12)}.orderCardActions span{color:var(--muted);font-size:13px;font-weight:800}.seatTicketGrid{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:8px;margin-top:10px}.seatTicketChip{min-width:0;min-height:62px;display:grid;align-content:center;gap:4px;padding:9px 10px;border:1px solid rgba(19,166,161,.16);border-radius:8px;color:var(--ink);background:#fbfefd;text-align:left}.seatTicketChip.active{border-color:var(--coral);background:#fff5f1;box-shadow:inset 0 0 0 1px #ef6b5b29}.seatTicketChip span{color:var(--muted);font-size:12px;font-weight:700}.seatTicketChip strong{color:var(--teal-strong);font-size:15px;line-height:1.35;overflow-wrap:anywhere}.seatTicketChip small{width:fit-content;padding:2px 6px;border-radius:999px;color:#8a4b00;background:#fff2d8;font-size:11px;font-weight:800}.ticketDetail{overflow:hidden;gap:14px;padding:0 16px 20px;border-top:0;background:#fff}.ticketPassHead{width:calc(100% + 32px);display:grid;justify-items:center;gap:8px;padding:22px 18px 18px;color:#fff;background:linear-gradient(135deg,#243744,#13a6a1)}.ticketPassHead .tag{color:var(--teal-strong);background:#fff}.ticketPassHead h1{margin:0;font-size:25px}.ticketPassHead p{margin:0;color:#ffffffdb}.ticketQrPanel{display:grid;justify-items:center;gap:9px;margin-top:4px;padding:14px;border:1px solid rgba(19,166,161,.14);border-radius:8px;background:#fbfefd}.ticketQrPanel span{color:var(--muted);font-size:12px;font-weight:800}.ticketQrMeta{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px}.ticketQrMeta button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 10px;border-radius:8px;color:var(--teal-strong);background:#eaf8f6;font-size:12px;font-weight:900}.ticketQrMeta button:disabled{opacity:.5}.ticketSeatSection{width:100%;display:grid;gap:2px;text-align:left}.ticketSeatSection h2{margin:0;font-size:17px}.authStage{background:#eef9f8}.authStagePreview{opacity:.5;filter:saturate(.86) blur(1px)}.modalBackdrop{background:#17233070}.authModalCard{border-radius:8px;background:linear-gradient(180deg,#fff,#f5fbfb),#fff}.followQrBox,.followBenefits span{border-radius:8px}@media(max-width:420px){.appShell{padding-left:14px;padding-right:14px}.featureSpotlight{grid-template-columns:116px minmax(0,1fr)}.featurePoster,.featurePoster img{min-height:168px}.featureCopy h2{font-size:21px}.showCard{grid-template-columns:94px minmax(0,1fr)}.showCardPoster{min-height:124px}.detailHero{grid-template-columns:124px minmax(0,1fr)}.detailPoster img{min-height:178px}.bookingSummary{grid-template-columns:104px minmax(0,1fr)}.ticketCard{grid-template-columns:minmax(0,1fr) auto}}@media(max-width:360px){.featureSpotlight,.detailHero,.bookingSummary{grid-template-columns:1fr}.featurePoster img,.detailPoster img,.bookingSummary img{aspect-ratio:16 / 10;min-height:0}.showCard{grid-template-columns:86px minmax(0,1fr)}.ticketCard{grid-template-columns:1fr}.ticketCardQr{width:fit-content}}body{min-height:100vh;background:linear-gradient(180deg,#f4fbfb,#f7fbfa 42%,#fff)}.appShell{width:min(100%,430px);padding:14px 14px 116px}.homeMasthead{gap:14px;padding-top:10px}.homeIntro h1{font-size:30px}.homeSearchButton{min-height:46px;display:flex;align-items:center;gap:9px;padding:0 14px;border:1px solid rgba(19,166,161,.16);border-radius:8px;color:var(--muted);background:#ffffffeb;box-shadow:0 10px 24px #185b6514;text-align:left}.homeSearchButton svg{flex:0 0 auto;color:var(--teal)}.homeSearchButton span{min-width:0;font-size:14px;font-weight:700}.textAction{min-height:34px;padding:0 11px;border-radius:8px;color:var(--teal-strong);background:#eaf8f6;font-size:13px;font-weight:900}.featureSpotlight{grid-template-columns:120px minmax(0,1fr);margin-top:10px;background:linear-gradient(135deg,#fffffffa,#eaf8f6eb),#fff}.featurePoster,.featurePoster img{min-height:162px}.featureCopy h2{font-size:22px}.quickGrid{margin:12px 0}.quickAction{min-height:74px;padding:9px 6px;box-shadow:0 8px 20px #185b6512}.quickAction span{line-height:1.25}.showCard{grid-template-columns:92px minmax(0,1fr);min-height:126px}.showCardPoster{min-height:116px}.showCardAction{padding-top:2px}.catalogHeader{display:grid;gap:8px;margin-bottom:14px;padding:16px;border:1px solid rgba(19,166,161,.16);border-radius:8px;background:linear-gradient(135deg,#fffffffa,#ecfaf8eb),#fff;box-shadow:0 14px 32px #185b651a}.catalogHeader h1{margin:0;font-size:26px;line-height:1.16}.catalogHeader p{margin:0;color:var(--muted);font-size:14px}.catalogChips{margin-bottom:4px}.mineHero{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:13px;margin-bottom:14px;padding:16px;border:1px solid rgba(19,166,161,.16);border-radius:8px;background:linear-gradient(135deg,#fff,#ecfaf8),#fff;box-shadow:0 14px 32px #185b651a}.mineAvatar{width:58px;height:58px;display:grid;place-items:center;overflow:hidden;border-radius:8px;color:var(--teal);background:#eaf8f6}.mineAvatar img{width:100%;height:100%;object-fit:cover}.mineHero h1{margin:5px 0 4px;font-size:24px;line-height:1.18}.mineHero p{margin:0;color:var(--muted);font-size:14px}.profilePanel{display:grid;gap:12px}.profileFacts{display:grid;gap:8px;margin:0}.profileFacts div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(19,166,161,.12)}.profileFacts div:last-child{border-bottom:0}.profileFacts dd{color:var(--ink)}.mineMenu{display:grid;gap:10px;margin-bottom:14px}.mineMenu button{min-height:70px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;padding:12px;border:1px solid rgba(19,166,161,.14);border-radius:8px;color:var(--ink);background:#fffffff2;box-shadow:0 10px 24px #185b6514;text-align:left}.mineMenu svg{justify-self:center;color:var(--teal)}.mineMenu span{display:grid;gap:4px;min-width:0}.mineMenu strong{font-size:15px}.mineMenu small{color:var(--muted);line-height:1.4}.mineNotice{background:#fff8f3;border-color:#ef6b5b2e}.mineNotice p{margin-bottom:0}.minePrimary{width:100%;margin-bottom:10px}.bottomTabBar{position:fixed;left:50%;bottom:max(10px,env(safe-area-inset-bottom));z-index:60;width:min(394px,calc(100vw - 24px));min-height:66px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:7px;transform:translate(-50%);border:1px solid rgba(19,166,161,.16);border-radius:8px;background:#fffffff5;box-shadow:0 18px 42px #185b6533;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottomTabItem{min-width:0;min-height:50px;display:grid;place-items:center;align-content:center;gap:3px;border-radius:8px;color:#7b8793;background:transparent;font-size:11px;font-weight:800}.bottomTabItem svg{stroke-width:2.3}.bottomTabItem.active{color:var(--teal-strong);background:#eaf8f6}.bottomTabItem span{line-height:1.1}@media(max-width:360px){.featureSpotlight{grid-template-columns:1fr}.featurePoster,.featurePoster img{min-height:0;aspect-ratio:16 / 10}.showCard{grid-template-columns:86px minmax(0,1fr)}}.homeSchemeShell{width:min(100%,430px);padding:14px 14px 108px;background:linear-gradient(180deg,#eaf8ff,#f8fcff 18%,#fff)}.homeSchemeHeader{display:grid;grid-template-columns:minmax(126px,.92fr) minmax(138px,1fr) 36px;align-items:center;gap:8px;margin:4px 0 14px}.homeSchemeHeader .brandLockup.compact{min-width:0;gap:7px}.homeSchemeHeader .brandLockup.compact img{width:42px;height:30px;border-radius:0;box-shadow:none;background:transparent}.homeSchemeHeader .brandLockup.compact strong{font-size:18px;line-height:1.08;white-space:nowrap}.homeSchemeHeader .brandLockup.compact span{display:block;margin-top:3px;color:#53606f;font-size:10px;letter-spacing:3px;white-space:nowrap}.homeSchemeSearch{min-width:0;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 11px 0 14px;border-radius:999px;color:#768392;background:#ffffffeb;box-shadow:inset 0 0 0 1px #cedee7a6}.homeSchemeSearch span{overflow:hidden;font-size:13px;white-space:nowrap;text-overflow:ellipsis}.homeSchemeSearch svg,.homeSchemeBell svg{color:#0f2033}.homeSchemeBell{width:36px;height:36px;display:grid;place-items:center;border-radius:999px;background:transparent}.homeSchemeHero{position:relative;display:block;overflow:hidden;border-radius:18px;background-color:#cef;box-shadow:0 18px 40px #3c84ae24}.homeSchemeHero img{display:block;width:100%;aspect-ratio:797 / 278;object-fit:cover}.homeGenreRail{display:flex;gap:12px;overflow-x:auto;padding:14px 0 10px}.homeGenrePill{flex:0 0 auto;min-height:42px;display:inline-flex;align-items:center;gap:7px;padding:0 18px;border-radius:999px;color:#26394d;background:#ffffffeb;box-shadow:0 9px 22px #346c9217;font-size:15px;font-weight:900}.homeGenrePill.active{color:#fff;background:linear-gradient(135deg,#ff7a73,#ff4e4d);box-shadow:0 10px 22px #ff4f4c3d}.homeGenrePill.drama svg{color:#1d8fe8}.homeGenrePill.musical svg{color:#9564ff}.homeGenrePill.opera svg{color:#ff9f1b}.homeGenrePill.family svg{color:#25b96f}.homeGenrePill.active svg{color:currentColor}.homeCard{margin-top:8px;padding:16px;border-radius:18px;background:#fffffff5;box-shadow:0 12px 34px #1e537614}.homeCardHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.homeCardHead h2,.homeCard h2{margin:0;color:#12253b;font-size:21px;line-height:1.2}.homeCardHead button{display:inline-flex;align-items:center;gap:4px;color:#6f7d8c;background:transparent;font-weight:800}.homeCardHead button svg{transform:rotate(180deg)}.homeShowRows{display:grid}.homeShowRow{display:grid;grid-template-columns:94px minmax(0,1fr) 112px;gap:12px;padding:10px 0;border-bottom:1px solid #edf2f5}.homeShowRow:last-child{border-bottom:0;padding-bottom:0}.homeShowPoster{position:relative;height:70px;overflow:hidden;border-radius:8px;background:#e9eef3}.homeShowPoster img{width:100%;height:100%;object-fit:cover}.homeShowPoster span{position:absolute;left:5px;top:5px;padding:3px 6px;border-radius:5px;color:#fff;background:#ff6b33;font-size:11px;font-weight:900}.homeShowPoster span.musical{background:#8a67ff}.homeShowPoster span.family{background:#20b972}.homeShowInfo{min-width:0}.homeShowInfo h3{margin:0 0 5px;color:#101c2e;font-size:19px;line-height:1.22}.homeShowInfo p{display:-webkit-box;margin:0 0 7px;overflow:hidden;color:#83909e;line-height:1.45;font-size:13px;-webkit-box-orient:vertical;-webkit-line-clamp:1}.homeShowInfo span{display:inline-flex;align-items:center;gap:4px;color:#576575;font-size:13px}.homeShowAction{display:grid;align-content:center;justify-items:start;gap:4px;padding-left:12px;border-left:1px solid #edf2f5}.homeShowAction time{color:#172330;font-size:15px;line-height:1.25}.homeShowAction small{color:#20ba70;font-weight:900}.homeShowAction button{min-height:34px;min-width:92px;border-radius:11px;color:#fff;background:linear-gradient(135deg,#ff6f69,#ff4e4d);font-size:14px;font-weight:900}.homeAttendanceBanner{min-height:50px;display:grid;grid-template-columns:28px 1fr 18px;align-items:center;gap:8px;margin:14px 0 10px;padding:0 16px;border-radius:999px;color:#247bd5;background:#e7f4ff;font-size:15px;font-weight:900}.homeAttendanceBanner svg:last-child{transform:rotate(180deg)}.adminShell{min-height:100vh;display:grid;grid-template-columns:136px minmax(0,1fr);color:#1d2a39;background:#f4f8fb}.adminNav{position:sticky;top:0;height:100vh;display:grid;grid-template-rows:auto 1fr auto;gap:20px;padding:18px 12px;color:#d9e9ef;background:#0d2332}.adminNavBrand{display:grid;gap:8px}.adminNavBrand .brandLockup.compact{display:grid;justify-items:center;gap:6px;color:#fff}.adminNavBrand .brandLockup.compact img{width:52px;height:38px;border-radius:0;background:transparent;box-shadow:none}.adminNavBrand .brandLockup.compact strong{display:none}.adminNavBrand span{color:#fff;text-align:center;font-size:15px;font-weight:900}.adminNav nav,.adminNavFooter{display:grid;align-content:start;gap:6px}.adminNav button{width:100%;min-height:40px;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;justify-content:start;gap:8px;padding:0 10px;border-radius:7px;color:#d9e9ef;background:transparent;font-size:13px;font-weight:800;text-align:left}.adminNav button.active,.adminNav button:hover{color:#fff;background:#16a7a03d}.adminMain{display:grid;gap:16px;min-width:0;padding:22px 26px 30px}.adminHeader{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:4px;border-bottom:1px solid #e2ebf0}.adminHeader h2{margin:3px 0 4px;color:#142334;font-size:26px;line-height:1.12}.adminHeader p{margin:0;color:#748291;font-size:13px}.adminUserPill{min-height:36px;display:inline-flex;align-items:center;gap:10px;padding:0 6px 0 14px;border:1px solid #dde8ee;border-radius:999px;background:#fff;color:#5f6f7f;font-size:13px;font-weight:800}.adminUserPill button{min-height:28px;padding:0 10px;border-radius:999px;color:#fff;background:#ff5b58;font-size:12px;font-weight:900}.metricGrid{display:grid;grid-template-columns:repeat(5,minmax(138px,1fr));gap:12px}.metricCard{min-height:106px;display:grid;align-content:space-between;gap:8px;padding:16px;border:1px solid #e4edf2;border-radius:9px;background:#fff;box-shadow:0 12px 28px #2349610d}.metricCard span{color:#647384;font-size:13px;font-weight:800}.metricCard strong{color:#142334;font-size:28px;line-height:1}.metricCard small{color:#8895a4;font-size:12px}.metricCard.positive small,.successText{color:#12a77e}.metricCard.warning small,.dangerText{color:#e34b48}.adminGrid{display:grid;gap:16px;min-width:0}.adminGrid.twoOne{grid-template-columns:minmax(0,1fr) 330px}.sessionManageGrid,.smsManageGrid,.verifierManageGrid,.audienceManageGrid,.contentManageGrid{grid-template-columns:minmax(0,1fr) 360px}.adminSideStack{display:grid;align-content:start;gap:16px;min-width:0}.adminSection{min-width:0;padding:18px;border:1px solid #e3ebf0;border-radius:10px;background:#fff;box-shadow:0 14px 32px #2349610f}.adminSectionHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.adminSectionHead h3,.bindQrPanel h3{margin:0 0 5px;color:#142334;font-size:17px}.adminSectionHead p,.bindQrPanel p{margin:0;color:#7a8897;font-size:13px;line-height:1.5}.adminRichTextEditor{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);gap:14px}.adminRichTextEditor label{display:grid;gap:7px;color:#526171;font-size:13px;font-weight:900}.adminRichTextEditor label:first-child{grid-column:1 / -1}.adminRichTextEditor select,.adminRichTextEditor textarea{width:100%;border:1px solid #dfe9ef;border-radius:8px;color:#1f2f3d;background:#fbfdfe;font:inherit}.adminRichTextEditor select{min-height:40px;padding:0 12px}.adminRichTextEditor textarea{min-height:190px;padding:12px;line-height:1.65;resize:vertical}.adminRichTextPreview{display:grid;align-content:start;gap:10px;min-height:190px;padding:12px;border:1px solid #e6eef3;border-radius:8px;background:#f8fbfc}.adminRichTextPreview>strong{color:#142334;font-size:13px}.adminShowEditor{display:grid;gap:14px}.adminShowToolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px}.adminShowToolbar label,.adminShowForm label{display:grid;gap:7px;color:#526171;font-size:13px;font-weight:900}.adminShowActions{display:inline-flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.adminShowForm{display:grid;grid-template-columns:minmax(160px,1.1fr) minmax(130px,.7fr) minmax(110px,.5fr);gap:12px}.adminShowForm .wide{grid-column:1 / -1}.adminImageField{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:10px 12px;align-items:end}.adminImageField>label{min-width:0}.adminImageField .adminImageActions{grid-column:1 / -1}.adminImagePreview{min-height:86px;display:grid;place-items:center;overflow:hidden;border:1px solid #dfe9ef;border-radius:8px;background:#f8fbfc;color:#8b98a6;font-size:12px;font-weight:900}.adminImagePreview img{width:100%;height:100%;display:block;object-fit:cover}.adminImageActions{display:flex;flex-wrap:wrap;gap:8px}.homeHeroManager{display:grid;gap:10px}.homeHeroManager label{display:grid;gap:7px;color:#526171;font-size:13px;font-weight:900}.homeHeroManager input{min-height:40px;padding:0 12px;border:1px solid #dfe9ef;border-radius:8px;color:#1f2f3d;background:#fbfdfe;font:inherit}.heroPreview{aspect-ratio:16 / 9;min-height:150px}.adminShowToolbar select,.adminShowForm input,.adminShowForm select,.adminShowForm textarea,.adminDetailEditor textarea{width:100%;border:1px solid #dfe9ef;border-radius:8px;color:#1f2f3d;background:#fbfdfe;font:inherit}.adminShowToolbar select,.adminShowForm input,.adminShowForm select{min-height:40px;padding:0 12px}.adminShowForm textarea,.adminDetailEditor textarea{padding:12px;line-height:1.65;resize:vertical}.adminDetailEditor{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);gap:14px}.editorPane{display:grid;gap:8px}.editorToolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.editorToolbar span{margin-right:auto;color:#142334;font-size:13px;font-weight:900}.editorToolbar button{min-height:30px;padding:0 10px;border:1px solid #dbe8ee;border-radius:6px;color:#0b7775;background:#f2fbfa;font-size:12px;font-weight:900}.richToolbar{gap:6px}.richToolbar button:disabled{opacity:.55;cursor:wait}.richTextSurface,.sourceEditor{min-height:280px;padding:12px;border:1px solid #dfe9ef;border-radius:8px;background:#fff;outline:none;overflow:auto}.richTextSurface:focus{border-color:#13a6a1;box-shadow:0 0 0 3px #13a6a11f}.sourceEditor{width:100%;color:#1f2f3d;font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;resize:vertical}.richTextSurface:empty:before{content:"输入剧目详情，可插入图片、标题、列表和链接";color:#9aa8b5}.smsSwitchList{display:grid;gap:10px;margin-bottom:14px}.adminSwitchRow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #dfe9ef;border-radius:8px;background:#fbfdfe}.adminSwitchRow.warning{border-color:#ef6b5b33;background:#fff8f4}.adminSwitchRow span{display:grid;gap:4px}.adminSwitchRow strong{color:#142334;font-size:14px}.adminSwitchRow small{color:#738293;line-height:1.5}.adminSwitchRow input{width:42px;min-height:24px;accent-color:#13a6a1}.ghostButton,.dangerButton,.tableLink{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border-radius:6px;font-size:13px;font-weight:900}.ghostButton,.tableLink{color:#0b7775;background:#e9f7f6}.dangerButton{color:#fff;background:linear-gradient(135deg,#ff6b62,#ff4f4d)}.adminTableWrap{min-width:0;overflow-x:auto}.adminTable{width:100%;border-collapse:collapse;min-width:680px;font-size:13px}.adminTable th{padding:10px 11px;color:#758493;background:#f5f8fb;font-weight:900;text-align:left;white-space:nowrap}.adminTable td{padding:12px 11px;border-bottom:1px solid #eef3f6;color:#263544;white-space:nowrap}.adminTable tr.active td,.adminTable tbody tr:hover td{background:#f0fbfa}.adminDonutWrap{display:grid;justify-items:center;gap:18px;padding:14px 0 4px}.adminDonut{width:150px;height:150px;display:grid;place-items:center;border-radius:50%}.adminDonut:before{content:"";position:absolute}.adminDonut span{width:94px;height:94px;display:grid;place-items:center;border-radius:50%;color:#142334;background:#fff;font-size:24px;font-weight:950}.adminLegend{display:grid;gap:8px;width:100%}.adminLegend span,.seatMapLegend span{display:inline-flex;align-items:center;gap:7px;color:#627283;font-size:13px;font-weight:800}.adminLegend i,.seatMapLegend i{width:10px;height:10px;border-radius:3px;background:#d9e2e8}.adminLegend i.used,.seatMapLegend i.rear{background:#16a7a0}.adminLegend i.pending,.seatMapLegend i.booked{background:#ff6b5f}.seatMapLegend i.front{background:#f4b544}.seatDistributionPanel .seatMap{max-height:620px;padding:6px;border-radius:8px;background:#f7fafb}.seatMapLegend{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:12px}.adminFilters{display:inline-flex;gap:8px;margin-bottom:14px;padding:4px;border-radius:8px;background:#f4f8fb}.adminFilters span{padding:8px 12px;border-radius:7px;color:#718091;font-size:13px;font-weight:900}.adminFilters span.active{color:#0b7775;background:#fff;box-shadow:0 6px 14px #23496114}.adminToolbar{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin-bottom:10px}.adminSearchField,.adminSelectField,.adminFormGrid label{display:grid;gap:7px;color:#526171;font-size:13px;font-weight:900}.adminSearchField{min-width:min(100%,280px);flex:1}.adminSelectField{min-width:220px}.adminSearchField input,.adminSelectField select,.adminFormGrid input,.adminFormGrid select{min-height:40px;width:100%;padding:0 12px;border:1px solid #dfe9ef;border-radius:8px;color:#1f2f3d;background:#fbfdfe;font:inherit}.adminFilters.asButtons{margin-bottom:0}.adminFilters.asButtons button{min-height:36px;padding:0 12px;border-radius:7px;color:#718091;background:transparent;font-size:13px;font-weight:900}.adminFilters.asButtons button.active{color:#0b7775;background:#fff;box-shadow:0 6px 14px #23496114}.adminListMeta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px;color:#758493;font-size:12px;font-weight:900}.adminListMeta span{padding:5px 8px;border-radius:999px;background:#f4f8fb}.bookingOpsTable td strong,.bookingOpsTable td small,.userOpsTable td strong,.userOpsTable td small,.audienceOpsTable td strong,.audienceOpsTable td small{display:block}.bookingOpsTable td small,.userOpsTable td small,.audienceOpsTable td small{margin-top:4px;color:#7b8998;font-size:12px}.statusPill{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:999px;color:#0b7775;background:#e9f7f6;font-size:12px;font-weight:950}.statusPill.success{color:#0f8a6b;background:#e8f7ef}.statusPill.danger{color:#cf3d39;background:#fff0ef}.adminMuted{color:#95a2af;font-size:12px;font-weight:900}.tableLink.dangerLink{color:#d9443f;background:#fff0ef}.adminFormGrid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px}.adminFormGrid.compact{grid-template-columns:1fr}.adminCheckField{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px;min-height:40px}.adminCheckField input{width:auto;min-height:auto}.adminFormActions{grid-column:1 / -1;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px}.tableActions{display:inline-flex;gap:8px}.contentSummary{display:grid;gap:12px}.contentSummary>div:not(.contentSummaryList){display:grid;gap:4px;padding:14px;border-radius:8px;background:#f4fbfa}.contentSummary strong{color:#142334;font-size:26px}.contentSummary span{color:#0b7775;font-weight:900}.contentSummaryList{display:grid;gap:8px;padding:14px;border:1px solid #e5edf2;border-radius:8px;background:#fbfdfe}.contentSummaryList h4{margin:0;color:#142334;font-size:14px}.contentSummaryList p{display:grid;gap:3px;margin:0;color:#2b3a48;font-size:13px}.contentSummaryList small{color:#7a8897}.smsSummary{display:grid;gap:6px;margin-bottom:18px;padding:18px;border-radius:9px;background:#f4fbfa}.smsSummary strong{color:#142334;font-size:32px}.smsSummary span{color:#0b7775;font-weight:900}.smsSummary small{color:#758493}.bindQrPanel{display:grid;align-content:start;justify-items:center;text-align:center}.bindQrPanel .qrBox{min-width:210px;min-height:230px;display:grid;place-items:center;gap:12px;margin:16px 0 10px;padding:20px;border-style:solid;background:#fbfdfe}.qrHint{color:#667382;font-size:13px}.auditLog{display:grid;gap:10px}.auditLog div{display:grid;grid-template-columns:minmax(180px,1fr) 120px minmax(240px,2fr);gap:12px;padding:12px;border-radius:8px;background:#f8fbfc;color:#2b3a48;font-size:13px}.auditLog strong{color:#0b7775}.auditLog small{color:#738292}.adminLoginShell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#e9f8fb,#fff 55%,#eef8f7)}.adminLoginCard{width:min(100%,420px);display:grid;gap:14px;padding:28px;border:1px solid #dfecef;border-radius:12px;background:#fffffff5;box-shadow:0 24px 65px #23496124}.adminLoginCard h1{margin-bottom:0;color:#142334}.verifierToolShell,.staffBindShell{width:min(100%,430px);min-height:100vh;margin:0 auto;padding:18px 14px 28px;background:linear-gradient(180deg,#f2faff,#fff 54%,#f7fbfb)}.verifierMobileCard,.staffBindCard{display:grid;gap:16px;padding:18px;border:1px solid #e0edf2;border-radius:12px;background:#fffffff5;box-shadow:0 18px 42px #2349611a}.verifierToolTop{display:flex;align-items:center;justify-content:space-between;gap:12px}.verifierToolTop span{padding:6px 10px;border-radius:999px;color:#0b7775;background:#e9f8f6;font-size:12px;font-weight:900}.verifyHeader{display:grid;justify-items:center;gap:7px;text-align:center}.verifyHeader svg{color:#16a7a0}.verifyHeader h1{margin:0;color:#142334;font-size:24px}.verifyHeader p{max-width:300px;margin:0;color:#748291;line-height:1.55;font-size:13px}.scanFrame{position:relative;min-height:246px;display:grid;place-items:center;border-radius:11px;background:#f7fbfc;color:#7d8b99;font-weight:900}.scanFrame i{position:absolute;width:34px;height:34px;border-color:#16a7a0;border-style:solid}.scanFrame i:nth-child(1){left:38px;top:36px;border-width:3px 0 0 3px}.scanFrame i:nth-child(2){right:38px;top:36px;border-width:3px 3px 0 0}.scanFrame i:nth-child(3){left:38px;bottom:36px;border-width:0 0 3px 3px}.scanFrame i:nth-child(4){right:38px;bottom:36px;border-width:0 3px 3px 0}.scanFrame span:before{content:"";display:block;width:140px;height:2px;margin:0 auto 72px;background:#79d3cc}.verifyInputRow{align-items:end}.verifyInputRow button{min-height:44px;padding:0 18px;border-radius:8px;color:#fff;background:#16a7a0;font-weight:900}.verifyResult{display:grid;gap:12px;margin-top:14px;padding:18px;border:1px solid #dcefed;border-radius:12px;background:#fff;box-shadow:0 18px 42px #2349611a;text-align:center}.verifyResult>svg{justify-self:center;color:#13a97f;fill:#13a97f1a}.verifyResult.used>svg{color:#ff5b58}.verifyResult h2{margin:0;color:#13a97f;font-size:25px}.verifyResult.used h2{color:#ff5b58}.verifyTicketCard{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;padding:12px;border:1px solid #e6eef2;border-radius:10px;text-align:left}.verifyTicketCard img{width:86px;height:106px;border-radius:7px;object-fit:cover}.verifyTicketCard strong{color:#142334;font-size:16px}.verifyTicketCard p{margin:5px 0 0;color:#5f6f7f;font-size:13px;line-height:1.35}.staffBindCard .brandLockup.compact{justify-self:center}.staffBindCard label{color:#172330;font-weight:900}.bindRules{display:grid;gap:8px;padding:14px;border:1px solid #e2edf2;border-radius:9px;background:#f7fbfc;color:#657585;font-size:13px}.bindRules strong{color:#142334}@media(max-width:1100px){.metricGrid{grid-template-columns:repeat(2,minmax(160px,1fr))}.adminGrid.twoOne,.sessionManageGrid,.smsManageGrid,.verifierManageGrid{grid-template-columns:1fr}}@media(max-width:760px){.adminShell{grid-template-columns:1fr}.adminNav{position:static;height:auto;grid-template-rows:auto auto}.adminNav nav{grid-template-columns:repeat(2,minmax(0,1fr))}.adminNavFooter{grid-template-columns:repeat(2,minmax(0,1fr))}.adminMain{padding:16px 12px 24px}.adminHeader,.adminSectionHead{align-items:flex-start;flex-direction:column}.metricGrid,.auditLog div{grid-template-columns:1fr}}.appShell,.verifyShell,.phoneAuthPage,.authStage,.authShell{width:min(100%,430px)}.appShell,.phoneAuthPage,.authStage,.verifyShell{background:linear-gradient(180deg,#eaf8ff,#f8fcff 18%,#fff)}.appShell .topbar{min-height:44px;grid-template-columns:40px 1fr 40px;margin:-2px 0 12px;padding:0;border-bottom:0;background:#eaf8ffdb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.appShell .iconButton{width:38px;height:38px;border:0;border-radius:999px;background:#fffffff0;box-shadow:0 8px 20px #346c921c}.appShell .panel,.appShell .successPanel,.appShell .ticketDetail,.appShell .ticketCard,.appShell .showCard,.appShell .detailHero,.appShell .bookingSummary,.appShell .mineHero,.appShell .mineMenu button,.appShell .attendancePanel,.appShell .catalogHeader,.verifyShell .panel,.verifyShell .verifyResult,.authCard,.phoneCard,.authModalCard,.loginPanel{border:0;border-radius:18px;background:#fffffff5;box-shadow:0 12px 34px #1e537614}.primaryButton{color:#fff;background:linear-gradient(135deg,#ff7a73,#ff4e4d);box-shadow:0 10px 22px #ff4f4c3d}.secondaryButton,.textAction{color:#247bd5;background:#e7f4ff}.appShell .detailHero,.appShell .bookingSummary,.appShell .catalogHeader,.appShell .mineHero{background:linear-gradient(135deg,#fffffffa,#e7f4ffdb)}.appShell .memberItem,.appShell .sessionItem,.appShell .seatTicketChip,.appShell .bookingSeatList div{border:1px solid #edf2f5;background:#fbfdff}.appShell .memberItem.selected,.appShell .seatTicketChip.active{border-color:#ff7a73;background:#fff5f2;box-shadow:inset 0 0 0 1px #ff7a7329}.ticketSchemePass.ticketDetail{display:grid;gap:12px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.ticketSchemePass .ticketPassHead{width:auto;min-height:174px;position:relative;justify-items:stretch;align-content:space-between;gap:16px;overflow:hidden;padding:20px;border-radius:22px;color:#fff;background:radial-gradient(circle at 88% 16%,rgba(255,255,255,.24),transparent 34%),linear-gradient(135deg,#247bd5,#17a8b6 58%,#20ba70);box-shadow:0 18px 40px #247bd53d}.ticketSchemePass .ticketPassHead h1{max-width:260px;margin:10px 0 8px;color:#fff;font-size:29px;line-height:1.15}.ticketSchemePass .ticketPassHead p{margin:0;color:#ffffffe0;font-size:14px;font-weight:800}.ticketPassMeta span{display:inline-flex;align-items:center;gap:6px;width:fit-content;min-height:28px;padding:0 10px;border-radius:999px;color:#fff;background:#ffffff29;font-size:12px;font-weight:900}.ticketQrPanel,.ticketInfoGrid,.ticketSchemeCard,.ticketMapSection .seatPositionPanel{margin:0;border:0;border-radius:18px;background:#fffffffa;box-shadow:0 12px 34px #1e537614}.ticketQrTitle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}.ticketQrTitle strong{color:#12253b;font-size:19px}.ticketQrTitle button{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;color:#247bd5;background:#e7f4ff}.ticketQrBox{display:grid;place-items:center;padding:12px;border-radius:18px;background:#fff;box-shadow:inset 0 0 0 1px #edf2f5}.ticketInfoGrid{width:100%;display:grid;padding:4px 16px}.ticketInfoGrid div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #edf2f5}.ticketSectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.ticketSectionHead h2{margin:0;color:#12253b;font-size:19px}.ticketSectionHead span{color:#20ba70;font-size:12px;font-weight:900}.bottomTabBar{border:0;border-radius:18px;background:#fffffff5;box-shadow:0 18px 42px #346c922e}body{min-height:100vh;background:radial-gradient(circle at 50% -126px,rgba(36,123,213,.2),transparent 328px),linear-gradient(180deg,#eaf8ff,#f8fcff 26%,#fff)}.appShell,.verifyShell,.authStage,.authShell,.phoneAuthPage,.emptyPage{width:min(100%,430px);min-height:100vh;margin:0 auto;background:linear-gradient(180deg,#eaf8ff,#f8fcff 18%,#fff)}.appShell{padding:14px 14px 112px}.topbar{position:sticky;top:0;z-index:20;min-height:44px;display:grid;grid-template-columns:40px 1fr 40px;align-items:center;margin:-2px 0 12px;padding:0;border-bottom:0;background:#eaf8ffe0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbarTitle{color:#12253b;font-size:18px;font-weight:900}.iconButton,.homeSchemeBell{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:999px;color:#172330;background:#fffffff2;box-shadow:0 8px 20px #346c921c}.brandLockup.compact{gap:7px;color:#12253b}.brandLockup.compact strong{overflow:hidden;color:#12253b;font-size:16px;line-height:1.08;white-space:nowrap;text-overflow:ellipsis}.brandLockup.compact span{display:block;margin-top:3px;overflow:hidden;color:#53606f;font-size:11px;letter-spacing:1px;white-space:nowrap;text-overflow:ellipsis}.homeSchemeHeader .brandLockup.compact strong{font-size:18px}.homeSchemeHeader .brandLockup.compact span{font-size:10px;letter-spacing:3px}.homeCard,.homeAttendanceBanner,.panel,.successPanel,.catalogHeader,.showCard,.detailHero,.bookingSummary,.attendancePanel,.ticketCard,.orderCard,.mineHero,.mineMenu button,.mineNotice,.ticketQrPanel,.ticketInfoGrid,.ticketSchemeCard,.ticketMapSection .seatPositionPanel,.authModalCard,.loginPanel,.verifierMobileCard,.staffBindCard,.verifyResult,.inlineEmpty{border:1px solid rgba(237,242,245,.96);border-radius:18px;background-color:#fffffff7;box-shadow:0 12px 34px #1e537614}.catalogHeader,.detailHero,.bookingSummary,.mineHero,.verifierMobileCard,.staffBindCard{background-image:linear-gradient(135deg,#fffffffc,#e7f4ffe0)}.homeSchemeHero,.homeShowPoster,.showCardPoster,.featurePoster,.detailPoster,.bookingSummary img,.mineAvatar,.ticketCardQr,.followQrBox,.qrBox,.seatPositionPanel,.bookingSeatList div,.seatTicketChip,.verifyTicketCard,.verifyTicketCard img{border-radius:14px}.homeGenrePill,.chip{border-radius:999px;color:#26394d;background:#fffffff0;box-shadow:0 9px 22px #346c9217;font-weight:900}.homeGenrePill.active,.chip.active,.primaryButton,.homeShowAction button{color:#fff;background:linear-gradient(135deg,#ff7a73,#ff4e4d);box-shadow:0 10px 22px #ff4f4c3d}.primaryButton,.secondaryButton,.textAction,.inputWithButton button,.sessionItem,.memberItem,.seatTicketChip,.wechatButton{border-radius:12px}.secondaryButton,.textAction,.inputWithButton button,.ticketQrTitle button,.showCardAction{color:#247bd5;background:#e7f4ff}.wechatButton{color:#fff;background:linear-gradient(135deg,#18b976,#15a7b3);box-shadow:0 10px 22px #15a7b32e}input,select{min-height:46px;border:1px solid #dfeaf0;border-radius:12px;background:#fff}.tag,.eyebrow.dark{color:#247bd5}.tag{background:#e7f4ff}.sessionItem,.memberItem,.seatTicketChip,.bookingSeatList div,.verifyTicketCard{border:1px solid #edf2f5;background:#fbfdff}.memberItem.selected,.sessionItem.selected,.seatTicketChip.active{border-color:#ff7a73;background:#fff5f2;box-shadow:inset 0 0 0 1px #ff7a7329}.attendancePanel,.mineNotice,.noticeBand,.attendanceReminder,.guideCallout{color:#7a382f;background:#fff5ef}.ticketCard.orderCard{grid-template-columns:1fr;gap:12px;min-height:0;padding:16px;border-left:1px solid #edf2f5;background:#fffffff7}.orderCardActions{border-top:1px solid #edf2f5}.ticketSchemePass.ticketDetail,.ticketSchemePass{display:grid;justify-items:stretch;gap:12px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.ticketSchemePass .ticketPassHead{width:100%;min-height:174px;position:relative;display:grid;justify-items:stretch;align-content:space-between;gap:16px;overflow:hidden;padding:20px;border:0;border-radius:22px;color:#fff;background:radial-gradient(circle at 88% 16%,rgba(255,255,255,.24),transparent 34%),linear-gradient(135deg,#247bd5,#17a8b6 58%,#20ba70);box-shadow:0 18px 40px #247bd53d}.ticketSchemePass .ticketPassHead .tag{color:#247bd5;background:#fff}.ticketSchemePass .ticketPassHead h1{position:relative;z-index:1;max-width:260px;margin:10px 0 8px;color:#fff;font-size:29px;line-height:1.15}.ticketSchemePass .ticketPassHead p{position:relative;z-index:1;margin:0;color:#ffffffe0;font-size:14px;font-weight:800}.ticketPassMeta{position:relative;z-index:1;display:grid;gap:8px}.ticketPassMeta span{width:fit-content;min-height:28px;padding:0 10px;border-radius:999px;color:#fff;background:#ffffff29;font-size:12px;font-weight:900}.ticketPassWatermark{position:absolute;right:-14px;bottom:-18px;color:#fff3;transform:rotate(-10deg)}.ticketQrPanel,.ticketInfoGrid,.ticketSchemeCard,.ticketMapSection .seatPositionPanel{margin:0;padding:16px}.ticketInfoGrid{display:grid;gap:0;padding-top:4px;padding-bottom:4px}.ticketInfoGrid div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #edf2f5}.ticketInfoGrid div:last-child{border-bottom:0}.ticketInfoGrid dt{color:#7a8796;font-size:13px}.ticketInfoGrid dd{color:#12253b;font-size:14px;font-weight:900}.ticketQrPanel{display:grid;justify-items:center;gap:12px}.ticketQrTitle{width:100%}.ticketQrTitle button{width:38px;height:38px;display:grid;place-items:center;border-radius:999px}.ticketQrBox{border-radius:18px;background:#fff;box-shadow:inset 0 0 0 1px #edf2f5}.ticketMapSection .seatPositionStage{background:linear-gradient(90deg,#247bd5,#17a8b6)}.ticketMapSection .seatPositionRow.focus{background:#fff5f2}.verifyShell{padding:16px 14px 28px}.verifierMobileCard,.staffBindCard,.verifyResult{padding:18px}.verifyHeader svg,.authIcon{color:#247bd5}.authIcon{background:#e7f4ff}.scanFrame{border-radius:18px;background:radial-gradient(circle at center,#e7f4ffdb,#fffffff5),#fff}.bindRules{border:1px solid #edf2f5;border-radius:14px;background:#fbfdff}.bottomTabBar{left:50%;width:calc(min(100%,430px) - 28px);transform:translate(-50%);border:1px solid rgba(237,242,245,.96);border-radius:18px;background:#fffffff5;box-shadow:0 18px 42px #346c922e}.bottomTabItem{border-radius:14px}.bottomTabItem.active{color:#247bd5;background:#e7f4ff}@media(max-width:390px){.homeSchemeHeader{grid-template-columns:1fr 38px}.homeSchemeSearch{grid-column:1 / -1;order:3}.homeShowRow{grid-template-columns:86px minmax(0,1fr)}.homeShowAction{grid-column:2;grid-template-columns:1fr auto;justify-items:start;padding-left:0;border-left:0}.homeShowAction button{grid-column:2;grid-row:1 / span 2}}@media(max-width:360px){.ticketSchemePass .ticketPassHead h1{font-size:25px}.ticketQrBox svg{width:170px;height:170px}}:root{--ref-red: #ff3b3f;--ref-red-dark: #ed2f35;--ref-green: #10b981;--ref-bg: #f6f7f9;--ref-card: #ffffff;--ref-ink: #111827;--ref-muted: #7b8494;--ref-line: #edf0f4;--ref-shadow: 0 12px 34px rgba(24, 32, 56, .07)}body{min-height:100vh;color:var(--ref-ink);background:#f5f6f8}.appShell,.verifyShell,.authStage,.authShell,.phoneAuthPage,.emptyPage{width:min(100%,390px);min-height:100vh;margin:0 auto;background:var(--ref-bg)!important}.appShell{padding:12px 12px 96px}.detailFlowShell,.bookingFlowShell{padding-bottom:104px}.topbar{min-height:40px;margin:0 0 10px;background:#f6f7f9eb}.topbarTitle{color:var(--ref-ink);font-size:16px}.iconButton,.homeSchemeBell{width:32px;height:32px;color:#111827;background:transparent;box-shadow:none}.homeSchemeHeader{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:10px 8px;margin-bottom:12px}.homeSchemeHeader .brandLockup.compact img{display:none}.homeSchemeHeader .brandLockup.compact strong{color:var(--ref-ink);font-size:19px;line-height:1.1}.homeSchemeHeader .brandLockup.compact span{color:#7e8796;font-size:11px;letter-spacing:4px}.homeCityButton{display:inline-flex;align-items:center;gap:3px;min-height:30px;padding:0 2px;color:#263445;background:transparent;font-size:12px;font-weight:800}.homeCityButton svg:last-child{transform:rotate(-90deg)}.homeSchemeSearch{grid-column:1;grid-row:2;min-height:36px;justify-content:flex-start;gap:8px;padding:0 14px;border:0;border-radius:12px;color:#9aa3b2;background:#fff;box-shadow:none}.homeSchemeBell{grid-column:2;grid-row:2;background:#fff;border-radius:50%}.homeSchemeHero{position:relative;width:100%;height:168px;display:block;overflow:hidden;padding:0;border:0;border-radius:12px;background:#101016!important;box-shadow:var(--ref-shadow);text-align:left}.homeSchemeHero img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(1.05) brightness(.78)}.homeSchemeHero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000000ad,#0000001f)}.homeHeroTag{position:absolute;top:12px;right:12px;z-index:1;padding:4px 7px;border-radius:5px;color:#fff;background:var(--ref-red);font-size:11px;font-weight:900}.homeHeroText{position:absolute;left:18px;right:20px;bottom:18px;z-index:1;color:#fff}.homeHeroText h1{max-width:220px;margin:0 0 7px;color:#fff;font-size:24px;line-height:1.08}.homeHeroText p{max-width:250px;margin:0 0 12px;color:#ffffffdb;font-size:13px;font-weight:800}.homeHeroText span{display:inline-flex;align-items:center;min-height:32px;padding:0 16px;border-radius:7px;color:#fff;background:var(--ref-red);font-size:13px;font-weight:900}.homeHeroDots{position:absolute;left:50%;bottom:8px;z-index:1;display:flex;gap:4px;transform:translate(-50%)}.homeHeroDots i{width:5px;height:5px;border-radius:999px;background:#ffffff7a}.homeHeroDots i:first-child{width:14px;background:#fff}.homeGenreRail{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;overflow:visible;padding:14px 0 12px}.homeGenrePill{min-height:62px;display:grid;justify-items:center;align-content:start;gap:5px;padding:0;border-radius:0;color:#29384a;background:transparent;box-shadow:none;font-size:11px;font-weight:800}.homeGenreIcon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:var(--ref-red);background:#fff1f1}.homeGenrePill.musical .homeGenreIcon{color:#7c5cff;background:#f0ecff}.homeGenrePill.opera .homeGenreIcon{color:#f05252;background:#fff1f1}.homeGenrePill.family .homeGenreIcon{color:#10a36f;background:#eafaf2}.homeGenrePill.more .homeGenreIcon{color:#3178f6;background:#edf4ff}.homeGenrePill.active{color:var(--ref-red);background:transparent;box-shadow:none}.homeGenrePill.active .homeGenreIcon{color:#fff;background:var(--ref-red)}.homeCard,.appShell .panel,.appShell .successPanel,.appShell .catalogHeader,.appShell .showCard,.appShell .detailHero,.appShell .bookingSummary,.appShell .attendancePanel,.appShell .ticketCard,.appShell .mineHero,.appShell .mineMenu button,.appShell .mineNotice,.embeddedTicketPanel,.authModalCard,.loginPanel,.verifierMobileCard,.staffBindCard,.verifyResult,.inlineEmpty{border:1px solid var(--ref-line);border-radius:12px;background:var(--ref-card)!important;background-image:none!important;box-shadow:var(--ref-shadow)}.homeCard{margin-top:0;padding:14px 12px}.homeCard+.homeCard{margin-top:12px}.homeCardHead h2{color:var(--ref-ink);font-size:16px}.homeCardHead button{color:#8b95a5;font-size:12px}.homeShowRows{gap:10px}.homeShowRow{grid-template-columns:92px minmax(0,1fr) auto;gap:10px;padding:0 0 10px;border-bottom:1px solid var(--ref-line)}.homeShowPoster{height:74px;border-radius:7px}.homeShowPoster span,.showCardPoster span{background:var(--ref-red)}.homeShowInfo h3{margin-bottom:6px;font-size:14px}.homeShowInfo p,.homeShowInfo span{color:#5e6a7a;font-size:12px}.homeShowAction{min-width:68px;gap:3px;padding-left:0;border-left:0;justify-items:end}.homeShowAction time{color:var(--ref-green);font-size:12px;font-weight:900}.homeShowAction small{color:var(--ref-red);font-size:12px}.homeShowAction button,.primaryButton{min-height:36px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#ff474b,#ff2f35)!important;box-shadow:0 10px 22px #ff3b3f38;font-size:13px;font-weight:900}.homeShowAction button{min-width:70px;min-height:28px}.homeMiniRail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.homeMiniCard{min-width:0;display:grid;gap:5px;padding:0;background:transparent;text-align:left}.homeMiniCard img{width:100%;aspect-ratio:.74;border-radius:7px;object-fit:cover}.homeMiniCard strong{overflow:hidden;color:var(--ref-ink);font-size:12px;white-space:nowrap;text-overflow:ellipsis}.homeMiniCard span{color:#7d8796;font-size:11px}.chips,.orderTabs{display:flex;gap:22px;overflow-x:auto;padding:2px 2px 10px}.chip,.orderTabs button{position:relative;min-height:32px;padding:0;border-radius:0;color:#667085;background:transparent!important;box-shadow:none;font-size:13px;font-weight:800}.chip.active,.orderTabs button.active{color:var(--ref-red)}.chip.active:after,.orderTabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:999px;background:var(--ref-red)}.appShell .showCard{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:10px}.showCardPoster{height:112px;border-radius:8px}.showCard h3{font-size:15px}.showCard p,.sessionStrip span{color:#697386;font-size:12px}.showCardAction,.secondaryButton,.textAction,.inputWithButton button,.ticketQrTitle button{color:var(--ref-red);background:#fff1f1!important;border-radius:8px}.appShell .detailHero,.appShell .bookingSummary{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;padding:14px}.detailPoster img,.bookingSummary img{width:112px;height:154px;border-radius:8px;object-fit:cover}.detailHero h1,.bookingSummary h1{margin:6px 0 8px;color:var(--ref-ink);font-size:17px}.detailHero p,.bookingSummary p,.muted{color:#6b7484;font-size:13px}.tag,.eyebrow.dark{color:var(--ref-red)!important}.tag{background:#fff1f1!important}.infoPills span,.strategyBadge{color:#596579;background:#f4f6f8}.sessionItem,.memberItem,.seatTicketChip,.bookingSeatList div{border:1px solid var(--ref-line);border-radius:8px;background:#fff}.sessionItem:hover,.sessionItem:focus,.memberItem.selected,.seatTicketChip.active{border-color:var(--ref-red);background:#fff7f7;box-shadow:inset 0 0 0 1px #ff3b3f1a}.attendancePanel,.guideCallout,.attendanceReminder{color:#2765b6;background:#eef6ff!important}.flowBottomCta{position:fixed;left:50%;bottom:0;z-index:35;width:min(100%,390px);min-height:70px;display:grid;grid-template-columns:minmax(0,1fr) 154px;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--ref-line);border-radius:0;background:#fffffffa!important;box-shadow:0 -12px 30px #18203814;transform:translate(-50%)}.flowBottomCta strong{display:block;color:var(--ref-red);font-size:14px}.flowBottomCta span{color:#9aa3b2;font-size:11px}.flowBottomCta .primaryButton{width:100%;min-height:44px}.orderTabs{margin:0 0 6px;justify-content:space-around}.ticketCard.orderCard{gap:12px;padding:14px;border-color:var(--ref-line);border-left:1px solid var(--ref-line);border-radius:12px}.orderState{color:var(--ref-red);font-size:12px;font-weight:900}.orderState.done{color:#667085}.orderCardShow{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px}.orderCardShow img{width:92px;height:122px;border-radius:8px;object-fit:cover}.orderCardShow h2{margin:0 0 8px;color:var(--ref-ink);font-size:15px}.orderCardShow p{display:flex;align-items:center;gap:4px;margin:0 0 6px;color:#5e6a7a;font-size:12px}.orderCardShow span,.orderCardActions span{color:#8b95a5;font-size:12px}.orderCardActions{padding-top:10px;border-top:1px solid var(--ref-line)}.embeddedTicketPanel{overflow:hidden;padding:0 0 14px;border-color:var(--ref-red)}.embeddedTicketSection{display:grid;gap:10px}.embeddedTicketSection>h2{margin:2px 0 0;color:var(--ref-ink);font-size:16px}.embeddedTicketHead{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 14px;color:#fff;background:var(--ref-red)}.embeddedTicketHead span,.embeddedTicketHead strong{color:#fff;font-size:13px}.embeddedQrBox{display:grid;justify-items:center;gap:6px;padding:18px 0 12px}.embeddedQrBox svg{padding:8px;border-radius:10px;background:#fff;box-shadow:inset 0 0 0 1px var(--ref-line)}.embeddedQrBox small{color:#9aa3b2;font-size:11px}.embeddedTicketPanel h2,.embeddedTicketPanel p,.embeddedTicketPanel .seatTicketGrid,.embeddedTicketPanel .seatPositionPanel{margin-left:14px;margin-right:14px}.embeddedTicketPanel h2{margin-bottom:6px;color:var(--ref-ink);font-size:15px}.embeddedTicketPanel p{display:flex;align-items:center;gap:4px;margin-top:0;margin-bottom:4px;color:#4f5b6c;font-size:12px}.ticketSchemePass .ticketPassHead{min-height:150px;border-radius:12px;background:radial-gradient(circle at 88% 18%,rgba(255,255,255,.16),transparent 32%),linear-gradient(135deg,#ff474b,#ff3036)!important;box-shadow:0 14px 28px #ff3b3f33}.ticketSchemePass .ticketPassHead .tag{color:var(--ref-red)!important}.ticketSchemePass .ticketPassHead h1{font-size:24px}.ticketQrPanel,.ticketInfoGrid,.ticketSchemeCard,.ticketMapSection .seatPositionPanel{border:1px solid var(--ref-line);border-radius:12px;background:#fff!important;box-shadow:var(--ref-shadow)}.ticketMapSection .seatPositionPanel{border-color:var(--ref-red)}.ticketMapSection .seatPositionStage{background:#d8dde6!important}.seatPositionMarker.highlighted .seatPositionDot,.seatPositionDot.primaryDot{background:var(--ref-red);box-shadow:0 0 0 3px #ff3b3f29}.seatPositionDot.companionDot{background:#6ee7b7}.seatPositionPanel{gap:10px;padding:12px;border-radius:12px;color:var(--ref-ink);background:#fff!important}.seatPositionPanel.compact{padding:10px}.seatPositionHead{gap:8px}.seatPositionHead h3{color:var(--ref-ink);font-size:14px}.seatPositionHead h3 svg{color:var(--ref-red)}.seatPositionHead p{color:#667085;font-size:11px;line-height:1.45}.seatLegend{min-width:106px;gap:4px 8px}.seatLegend span{color:#7b8493;font-size:10px}.seatLegend i,.seatPositionDot{width:6px;height:6px;border-radius:2px}.seatLegend i.mine,.seatPositionDot.mine{background:var(--ref-red);box-shadow:0 0 0 3px #ff3b3f29}.seatLegend i.companion,.seatPositionDot.companion{background:#42c98b;box-shadow:0 0 0 3px #42c98b24}.seatLegend i.outline,.seatPositionDot.referenceDot{background:#cfd5de;box-shadow:none}.seatTheaterCanvas{display:grid;gap:7px;padding:10px 8px 9px;border:1px solid #edf0f5;border-radius:12px;background:linear-gradient(180deg,#fbfcff,#f7f9fc);overflow-x:auto}.seatPositionStage{width:min(72%,220px);min-height:24px;margin:0 auto;border-radius:8px 8px 16px 16px;color:#667085!important;background:#dfe4ec!important;box-shadow:inset 0 -1px #ffffffe6;font-size:11px;font-weight:900}.seatPositionStage span{position:relative}.seatPositionStage span:after{content:"";position:absolute;left:50%;bottom:-9px;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid #dfe4ec;transform:translate(-50%)}.seatHereSummary{justify-self:center;max-width:100%;padding:5px 10px;border:1px solid #ffd3d4;border-radius:999px;color:var(--ref-red);background:#fff5f5;font-size:11px;font-weight:900;line-height:1.35;text-align:center}.seatSectionLabels,.seatPositionRow{width:100%;min-width:318px;display:grid;grid-template-columns:25px minmax(42px,.9fr) 10px minmax(116px,1.9fr) 10px minmax(42px,.9fr) 25px;gap:4px;align-items:center}.seatSectionLabels{color:#7b8493;font-size:10px;font-weight:900;text-align:center}.seatSectionLabels strong{font-weight:900}.seatSectionLabels em{color:#aab2bf;font-size:9px;line-height:1;transform:scale(.9)}.seatPositionRows{gap:2px;padding:0;overflow:visible}.seatPositionRow{min-height:13px;padding:1px 0;border-radius:6px}.seatPositionRow.focus{min-height:30px;margin:2px 0;padding-top:15px;padding-bottom:3px;background:#ff3b3f12;outline:1px solid rgba(255,59,63,.18)}.seatRowIndex{color:#8791a1;font-size:9px;font-weight:800;line-height:1;text-align:right;white-space:nowrap}.seatRowIndex.right{text-align:left}.seatAisle{width:6px;min-height:10px;justify-self:center;border-radius:999px;background:repeating-linear-gradient(180deg,rgba(183,192,205,.58) 0,rgba(183,192,205,.58) 2px,transparent 2px,transparent 5px);color:transparent;overflow:hidden}.seatPositionBlock{display:grid;align-items:center;justify-items:center;gap:2px;min-height:8px;overflow:visible}.seatPositionBlock.left,.seatPositionBlock.right{justify-content:stretch}.seatPositionMarker{width:100%;min-width:0;height:8px;display:grid;place-items:center;flex:initial}.seatPositionMarker.reference{opacity:1}.seatPositionMarker.empty{opacity:.16}.seatPositionDot.placeholder{background:transparent;box-shadow:inset 0 0 0 1px #d9dee7}.seatPositionMarker.highlighted .seatPositionDot{width:9px;height:9px;border-radius:3px}.seatHereLabel{bottom:12px;padding:3px 7px;border-radius:999px;background:var(--ref-red);box-shadow:0 8px 18px #ff3b3f42;font-size:10px;font-weight:900}.seatTheaterDirection{min-width:318px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px 25px 0;color:#98a2b3;font-size:9px;font-weight:800;text-align:center}.seatTheaterDirection span{border-top:1px solid #e6eaf0;padding-top:3px}.seatPositionNote{color:#7b8493;font-size:10px}.bottomTabBar{left:50%;bottom:10px;width:calc(min(100%,390px) - 24px);min-height:58px;padding:6px 10px;border:1px solid var(--ref-line);border-radius:0 0 12px 12px;background:#fff;box-shadow:0 -8px 28px #18203814;transform:translate(-50%)}.bottomTabItem{gap:2px;color:#4f5b6c;border-radius:8px}.bottomTabItem.active{color:var(--ref-red)!important;background:transparent!important}.bottomTabItem span{font-size:11px}.appShell .mineHero{position:relative;display:grid;grid-template-columns:1fr!important;gap:16px;padding:20px 16px 14px}.mineSettings{position:absolute;top:12px;right:12px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#111827;background:transparent}.appShell .mineHero .mineProfileRow{width:100%;display:grid;grid-template-columns:62px minmax(0,1fr) 20px;align-items:center;gap:12px;padding-right:18px}.appShell .mineHero .mineProfileRow>div:nth-child(2){min-width:0}.appShell .mineHero .mineProfileRow>svg{color:#8b95a5;transform:rotate(180deg)}.appShell .mineHero .mineAvatar{width:62px;height:62px;border-radius:50%;color:var(--ref-red);background:#fff1f1}.appShell .mineHero .eyebrow{display:inline-flex;width:auto;white-space:nowrap}.appShell .mineHero h1{margin:2px 0 5px;font-size:18px;white-space:nowrap}.appShell .mineHero p{margin:0;color:#5e6a7a;font-size:12px;white-space:nowrap}.mineStats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding-top:12px;border-top:1px solid var(--ref-line)}.mineStats div{display:grid;justify-items:center;gap:4px;border-right:1px solid var(--ref-line)}.mineStats div:last-child{border-right:0}.mineStats strong{color:var(--ref-ink);font-size:18px}.mineStats span{color:#7d8796;font-size:11px}.mineOrderPanel{padding:14px}.mineOrderPanel .textAction{min-height:28px;padding:0;color:#7d8796;background:transparent!important;font-size:12px}.mineOrderShortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.mineOrderShortcuts button{min-height:62px;display:grid;justify-items:center;align-content:center;gap:6px;color:#28364a;background:transparent;font-size:12px;font-weight:800}.mineOrderShortcuts svg,.mineMenu svg{color:var(--ref-red)}.mineMenu{gap:0;overflow:hidden;border:1px solid var(--ref-line);border-radius:12px;background:#fff;box-shadow:var(--ref-shadow)}.mineMenu button{grid-template-columns:24px minmax(0,1fr) 16px;gap:10px;min-height:52px;padding:0 14px;border:0;border-radius:0;box-shadow:none;border-bottom:1px solid var(--ref-line)}.mineMenu button:last-child{border-bottom:0}.mineMenu button:after{content:"›";color:#a0a8b5;font-size:20px}.mineMenu small{color:#8b95a5}.mineNotice{display:none}.infoListPanel{display:grid;gap:10px;padding:14px}.infoRow,.infoChoice{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;min-height:58px;padding:12px;border:1px solid var(--ref-line);border-radius:10px;color:#253246;background:#fff;text-align:left}.infoRow svg,.infoChoice svg{color:var(--ref-red)}.infoRow span,.infoChoice span{display:grid;gap:4px}.infoRow strong,.infoChoice strong{color:var(--ref-ink);font-size:14px}.infoRow small,.infoChoice small{color:#7d8796;font-size:12px;line-height:1.4}.infoChoice.active{border-color:var(--ref-red);background:#fff7f7}.audienceManageShell{padding-bottom:104px}.audienceManagePanel{display:grid;gap:14px;padding:14px}.audienceManageList{display:grid;gap:10px}.audienceManageItem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--ref-line);border-radius:10px;background:#fff}.audienceManageItem.default{border-color:var(--ref-red);background:#fff7f7}.audienceManageItem>div:first-child{min-width:0;display:grid;gap:4px}.audienceManageItem strong{color:var(--ref-ink);font-size:15px}.audienceManageItem span{overflow:hidden;color:#6b7484;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.audienceManageActions{display:grid;justify-items:end;gap:7px}.audienceManageActions small{min-height:20px;display:inline-flex;align-items:center;padding:0 7px;border-radius:999px;color:var(--ref-red);background:#fff1f1;font-size:11px;font-weight:900}.audienceManageActions button{color:var(--ref-red);background:transparent;font-size:12px;font-weight:900}.audienceManageActions .dangerTextButton{color:#8b95a5}.audienceManageForm{gap:10px}.audienceManageForm .primaryButton{min-height:42px}@media(max-width:360px){.homeGenreRail{gap:5px}.homeMiniRail{grid-template-columns:repeat(3,minmax(0,1fr))}.flowBottomCta{grid-template-columns:1fr 136px}}
