/* Dimensions and hierarchy match the reference introduction: 94px top nav,
   two-column 550px hero, three visible subjects and a quiet footer block. */
#intro-home{--portal-blue:#1550ff;--portal-ink:#10131d;--portal-muted:#68768d;--portal-line:#e5eaf3;color:var(--portal-ink);background:#fff;font:14px 'Noto Sans SC','Microsoft YaHei',Arial,sans-serif;min-height:100vh}
body:not(.light) #intro-home{--portal-blue:#82a6ff;--portal-ink:#edf2ff;--portal-muted:#97a6c1;--portal-line:#29344a;background:#111826}
body.portal-visible>.app-shell{display:none}#intro-home[hidden]{display:none}#intro-home button{font:inherit;cursor:pointer}.portal-nav{height:94px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 max(40px,calc(50vw - 720px));background:#ffffffef;backdrop-filter:blur(15px)}body:not(.light) .portal-nav{background:#111826ee}.portal-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--portal-ink)}.portal-brand img{width:55px;height:55px;object-fit:cover;border-radius:14px}.portal-brand strong{font-size:32px;letter-spacing:-.04em}.portal-brand small{font-size:11px;color:var(--portal-muted);letter-spacing:.06em;margin-left:6px}.portal-nav nav{display:flex;align-items:center;gap:48px}.portal-nav button{position:relative;border:0;background:none;color:var(--portal-ink);font-weight:600!important;padding:12px 0}.portal-nav button.selected:after{content:'';position:absolute;bottom:0;left:0;width:24px;height:2px;background:var(--portal-blue)}.portal-hero{width:min(calc(100% - 160px),1360px);min-height:550px;margin:auto;display:grid;grid-template-columns:.96fr 1.04fr;align-items:center}.portal-hero-copy{position:relative;z-index:2;padding:10px 0 24px}.portal-hero h1{font:900 clamp(76px,10vw,146px)/1.15 Arial,sans-serif;letter-spacing:-.06em;color:var(--portal-ink);text-shadow:none;margin:0}.portal-hero-copy>p{font-size:clamp(16px,1.65vw,25px);letter-spacing:.1em;margin:26px 0 0;white-space:nowrap}.portal-actions{display:flex;align-items:center;gap:38px;margin-top:52px}.portal-primary{display:inline-flex;justify-content:space-between;gap:42px;align-items:center;min-width:240px;height:66px;padding:0 29px;border:1px solid #1550ff;background:#1550ff;color:white;border-radius:7px;font-size:20px!important;font-weight:600!important}.portal-text{display:inline-flex;align-items:center;gap:22px;padding:10px 0;border:0;border-bottom:1px solid var(--portal-blue);color:var(--portal-blue);background:none;font-size:17px!important;font-weight:600!important}.portal-geometry{height:550px;margin-left:-80px;margin-right:-34px;position:relative}.portal-geometry canvas{width:100%;height:100%}.portal-geometry #motion-toggle{position:absolute;bottom:4%;right:7%;border:1px solid var(--portal-line);color:var(--portal-muted);background:transparent;border-radius:50%;width:32px;height:32px}.portal-resources{width:min(calc(100% - 64px),1360px);margin:-5px auto 0;padding-bottom:74px;scroll-margin-top:94px}.subject-carousel{height:334px;position:relative;overflow:hidden}.carousel-subject{position:absolute;top:16px;left:50%;width:40%;max-width:440px;text-align:center;padding:0 8px;transform:translateX(calc(-50% + var(--offset)*97%)) translateY(26px) scale(.84);color:var(--portal-muted)}.carousel-subject[hidden]{display:none}.carousel-subject.current{transform:translateX(-50%);color:var(--portal-blue)}.carousel-subject>button:first-child{border:0;background:none;color:inherit;width:100%}.subject-surface{height:132px;display:grid;place-items:center;font:italic 90px 'Cambria Math',serif;position:relative}.subject-surface:after{content:'';position:absolute;width:140px;height:42px;border:1px solid currentColor;border-radius:50%;transform:rotate(-15deg);opacity:.25}.carousel-subject h2{font:750 34px/1.35 'Microsoft YaHei',sans-serif;letter-spacing:0;margin:0;color:inherit}.carousel-subject p{font-size:14px;line-height:1.7;color:var(--portal-muted);margin:10px 0}.carousel-subject .portal-text{border:0;font-size:16px!important}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:24px}.carousel-controls>button{border:1px solid var(--portal-line);background:none;color:var(--portal-blue);width:38px;height:38px;border-radius:50%}.carousel-tabs{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.carousel-tabs button{border:0;border-bottom:2px solid transparent;background:none;padding:10px 0;color:var(--portal-muted);font-size:12px!important}.carousel-tabs [aria-selected=true]{border-color:var(--portal-blue);color:var(--portal-blue);font-weight:650}.portal-about{background:#fafbfe;border-top:1px solid var(--portal-line);padding:72px 0 26px;scroll-margin-top:94px}body:not(.light) .portal-about{background:#151e2e}.portal-about>div{width:min(calc(100% - 112px),1280px);margin:auto}.portal-about header{display:flex;align-items:baseline;gap:32px}.portal-about h2{font-size:30px;font-weight:750;letter-spacing:0;margin:0}.portal-about header p{font-size:14px;color:var(--portal-muted);line-height:1.7;margin:0}.portal-about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.portal-about h3{font-size:17px;margin:0 0 10px}.portal-about article p{font-size:13px;line-height:1.8;color:var(--portal-muted)}.portal-about footer{font-size:11px;color:var(--portal-muted);margin-top:60px}
/* Reference-style study reading: restrained neutral background and inline mathematics. */
.subject-detail{justify-items:center}.subject-detail>.portal-text{justify-self:center;width:max-content;margin-left:auto;margin-right:auto}.subject-detail>p{width:100%}#admin-bank{margin-top:24px}#admin-bank .upload{display:inline-block}#admin-bank input[type=file]{display:none}#admin-bank p{font-size:13px;line-height:1.8;color:var(--muted)}#account-dialog label small{font-size:11px;color:var(--muted);line-height:1.6}.data-grid:has(article[hidden]){grid-template-columns:repeat(2,1fr)}[hidden]{display:none!important}@media(max-width:650px){.data-grid:has(article[hidden]){grid-template-columns:1fr}}
/* Persistent carousel nodes enable natural movement rather than abrupt replacement. */
.carousel-subject{transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .38s ease,color .3s;opacity:.72;will-change:transform,opacity}.carousel-subject.current{opacity:1}.carousel-subject.offstage{opacity:0;pointer-events:none}.subject-detail{display:grid;transition:opacity .3s,transform .35s;opacity:0;transform:translateY(8px);pointer-events:none}.carousel-subject.current .subject-detail{opacity:1;transform:translateY(0);pointer-events:auto}.subject-hint{position:absolute;left:0;right:0;top:187px;transition:opacity .3s}.carousel-subject.current .subject-hint{opacity:0;pointer-events:none}.carousel-tabs button{transition:color .25s,border-color .25s}#account-dialog{max-width:440px}#account-dialog label{margin:16px 0}#account-dialog h2{font-family:'Microsoft YaHei',sans-serif;font-size:22px}.auth-description{color:var(--muted);font-size:13px;line-height:1.8}#auth-message{font-size:12px;color:#d9935e;min-height:20px;line-height:1.6}#account-button{white-space:nowrap}.sync-notice{position:fixed;z-index:100;bottom:20px;right:20px;max-width:min(460px,90vw);padding:12px 18px;background:#1b2b46;color:#edf2ff;border:1px solid #52749b;border-radius:9px;font:13px/1.7 'Microsoft YaHei',sans-serif;box-shadow:0 8px 25px #0003}.sync-notice:empty{display:none}
@media(prefers-reduced-motion:reduce){.carousel-subject,.subject-detail,.subject-hint{transition:none}}@media(max-width:700px){.portal-nav{padding:0 12px}.portal-nav nav{gap:10px}.portal-brand strong{font-size:22px}.portal-brand img{width:28px;height:28px}#account-button{font-size:10px!important}.subject-hint{top:179px}}
.question-stage{max-width:980px;padding:34px 50px 46px}.question-stage h2{font:400 20px/2 'Microsoft YaHei',sans-serif;margin:30px 0 36px;letter-spacing:0}.question-stage .katex{font-size:1.14em}.question-stage .katex-display{overflow-x:auto;overflow-y:hidden;padding:6px 0}.q-meta{align-items:center}.reading-number{font-family:'Times New Roman',serif;margin-right:6px}.reading-work{border:1px solid var(--line);border-radius:8px;padding:18px;background:#ffffff03}.reading-work header{display:flex;justify-content:space-between;gap:10px;color:var(--ink);margin-bottom:14px}.reading-work small{color:var(--muted);font-size:11px}.reading-work textarea{font-size:14px;line-height:1.8;min-height:145px}.reading-work>div{display:flex;gap:10px;margin-top:12px}.reading-solution{border-top:1px solid var(--line);margin-top:20px;padding:16px 0;color:var(--muted)}.reading-solution summary{display:flex;justify-content:space-between;cursor:pointer;color:var(--ink);font-size:13px}.reading-solution p{margin:20px 0 5px;line-height:1.8}.reading-analysis{font-size:16px;line-height:2;padding-top:15px}.answer-options .reading-work button{background:transparent!important}.answer-options .reading-work .primary{background:#1550ff!important;color:#fff!important}.light #player{background:#fcfcfb!important}.light .question-stage h2{color:#1d2836}.light .reading-work{background:#f6f8fb}
@media(max-width:1100px){.portal-nav{height:80px;padding:0 30px}.portal-brand small{display:none}.portal-nav nav{gap:30px}.portal-hero{width:calc(100% - 72px);min-height:480px}.portal-hero h1{font-size:clamp(68px,9vw,100px)}.portal-hero-copy>p{font-size:17px;letter-spacing:.03em}.portal-geometry{height:480px;margin-left:-30px;margin-right:-20px}.portal-primary{height:58px;min-width:0;padding:0 23px;font-size:17px!important;gap:25px}.portal-actions{gap:24px;margin-top:36px}.carousel-subject h2{font-size:29px}.carousel-tabs{gap:16px}.portal-about header{display:block}.portal-about header p{margin-top:14px}}
@media(max-width:700px){.portal-nav{height:70px;padding:0 22px}.portal-brand img{width:34px;height:34px;border-radius:9px}.portal-brand strong{font-size:26px}.portal-nav nav{gap:16px}.portal-nav button{font-size:12px!important}.portal-hero{width:calc(100% - 40px);display:flex;flex-direction:column}.portal-hero-copy{text-align:center;padding:40px 0 0;width:100%}.portal-hero h1{font-size:clamp(64px,16vw,100px)}.portal-hero-copy>p{font-size:14px;white-space:normal;margin-top:18px}.portal-actions{justify-content:center;margin-top:28px}.portal-primary{height:50px;font-size:15px!important;padding:0 18px}.portal-text{font-size:14px!important}.portal-geometry{height:350px;width:calc(100% + 28px);margin:-5px -14px 0}.portal-resources{width:100%;padding-bottom:42px}.subject-carousel{height:316px}.carousel-subject{width:64%;top:0}.carousel-subject:not(.current){opacity:.4;transform:translateX(calc(-50% + var(--offset)*101%)) translateY(17px) scale(.7)}.carousel-subject h2{font-size:28px}.carousel-controls{gap:14px;padding:0 22px}.carousel-tabs{gap:5px 14px}.carousel-tabs button{font-size:11px!important}.portal-about{padding:42px 0 26px}.portal-about>div{width:calc(100% - 44px)}.portal-about-grid{grid-template-columns:1fr;gap:22px}.portal-about h2{font-size:26px}.question-stage{padding:28px 20px 36px}.question-stage h2{font-size:18px}.reading-work header{display:grid}}
