@import url("elder-independent.css?v=20260825g");

:root{
  --paper:#fbfaf4;
  --paper-2:#f3f0e6;
  --card:#fffefa;
  --ink:#173d32;
  --ink-2:#31574b;
  --muted:#6f7f78;
  --forest:#234f40;
  --sage:#7c9a84;
  --sage-soft:#e8efe8;
  --clay:#bd6955;
  --clay-soft:#f7e6df;
  --gold:#b18a55;
  --line:rgba(23,61,50,.14);
  --shadow:0 20px 58px rgba(35,79,64,.09);
  --serif:"Songti SC","STSong","Noto Serif SC",Georgia,serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 8% 12%,rgba(124,154,132,.1),transparent 25%),
    radial-gradient(circle at 92% 60%,rgba(189,105,85,.06),transparent 24%),
    var(--paper);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
  line-height:1.7;
}
a{color:inherit;text-decoration:none}
button,a{font:inherit}
button{color:inherit}
button:focus-visible,a:focus-visible{outline:3px solid rgba(189,105,85,.36);outline-offset:4px}
[hidden]{display:none!important}

.el-top{
  position:sticky;
  top:0;
  z-index:60;
  height:72px;
  border-bottom:1px solid var(--line);
  background:rgba(251,250,244,.92);
  backdrop-filter:blur(18px);
}
.el-top-in{
  max-width:1600px;
  height:100%;
  margin:0 auto;
  padding:0 30px;
  display:flex;
  align-items:center;
  gap:18px;
}
.el-brand{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;font-family:var(--sans);font-size:18px;font-weight:900;line-height:1;letter-spacing:.01em;-webkit-text-stroke:.2px currentColor}
.el-brand:before{content:"";width:34px;height:34px;flex:0 0 34px;border:2px solid #fff;border-radius:50%;background:#fff url("https://img.alice.miyang.cn/xueai/logo.png?imageMogr2/thumbnail/128x%3E/format/webp/quality/82") center/cover no-repeat;box-shadow:0 2px 9px rgba(35,79,64,.16)}
.el-edition{
  padding:6px 11px;
  border-radius:999px;
  color:#fff;
  background:var(--forest);
  font-size:12px;
  font-weight:780;
}
.el-crumb{color:var(--muted);font-size:14px}
.el-spacer{flex:1}
.el-progress{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}
.el-progress i{
  position:relative;
  width:92px;
  height:5px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(23,61,50,.11);
}
.el-progress i:after{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:var(--progress,20%);
  border-radius:inherit;
  background:var(--clay);
}
#authSlot{min-width:50px}
#authSlot .xa-login-btn{
  min-height:40px!important;
  padding:0 16px!important;
  border:1px solid var(--forest)!important;
  border-radius:10px!important;
  color:#fff!important;
  background:var(--forest)!important;
  box-shadow:none!important;
  font-size:14px!important;
}

.el-page{
  max-width:1600px;
  margin:0 auto;
  padding:32px 30px 84px;
  display:grid;
  grid-template-columns:230px minmax(0,1fr);
  gap:46px;
}
.el-rail{position:sticky;top:104px;align-self:start}
.el-part{
  display:flex;
  align-items:baseline;
  gap:11px;
  margin-bottom:21px;
  padding-bottom:19px;
  border-bottom:1px solid var(--line);
}
.el-part strong{color:var(--clay);font:400 43px/1 Georgia,serif}
.el-part span{font-size:14px;font-weight:760;line-height:1.5}
.el-nav{display:grid;gap:4px}
.el-nav a{
  position:relative;
  min-height:52px;
  padding:8px 10px 8px 40px;
  display:flex;
  align-items:center;
  border-radius:13px;
  color:var(--muted);
  font-size:14px;
  line-height:1.45;
}
.el-nav a:before{
  content:attr(data-no);
  position:absolute;
  left:12px;
  color:var(--sage);
  font:400 15px/1 Georgia,serif;
}
.el-nav a.active{color:var(--ink);background:var(--sage-soft);font-weight:760}
.el-nav a.active:after{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:3px;background:var(--forest)}
.el-rail-note{
  margin-top:22px;
  padding:15px;
  border:1px solid var(--line);
  border-radius:15px;
  color:var(--muted);
  background:rgba(255,254,250,.72);
  font-size:12px;
  line-height:1.7;
}

.el-main{min-width:0;max-width:none}
.el-hero{
  position:relative;
  min-height:330px;
  padding:48px 350px 45px 48px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:30px;
  background:linear-gradient(110deg,rgba(255,254,250,.98),rgba(255,254,250,.91) 58%,rgba(232,239,232,.82));
  box-shadow:var(--shadow);
}
.el-kicker{display:flex;align-items:center;gap:9px;margin-bottom:17px;color:var(--clay);font-size:12px;font-weight:820;letter-spacing:.11em}
.el-kicker:before{content:"";width:30px;height:2px;background:currentColor}
.el-hero h1{margin:0;max-width:none;white-space:nowrap;overflow-wrap:break-word;font:700 clamp(28px,3.4vw,46px)/1.25 var(--serif);letter-spacing:-.04em}
.el-hero p{max-width:none;margin:18px 0 0;color:var(--ink-2);font-size:18px;line-height:1.7;overflow-wrap:break-word}
.el-hero:not(:has(.el-hero-art)){padding:48px}
.el-hero:not(:has(.el-hero-art)) p{white-space:normal}
.el-hero-art{
  position:absolute;
  right:32px;
  bottom:22px;
  width:280px;
  height:280px;
  display:grid;
  place-items:center;
  border-radius:28px;
  background:rgba(251,250,244,.74);
}
.el-hero-art img{width:90%;height:90%;object-fit:contain}
.el-teacher-tag{
  position:absolute;
  z-index:2;
  right:31px;
  top:29px;
  padding:7px 11px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,254,250,.92);
  font-size:12px;
  font-weight:780;
}

.el-audio{
  margin-top:22px;
  padding:15px 19px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:13px;
  border:1px solid var(--line);
  border-radius:17px;
  background:rgba(255,254,250,.78);
}
.el-audio button{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  color:#fff;
  background:var(--forest);
  cursor:pointer;
}
.el-audio button svg{width:18px;height:18px}
.el-audio b{display:block;font-size:18px}
.el-audio span{display:block;margin-top:2px;color:var(--muted);font-size:14px}
.el-wave{height:32px;display:flex;align-items:center;gap:3px}
.el-wave i{width:3px;height:var(--h);border-radius:9px;background:rgba(35,79,64,.18);transform:scaleY(.45)}
.el-audio.playing .el-wave i{background:var(--sage);animation:elWave .9s ease-in-out calc(var(--d)*1s) infinite alternate}
@keyframes elWave{to{transform:scaleY(1)}}

.el-section-head{
  margin:64px 0 23px;
  display:grid;
  grid-template-columns:110px 1fr;
  gap:22px;
  align-items:start;
}
.el-section-no{color:var(--sage);font:400 49px/1 Georgia,serif}
.el-section-head h2{margin:0;font:700 30px/1.4 var(--serif)}
.el-section-head p{margin:9px 0 0;color:var(--muted);font-size:17px;line-height:1.8}

.el-lab{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:27px;
  background:var(--card);
  box-shadow:var(--shadow);
}
.el-lab-head{
  min-height:66px;
  padding:15px 24px;
  display:flex;
  align-items:center;
  gap:16px;
  border-bottom:1px solid var(--line);
  background:rgba(232,239,232,.5);
}
.el-lab-head strong{font-size:17px}
.el-step-status{margin-left:auto;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px;font-weight:740}
.el-step-status i{width:7px;height:7px;border-radius:50%;background:var(--clay);box-shadow:0 0 0 4px rgba(189,105,85,.11)}
.el-lab-body{padding:28px}
.el-cols{display:grid;grid-template-columns:1fr;gap:22px}
.el-cols.waiting{max-width:none;margin:0;grid-template-columns:1fr}
.el-panel{padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--paper)}
.el-panel-label{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em}
.el-panel h3{margin:10px 0 8px;font:700 22px/1.45 var(--serif)}
.el-panel p{margin:0;color:var(--ink-2);font-size:18px;line-height:1.8}
.el-choices{margin-top:18px;display:flex;flex-wrap:wrap;gap:9px}
.el-choice{
  min-height:56px;
  padding:0 17px;
  border:1px solid rgba(35,79,64,.3);
  border-radius:12px;
  background:#fff;
  cursor:pointer;
  font-size:17px;
  font-weight:730;
  transition:.18s ease;
}
.el-choice:hover{transform:translateY(-2px);background:var(--sage-soft)}
.el-choice.selected{color:#fff;border-color:var(--forest);background:var(--forest)}
.el-teacher,[data-teacher],#teacher,#summary,#lessonSummary,[data-summary]{
  scroll-margin-top:20px;
}
.el-teacher{
  padding:22px;
  border-radius:20px;
  background:linear-gradient(150deg,var(--sage-soft),#f8f3e9);
  animation:elRevealPanel .45s ease both;
}
.el-teacher-head{display:flex;align-items:center;gap:11px}
.el-teacher-head img{width:58px;height:58px;object-fit:cover;object-position:center 24%;border:2px solid #fff;border-radius:50%}
.el-teacher-head b{display:block;font-size:18px}
.el-teacher-head span{display:block;color:var(--muted);font-size:14px}
.el-teacher-body{min-height:165px;margin-top:17px;padding:18px;border:1px solid rgba(23,61,50,.1);border-radius:16px;background:rgba(255,255,255,.74)}
.el-teacher-body small{color:var(--clay);font-size:13px;font-weight:820;letter-spacing:.09em}
.el-teacher-body h3{margin:8px 0 7px;font:700 24px/1.4 var(--serif)}
.el-teacher-body p{margin:0;color:var(--ink-2);font-size:18px;line-height:1.78}
.el-teacher-body.change{animation:elStageAttention .72s ease-in-out 3}
.el-step-next,.analysis-next,.med-start,.teacher-next,.tool-next,.next-btn,.lesson-next,button.next{
  width:100%;
  min-height:58px;
  margin-top:15px;
  border:0;
  border-radius:13px;
  color:#fff;
  background:var(--forest);
  cursor:pointer;
  font-size:18px;
  font-weight:800;
}
.el-step-next:disabled,.analysis-next:disabled,.med-start:disabled,.teacher-next:disabled,.tool-next:disabled,.next-btn:disabled,.lesson-next:disabled,button.next:disabled{opacity:.6;cursor:default}
@keyframes elStageAttention{
  0%,100%{border-color:rgba(23,61,50,.1);background:rgba(255,255,255,.74);box-shadow:0 0 0 0 rgba(189,105,85,0)}
  50%{border-color:rgba(189,105,85,.68);background:#fff7f2;box-shadow:0 0 0 7px rgba(189,105,85,.13),0 0 28px rgba(189,105,85,.2)}
}
@keyframes elStage{from{opacity:.35}}
@keyframes elRevealPanel{from{opacity:0}}
.el-teacher-body.el-analysis-expanded{min-height:0;padding:0;border:0;background:transparent}
.el-analysis-review{display:grid;gap:13px}
.el-analysis-review-title{margin:0 0 2px;font:700 24px/1.4 var(--serif)}
.el-analysis-review-item{padding:17px 18px;border:1px solid rgba(23,61,50,.12);border-radius:15px;background:rgba(255,255,255,.82)}
.el-analysis-review-item small{display:block;color:var(--clay);font-size:14px;font-weight:820;letter-spacing:.07em}
.el-analysis-review-item h4{margin:7px 0 6px;font:700 21px/1.45 var(--serif)}
.el-analysis-review-item p{margin:0;color:var(--ink-2);font-size:18px;line-height:1.78}
.el-result{display:none;margin-top:13px;padding:14px 16px;border-radius:14px;color:#713326;background:var(--clay-soft);font-size:17px;font-weight:700;line-height:1.7}
.el-result.show{display:block;animation:elStage .35s ease both}

.el-method{
  margin-top:25px;
  padding:27px 29px;
  display:grid;
  grid-template-columns:60px 1fr;
  gap:21px;
  align-items:center;
  border-radius:22px;
  color:#fff;
  background:var(--forest);
}
.el-method-mark{width:60px;height:60px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:50%;font:400 22px/1 Georgia,serif}
.el-method h3{margin:0 0 6px;font-size:20px}
.el-method p{margin:0;color:rgba(255,255,255,.75);font-size:18px;line-height:1.75}

.el-cases{margin-top:57px}
.el-cases h2{margin:0;font:700 29px/1.4 var(--serif)}
.el-case-grid{margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.el-case{min-height:164px;padding:20px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:19px;background:rgba(255,254,250,.75)}
.el-case span{color:var(--clay);font:400 20px/1 Georgia,serif}
.el-case h3{margin:15px 0 7px;font-size:18px}
.el-case p{margin:0;color:var(--muted);font-size:16px;line-height:1.7}

.el-pager{
  margin-top:62px;
  padding-top:25px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  border-top:1px solid var(--line);
}
.el-pager a{padding:18px 20px;border:1px solid var(--line);border-radius:17px;background:rgba(255,254,250,.72)}
.el-pager a:last-child{text-align:right}
.el-pager small{display:block;color:var(--muted);font-size:13px}
.el-pager b{display:block;margin-top:5px;font-size:17px}

.reveal{opacity:0;transition:opacity .55s ease}
.reveal.show{opacity:1}

@media(max-width:1050px){
  .el-page{grid-template-columns:190px minmax(0,1fr);gap:28px}
  .el-hero{padding-right:290px}
  .el-hero-art{right:14px;width:255px;height:255px}
}
@media(max-width:820px){
  .el-top{height:118px}
  .el-top-in{
    padding:8px 17px;
    display:grid;
    grid-template-columns:auto auto 1fr auto;
    grid-template-areas:"brand edition spacer auth" "font font font font";
    gap:7px 10px;
  }
  .el-brand{grid-area:brand}
  .el-edition{grid-area:edition}
  .el-spacer{grid-area:spacer}
  #authSlot{grid-area:auth}
  .elder-font-controls{grid-area:font}
  .el-crumb,.el-progress{display:none}
  .el-page{display:block;padding:22px 17px 65px}
  .el-rail{display:none}
  .el-hero{min-height:550px;padding:34px 24px 280px}
  /* 桌面标题保持一行；窄屏必须让出折行，且压过各课内联 nowrap */
  .el-hero h1,
  .el-hero p,
  .el-hero:not(:has(.el-hero-art)) p,
  .lesson-hero h1,
  .lesson-hero p,
  .closing-hero h1,
  .closing-hero p{
    white-space:normal!important;
    overflow-wrap:break-word;
    word-break:break-word;
  }
  .el-hero-art{right:50%;bottom:10px;width:270px;height:270px;transform:translateX(50%)}
  .el-teacher-tag{right:18px;top:19px}
  .el-audio{grid-template-columns:auto 1fr}.el-wave{grid-column:1/-1}
  .el-section-head{grid-template-columns:70px 1fr;margin-top:48px;gap:12px}
  .el-section-no{font-size:38px}
  .el-cols{grid-template-columns:1fr}
  .el-case-grid{grid-template-columns:1fr}
}
@media(max-width:540px){
  .el-brand{font-size:16px}.el-brand:before{width:31px;height:31px;flex-basis:31px}.el-edition{font-size:11px}
  .el-hero h1{font-size:42px}.el-hero p{font-size:18px}
  .el-lab-head{align-items:flex-start;flex-direction:column}
  .el-step-status{margin:0}
  .el-lab-body{padding:17px}
  .el-panel,.el-teacher{padding:17px}
  .el-choices{display:grid;grid-template-columns:1fr}
  .el-choice{width:100%}
  .el-method{grid-template-columns:1fr;padding:23px}
  .el-pager{grid-template-columns:1fr}.el-pager a:last-child{text-align:left}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .reveal{opacity:1;transform:none}
}
