    :root{color-scheme:light;--color-bg:#FFFFFF;--color-bg-alt:#FBFBFD;--color-bg-dark:#1D1D1F;--color-text-primary:#1D1D1F;--color-text-secondary:#6E6E73;--color-text-tertiary:#86868B;--color-text-on-dark:#F5F5F7;--color-divider:#D2D2D7;--color-brand:#05D38E;--color-brand-hover:#0CE59C;--color-brand-pressed:#04B87C;--gradient-p3:linear-gradient(30deg,#FFBF1D 0%,#FF712F 100%);--font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Display",Inter,"Helvetica Neue",Arial,sans-serif;--font-cn:"PingFang SC","苹方","Noto Sans SC","Microsoft YaHei",sans-serif;--font-num:Poppins,-apple-system,"SF Pro Display",Inter,sans-serif;--font-display-l:clamp(40px,6vw,80px);--font-headline:clamp(36px,5vw,72px);--font-body-l:clamp(18px,1.6vw,24px);--font-body:16px;--font-eyebrow:14px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-8:48px;--space-10:64px;--space-12:96px;--space-16:128px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:28px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.04);--shadow-md:0 6px 20px rgba(0,0,0,0.06);--ease-out:cubic-bezier(0.22,1,0.36,1);--dur-base:250ms;--dur-fast:150ms;--container-max:1240px;--container-pad:32px;}
    @media(max-width:734px){:root{--font-display-l:32px;--font-headline:26px;}}
    *,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
    html{scroll-behavior:smooth;}
    body{font-family:var(--font-cn),var(--font-sans);font-size:var(--font-body);color:var(--color-text-primary);background:var(--color-bg);overflow-x:hidden;-webkit-font-smoothing:antialiased;padding-top:94px;}
    .text-gradient{background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
    .grad-p3{background-image:var(--gradient-p3);}
    .container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad);}
    .cta-group{display:flex;gap:var(--space-5);align-items:center;flex-wrap:wrap;}
    .cta-group.center{justify-content:center;}
    .fade-in{opacity:0;transform:translateY(20px);transition:opacity 0.6s var(--ease-out),transform 0.6s var(--ease-out);}
    .fade-in.visible{opacity:1;transform:none;}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;padding:0 24px;border-radius:var(--radius-full);font-size:15px;font-weight:500;text-decoration:none;cursor:pointer;border:none;transition:background var(--dur-fast),transform var(--dur-fast);white-space:nowrap;font-family:var(--font-sans);}
    .btn:active{transform:scale(0.97);}
    .btn-primary{background:var(--color-text-primary);color:#fff;}
    .btn-primary:hover{background:#2C2C2E;}
    .btn-primary.on-brand{background:var(--color-brand-pressed);color:#fff;}
    .btn-primary.on-brand:hover{background:var(--color-brand);}
    .btn-secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-text-primary);}
    .btn-secondary:hover{background:var(--color-text-primary);color:#fff;}

    /* NAV */
    .site-topbar{position:fixed;top:0;left:0;right:0;z-index:201;height:34px;background:var(--color-bg-dark);display:flex;align-items:center;}
    .topbar-inner{padding-inline:40px;width:100%;display:flex;align-items:center;justify-content:space-between;}
    .topbar-products{display:flex;gap:var(--space-6);align-items:center;list-style:none;}
    .topbar-products a{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:400;color:rgba(245,245,247,0.45);text-decoration:none;font-family:var(--font-sans);transition:color var(--dur-fast);}
    .topbar-products a:hover{color:rgba(245,245,247,0.85);}
    .topbar-products li.active a{color:rgba(245,245,247,0.45);font-weight:600;}
    .topbar-products .dot{width:14px;height:14px;border-radius:4px;flex-shrink:0;background-size:contain;background-position:center;background-repeat:no-repeat;}
    .topbar-products .dot-fakao{background-image:url(images/icon-fakao.png);}
    .topbar-products .dot-fashuo{background-image:url(images/icon-fashuo.png);}
    .topbar-products .dot-cpa{background-image:url(images/icon-cpa.png);}
    .app-download-btn{position:relative;}
    .topbar-products .dot-app{position:relative;overflow:hidden;background:transparent;}
    .topbar-products .dot-app img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 0.8s ease,transform 0.8s ease;}
    .topbar-products .dot-app img.dot-app-android{opacity:1;animation:jx-topbar-slide-1 7s infinite;}
    .topbar-products .dot-app img.dot-app-ios{opacity:0;animation:jx-topbar-slide-2 7s infinite;}
    @keyframes jx-topbar-slide-1{0%,40%{opacity:1;transform:translateY(0);}45%,95%{opacity:0;transform:translateY(100%);}100%{opacity:1;transform:translateY(0);}}
    @keyframes jx-topbar-slide-2{0%,40%{opacity:0;transform:translateY(-100%);}45%,95%{opacity:1;transform:translateY(0);}100%{opacity:0;transform:translateY(100%);}}
    .app-qrcode{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);width:120px;height:120px;margin-top:8px;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,0.3);z-index:1000;}
    .app-download-btn:hover .app-qrcode{display:block;}
    @media(max-width:734px){.topbar-products a span:not(.dot){display:none;}.topbar-products{gap:var(--space-3);}}
    .site-nav{position:fixed;top:34px;left:0;right:0;z-index:200;height:68px;background:rgba(255,255,255,0.82);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,0.05);}
    .nav-inner{padding-inline:40px;height:100%;display:flex;align-items:center;gap:var(--space-5);}
    .nav-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;}
    .nav-links{display:flex;align-items:center;gap:28px;list-style:none;margin-left:40px;}
    .nav-links a{font-size:16px;font-weight:600;color:var(--color-text-primary);text-decoration:none;transition:font-weight var(--dur-fast);}
    .nav-links a:hover{font-weight:600;}
    .nav-links a.nav-active{font-weight:600;color:var(--color-brand-pressed);}
    .nav-actions{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0;margin-left:auto;}
    .nav-actions .btn-primary.on-brand{position:relative;overflow:hidden;background:#FF9500;box-shadow:0 4px 12px rgba(255,149,0,0.30),0 0 18px rgba(255,149,0,0.18);}
    .nav-actions .btn-primary.on-brand:hover{background:#E68600;box-shadow:0 8px 22px rgba(255,149,0,0.42),0 0 28px rgba(255,149,0,0.32);transform:translateY(-1px);}
    .nav-actions .btn-primary.on-brand>*{position:relative;z-index:2;}
    .nav-actions .btn-primary.on-brand::before{content:'';position:absolute;top:0;left:-75%;width:55%;height:100%;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,0.55) 50%,transparent 100%);transform:skewX(-22deg);animation:nav-study-shine 3.6s ease-in-out 1.2s infinite;z-index:1;pointer-events:none;}
    @keyframes nav-study-shine{0%{left:-75%;opacity:0;}10%{opacity:1;}50%{left:130%;opacity:1;}60%,100%{left:130%;opacity:0;}}
    @media(prefers-reduced-motion:reduce){.nav-actions .btn-primary.on-brand::before{animation:none;display:none;}}
    .nav-actions .btn-consult{background:var(--color-brand);color:#fff;border-color:transparent;}
    .nav-actions .btn-consult:hover{background:var(--color-brand-pressed);color:#fff;border-color:transparent;}
    .nav-mobile-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--color-text-primary);}
    .nav-mobile-actions{display:none;}
    @media(max-width:1068px){.nav-links{display:none;}.nav-mobile-toggle{display:flex;align-items:center;}.nav-inner>.nav-actions>a.btn{display:none;}.nav-mobile-actions{display:block;order:-1;width:100%;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(0,0,0,0.08);}.nav-mobile-actions .nav-actions{margin-left:0;width:100%;}.nav-mobile-actions .nav-actions .btn{flex:1;}}

    /* HERO */
    .subpage-hero{position:relative;padding-top:40px;padding-bottom:120px;min-height:calc(100vh - 94px);box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(ellipse 70% 60% at 20% 10%,rgba(255,191,29,0.15),transparent 60%),radial-gradient(ellipse 60% 50% at 85% 20%,rgba(255,113,47,0.13),transparent 60%),linear-gradient(180deg,#FAFAFC 0%,#FFFFFF 100%);text-align:center;}
    .subpage-hero .container{max-width:960px;}
    .subpage-hero .crumb-row{position:absolute;top:40px;left:0;right:0;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad);}
    .breadcrumb{padding-bottom:12px;font-size:13px;color:var(--color-text-tertiary);text-align:left;position:relative;z-index:2;}
    .breadcrumb a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--dur-fast);}
    .breadcrumb a:hover{color:var(--color-brand);}
    .hero-eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:16px;font-weight:600;letter-spacing:0.04em;color:var(--color-brand-pressed);background:rgba(5,211,142,0.08);padding:5px 14px;border-radius:var(--radius-full);margin-bottom:var(--space-5);font-family:var(--font-sans);}
    .subpage-hero h1{font-size:clamp(36px,4.5vw,64px);font-weight:800;line-height:1.42;letter-spacing:-0.025em;margin-bottom:var(--space-5);font-family:var(--font-sans);}
    .hero-sub{font-size:clamp(19px,1.8vw,26px);color:var(--color-text-secondary);line-height:1.55;margin-bottom:var(--space-8);max-width:760px;margin-inline:auto;}
    .hero-sub strong{color:var(--color-text-primary);font-weight:600;}
    .hero-worry-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:var(--space-8);max-width:680px;margin-inline:auto;}
    .hero-worry-tag{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:var(--radius-full);font-size:13px;font-weight:500;border:1px solid;white-space:nowrap;}
    .hwt-o{background:#FFF7ED;border-color:#FBBF24;color:#92400E;}
    .hwt-p{background:#EEF2FF;border-color:#C7D2FE;color:#3730A3;}
    .hwt-g{background:rgba(5,211,142,0.08);border-color:rgba(5,211,142,0.3);color:var(--color-brand-pressed);}
    .hero-worry-tag svg{width:13px;height:13px;flex-shrink:0;}

    /* SECTIONS */
    section{padding-block:80px;}
    .bg-alt{background:var(--color-bg-alt);}
    .bg-dark{background:var(--color-bg-dark);color:var(--color-text-on-dark);}
    .section-eyebrow{display:inline-block;font-size:var(--font-eyebrow);font-weight:600;letter-spacing:0.04em;color:var(--color-brand-pressed);margin-bottom:var(--space-4);font-family:var(--font-sans);}
    .section-eyebrow.on-dark{color:var(--color-brand);}
    .section-headline{font-size:var(--font-headline);font-weight:600;line-height:1.38;letter-spacing:-0.02em;margin-bottom:var(--space-5);font-family:var(--font-sans);}
    .section-headline.on-dark{color:var(--color-text-on-dark);}
    .section-sub{font-size:var(--font-body-l);color:var(--color-text-secondary);line-height:1.55;max-width:640px;}
    .section-sub.on-dark{color:rgba(245,245,247,0.7);}
    .section-header{margin-bottom:64px;}
    .section-header.center{text-align:center;}
    .section-header.center .section-sub{margin-inline:auto;}

    /* TAB NAV */
    .worry-tab-nav{display:none;}

    .worry-group{display:block;}
    .worry-group.active{display:block;}

    /* GROUP TITLE */
    .worry-group-title{display:flex;align-items:center;justify-content:center;gap:16px;margin:72px 0 48px;padding:32px 40px;border-radius:var(--radius-xl);text-align:center;}
    .worry-group-title h3{font-size:clamp(22px,2.2vw,30px);font-weight:800;margin:0;letter-spacing:-0.02em;}
    .worry-group-tag{font-size:12px;font-weight:700;letter-spacing:.06em;padding:5px 14px;border-radius:999px;white-space:nowrap;flex-shrink:0;}
    .g0-tag{background:#F97316;color:#fff;}
    .g1-tag{background:#6366F1;color:#fff;}
    .g2-tag{background:var(--color-brand-pressed);color:#fff;}
    .worry-group[data-group="0"] .worry-group-title{background:#FFF7ED;}
    .worry-group[data-group="0"] .worry-group-title h3{color:#92400E;}
    .worry-group[data-group="1"] .worry-group-title{background:#EEF2FF;}
    .worry-group[data-group="1"] .worry-group-title h3{color:#3730A3;}
    .worry-group[data-group="2"] .worry-group-title{background:rgba(5,211,142,0.08);}
    .worry-group[data-group="2"] .worry-group-title h3{color:#047857;}

    /* WORRY ITEM (split-screen, 法考 style) */
    .worry-item{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:72px 0;border-bottom:1px solid rgba(0,0,0,0.06);}
    .worry-item:last-child{border-bottom:none;padding-bottom:0;}

    .wi-meta{display:flex;align-items:baseline;gap:14px;margin-bottom:20px;}
    .wi-num{font-size:52px;font-weight:800;font-family:var(--font-num);line-height:1;opacity:0.18;}
    .wi-num.g0{color:#F97316;}
    .wi-num.g1{color:#6366F1;}
    .wi-num.g2{color:var(--color-brand-pressed);}
    .wi-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:var(--radius-full);font-family:var(--font-num);letter-spacing:0.08em;}
    .wi-badge.g0{background:#FFF7ED;color:#F97316;}
    .wi-badge.g1{background:#EEF2FF;color:#6366F1;}
    .wi-badge.g2{background:rgba(5,211,142,0.1);color:var(--color-brand-pressed);}

    .wi-quote{font-size:17px;font-weight:600;color:var(--color-text-primary);line-height:1.5;margin-bottom:28px;padding:18px 20px;background:var(--color-bg);border-radius:var(--radius-lg);border-left:3px solid;box-shadow:var(--shadow-sm);}
    .wi-quote.g0{border-color:#F97316;}
    .wi-quote.g1{border-color:#6366F1;}
    .wi-quote.g2{border-color:var(--color-brand-pressed);}

    .wi-compare{display:flex;flex-direction:column;gap:14px;}
    .wic-row{display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:start;}
    .wic-label{font-size:11px;font-weight:700;padding:4px 0;text-align:center;border-radius:6px;font-family:var(--font-num);margin-top:1px;}
    .wic-label.other{background:#F3F4F6;color:#9CA3AF;}
    .wic-label.g0j{background:#FFF7ED;color:#C2410C;}
    .wic-label.g1j{background:#EEF2FF;color:#4338CA;}
    .wic-label.g2j{background:rgba(5,211,142,0.1);color:var(--color-brand-pressed);}
    .wic-row p{font-size:15px;line-height:1.65;margin:0;}
    .wic-row.o-row p{color:var(--color-text-tertiary);}
    .wic-row.j-row p{color:var(--color-text-primary);font-weight:500;}

    /* MOCKUP CONTAINER */
    .wi-mock{border-radius:var(--radius-xl);padding:28px;min-height:300px;display:flex;align-items:center;justify-content:center;}
    .wi-mock.g0{background:linear-gradient(135deg,#FFF7ED 0%,#FFEDD5 100%);}
    .wi-mock.g1{background:linear-gradient(135deg,#EEF2FF 0%,#E0E7FF 100%);}
    .wi-mock.g2{background:linear-gradient(135deg,rgba(5,211,142,0.06) 0%,rgba(5,211,142,0.13) 100%);}

    /* SHARED MOCK COMPONENTS */
    .mock-card{background:#fff;border-radius:16px;box-shadow:0 8px 28px rgba(0,0,0,0.09);width:100%;max-width:300px;}
    .mock-card-header{padding:12px 16px;border-bottom:1px solid rgba(0,0,0,0.06);display:flex;align-items:center;justify-content:space-between;}
    .mock-card-header-title{font-size:12px;font-weight:700;color:var(--color-text-primary);}
    .mock-card-header-sub{font-size:11px;color:var(--color-text-tertiary);}
    .mock-card-body{padding:16px;}

    .mock-task-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid rgba(0,0,0,0.04);}
    .mock-task-row:last-of-type{border-bottom:none;}
    .mock-dot{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;flex-shrink:0;}
    .mock-dot.done-g0{background:#F97316;color:#fff;}
    .mock-dot.done-g2{background:var(--color-brand);color:#fff;}
    .mock-dot.todo{border:2px solid #E5E5EA;}
    .mock-dot.cur-g0{border:2px solid #F97316;}
    .mock-dot.cur-g1{border:2px solid #6366F1;}
    .mock-task-name{flex:1;font-size:13px;color:var(--color-text-primary);}
    .mock-task-dur{font-size:11px;color:var(--color-text-tertiary);font-family:var(--font-num);white-space:nowrap;}

    .mock-prog{margin-top:14px;}
    .mock-prog-track{height:6px;background:rgba(0,0,0,0.07);border-radius:3px;overflow:hidden;}
    .mock-prog-fill{height:100%;border-radius:3px;}
    .mock-prog-fill.g0{background:#F97316;}
    .mock-prog-fill.g1{background:#6366F1;}
    .mock-prog-fill.g2{background:var(--color-brand);}
    .mock-prog-labels{font-size:11px;color:var(--color-text-tertiary);margin-top:5px;display:flex;justify-content:space-between;}

    .mock-chat-header{padding:10px 16px;font-size:12px;font-weight:700;border-bottom:1px solid rgba(0,0,0,0.06);display:flex;align-items:center;gap:8px;}
    .mock-avatar{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;flex-shrink:0;}
    .mock-avatar.g0{background:#F97316;}
    .mock-avatar.g1{background:#6366F1;}
    .mock-avatar.g2{background:var(--color-brand);}
    .mock-chat-body{padding:14px;display:flex;flex-direction:column;gap:8px;}
    .mock-bubble{max-width:88%;padding:9px 13px;font-size:12.5px;line-height:1.5;border-radius:12px;}
    .mock-bubble.user{align-self:flex-end;background:#F3F4F6;color:#374151;border-radius:12px 12px 2px 12px;}
    .mock-bubble.bot{align-self:flex-start;color:#fff;border-radius:12px 12px 12px 2px;}
    .mock-bubble.g0{background:#F97316;}
    .mock-bubble.g1{background:#6366F1;}
    .mock-bubble.g2{background:var(--color-brand-pressed);}
    .mock-mini-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px;}
    .mock-mini-tag{font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;background:#fff;color:#374151;}

    .mock-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px;}
    .mock-stat-box{background:rgba(0,0,0,0.03);border-radius:12px;padding:14px 12px;text-align:center;}
    .mock-stat-val{font-size:22px;font-weight:800;font-family:var(--font-num);line-height:1;margin-bottom:4px;}
    .mock-stat-val.g0{color:#F97316;}
    .mock-stat-val.g1{color:#6366F1;}
    .mock-stat-val.g2{color:var(--color-brand-pressed);}
    .mock-stat-label{font-size:10.5px;color:var(--color-text-tertiary);}

    .mock-week{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;}
    .mock-day{text-align:center;}
    .mock-day-name{font-size:9px;font-weight:600;color:var(--color-text-tertiary);margin-bottom:5px;}
    .mock-day-pill{font-size:9.5px;padding:5px 3px;border-radius:7px;line-height:1.3;font-weight:500;}
    .mock-day-pill.light{background:rgba(249,115,22,0.12);color:#C2410C;}
    .mock-day-pill.strong{background:#F97316;color:#fff;}

    .mock-offline-body{padding:20px;text-align:center;}
    .mock-offline-icon{width:52px;height:52px;border-radius:16px;background:rgba(249,115,22,0.12);margin:0 auto 12px;display:flex;align-items:center;justify-content:center;}
    .mock-offline-icon svg{width:26px;height:26px;fill:#F97316;}
    .mock-offline-num{font-size:28px;font-weight:800;font-family:var(--font-num);color:#F97316;line-height:1;}
    .mock-offline-sub{font-size:11px;color:var(--color-text-tertiary);margin-top:4px;}
    .mock-offline-tags{display:flex;gap:6px;justify-content:center;margin-top:12px;}
    .mock-offline-tag{font-size:11px;font-weight:600;padding:4px 10px;border-radius:var(--radius-full);background:rgba(249,115,22,0.1);color:#C2410C;}

    .mock-stages{display:flex;flex-direction:column;}
    .mock-stage{display:flex;gap:12px;}
    .mock-stage-col{display:flex;flex-direction:column;align-items:center;}
    .mock-stage-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;margin-top:3px;}
    .mock-stage-dot.g1{background:#6366F1;}
    .mock-stage-line{width:2px;flex:1;min-height:18px;margin:3px 0;background:rgba(99,102,241,0.2);}
    .mock-stage-text{padding-bottom:14px;}
    .mock-stage-title{font-size:13px;font-weight:600;color:var(--color-text-primary);}
    .mock-stage-desc{font-size:11px;color:var(--color-text-tertiary);margin-top:2px;}

    .mock-subjects{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:16px;}
    .mock-subject-pill{padding:8px 10px;border-radius:10px;background:#EEF2FF;text-align:center;}
    .mock-subject-name{font-size:12px;font-weight:700;color:#4338CA;}
    .mock-subject-tag{font-size:10px;color:rgba(67,56,202,0.6);margin-top:2px;}

    .mock-flashcard{background:#fff;border-radius:14px;padding:18px;box-shadow:0 4px 16px rgba(0,0,0,0.08);}
    .mock-fc-label{font-size:10px;font-weight:700;letter-spacing:0.08em;color:var(--color-text-tertiary);margin-bottom:10px;}
    .mock-fc-q{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px;line-height:1.45;}
    .mock-fc-a{font-size:12.5px;color:var(--color-brand-pressed);background:rgba(5,211,142,0.08);border-radius:8px;padding:10px 12px;line-height:1.55;}
    .mock-fc-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px;}
    .mock-fc-prog{font-size:11px;color:var(--color-text-tertiary);font-family:var(--font-num);}
    .mock-fc-btns{display:flex;gap:6px;}
    .mock-fc-btn{font-size:11px;padding:4px 12px;border-radius:var(--radius-full);border:none;cursor:pointer;font-weight:600;}
    .mock-fc-btn.again{background:#FEE2E2;color:#DC2626;}
    .mock-fc-btn.good{background:rgba(5,211,142,0.12);color:var(--color-brand-pressed);}

    .mock-interview-list{display:flex;flex-direction:column;gap:8px;padding:16px;}
    .mock-interview-item{display:flex;align-items:center;gap:10px;padding:9px 12px;background:rgba(99,102,241,0.06);border-radius:10px;}
    .mock-interview-num{font-size:11px;font-weight:700;color:#6366F1;font-family:var(--font-num);width:16px;}
    .mock-interview-name{font-size:13px;font-weight:600;color:var(--color-text-primary);flex:1;}
    .mock-interview-done{font-size:11px;font-weight:600;color:var(--color-brand-pressed);}

    .mock-schools{display:flex;flex-direction:column;gap:8px;padding:16px;}
    .mock-school-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;}
    .mock-school-row:first-child{background:#EEF2FF;}
    .mock-school-row:not(:first-child){background:rgba(0,0,0,0.03);}
    .mock-school-rank{font-size:11px;font-weight:700;font-family:var(--font-num);width:16px;}
    .mock-school-rank.top{color:#6366F1;}
    .mock-school-name{flex:1;font-size:13px;font-weight:600;color:var(--color-text-primary);}
    .mock-school-match{font-size:13px;font-weight:700;font-family:var(--font-num);}
    .mock-school-match.high{color:#6366F1;}
    .mock-school-match.mid{color:var(--color-text-secondary);}

    .mock-recommend-steps{display:flex;flex-direction:column;gap:10px;padding:16px;}
    .mock-rec-step{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:center;}
    .mock-rec-step-num{width:22px;height:22px;border-radius:50%;background:#EEF2FF;color:#6366F1;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:var(--font-num);}
    .mock-rec-step-text{font-size:13px;font-weight:500;color:var(--color-text-primary);}
    .mock-rec-note{font-size:11px;color:var(--color-brand-pressed);padding:8px 12px;background:rgba(5,211,142,0.08);border-radius:8px;font-weight:600;text-align:center;margin:0 16px 16px;}

    .mock-review-calendar{padding:16px;}
    .mock-review-title{font-size:11px;font-weight:700;color:var(--color-text-tertiary);letter-spacing:0.06em;margin-bottom:12px;}
    .mock-review-row{display:flex;gap:6px;align-items:center;margin-bottom:8px;}
    .mock-review-day{font-size:11px;font-family:var(--font-num);width:28px;color:var(--color-text-tertiary);}
    .mock-review-pill{font-size:11px;padding:4px 10px;border-radius:6px;font-weight:600;}
    .mock-review-pill.learn{background:rgba(5,211,142,0.12);color:var(--color-brand-pressed);}
    .mock-review-pill.review{background:rgba(5,211,142,0.2);color:var(--color-brand-pressed);}
    .mock-review-pill.reinforce{background:var(--color-brand);color:#fff;}

    .mock-error-body{padding:16px;}
    .mock-error-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px;}
    .mock-error-title{font-size:12px;font-weight:700;color:var(--color-text-primary);}
    .mock-error-count{font-size:11px;color:var(--color-text-tertiary);}
    .mock-error-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
    .mock-error-bar-label{font-size:11.5px;width:32px;color:var(--color-text-secondary);font-weight:500;}
    .mock-error-bar-track{flex:1;height:10px;background:rgba(0,0,0,0.06);border-radius:5px;overflow:hidden;}
    .mock-error-bar-fill{height:100%;border-radius:5px;background:var(--color-brand);}
    .mock-error-bar-fill.weak{background:#EF4444;}
    .mock-error-pct{font-size:11px;font-family:var(--font-num);color:var(--color-text-tertiary);width:28px;text-align:right;}

    .mock-grade-body{padding:14px 16px;}
    .mock-grade-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
    .mock-grade-label{font-size:12px;font-weight:700;color:var(--color-text-primary);}
    .mock-grade-score{font-size:22px;font-weight:800;font-family:var(--font-num);color:var(--color-brand-pressed);}
    .mock-grade-text{font-size:12px;line-height:1.7;color:var(--color-text-secondary);}
    .mock-grade-miss{display:inline-block;font-size:11px;font-weight:600;color:#DC2626;background:#FEE2E2;padding:2px 8px;border-radius:4px;margin:2px 0;}
    .mock-grade-ok{display:inline-block;font-size:11px;font-weight:600;color:var(--color-brand-pressed);background:rgba(5,211,142,0.1);padding:2px 8px;border-radius:4px;margin:2px 0;}

    .mock-countdown-body{padding:20px 16px;text-align:center;}
    .mock-countdown-num{font-size:52px;font-weight:800;font-family:var(--font-num);color:var(--color-brand-pressed);line-height:1;}
    .mock-countdown-unit{font-size:12px;color:var(--color-text-tertiary);margin-top:2px;margin-bottom:16px;}
    .mock-daily-items{display:flex;flex-direction:column;gap:7px;text-align:left;}
    .mock-daily-row{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--color-text-secondary);}
    .mock-daily-dot{width:6px;height:6px;border-radius:50%;background:var(--color-brand);flex-shrink:0;}

    .mock-weakness-body{padding:16px;}
    .mock-weakness-title{font-size:12px;font-weight:700;color:var(--color-text-tertiary);letter-spacing:0.06em;margin-bottom:12px;}
    .mock-wb-row{display:flex;align-items:center;gap:8px;margin-bottom:9px;}
    .mock-wb-label{font-size:12px;font-weight:600;width:36px;flex-shrink:0;color:var(--color-text-secondary);}
    .mock-wb-track{flex:1;height:10px;background:rgba(0,0,0,0.06);border-radius:5px;overflow:hidden;}
    .mock-wb-fill{height:100%;border-radius:5px;}
    .mock-wb-fill.strong{background:var(--color-brand);}
    .mock-wb-fill.weak{background:#FB923C;}
    .mock-wb-fill.weakest{background:#EF4444;}
    .mock-wb-pct{font-size:11px;font-family:var(--font-num);color:var(--color-text-tertiary);width:30px;text-align:right;}

    .mock-timeline{display:flex;flex-direction:column;padding:16px;}
    .mock-tl-item{display:flex;gap:10px;}
    .mock-tl-axis{display:flex;flex-direction:column;align-items:center;}
    .mock-tl-dot{width:10px;height:10px;border-radius:50%;background:var(--color-brand);margin-top:3px;flex-shrink:0;}
    .mock-tl-line{width:2px;flex:1;min-height:16px;background:rgba(5,211,142,0.25);margin:3px 0;}
    .mock-tl-content{padding-bottom:14px;}
    .mock-tl-stage{font-size:12.5px;font-weight:700;color:var(--color-text-primary);}
    .mock-tl-detail{font-size:11px;color:var(--color-text-tertiary);margin-top:2px;}

    /* PROMISE */
    .promise-header{text-align:center;margin-bottom:80px;display:flex;flex-direction:column;align-items:center;}
    .promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;border-radius:var(--radius-xl);overflow:hidden;background:rgba(255,255,255,0.05);}
    .promise-item{padding:48px 40px;background:rgba(255,255,255,0.03);transition:background var(--dur-base);display:flex;flex-direction:column;}
    .promise-item:hover{background:rgba(255,255,255,0.055);}
    .promise-item-num{font-size:12px;font-weight:700;letter-spacing:0.12em;color:var(--color-brand);margin-bottom:24px;font-family:var(--font-num);}
    .promise-item-icon{width:48px;height:48px;border-radius:var(--radius-md);background:rgba(5,211,142,0.12);display:flex;align-items:center;justify-content:center;margin-bottom:20px;}
    .promise-item-icon svg{width:24px;height:24px;fill:var(--color-brand);}
    .promise-item-title{font-size:22px;font-weight:600;color:var(--color-text-on-dark);margin-bottom:12px;font-family:var(--font-sans);}
    .promise-item-desc{font-size:14px;color:rgba(245,245,247,0.60);line-height:1.75;}
    .promise-item-stat{display:inline-block;margin-top:20px;font-size:13px;font-weight:700;padding:7px 18px;border-radius:var(--radius-full);background:rgba(5,211,142,0.12);color:var(--color-brand);letter-spacing:0.02em;}

    /* PROMISE MOCKUPS (dark theme) */
    .promise-mockup{margin-top:28px;border-radius:16px;padding:20px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.07);}

    /* P01: chat response */
    .pmock-chat{display:flex;flex-direction:column;gap:8px;}
    .pmock-msg{display:flex;align-items:flex-end;gap:8px;}
    .pmock-msg.right{flex-direction:row-reverse;}
    .pmock-avatar-sm{width:22px;height:22px;border-radius:50%;background:rgba(5,211,142,0.2);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:var(--color-brand);}
    .pmock-bubble{padding:8px 13px;border-radius:12px;font-size:12px;line-height:1.5;max-width:80%;}
    .pmock-bubble.user{background:rgba(255,255,255,0.1);color:rgba(245,245,247,0.85);border-radius:12px 12px 2px 12px;}
    .pmock-bubble.bot{background:rgba(5,211,142,0.18);color:var(--color-brand);border-radius:12px 12px 12px 2px;}
    .pmock-time-tag{align-self:center;font-size:10px;color:rgba(245,245,247,0.3);font-family:var(--font-num);}
    .pmock-status-row{display:flex;align-items:center;gap:6px;margin-top:4px;}
    .pmock-status-dot{width:6px;height:6px;border-radius:50%;background:var(--color-brand);}
    .pmock-status-text{font-size:11px;color:var(--color-brand);font-weight:600;}

    /* P02: progress alert */
    .pmock-alert-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
    .pmock-alert-title{font-size:12px;font-weight:700;color:rgba(245,245,247,0.8);}
    .pmock-alert-badge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:var(--radius-full);background:rgba(239,68,68,0.2);color:#FCA5A5;}
    .pmock-prog-row{margin-bottom:9px;}
    .pmock-prog-labels{display:flex;justify-content:space-between;margin-bottom:4px;}
    .pmock-prog-name{font-size:11.5px;color:rgba(245,245,247,0.6);}
    .pmock-prog-pct{font-size:11px;font-family:var(--font-num);color:rgba(245,245,247,0.4);}
    .pmock-prog-track{height:7px;background:rgba(255,255,255,0.07);border-radius:4px;overflow:hidden;}
    .pmock-prog-fill{height:100%;border-radius:4px;}
    .pmock-prog-fill.ok{background:var(--color-brand);}
    .pmock-prog-fill.warn{background:#F97316;}
    .pmock-prog-fill.danger{background:#EF4444;}
    .pmock-warn-msg{margin-top:12px;font-size:11.5px;font-weight:600;color:#FCA5A5;padding:8px 10px;background:rgba(239,68,68,0.12);border-radius:8px;border-left:2px solid #EF4444;}

    /* P03: journey timeline */
    .pmock-journey{display:flex;justify-content:space-between;align-items:flex-start;position:relative;}
    .pmock-journey::before{content:'';position:absolute;top:12px;left:12px;right:12px;height:2px;background:rgba(5,211,142,0.2);}
    .pmock-jstep{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative;z-index:1;}
    .pmock-jdot{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;}
    .pmock-jdot.done{background:var(--color-brand);color:#fff;}
    .pmock-jdot.active{background:rgba(5,211,142,0.25);border:2px solid var(--color-brand);color:var(--color-brand);}
    .pmock-jdot.future{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);color:rgba(245,245,247,0.3);}
    .pmock-jlabel{font-size:10px;font-weight:600;color:rgba(245,245,247,0.5);text-align:center;line-height:1.3;}
    .pmock-jlabel.done{color:var(--color-brand);}
    .pmock-jlabel.active{color:rgba(245,245,247,0.9);}
    .pmock-journey-note{margin-top:14px;font-size:11.5px;font-weight:600;color:var(--color-brand);text-align:center;}

    /* FINAL CTA */
    .final-cta{background:var(--color-bg-dark);padding-block:var(--space-16);text-align:center;}
    .final-cta h2{font-size:var(--font-display-l);font-weight:700;line-height:1.05;color:var(--color-text-on-dark);margin-bottom:var(--space-5);font-family:var(--font-sans);}
    .final-cta p{font-size:var(--font-body-l);color:rgba(245,245,247,0.65);margin-bottom:var(--space-8);}

      /* ── Footer ── */
  .site-footer {
    background: #0e0e10;
    padding-block: 64px 0;
  }
  .footer-grid {
    display: grid;
    grid-template-columns: 1.6fr 1fr 1fr 1fr;
    gap: 40px;
    padding-bottom: 56px;
  }
  .footer-logo { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
  .footer-brand-name { font-size: 17px; font-weight: 700; color: #fff; font-family: var(--font-sans); }
  .footer-brand-tagline { font-size: 13px; color: rgba(255,255,255,0.45); line-height: 1.6; margin-bottom: 20px; }
  .footer-apps { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 20px; }
  .footer-app-btn {
    display: flex; align-items: center; gap: 8px; padding: 9px 16px;
    border: 1px solid rgba(255,255,255,0.15); border-radius: 10px;
    text-decoration: none; background: rgba(255,255,255,0.05);
    transition: background 0.2s, border-color 0.2s; min-width: 128px;
  }
  .footer-app-btn:hover { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.3); }
  .footer-app-btn svg { width: 20px; height: 20px; fill: #fff; flex-shrink: 0; }
  .footer-app-btn-text { display: flex; flex-direction: column; }
  .footer-app-label { font-size: 10px; color: rgba(255,255,255,0.5); line-height: 1.2; }
  .footer-app-platform { font-size: 13px; font-weight: 600; color: #fff; line-height: 1.3; }
  .footer-socials { display: flex; gap: 16px; }
  .footer-socials a { font-size: 13px; color: rgba(255,255,255,0.4); text-decoration: none; transition: color 0.2s; }
  .footer-socials a:hover { color: rgba(255,255,255,0.8); }
  .footer-wechat-btn { position: relative; }
  .footer-wechat-qrcode { display: none; position: absolute; bottom: 100%; left: 50%; transform: translateX(-50%); width: 120px; height: auto; margin-bottom: 8px; border-radius: 8px; box-shadow: 0 4px 20px rgba(0,0,0,0.3); z-index: 1000; }
  .footer-wechat-btn:hover .footer-wechat-qrcode { display: block; }
  .footer-col-title { font-size: 14px; font-weight: 700; color: #fff; margin-bottom: 16px; font-family: var(--font-sans); }
  .footer-links { display: flex; flex-direction: column; gap: 12px; list-style: none; }
  .footer-links a { font-size: 13.5px; color: rgba(255,255,255,0.45); text-decoration: none; transition: color 0.2s; }
  .footer-links a:hover { color: rgba(255,255,255,0.85); }
  .footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.08);
    padding: 24px 0 20px;
    display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; flex-wrap: wrap;
  }
  .footer-legal-company { font-size: 0.8125rem; color: rgba(255,255,255,0.7); margin-bottom: var(--space-2); font-weight: 500; }
  .footer-legal-records { font-size: 0.75rem; color: rgba(255,255,255,0.45); line-height: 1.8; max-width: 680px; display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: center; margin-bottom: var(--space-2); }
  .footer-legal-records a { color: rgba(255,255,255,0.45); text-decoration: none; }
  .footer-legal-records a:hover { color: rgba(255,255,255,0.7); }
  .footer-legal-records .dot { margin: 0 4px; }
  .footer-legal-links { display: flex; align-items: center; gap: 8px; flex-shrink: 0; padding-top: 2px; color: rgba(255,255,255,0.45); font-size: 0.75rem; }
  .footer-legal-links a { font-size: 13px; color: rgba(255,255,255,0.45); text-decoration: none; transition: color 0.2s; }
  .footer-legal-links a:hover { color: rgba(255,255,255,0.7); }
  .footer-legal-links .dot { color: rgba(255,255,255,0.2); }
  .footer-tagline { font-size: 12px; color: rgba(255,255,255,0.45); font-style: italic; letter-spacing: 0.02em; padding: 14px 0 22px; }

    .dot{color:var(--color-divider);}
    .honors-strip{background:var(--color-bg-dark);padding:var(--space-8) 0;border-top:1px solid rgba(255,255,255,0.06);}
    .honors-strip-inner{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-6) var(--space-10);}
    .honor-item{display:flex;align-items:center;gap:var(--space-3);}
    .honor-item-icon{font-size:1.4rem;}
    .honor-item-text{font-size:13px;font-weight:600;color:rgba(255,255,255,0.75);}

    /* RESPONSIVE */
    @media(max-width:1068px){
      .worry-item{grid-template-columns:1fr;gap:32px;}
      .promise-grid{grid-template-columns:1fr;}
      .promise-item{padding:44px 36px;}
      .footer-grid{grid-template-columns:1fr 1fr;}
    }
    @media(max-width:734px){
      section{padding-block:80px;}
      .subpage-hero{padding-top:32px;padding-bottom:60px;min-height:auto;}
      .subpage-hero .crumb-row{top:32px;}
      .worry-item{padding:48px 0;}
      .wi-num{font-size:38px;}
      .worry-tab-btn{height:40px;padding:0 20px;font-size:14px;}
      .promise-item{padding:36px 28px;}
      .footer-grid{grid-template-columns:1fr;}
      .cta-group{flex-direction:column;align-items:stretch;}
      .btn{justify-content:center;}
    }
      /* ── 全局防孤字规则 ─────────────────────────────────────────── */
    h1,h2,h3,h4{text-wrap:balance;}
    p,.hero-sub,.section-sub,.class-tagline,.hero-eyebrow,
    .match-card-pain,.wi-quote,.wi-compare,.promise-desc,
    .onev1-text,.class-point-desc,.card-desc,.stat-label,
    .timeline-desc,.teacher-bio,.story-quote{text-wrap:pretty;}
    /* ───────────────────────────────────────────────────────────── */
  
    .btn-consult{background:rgba(255,255,255,0.12);color:var(--color-text-primary);border:1.5px solid rgba(0,0,0,0.18);}
    .btn-consult:hover{background:var(--color-text-primary);color:#fff;border-color:transparent;font-weight:600;}
  .qa-geo{padding:76px 0;background:var(--color-bg-alt);}
  .qa-geo .container{max-width:820px;}
  .qa-geo-eyebrow{font-size:13px;font-weight:700;color:var(--color-brand-pressed);letter-spacing:.06em;text-align:center;margin-bottom:10px;font-family:var(--font-sans);}
  .qa-geo-title{font-size:clamp(24px,3vw,34px);font-weight:800;color:var(--color-text-primary);text-align:center;margin-bottom:36px;font-family:var(--font-sans);line-height:1.3;}
  .qa-item{background:var(--color-bg);border:1px solid var(--color-divider);border-radius:14px;margin-bottom:12px;overflow:hidden;}
  .qa-item summary{cursor:pointer;padding:18px 22px;font-size:16px;font-weight:700;color:var(--color-text-primary);font-family:var(--font-sans);list-style:none;display:flex;align-items:center;gap:10px;}
  .qa-item summary::-webkit-details-marker{display:none;}
  .qa-item summary::before{content:"Q";flex-shrink:0;width:24px;height:24px;border-radius:7px;background:rgba(5,211,142,.12);color:var(--color-brand-pressed);font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;}
  .qa-item[open] summary{border-bottom:1px solid var(--color-divider);}
  .qa-a{padding:16px 22px 20px 56px;font-size:15px;line-height:1.85;color:var(--color-text-secondary);}
  .qa-a b{color:var(--color-brand-pressed);font-weight:700;}
@keyframes qr-pop{from{opacity:0;transform:scale(0.88);}to{opacity:1;transform:scale(1);}}
