:root{--blue:#1458bd;--blue-deep:#0a377d;--blue-soft:#eaf3ff;--orange:#f47a12;--orange-soft:#fff1df;--green:#11a55b;--green-soft:#e9f8ef;--ink:#172033;--muted:#657084;--line:#e6e9ee;--surface:#fff;--canvas:#f7f8fa;--radius:18px;--shadow:0 12px 38px rgba(24,47,83,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--canvas);font-family:PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:999;top:-60px;left:20px;padding:10px 16px;background:#fff;border-radius:8px;box-shadow:var(--shadow)}.skip-link:focus{top:12px}.container{width:min(1160px,calc(100% - 40px));margin:0 auto}.narrow{width:min(720px,calc(100% - 40px))}.page-space{padding:48px 0 80px;min-height:60vh}main{min-height:70vh}.site-header{height:72px;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(230,233,238,.9);position:-webkit-sticky;position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-inner{height:100%;width:min(1160px,calc(100% - 40px));margin:auto;justify-content:space-between}.brand,.header-inner{display:flex;align-items:center}.brand{gap:10px;height:58px}.brand-asset{overflow:visible;object-fit:contain}.brand-logo-primary{height:46px;width:auto;max-width:160px;flex:none}.brand-name{display:flex;flex-direction:column;border-left:1px solid var(--line);padding-left:12px;line-height:1.2}.brand-name strong{font-size:17px;letter-spacing:.1em}.brand-name small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}.desktop-nav{display:flex;align-items:center;gap:30px}.desktop-nav>a{font-size:14px;color:#515b6f;position:relative;padding:23px 0}.desktop-nav>a.active,.desktop-nav>a:hover{color:var(--blue)}.desktop-nav>a.active:after{content:"";height:3px;border-radius:3px;background:var(--blue);position:absolute;left:0;right:0;bottom:0}.avatar-link{width:38px;height:38px!important;padding:0!important;display:grid;place-items:center;border-radius:50%;background:var(--orange-soft);color:var(--orange)!important;font-weight:700}.avatar-link:after{display:none}.nav-dot{position:absolute;top:12px;right:-16px;min-width:18px;height:18px;padding:0 5px;border-radius:10px;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:10px}.menu-button{display:none;border:0;background:transparent;width:42px;height:42px;color:var(--ink)}.menu-button svg{width:24px}.mobile-nav{display:none}.demo-banner{background:#fff7e9;border-bottom:1px solid #ffe0b2;text-align:center;padding:7px 16px;color:#795226;font-size:12px}.demo-banner span{background:var(--orange);color:#fff;border-radius:12px;padding:2px 8px;margin-right:6px;font-weight:700}.hero{background:linear-gradient(135deg,#f0f6ff,#fff 52%,#fff7eb);overflow:hidden;border-bottom:1px solid #edf0f4}.hero-inner{min-height:520px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;grid-gap:50px;gap:50px}.eyebrow{color:var(--blue);margin-bottom:10px}.eyebrow,.eyebrow-light{display:block;font-size:11px;font-weight:800;letter-spacing:.18em}.eyebrow-light{color:#85b3f2;margin-bottom:8px}.hero h1{font-size:46px;line-height:1.22;margin:0 0 20px;letter-spacing:-.04em}.hero h1 em{font-style:normal;color:var(--blue)}.hero-copy>p{font-size:16px;color:var(--muted);margin:0 0 26px}.hero-search{display:flex;align-items:center;background:#fff;border:1px solid #dfe4ea;border-radius:14px;padding:6px 6px 6px 16px;box-shadow:0 8px 30px rgba(44,74,112,.08);max-width:540px}.hero-search:focus-within{outline:3px solid rgba(20,88,189,.16);border-color:var(--blue)}.hero-search svg{width:20px;color:#8b94a5;flex:none}.hero-search input{min-width:0;flex:1 1;border:0;outline:0;padding:10px;background:transparent}.button,.hero-search button{border:0;background:var(--blue);color:#fff;border-radius:10px;padding:11px 21px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;transition:.2s}.button:hover,.hero-search button:hover{background:var(--blue-deep);transform:translateY(-1px)}.button.secondary{background:#fff;color:var(--blue);border:1px solid #b8cbea}.button.danger{background:#fff;color:#c7362f;border:1px solid #f0c5c2}.button.small{padding:8px 16px!important}.button.full{width:100%}.trust-row{display:flex;gap:22px;margin-top:18px;color:#627086;font-size:12px}.trust-row span:first-letter{color:var(--green)}.hero-art{height:390px;position:relative;background:linear-gradient(180deg,#dcedff,#f6fbff);border-radius:32px 32px 24px 24px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.sun{width:68px;height:68px;border-radius:50%;background:#ffd15a;right:60px;top:40px;box-shadow:0 0 0 16px rgba(255,209,90,.15)}.hill,.sun{position:absolute}.hill{border-radius:50% 50% 0 0}.hill.one{width:450px;height:220px;background:#77c890;bottom:-30px;left:-70px;transform:rotate(5deg)}.hill.two{width:420px;height:180px;background:#2e8c69;bottom:-45px;right:-90px;transform:rotate(-5deg)}.mascot-duo{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;align-items:flex-end;gap:12px;z-index:2}.hero-mascot{object-fit:contain;filter:drop-shadow(0 12px 18px rgba(18,48,88,.22));transition:transform .3s ease}.hero-mascot:hover{transform:scale(1.05) translateY(-6px)}.hero-mascot-pink{height:205px;width:auto;z-index:3}.hero-mascot-green{height:215px;width:auto;z-index:2}.float-card{position:absolute;left:32px;top:32px;background:rgba(255,255,255,.96);padding:12px 20px;border-radius:14px;box-shadow:0 8px 24px rgba(24,47,83,.12);border:1px solid rgba(255,255,255,.9);display:flex;flex-direction:column;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:4;min-width:170px}.float-card b{font-size:14px;color:var(--ink);font-weight:700;line-height:1.3}.float-card small{color:var(--muted);font-size:11px;margin-top:2px}.content-section{padding:70px 0 85px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:25px}.section-heading h2{font-size:32px;margin:0 0 4px}.section-heading p{color:var(--muted);margin:0}.result-count{font-size:13px;color:var(--muted)}.filter-row{display:flex;gap:10px;overflow-x:auto;padding-bottom:5px;margin-bottom:26px}.chip{border:1px solid var(--line);background:#fff;color:#586378;border-radius:999px;padding:8px 17px;white-space:nowrap}.chip.active,.chip:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-soft)}.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px}.activity-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.22s}.activity-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}.activity-cover{height:190px;position:relative;display:block;overflow:hidden}.cover-blue{background:linear-gradient(150deg,#0f4eac,#4f93e9)}.cover-orange{background:linear-gradient(150deg,#e76b10,#f9b548)}.cover-green{background:linear-gradient(150deg,#087b4e,#53be78)}.cover-purple{background:linear-gradient(150deg,#473c94,#9e84db)}.cover-category{position:absolute;left:16px;top:15px;background:rgba(255,255,255,.9);border-radius:20px;padding:4px 11px;font-size:11px;color:#32405a}.cover-art{position:absolute;right:30px;bottom:12px;font-size:96px;color:rgba(255,255,255,.88);font-weight:200;line-height:1;transform:rotate(-8deg)}.cover-art:after,.cover-art:before{content:"";position:absolute;width:100px;height:100px;border:1px solid rgba(255,255,255,.25);border-radius:50%;left:-35px;top:-8px}.cover-art:after{width:150px;height:150px;left:-60px;top:-35px}.cover-brand{position:absolute;left:18px;bottom:14px;color:rgba(255,255,255,.9);font-size:11px;font-weight:700;letter-spacing:.12em}.activity-body{padding:17px}.card-topline{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:700}.status{border-radius:8px;padding:3px 8px;font-size:11px}.status-报名中{background:var(--green-soft);color:#078148}.status-未开始{background:var(--blue-soft);color:var(--blue)}.status-已截止,.status-已结束{background:#f0f1f3;color:#6f7784}.status-已满员{background:var(--orange-soft);color:#bc5b08}.activity-body h3{font-size:18px;line-height:1.45;margin:12px 0}.activity-body h3 a:hover{color:var(--blue)}.meta{display:flex;gap:8px;align-items:flex-start;color:var(--muted);font-size:12px;margin:7px 0}.meta svg{width:15px;flex:none;margin-top:2px}.card-footer{border-top:1px solid #f0f1f3;margin-top:14px;padding-top:13px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--orange)}.favorite{border:0;background:#f5f7fa;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#8e96a3}.favorite svg{width:18px}.favorite.active{color:#e04b50;background:#fff0f1}.values-section{background:#0e294f;color:#fff;padding:60px 0}.club-intro-banner{display:flex;flex-direction:column;gap:35px}.club-intro-header{display:flex;align-items:center;gap:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);padding:24px 30px;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.club-badge-box{background:#ffffff;padding:12px 20px;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.16);display:flex;align-items:center;justify-content:center;flex:none}.club-badge-img{height:54px;width:auto;object-fit:contain;display:block}.club-intro-header h2{font-size:24px;margin:0 0 6px}.club-intro-header p{margin:0;color:#c0d3ec;font-size:14px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:40px;gap:40px}.values-grid>div{position:relative;padding-left:53px}.values-grid span{position:absolute;left:0;top:0;font-size:27px;color:#6ca1e7;font-weight:800}.values-grid h3{margin:0 0 8px;font-size:17px}.values-grid p{margin:0;color:#b9c7da;font-size:13px;line-height:1.6}.empty-state,.no-results{text-align:center;background:#fff;border:1px dashed #cbd2dc;border-radius:var(--radius);padding:60px 20px}.no-results svg{width:45px;margin:auto;color:#aab1bc}.empty-mascot-img{height:120px;width:auto;margin:0 auto 12px;object-fit:contain}.empty-state h2,.no-results h3{margin:14px 0 5px}.empty-state p,.no-results p{color:var(--muted);margin:0 auto 20px;max-width:460px}.text-button{border:0;background:transparent;color:var(--blue);font-weight:700}.empty-mascot{width:130px;height:130px;margin:auto;object-fit:contain}.site-footer{padding:50px 0 90px;background:#fff;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.footer-content{display:grid;grid-template-columns:1.2fr 1.5fr 1fr;grid-gap:45px;gap:45px;margin-bottom:35px}.footer-logo-img{height:42px;width:auto;object-fit:contain;margin-bottom:10px}.footer-tagline{margin:0 0 4px;font-size:14px;color:var(--ink)}.footer-sub{margin:0;color:#919dae;font-size:11px}.footer-info-col h4,.footer-links-col h4{font-size:14px;color:var(--ink);margin:0 0 14px}.footer-address,.footer-contact,.footer-hours{margin:0 0 9px;line-height:1.6}.footer-address strong{color:var(--ink)}.footer-contact a{color:var(--blue);font-weight:600}.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links a:hover{color:var(--blue)}.footer-bottom{border-top:1px solid #f0f2f5;padding-top:22px;text-align:center;color:#9aa5b5;font-size:12px}@media(max-width:900px){.activity-grid{grid-template-columns:repeat(2,1fr)}.hero-inner{grid-template-columns:1fr;min-height:auto;padding:70px 0}.hero-art{display:none}.hero-copy{max-width:680px}.values-grid{gap:25px}.brand-name{display:none}.footer-content{grid-template-columns:1fr;gap:30px}.club-intro-header{flex-direction:column;text-align:center}}@media(max-width:680px){.container,.header-inner,.narrow{width:calc(100% - 28px)}.site-header{height:62px}.brand{height:52px}.brand-logo-primary{height:38px;max-width:130px}.desktop-nav{display:none;position:absolute;top:62px;left:0;right:0;background:#fff;padding:10px 20px 20px;box-shadow:var(--shadow);flex-direction:column;gap:0;align-items:stretch}.desktop-nav.open{display:flex}.desktop-nav>a{padding:12px}.desktop-nav>a.active:after{display:none}.menu-button{display:block}.mobile-nav{display:flex;position:fixed;z-index:60;left:0;right:0;bottom:0;height:68px;background:rgba(255,255,255,.96);border-top:1px solid var(--line);justify-content:space-around;padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-nav>a{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#7b8494;font-size:10px}.mobile-nav>a.active{color:var(--blue);font-weight:700}.nav-icon{position:relative}.nav-icon svg{width:21px;height:21px;margin-bottom:2px}.nav-icon b{position:absolute;right:-8px;top:-5px;background:var(--orange);color:white;font-size:8px;min-width:15px;height:15px;border-radius:10px;display:grid;place-items:center}.demo-banner{font-size:11px}.hero-inner{padding:47px 0 53px}.hero h1{font-size:32px}.hero-copy>p{font-size:14px}.hero-search{padding-left:12px}.hero-search button{padding:10px 15px}.trust-row{gap:12px;flex-wrap:wrap}.content-section{padding:45px 0 60px}.section-heading{align-items:flex-start}.section-heading h2{font-size:26px}.section-heading p{font-size:13px}.result-count{display:none}.activity-grid{grid-template-columns:1fr}.activity-cover{height:180px}.values-grid{grid-template-columns:1fr;padding:10px 0 38px;gap:30px}.site-footer{padding:38px 0 95px}.page-space{padding:28px 0 90px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.activity-poster-img{width:100%;height:100%;object-fit:cover;object-position:center 20%;transition:transform .3s ease}.activity-card:hover .activity-poster-img{transform:scale(1.04)}.hero-poster-preview{width:170px;height:226px;border-radius:16px;overflow:hidden;box-shadow:0 16px 36px rgba(0,0,0,.28);border:3px solid rgba(255,255,255,.9);flex-shrink:0}.hero-poster-thumb{width:100%;height:100%;object-fit:cover}.poster-showcase-section{border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow);margin-bottom:24px}.poster-tabs{display:flex;gap:8px}.poster-tab-btn{border:1px solid var(--line);background:#f8fafc;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;color:var(--muted);transition:.2s}.poster-tab-btn.active{background:var(--blue);color:#fff;border-color:var(--blue)}.poster-container{max-width:620px;margin:0 auto;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,.12);background:#f8fafc;border:1px solid var(--line)}.main-poster-img{width:100%;height:auto;display:block;object-fit:contain}.poster-thumbs-strip{display:flex;justify-content:center;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.poster-thumb-item{width:72px;height:96px;border-radius:8px;overflow:hidden;border:2px solid transparent;padding:0;background:transparent;cursor:pointer;opacity:.7;transition:.2s}.poster-thumb-item.active{border-color:var(--blue);opacity:1;transform:translateY(-2px);box-shadow:0 4px 12px rgba(20,88,189,.2)}.poster-thumb-item img{width:100%;height:100%;object-fit:cover}.detail-hero{color:#fff}.detail-hero-inner{min-height:330px;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden;gap:24px}.detail-hero-inner>div{max-width:720px;z-index:2}.back-link{display:inline-block;color:rgba(255,255,255,.8);font-size:13px;margin-bottom:35px}.back-link.dark{color:var(--blue);margin-bottom:22px}.detail-tags{display:flex;gap:8px}.detail-tags span{font-size:11px;padding:4px 10px;background:rgba(255,255,255,.17);border:1px solid rgba(255,255,255,.3);border-radius:20px}.detail-hero h1{font-size:40px;line-height:1.25;margin:14px 0 10px}.detail-hero p{color:rgba(255,255,255,.83);margin:0}.detail-symbol{font-size:180px;opacity:.15;position:absolute;right:50px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:34px;gap:34px;padding:42px 0 75px}.detail-main{min-width:0}.info-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-template-columns:repeat(3,1fr);padding:22px;grid-gap:15px;gap:15px}.info-panel>div{display:flex;gap:10px}.info-panel>div+div{border-left:1px solid var(--line);padding-left:18px}.info-panel svg{width:21px;color:var(--blue);flex:none}.info-panel span{display:flex;flex-direction:column}.info-panel small{color:var(--muted)}.info-panel strong{font-size:13px;margin:3px 0}.info-panel em{font-style:normal;color:var(--muted);font-size:11px}.article-section{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin-top:20px}.article-section h2{font-size:21px;margin:0 0 15px}.article-section>p{color:#5d6779}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.highlight-grid div{display:flex;align-items:center;gap:7px;background:var(--blue-soft);padding:12px;border-radius:10px;font-size:12px;color:var(--blue-deep)}.highlight-grid svg{width:16px;flex:none}.notice-list{list-style:none;margin:0;padding:0}.notice-list li{display:flex;gap:13px;padding:11px 0;border-bottom:1px solid #f0f1f3}.notice-list li:last-child{border:0}.notice-list span{color:var(--orange);font-size:11px;font-weight:800}.policy-box{background:#fff8ec;border-left:3px solid var(--orange);padding:14px 16px;color:#76562d;font-size:13px}.booking-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;align-self:start;position:-webkit-sticky;position:sticky;top:102px;box-shadow:var(--shadow)}.price-row{display:flex;justify-content:space-between;align-items:center}.price-row small{display:block;color:var(--muted)}.price-row b{font-size:28px;color:var(--orange)}.price-row em{font-style:normal;color:var(--muted);font-size:12px}.booking-card dl{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:18px 0}.booking-card dl div,.order-summary dl div{display:flex;justify-content:space-between;gap:15px;padding:6px 0;font-size:12px}.booking-card dt,.order-summary dt{color:var(--muted)}.booking-card dd,.order-summary dd{margin:0;text-align:right}.remaining{color:var(--orange);font-weight:700}.booking-tip{text-align:center;color:var(--muted);font-size:10px;margin:9px 0 0}.inline-message{background:#fff5e4;color:#7b5723;border-radius:9px;padding:10px 12px;font-size:12px;margin:12px 0}.inline-message.success{background:var(--green-soft);color:#087a45;display:flex;gap:6px;align-items:center}.inline-message svg{width:15px}.booking-card .button:disabled,.button:disabled{opacity:.48;cursor:not-allowed;transform:none}.related-section{padding-bottom:80px}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;grid-gap:28px;gap:28px;align-items:start}.stepper{margin-bottom:24px}.stepper,.stepper span{display:flex;align-items:center}.stepper span{gap:7px;color:#8a93a2;font-size:12px;white-space:nowrap}.stepper span.active{color:var(--blue);font-weight:700}.stepper b{width:26px;height:26px;border:1px solid #c8ced8;border-radius:50%;display:grid;place-items:center}.stepper .active b{color:#fff;background:var(--blue);border-color:var(--blue)}.stepper i{height:1px;background:#dce0e6;flex:1 1;margin:0 10px}.form-card,.form-summary,.order-summary,.payment-card,.profile-card,.profile-form{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px}.form-heading h1,.page-title h1,.success-title h1{margin:0;font-size:31px}.form-heading>p,.page-title>p{color:var(--muted);margin:4px 0 24px}.form-card fieldset,.profile-form fieldset{border:0;padding:0;margin:28px 0}.form-card legend,.profile-form legend{font-size:17px;font-weight:700;margin-bottom:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.auth-box form>label,.form-card label:not(.check-row),.profile-form form>label{display:flex;flex-direction:column;gap:6px;margin-bottom:15px}.auth-box label>span,.form-card label>span,.profile-form label>span{font-size:13px;font-weight:600}.form-card em{color:#d5443c;font-style:normal}.auth-box input,.form-card input,.form-card select,.form-card textarea,.profile-form input,.profile-form textarea{width:100%;border:1px solid #d8dde5;border-radius:10px;padding:11px 13px;background:#fff;outline:0}.auth-box input:focus,.form-card input:focus,.form-card select:focus,.form-card textarea:focus,.profile-form input:focus,.profile-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,88,189,.11)}.check-row{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#5f697b}.check-row input{width:auto!important;margin-top:4px}.check-row a{color:var(--blue)}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.form-summary{position:-webkit-sticky;position:sticky;top:102px}.summary-cover{height:140px;border-radius:12px;padding:14px;color:#fff;display:flex;justify-content:space-between;overflow:hidden}.summary-cover b{font-size:75px;opacity:.7}.form-summary h2{font-size:17px;line-height:1.4}.form-summary>p{display:flex;gap:7px;font-size:12px;color:var(--muted)}.form-summary>p svg{width:15px;flex:none}.form-summary>div:not(.summary-cover){display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-top:14px}.form-summary>small{display:flex;align-items:center;gap:6px;margin-top:15px;color:var(--green);font-size:11px}.form-summary>small svg{width:14px}.auth-page{min-height:calc(100vh - 72px);display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-visual{background:linear-gradient(145deg,#e8f2ff,#b9d5f6);position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;padding:55px;color:var(--blue-deep)}.auth-visual:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,.35);top:-180px;left:-100px}.auth-visual.green-visual{background:linear-gradient(145deg,#e7f8ed,#b8e3c8);color:#075d39}.auth-mascot{position:absolute;width:320px;height:350px;top:20px;right:10%;filter:drop-shadow(0 18px 22px rgba(30,55,87,.15))}.auth-visual>div{z-index:2;width:min(480px,100%)}.auth-visual span{font-size:11px;font-weight:800;letter-spacing:.2em}.auth-visual h1{font-size:34px;line-height:1.35;margin:10px 0}.auth-visual p{margin:0}.auth-panel{display:grid;place-items:center;padding:40px}.auth-box{width:min(400px,100%)}.auth-box>.brand{margin-bottom:45px}.auth-box h2{font-size:30px;margin:0}.auth-box>p{color:var(--muted);margin:5px 0 22px}.auth-options{display:flex;justify-content:space-between;align-items:center;margin:5px 0 18px}.auth-options .check-row{margin:0}.auth-switch{text-align:center;font-size:13px!important}.auth-switch a{color:var(--blue);font-weight:700;margin-left:4px}.payment-page{max-width:980px}.success-title{display:flex;gap:18px;align-items:center;margin-bottom:28px}.success-title>span{width:56px;height:56px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center}.success-title svg{width:28px}.success-title p{margin:2px 0;color:var(--muted)}.payment-layout{display:grid;grid-template-columns:1fr 320px;grid-gap:24px;gap:24px}.payment-amount{text-align:center;background:var(--blue-soft);border-radius:12px;padding:15px}.payment-amount small,.payment-amount span{display:block;color:var(--muted);font-size:11px}.payment-amount strong{display:block;font-size:36px;color:var(--orange)}.wechat-qr{text-align:center;padding:22px}.wechat-qr b{margin-top:8px;display:block}.wechat-qr p{margin:2px;color:var(--muted);font-size:11px}.qr-pattern,.ticket-qr{display:grid;background:#fff;padding:10px;grid-gap:1px;gap:1px;margin:auto}.qr-pattern{grid-template-columns:repeat(9,1fr);width:160px;height:160px}.qr-pattern i,.ticket-qr i{background:#fff}.qr-pattern i.on,.ticket-qr i.on{background:#142035}.note-box{background:#fff8e9;border:1px dashed #efbc6b;border-radius:12px;padding:14px;text-align:center}.note-box small{color:#76562d}.note-box>div{display:flex;align-items:center;justify-content:center;gap:12px}.note-box strong{font-size:23px;letter-spacing:.08em;color:var(--blue-deep)}.note-box button{border:0;background:var(--orange);color:#fff;border-radius:7px;padding:4px 9px}.note-box p{font-size:10px;color:#a06b26;margin:2px}.payment-steps{list-style:none;padding:10px 0;margin:15px 0}.payment-steps li{padding:6px 0;font-size:12px}.payment-steps b{display:inline-grid;place-items:center;width:22px;height:22px;background:var(--blue-soft);color:var(--blue);border-radius:50%;margin-right:8px}.payment-confirm{margin:15px 0}.order-summary{align-self:start}.order-summary h2{font-size:18px;margin-top:0}.order-summary dl{border-top:1px solid var(--line);padding-top:12px}.help-box{background:#f4f6f8;border-radius:10px;padding:13px;margin-top:18px;font-size:12px}.help-box p{margin:3px 0;color:var(--muted)}.page-title{margin-bottom:25px}.page-title.split{display:flex;justify-content:space-between;align-items:center}.tab-row{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:20px}.tab-row button{border:0;background:transparent;padding:11px 3px;position:relative;color:var(--muted)}.tab-row button.active{color:var(--blue);font-weight:700}.tab-row button.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--blue)}.registration-list{display:flex;flex-direction:column;gap:14px}.registration-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:grid;grid-template-columns:50px minmax(0,1fr) auto;grid-gap:17px;gap:17px}.registration-icon{width:46px;height:46px;border-radius:12px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center}.registration-icon svg{width:24px}.registration-content>div:first-child{display:flex;gap:10px;align-items:center}.registration-content>div:first-child small{color:var(--muted)}.registration-content h2{font-size:18px;margin:8px 0}.registration-content>p{display:flex;gap:7px;color:var(--muted);font-size:12px}.registration-content>p svg{width:15px}.registration-content dl{display:flex;gap:35px}.registration-content dl div{font-size:11px}.registration-content dt{color:var(--muted)}.registration-content dd{margin:2px 0}.registration-actions{display:flex;flex-direction:column;justify-content:center;gap:8px}.ticket-page{background:linear-gradient(180deg,#e8f2ff,#f7f8fa);min-height:calc(100vh - 72px)}.ticket-shell{width:min(430px,calc(100% - 28px));margin:auto;background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.ticket-head{padding:22px;color:#fff;position:relative}.ticket-head>span{font-size:11px;letter-spacing:.1em}.ticket-head>strong{float:right;background:rgba(255,255,255,.2);padding:3px 9px;border-radius:12px;font-size:11px}.ticket-head h1{font-size:20px;line-height:1.4;margin:25px 0 2px}.ticket-body{padding:27px}.ticket-qr{grid-template-columns:repeat(11,1fr);width:205px;height:205px;border:1px solid var(--line)}.ticket-code{text-align:center;color:var(--muted);font-size:11px}.ticket-code strong{display:block;color:var(--ink);font-size:13px;letter-spacing:.08em}.ticket-divider{display:flex;align-items:center;gap:10px;color:#c4cad2}.ticket-divider span{height:1px;background:var(--line);flex:1 1}.ticket-body dl>div{padding:8px 0}.ticket-body dt{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.ticket-body dt svg{width:14px}.ticket-body dd{margin:2px 0;font-size:13px;font-weight:600}.ticket-notice{display:flex;gap:10px;background:var(--green-soft);color:#087844;padding:12px;border-radius:10px}.ticket-notice svg{width:18px}.ticket-notice span{display:flex;flex-direction:column}.ticket-notice small{font-size:10px}.ticket-help{text-align:center;color:var(--muted);font-size:11px}.ticket-help a{color:var(--blue)}.notice-list-ui{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.notice-item{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:18px;display:grid;grid-template-columns:42px 1fr 8px;grid-gap:13px;gap:13px;text-align:left}.notice-item:last-child{border-bottom:0}.notice-item.unread{background:#f7faff}.notice-icon{width:40px;height:40px;border-radius:12px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center}.notice-icon svg{width:20px}.notice-item b{font-size:14px}.notice-item p{color:var(--muted);font-size:12px;margin:3px 0}.notice-item small{color:#9aa2af}.notice-item>i{width:7px;height:7px;border-radius:50%;background:var(--orange);margin-top:7px}.profile-layout{display:grid;grid-template-columns:270px 1fr;grid-gap:24px;gap:24px}.profile-card{text-align:center;align-self:start}.profile-avatar{width:82px;height:82px;border-radius:50%;background:linear-gradient(135deg,var(--orange),#ffc35a);color:#fff;display:grid;place-items:center;font-size:32px;font-weight:800;margin:auto}.profile-card h1{font-size:21px;margin:12px 0 0}.profile-card>p{color:var(--muted);margin:2px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:16px 0;padding:12px 0}.stats span{font-size:10px;color:var(--muted)}.stats b{display:block;color:var(--ink);font-size:18px}.profile-card .button svg{width:16px;margin-right:6px}.profile-link{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:8px;padding:12px;color:var(--muted);font-size:13px}.profile-link svg{width:17px}.profile-link:hover{color:var(--blue)}.profile-form .page-title h2{font-size:27px;margin:0}.profile-form form{max-width:580px}.toggle-row{display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:12px 0;margin:0!important}.toggle-row>span{display:flex;flex-direction:column}.toggle-row small{color:var(--muted);font-weight:400}.toggle-row input{width:42px!important;height:22px}.public-cover{background:linear-gradient(145deg,#1458bd,#4e88d6);color:#fff;text-align:center;padding:60px 20px 75px}.profile-avatar.large{width:100px;height:100px;border:5px solid rgba(255,255,255,.3)}.public-cover h1{margin:12px 0 4px}.public-cover p{margin:0 auto;max-width:500px;color:rgba(255,255,255,.85)}.public-cover span{font-size:11px;color:rgba(255,255,255,.65)}.public-content{max-width:800px;padding-bottom:80px}.public-stats{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(3,1fr);margin:-35px 0 50px}.public-stats div{text-align:center;padding:19px;border-right:1px solid var(--line)}.public-stats div:last-child{border:0}.public-stats b{display:block;font-size:25px;color:var(--blue)}.public-stats span{font-size:11px;color:var(--muted)}.public-content section+section{margin-top:50px}.badge-row{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:15px;gap:15px}.badge-row div,.memory-list>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;align-items:center;gap:12px}.badge-row div>span{width:50px;height:50px;border-radius:50%;background:var(--orange-soft);display:grid;place-items:center;color:var(--orange);font-size:24px}.badge-row div{display:grid;grid-template-columns:50px 1fr}.badge-row b,.badge-row small{grid-column:2}.badge-row small,.memory-list small{display:block;color:var(--muted)}.memory-list{display:flex;flex-direction:column;gap:10px}.memory-list svg{width:22px;color:var(--blue)}.privacy-note{text-align:center;color:var(--muted);font-size:11px;margin-top:50px}@media(max-width:800px){.detail-layout,.form-layout,.payment-layout,.profile-layout{grid-template-columns:1fr}.booking-card,.form-summary{position:static}.info-panel{grid-template-columns:1fr}.info-panel>div+div{border-left:0;border-top:1px solid var(--line);padding:14px 0 0}.auth-page{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{padding:45px 20px}.registration-card{grid-template-columns:45px 1fr}.registration-actions{grid-column:2;flex-direction:row;justify-content:flex-start}.order-summary{order:-1}.payment-layout{display:flex;flex-direction:column}.profile-card{order:2}}@media(max-width:680px){.detail-hero-inner{min-height:280px}.detail-hero h1{font-size:29px}.detail-symbol{right:5px;font-size:120px}.detail-layout{padding:20px 0 55px}.article-section{padding:20px}.highlight-grid{grid-template-columns:1fr}.related-section{padding-bottom:60px}.stepper span{font-size:10px}.stepper i{margin:0 5px}.form-card,.form-summary,.order-summary,.payment-card,.profile-card,.profile-form{padding:19px}.form-grid{grid-template-columns:1fr}.form-actions .button{flex:1 1}.success-title{align-items:flex-start}.success-title>span{width:43px;height:43px;flex:none}.success-title h1{font-size:25px}.success-title p{font-size:12px}.registration-card{padding:16px;grid-template-columns:38px 1fr;gap:10px}.registration-icon{width:38px;height:38px}.registration-content dl{gap:18px;flex-wrap:wrap}.registration-actions{grid-column:1/-1}.registration-actions .button{flex:1 1}.page-title h1{font-size:27px}.page-title.split{align-items:flex-start}.badge-row{grid-template-columns:1fr}.public-stats{margin-top:-30px}.public-cover{padding-top:40px}.auth-box>.brand{margin-bottom:30px}.ticket-page{padding-top:22px}.ticket-shell{border-radius:18px}.ticket-body{padding:20px}}.loading-spinner{display:block;width:36px;height:36px;margin:0 auto;border:3px solid #dce6f5;border-top:3px solid var(--blue);border-radius:50%;animation:yqhx-spin .8s linear infinite}@keyframes yqhx-spin{to{transform:rotate(1turn)}}.profile-section-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin-bottom:24px}.section-head-split{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px;gap:14px}.section-head-split h2{font-size:24px;margin:0 0 4px}.section-head-split p{color:var(--muted);margin:0;font-size:13px}.badge-stat-pill{background:var(--orange-soft);color:var(--orange);font-weight:700;font-size:12px;padding:4px 12px;border-radius:20px;white-space:nowrap}.profile-badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px}.badge-medal-card{background:linear-gradient(145deg,#fffdf7,#ffffff);border:1.5px solid #fae69e;border-radius:16px;padding:16px;display:flex;gap:14px;align-items:center;box-shadow:0 6px 20px rgba(234,179,8,.08);transition:transform .2s,box-shadow .2s}.badge-medal-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(234,179,8,.16);border-color:#f59e0b}.badge-medal-visual{flex-shrink:0;width:64px;height:64px;display:flex;align-items:center;justify-content:center}.badge-medal-img{object-fit:cover;box-shadow:0 4px 14px rgba(0,0,0,.15)}.badge-medal-img,.badge-medal-placeholder{width:64px;height:64px;border-radius:50%;border:2px solid #fbbf24}.badge-medal-placeholder{background:linear-gradient(135deg,#fef3c7,#fde68a);display:grid;place-items:center;font-size:30px;box-shadow:0 4px 12px rgba(245,158,11,.15)}.badge-medal-info{flex:1 1;min-width:0}.badge-medal-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.badge-medal-header h3{font-size:15px;margin:0;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge-type-tag{background:var(--blue-soft);color:var(--blue);font-size:10px;font-weight:700;padding:2px 7px;border-radius:10px;flex-shrink:0}.badge-medal-desc{font-size:12px;color:var(--muted);margin:0 0 4px;line-height:1.4}.badge-granted-time{display:block;font-size:11px;color:#94a3b8}.badge-empty-showcase{text-align:center;padding:32px 20px;background:#fcfdfa;border:1px dashed #e2e8f0;border-radius:14px}.badge-empty-icon{font-size:42px;margin-bottom:8px}.badge-empty-showcase h3{margin:0 0 6px;font-size:16px}.badge-empty-showcase p{color:var(--muted);font-size:13px;max-width:440px;margin:0 auto 16px}.available-badges-preview{border-top:1px solid #edf2f7;padding-top:14px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.preview-label{font-size:12px;color:var(--muted);font-weight:600}.preview-badge-chip{font-size:12px;background:#f1f5f9;color:#475569;padding:3px 10px;border-radius:12px}