/* =========================================================
   idiom.css — 成语典故
   配合 base.css + tool.css 使用。强调色黛蓝 + 赭金（青冷 + 暖金，
   与诗词卡、蒙学都不撞色）。
   ========================================================= */

body.idiom{--a1:#4d82c4;--a2:#d6a13f}
body.idiom .grad{background:linear-gradient(96deg,var(--a1),#6f9fd6 42%,var(--a2));-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- chip 选中态（本页用 aria-pressed） ---------- */
.idiom .chip[aria-pressed="true"]{color:#0a0714;font-weight:640;border-color:transparent;background:linear-gradient(100deg,var(--a1),var(--a2))}

/* ---------- 今日一典 ---------- */
.idm-today{
  position:relative;overflow:hidden;margin-bottom:22px;padding:clamp(20px,4vw,30px);border-radius:var(--radius);
  background:
    radial-gradient(120% 90% at 100% 0%,color-mix(in oklab,var(--a2) 20%,transparent),transparent 58%),
    var(--glass);
  border:1px solid var(--glass-brd);box-shadow:var(--shadow);
  backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);
}
.idm-today__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.idm-kicker{margin:0;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--a2)}
.idm-kicker span{color:var(--muted);margin-left:.4em;text-transform:none;letter-spacing:.04em}
.idm-today__text{margin:14px 0 0;font-family:var(--font-kai);font-size:clamp(2rem,9vw,3.2rem);font-weight:640;letter-spacing:.08em;line-height:1.2;color:#f7f1e6}
.idm-today__src{margin:12px 0 0;font-size:1rem;line-height:1.85;color:var(--ink-2);max-width:60ch}
.idm-today__book{margin:8px 0 0;font-family:var(--font-mono);font-size:.76rem;letter-spacing:.06em;color:var(--a1)}
.idm-today__story{margin-top:14px}

/* ---------- 搜索与筛选 ---------- */
.idm-search{display:flex;gap:10px;align-items:center;margin-bottom:14px}
.idm-search .input{flex:1;min-width:0}
.idm-search .chip{flex:none;white-space:nowrap}
.idm-filters{display:grid;gap:12px;margin-bottom:6px}
.idm-chipgroup{display:flex;flex-wrap:wrap;gap:8px}
.idm-hint{margin:8px 0 14px;font-size:.8rem;line-height:1.6;color:var(--muted);min-height:1.2em}

/* ---------- 卡片网格 ---------- */
.idm-grid{display:grid;gap:14px}
.idm-card{
  padding:18px 20px;border-radius:var(--radius-sm);
  background:rgba(255,255,255,.04);border:1px solid var(--line);
  transition:border-color .25s var(--ease),background .25s var(--ease);
}
.idm-card:hover{border-color:color-mix(in oklab,var(--a1) 50%,transparent)}
.idm-card.is-open{background:rgba(255,255,255,.06);border-color:color-mix(in oklab,var(--a2) 45%,transparent)}
.idm-card__top{display:flex;justify-content:space-between;gap:10px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em}
.idm-cat{color:var(--a1)}
.idm-book{color:var(--a2)}
.idm-card__text{margin:10px 0 0;font-family:var(--font-kai);font-size:1.6rem;font-weight:640;letter-spacing:.06em;line-height:1.2;color:#f7f1e6}
.idm-card__src{margin:8px 0 0;font-size:.94rem;line-height:1.8;color:var(--ink-2)}
.idm-card__use{margin:8px 0 0;font-size:.9rem;line-height:1.8;color:var(--muted)}
.idm-card__use::before{content:"怎么用 · ";font-family:var(--font-mono);font-size:.86em;letter-spacing:.06em;color:var(--a1)}
.idm-card__more{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.idm-storytoggle,.idm-fav{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:.5em 1em;border-radius:999px;font-size:.82rem;font-weight:600;cursor:pointer;
  color:var(--ink-2);background:rgba(255,255,255,.05);border:1px solid var(--line-2);
  transition:color .2s,background .2s,border-color .2s;
}
.idm-storytoggle:hover,.idm-fav:hover{color:var(--ink);border-color:color-mix(in oklab,var(--a2) 55%,transparent)}
.idm-fav[aria-pressed="true"]{color:var(--a2);border-color:color-mix(in oklab,var(--a2) 45%,transparent);background:color-mix(in oklab,var(--a2) 12%,transparent)}
.idm-card__detail{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}
.idm-story{margin:0;font-size:.92rem;line-height:1.9;color:var(--ink-2)}
.idm-story b{display:block;margin-bottom:4px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;color:var(--a1);font-weight:600}
.idm-rel{margin:12px 0 0;font-size:.86rem;line-height:1.7;color:var(--muted)}
.idm-mis{margin:12px 0 0;padding:11px 14px;border-radius:var(--radius-sm);font-size:.86rem;line-height:1.8;color:var(--ink-2);
  background:color-mix(in oklab,var(--a2) 10%,transparent);border-left:3px solid var(--a2)}
.idm-mis::before{content:"易误用 · ";font-family:var(--font-mono);font-size:.86em;letter-spacing:.06em;color:var(--a2)}

/* ---------- 空状态 / 提示 ---------- */
.idm-empty{text-align:center;padding:38px 18px;color:var(--muted)}
.idm-empty p{margin:0 0 8px}
.idm-empty #emptyText{color:var(--ink);font-size:1.06rem}
.idm-empty .btn{margin-top:14px}
.idm-notice{margin-top:16px;padding:14px 16px;border-radius:var(--radius-sm);background:rgba(255,255,255,.05);border:1px solid var(--line);font-size:.88rem;line-height:1.8;color:var(--ink-2)}

/* ---------- 填字自测 ---------- */
.idm-quiz-stage{margin-top:8px}
.idm-quiz-ask{margin:0}
.idm-quiz-blank{display:block;font-family:var(--font-kai);font-size:clamp(2rem,8vw,3.2rem);font-weight:640;letter-spacing:.12em;line-height:1.3;color:#f7f1e6}
.idm-quiz-hint{display:block;margin-top:10px;font-size:.9rem;color:var(--muted)}
.idm-quiz-opts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}
.idm-quiz-opt{
  min-height:64px;font-family:var(--font-kai);font-size:1.7rem;font-weight:600;letter-spacing:.04em;
  border-radius:14px;cursor:pointer;color:var(--ink);
  background:rgba(255,255,255,.05);border:1px solid var(--line-2);
  transition:transform .2s var(--ease),background .2s,border-color .2s,opacity .2s;
}
.idm-quiz-opt:hover:not([disabled]){transform:translateY(-2px);background:rgba(255,255,255,.1)}
.idm-quiz-opt[disabled]{cursor:default;opacity:.82}
.idm-quiz-opt.is-right{border-color:var(--mint);background:color-mix(in oklab,var(--mint) 16%,transparent);color:#eafff6}
.idm-quiz-opt.is-wrong{border-color:var(--a1);background:color-mix(in oklab,var(--a1) 18%,transparent)}
.idm-quiz-prog{margin:14px 0 0;font-size:.9rem;color:var(--ink-2);min-height:1.2em}
.idm-quiz-controls{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.idm-quiz-over,.idm-quiz-empty{text-align:center;padding:24px 16px;color:var(--ink-2);line-height:1.8}
.idm-quiz-over .idm-quiz-score{font-size:2.6rem;font-weight:700;color:#fff;margin:0 0 6px}
.idm-wrong{display:grid;gap:8px;margin-top:14px}
.idm-wrongitem{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;border-radius:var(--radius-sm);background:rgba(255,255,255,.04);border:1px solid var(--line)}
.idm-wrong-text{font-family:var(--font-kai);font-size:1.08rem;font-weight:600;letter-spacing:.04em}
.idm-wrong-note{font-size:.82rem;color:var(--a2)}

/* ---------- 读法与由来 ---------- */
.idm-guidelist{display:grid;gap:14px;margin-top:6px}
.idm-guideitem{padding:20px 22px;border-radius:var(--radius-sm);background:rgba(255,255,255,.04);border:1px solid var(--line)}
.idm-guide__t{margin:0 0 10px;font-size:1.06rem;font-weight:660;color:var(--a2);letter-spacing:.01em}
.idm-guide__pts{margin:0;padding-left:1.2em;display:grid;gap:7px}
.idm-guide__pts li{font-size:.92rem;line-height:1.85;color:var(--ink-2)}

/* ---------- 桌面 ---------- */
@media (min-width:761px){
  .idm-grid{grid-template-columns:repeat(2,1fr)}
  .idm-quiz-opts{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:400px){
  .idm-today__text{font-size:1.8rem}
  .idm-quiz-blank{font-size:1.8rem}
  .idm-quiz-opt{font-size:1.4rem}
}
