/* ==========================================================================
   安语通 · 明亮极简主题
   浅色底 / 森林绿强调 / 大字号留白 / 关键功能优先
   ========================================================================== */

:root{
  color-scheme:light;
  --ink-950:#eef3ef;
  --ink-900:#ffffff;
  --ink-850:#ffffff;
  --ink-800:#f3f7f4;
  --ink-750:#e9f0eb;
  --ink-700:#dbe7df;
  --line:rgba(8,58,36,.16);
  --line-strong:rgba(8,58,36,.28);
  --fg:#07130d;
  --fg-soft:#1c3226;
  --muted:#465b4e;
  --muted-2:#5f7468;
  --amber:#07794a;
  --amber-2:#065c38;
  --amber-soft:#ddf3e7;
  --amber-line:#9ed7ba;
  --teal:#0b6b60;
  --teal-soft:#e2f4ef;
  --blue:#1a44c4;
  --blue-soft:#e9f0ff;
  --red:#b42318;
  --red-soft:#fdf1f0;
  --warn:#9a4405;
  --warn-soft:#fff6e5;
  --ok:#05603a;
  --header-h:68px;
  --shadow:0 30px 70px -46px rgba(8,58,36,.38);
  --shadow-soft:0 2px 4px rgba(8,58,36,.04),0 16px 44px -34px rgba(8,58,36,.3);
}

html{color-scheme:light}
body{
  background:
    radial-gradient(900px 460px at 84% -8%,rgba(16,185,129,.12),transparent 62%),
    radial-gradient(720px 400px at 0% 2%,rgba(37,99,235,.05),transparent 60%),
    #eef3ef;
  background-attachment:fixed;
  color:var(--fg);
}
body::before{display:none}
::selection{background:#c9f0dd;color:#08251a}

/* ---------- 顶栏 ---------- */
.site-header{
  background:rgba(255,255,255,.94);
  border-bottom:1px solid #d6e2da;
  backdrop-filter:blur(20px) saturate(1.1);
}
.header-inner{
  display:flex;align-items:center;gap:20px;height:68px;
  grid-template-columns:none;grid-template-rows:none;
}
.brand{grid-column:auto;grid-row:auto;color:#07130d}
.brand-mark{color:#0a8f5b}
.brand-text strong{color:#07130d}
.brand-text small{color:#5f7468}
.main-nav{
  grid-column:auto;grid-row:auto;margin-left:auto;width:auto;
  display:flex;align-items:center;gap:2px;
  padding:0;border:0;background:transparent;
}
.main-nav a{
  padding:8px 11px;border-color:transparent;background:transparent;
  color:#3a4f43;font-size:.85rem;font-weight:600;border-radius:999px;
}
.main-nav a .ic{color:#4f6458;opacity:1}
.main-nav a:hover{background:#eaf2ed;color:#13251b;border-color:transparent}
.main-nav a.is-active{
  background:#d8f2e4;color:#044f2f;border-color:transparent;
  box-shadow:none;
}
.main-nav a.is-active .ic{color:#07794a}
.main-nav a[data-nav="about"]{color:#66796d}
.main-nav a[data-nav="about"].is-active{color:#044f2f;background:#d8f2e4}
.header-tools{grid-column:auto;grid-row:auto;justify-self:auto;margin-left:2px}
.tool-group{border-color:#d4e1d8;background:#fff}
.font-indicator{color:#5f7468}
.icon-btn{color:#4d6056}
.icon-btn:hover{background:#eaf2ed;color:#07130d}
.contrast-btn{border-color:#d4e1d8;background:#fff}
.demo-strip{
  background:#e1f2e9;border-bottom:1px solid #c8e2d4;color:#075c39;
}
.demo-strip .dot{background:#0a8f5b}

/* ---------- 按钮与表单 ---------- */
.btn-primary{
  background:#0b5d3b;color:#fff;
  box-shadow:0 14px 30px -18px rgba(11,93,59,.6);
}
.btn-primary:hover{background:#094c30}
.btn-ghost{background:#fff;border-color:#cbd8d0;color:#17251d}
.btn-ghost:hover{background:#eef5f0;border-color:#b3c8ba}
.btn-soft{background:#edf7f1;color:#075c39;border-color:#c9e2d4}
.btn-soft:hover{background:#e2f3ea;border-color:#c7e2d5}
.btn-danger{background:#fff;border-color:#f0cbc7;color:#b42318}
.input,.select,.textarea{
  background:#fff;border-color:#c9d8cf;color:#0c1a12;
  box-shadow:0 1px 2px rgba(13,54,38,.03);
}
.input:hover,.select:hover,.textarea:hover{border-color:#c9d8cf}
.input:focus,.select:focus,.textarea:focus{
  border-color:#0a8f5b;background:#fff;
  box-shadow:0 0 0 4px rgba(10,143,91,.1);
}
.input::placeholder,.textarea::placeholder{color:#71857a}
.select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%234a6154' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:12px 12px;
}
.trans-panel .trans-body textarea{
  color:#07130d!important;-webkit-text-fill-color:#07130d!important;
  font-weight:500;
}
.segmented{background:#e9f0eb;border-color:#d9e4dd}
.segmented button{color:#465b4f}
.segmented button.is-active{background:#fff;color:#075c39;box-shadow:0 1px 4px rgba(13,54,38,.08)}
.switch i{background:#d8e4dc}
.switch input:checked+i{background:#0a8f5b}

/* ---------- 卡片与标签 ---------- */
.card{
  background:#fff;border-color:#dae5de;
  box-shadow:var(--shadow-soft);
}
.badge{background:#f4f8f5;border-color:#d3e1d8;color:#24382c}
.tag{background:#f3f7f4;border-color:#d7e3dc;color:#3a4f43}
.chip{background:#fff;border-color:#c9d8cf;color:#2f4638}
.chip:hover{background:#e9f4ee;border-color:#b9e4d0;color:#075c39}
.eyebrow{color:#07754a}
.eyebrow::before{background:#07754a}

/* ---------- 首页 ---------- */
.hero{padding-top:76px;padding-bottom:56px}
.hero::after{display:none}
.hero h1{
  color:#07130d;
  font-size:clamp(2.2rem,4.8vw,3.7rem);
  line-height:1.1;letter-spacing:-.045em;
}
.hero h1 .accent{
  color:#077a4b;background:none;-webkit-background-clip:border-box;
  -webkit-text-fill-color:currentColor;
}
.hero .lede{color:#3f5447;font-size:1.04rem;line-height:1.75;max-width:590px}
.hero-actions .btn-lg{padding:14px 24px}
.hero-note{
  display:inline-flex;align-items:center;gap:7px;margin-top:18px;
  font-size:.78rem;color:#5f7468;
}
.hero-note .ic{width:15px;height:15px;color:#0a8f5b}
.hero-proof div{border-color:#dae5de}
.hero-proof strong{color:#07130d}
.hero-proof span{color:#5f7468}

.screen-mock{
  background:linear-gradient(160deg,#0d2a1e,#07160f);
  border:1px solid #1d3a2c;
  box-shadow:0 40px 80px -40px rgba(11,61,46,.5);
}
.screen-top{color:#d6e9de;border-bottom:1px solid rgba(255,255,255,.1)}
.screen-scene{color:rgba(255,255,255,.16)}
.screen-caption{background:rgba(3,12,8,.8);border:1px solid rgba(255,255,255,.12);color:#f4fbf6}
.screen-caption em{color:#8af5bb}
.float-note{
  background:#fff;border:1px solid #cbe2d7;color:#075c39;
  box-shadow:0 18px 40px -26px rgba(11,61,46,.4);
}
.card-mock{
  background:#fff;border:1px solid #e2ebe5;color:#07130d;
  box-shadow:0 30px 70px -34px rgba(11,61,46,.35);
}
.card-mock .cm-kicker{color:#07754a}
.card-mock .cm-command{color:#07130d}
.card-mock .cm-step{color:#465a4f;border-bottom:1px solid #eef3ef}
.card-mock .cm-step b{background:#e8f7ef;color:#086641}
.card-mock .cm-langs span{background:#e7f0ea;border:1px solid #e2ebe5;color:#3e5a4b}

/* ---------- 核心功能 ---------- */
.section-head.center{text-align:center;justify-content:center}
.section-head.center .lede{margin-inline:auto}
.display,.display-sm{color:#07130d}
.lede{color:#3f5447}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.feature-card{
  display:flex;flex-direction:column;gap:13px;min-height:224px;
  padding:26px;border-radius:22px;background:#fff;border:1px solid #dae5de;
  color:#07130d;text-decoration:none!important;
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
.feature-card:hover{transform:translateY(-4px);border-color:#cfe8da;box-shadow:0 24px 55px -34px rgba(11,61,46,.32)}
.feature-card h3{font-size:1.22rem;letter-spacing:-.02em;margin:2px 0 0}
.feature-card p{margin:0;color:#4a6154;font-size:.86rem;line-height:1.65;flex:1}
.fc-icon{
  width:46px;height:46px;border-radius:13px;display:grid;place-items:center;
  background:#ddf3e7;color:#07754a;
}
.fc-icon .ic{width:22px;height:22px}
.fc-go{display:inline-flex;align-items:center;gap:6px;color:#07754a;font-size:.82rem;font-weight:700;margin-top:4px}
.fc-go .ic{width:15px;height:15px;transition:transform .16s}
.feature-card:hover .fc-go .ic{transform:translateX(3px)}
.feature-primary{background:#0b3d2e;border-color:#0b3d2e;color:#fff;box-shadow:0 26px 60px -34px rgba(11,61,46,.6)}
.feature-primary:hover{border-color:#0b3d2e;box-shadow:0 30px 64px -32px rgba(11,61,46,.65)}
.feature-primary h3{color:#fff}
.feature-primary p{color:#b9d8c8}
.feature-primary .fc-icon{background:rgba(255,255,255,.12);color:#a7f3c6}
.feature-primary .fc-go{color:#a7f3c6}

/* ---------- 三步与数据 ---------- */
.section-soft{background:#e7f0ea;border-block:1px solid #d5e3da}
.steps-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.steps-3>div{padding-top:20px;border-top:2px solid #0a8f5b}
.steps-3 b{display:block;font-family:var(--mono);font-size:.76rem;letter-spacing:.12em;color:#07754a;margin-bottom:10px}
.steps-3 h3{font-size:1.08rem;margin:0 0 7px;color:#07130d}
.steps-3 p{margin:0;color:#4a6154;font-size:.86rem;line-height:1.7}
.proof-strip{
  border:1px solid #d9e4dd;border-radius:20px;background:#fff;
  padding:26px 20px;grid-template-columns:repeat(4,1fr);box-shadow:0 18px 50px -40px rgba(11,61,46,.2);
}
.proof-strip>div{border:0;border-right:1px solid #e2ebe5;padding:0 16px}
.proof-strip>div:last-child{border-right:0}
.proof-strip strong{color:#07130d}
.proof-strip span{color:#5f7468}
.cta-band{
  background:linear-gradient(135deg,#e1f4ea,#f5fbf8);
  border-color:#cbe4d7;box-shadow:none;
}
.cta-band .display{color:#07130d}

/* ---------- 页面头部 ---------- */
.page-head{
  background:linear-gradient(180deg,#e9f4ee,#eef3ef);
  border-bottom:1px solid #d6e2da;
}
.page-head h1{color:#07130d}
.page-head .lede{color:#3f5447}
.page-head-meta{color:#5f7468}

/* ---------- 工作室与通用面板 ---------- */
.config-panel,.filter-panel,.side-sticky{background:#fff;border-color:#dae5de}
.config-panel{box-shadow:0 20px 50px -40px rgba(11,61,46,.25)}
.tabs{background:#fff;border-color:#dae5de}
.tabs button{color:#465b4f}
.tabs button.is-active{color:#086641;border-color:#0a8f5b;background:#e6f3ec}
.stepper .st{color:#66796d}
.stepper .st b{background:#eef3ef;color:#465b4f}
.stepper .st.is-done b{background:#d9f2e5;color:#086641}
.stepper .st.is-current{color:#07130d}
.timeline-item,.log-item,.version-item{border-color:#dfe9e2}
.review-box,.context-card,.lang-block{background:#f4f8f5;border-color:#dae5de}
.metric .meter{background:#dfe9e2}
.metric .meter i{background:#0a8f5b}

.player-stage{background:#07160f;border-color:#243d2f;color:#f2fbf6}
.player-scene{background:radial-gradient(500px 240px at 50% 20%,rgba(53,208,138,.16),transparent 70%),linear-gradient(160deg,#0d2a1e,#07160f)}
.player-bar,.player-controls{color:#d6e9de}
.player-tag{color:#8ee8b7}
.player-time{color:rgba(255,255,255,.75)}
.player-caption{
  color:#f6fcf8;background:rgba(3,12,8,.88);
  border-color:rgba(255,255,255,.22);
}
.player-caption .pc-kicker{color:#8af5bb;border-right-color:rgba(255,255,255,.28)}
.player-progress{background:rgba(255,255,255,.18)}
.cue-row{border-color:#dfe9e2;background:#fff}
.cue-row.is-active{background:#e6f3ec;border-color:#c9e7d8}

.instr-card{
  background:#fff;border:1px solid #dce7e1;color:#07130d;
  box-shadow:0 36px 80px -44px rgba(11,61,46,.35);
}
.instr-top{border-bottom:1px solid #d9e5de;color:#0a8f5b}
.instr-command{border-bottom:1px solid #d9e5de}
.instr-command h3{color:#07130d}
.instr-command .sub{color:#4a6154}
.instr-steps{border-bottom:1px solid #d9e5de}
.instr-step{border-right:1px solid #d9e5de}
.instr-step b{background:#0a8f5b;color:#fff}
.instr-step span{color:#43584c}
.instr-langs{border-top:1px solid #d9e5de}
.instr-langs span{background:#e7f0ea;border:1px solid #e2ebe5;color:#3e5a4b}
.instr-foot{border-top:1px dashed #dce7e1;color:#5f7468}
.instr-full{background:#f5f9f6;color:#3f5348}

/* ---------- 信息聚合 ---------- */
.news-card{background:#fff;border-color:#dae5de}
.news-card:hover{border-color:#c9e7d8}
.news-meta .src.un{color:#1d4ed8}
.news-meta .src.usgs{color:#4d7c0f}
.news-meta .src.who{color:#0f766e}

/* ---------- 术语与语料 ---------- */
.term-table th{background:#f6f9f7;color:#465b4f;border-bottom:1px solid #e3ebe6}
.term-table td{border-bottom:1px solid #edf2ef}
.term-table tbody tr:hover,.term-table tbody tr:focus-visible{background:#e9f4ee}
.corpus-item{background:#fff;border-color:#dae5de}
.corpus-item:hover{background:#f7fbf9;border-color:#c9e7d8}
.filter-opt:hover{background:#e9f4ee}

/* ---------- 翻译 ---------- */
.trans-panel{background:#fff;border-color:#dae5de}
.trans-head{background:#f4f8f5;border-color:#dfe9e2}
.trans-body textarea{color:#07130d;-webkit-text-fill-color:#07130d}
.source-highlight{
  margin:0 18px 12px;padding:10px 12px;border-radius:10px;
  background:#eaf6ef;border:1px solid #c8e2d4;color:#22382c;
  font-size:.82rem;line-height:1.7;
}
.source-highlight .sh-label{
  display:flex;align-items:center;gap:6px;margin-bottom:4px;
  font-size:.68rem;font-weight:700;letter-spacing:.04em;color:#0a8f5b;
}
.source-highlight .sh-label .ic{width:13px;height:13px}
.term-mark{
  background:#d8f5e4;color:#075c3a;border-bottom:2px solid #0a8f5b;
  border-radius:3px;padding:0 2px;font-weight:600;
}
.swap-btn{background:#e6f3ec;border-color:#c9e2d4;color:#075c39}
.lang-block{background:#f4f8f5}

/* ---------- 问答 ---------- */
.chat-panel{background:#fff;border-color:#dae5de}
.chat-body{background:#eef3ef}
.msg.ai{background:#eaf6ef;border-color:#d3e6da;color:#23362b}
.msg.user{background:#0b5d3b;color:#fff}
.msg .msg-meta{color:#5f7468}
.cite-card,.source-item{background:#f4f8f5;border-color:#dae5de}

/* ---------- 底部与浮层 ---------- */
.site-footer{background:#fff;border-top:1px solid #d6e2da;color:#3a4f43}
.site-footer a{color:#2f4638}
.site-footer a:hover{color:#075c39}
.footer-bottom{border-color:#dfe9e2;color:#66796d}
.modal-mask{background:rgba(11,21,16,.45)}
.modal-card{background:#fff;color:#07130d;border-color:#dae5de}
.toast{background:#0b3d2e;color:#fff;border-color:#0b3d2e}
.drawer{background:#fff;border-color:#dae5de;color:#07130d}
.prose code{background:#f1f5f2;color:#075c39}
.toc a:hover{background:#e9f4ee}

/* ---------- 响应式 ---------- */
@media (max-width:1280px){
  .main-nav a{padding:8px 9px;font-size:.8rem}
  .main-nav a .ic{display:none}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:1000px){
  :root{--header-h:100px}
  .header-inner{
    display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:52px 44px;
    height:auto;column-gap:12px;
  }
  .main-nav{
    grid-column:1/-1;grid-row:2;width:100%;margin:0;
    display:flex;flex-direction:row;align-items:center;gap:4px;
    padding:4px 0 8px;border:0;border-top:1px solid #d6e2da;border-radius:0;
    overflow-x:auto;overflow-y:hidden;background:transparent;
    scrollbar-width:none;
  }
  .main-nav::-webkit-scrollbar{display:none}
  .main-nav a{flex:none;padding:8px 11px;font-size:.8rem;background:#fff;border:1px solid #dae5de}
  .main-nav a .ic{display:block;width:14px;height:14px}
  .main-nav a.is-active{background:#e8f7ef;border-color:#c9e7d8}
  .header-cta{display:none}
  .hero{padding-top:48px}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .steps-3{grid-template-columns:1fr;gap:18px}
  .steps-3>div{padding-top:14px}
  .proof-strip{grid-template-columns:repeat(2,1fr);gap:18px 0}
  .proof-strip>div:nth-child(2){border-right:0}
  .proof-strip>div:nth-child(3),.proof-strip>div:nth-child(4){border-top:1px solid #e2ebe5;padding-top:16px}
}
@media (max-width:720px){
  :root{--header-h:100px}
  .hero{padding-top:36px;padding-bottom:28px}
  .hero h1{font-size:clamp(2rem,8.4vw,2.6rem)}
  .hero .lede{font-size:.96rem}
  .hero-actions .btn{flex:1;justify-content:center}
  .feature-grid{grid-template-columns:1fr}
  .feature-card{min-height:0;padding:22px}
  .proof-strip{padding:20px 14px}
  .proof-strip strong{font-size:1.35rem}
  .section{padding-block:44px}
  .section-tight{padding-block:32px}
  /* 术语/语料页：手机上先给搜索与结果，筛选下移，避免一屏全是筛选项 */
  .list-layout{display:flex;flex-direction:column;gap:14px}
  .list-layout>.filter-panel{order:2;width:100%}
  .list-layout>:not(.filter-panel){order:1}
  /* 术语表在手机上只保留 术语 / 译法 / 审核，领域与来源进详情查看 */
  .term-table th:nth-child(3),.term-table td:nth-child(3),
  .term-table th:nth-child(4),.term-table td:nth-child(4){display:none}
}

/* ==========================================================================
   高对比模式：保持明亮底，把文字、边框、分隔线加深，避免浅灰看不清
   ========================================================================== */
html[data-theme="contrast"]{
  --ink-950:#ffffff;--ink-900:#ffffff;--ink-850:#ffffff;
  --ink-800:#f1f6f3;--ink-750:#e6efea;--ink-700:#d2e2d8;
  --line:rgba(4,35,22,.45);--line-strong:#042316;
  --fg:#000000;--fg-soft:#0a1a11;--muted:#1e3327;--muted-2:#2b4436;
  --amber:#00542f;--amber-2:#003d22;--amber-soft:#d7f2e2;--amber-line:#00542f;
  --teal:#054a45;--blue:#102c93;--red:#98180f;--warn:#6b3200;--ok:#00542f;
  --shadow:none;--shadow-soft:none;
}
html[data-theme="contrast"] body{
  background:#ffffff;color:#000000;
}
html[data-theme="contrast"] .select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23001f12' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:12px 12px;
}
html[data-theme="contrast"] :is(.card,.feature-card,.news-card,.trans-panel,.chat-panel,.corpus-item,.config-panel,.tabs,.site-footer,.modal-card,.drawer,.instr-card,.proof-strip){
  border-color:#3c5747;
}
html[data-theme="contrast"] :is(.lede,.hero .lede,.hero-note,.hero-proof span,.feature-card p,.steps-3 p,.proof-strip span,.page-head-meta,.stepper .st,.footer-bottom,.news-summary,.news-orig,.news-meta,.small-note,.config-note,.label small,.term-table th,.instr-foot,.msg .msg-meta,.tabs button,.segmented button){
  color:#16291d;
}
html[data-theme="contrast"] .main-nav a{color:#0b1d13}
html[data-theme="contrast"] .eyebrow,
html[data-theme="contrast"] .fc-go{color:#004b2a}
html[data-theme="contrast"] .section-soft{background:#eaf2ed}
html[data-theme="contrast"] .site-header{background:#fff}
