/* 查詞表格精簡列＋詞條頁（word-detail.js） */
.lk-hint { padding: 8px 16px; font-size: .78rem; color: var(--c-64748b); border-bottom: 1px solid var(--c-2d3548); }
.lk-table tr.lk-row, .lk-table tr.lk-row td { cursor: pointer; }
.lk-more { color: var(--c-64748b); font-size: .8rem; }
.lk-go { display: block; margin-top: 4px; color: var(--c-475569); font-size: .75rem; }
.lk-table tr.lk-row:hover .lk-go { color: var(--c-7dd3fc); }

/* 卡片（學《華語文學習型辭典》：左上角標籤＋外框陰影） */
.wd-card { position: relative; margin-top: 30px; }
.wd-card-tab { position: absolute; top: -26px; left: 0; background: var(--c-3a2f12); color: var(--c-fcd34d); border: 1px solid var(--c-a16207);
               border-bottom: none; border-radius: 6px 6px 0 0; padding: 3px 12px; font-size: .85rem; font-weight: 700; }
.wd-card-body { background: var(--c-1e2330); border: 1px solid var(--c-3b4660); border-radius: 0 10px 10px 10px; padding: 16px 20px;
                box-shadow: 6px 6px 0 var(--c-2a2410); }
.wd-top { display: grid; grid-template-columns: 2fr 1fr; gap: 20px; }
.wd-card-word .wd-card-body, .wd-card-cls .wd-card-body { min-height: 120px; }
.wd-card-word .wd-card-body { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.wd-word { font-size: 3.2rem; font-weight: 700; color: var(--c-f8fafc); letter-spacing: .1em; line-height: 1.1; }
.wd-word-lv { flex-basis: 100%; }
.wd-card-cls .wd-card-body { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; }
.wd-cls { font-size: 1.1rem; color: var(--c-e2e8f0); border: 1px solid var(--c-3b4660); border-radius: 999px; padding: 4px 14px; }
.wd-say { background: var(--c-1e2e4a); color: var(--c-93c5fd); border: 1px solid var(--c-1d4ed8); padding: 2px 9px; font-size: .9rem; }
.wd-say:hover { background: var(--c-1d4ed8); color: #fff; }
@media (max-width: 640px) { .wd-top { grid-template-columns: 1fr; } }

/* 兩欄：左邊詞語＋義項卡片，右邊筆順動畫（窄螢幕改上下排） */
.wd-layout { display: grid; grid-template-columns: minmax(0, 1fr) 336px; gap: 28px; align-items: start; }
.wd-side .wd-card-stroke { margin-top: 30px; }
.wd-side .wd-stroke-row { flex-direction: column; align-items: center; overflow-x: visible; }
@media (max-width: 1000px) {
  .wd-layout { grid-template-columns: 1fr; }
  .wd-side { order: -1; }
  .wd-side .wd-stroke-row { flex-direction: row; overflow-x: auto; align-items: flex-start; }
}

/* 筆順 */
.wd-stroke-row { display: flex; gap: 12px; overflow-x: auto; padding-bottom: 4px; color: var(--c-64748b); font-size: .85rem; }
.wd-stroke-row .hw-cell, .wd-stroke-row .hw-miss { flex: 0 0 auto; }

/* 義項卡片 */
.wd-toolbar { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-top: 28px; color: var(--c-94a3b8); font-size: .85rem; }
.wd-nav { display: flex; flex-wrap: wrap; gap: 6px; }
.wd-jump { display: inline-flex; gap: 6px; align-items: center; padding: 4px 10px; border: 1px solid var(--c-3b4660); border-radius: 999px;
           color: var(--c-cbd5e1); text-decoration: none; font-size: .8rem; max-width: 260px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.wd-jump b { color: var(--c-fcd34d); }
.wd-jump:hover { border-color: var(--c-fcd34d); }
.wd-empty { color: var(--c-475569); font-size: .85rem; }
.wd-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.wd-chip { border: 1px solid var(--c-3b4660); border-radius: 6px; padding: 1px 9px; background: var(--c-1e2330); }
.wd-toggle-all { background: var(--c-3a2f12); color: var(--c-fcd34d); border: 1px solid var(--c-a16207); padding: 6px 14px; font-size: .85rem; }
.wd-sense { position: relative; margin-top: 26px; scroll-margin-top: 16px; background: var(--c-1e2330); border: 1px solid var(--c-3b4660); border-radius: 10px;
            box-shadow: 6px 6px 0 var(--c-2a2410); }
.wd-num { position: absolute; top: -14px; left: -14px; display: inline-flex; align-items: center; justify-content: center;
          width: 30px; height: 30px; border-radius: 50%; background: var(--c-3a2f12); color: var(--c-fcd34d); border: 1px solid var(--c-a16207);
          font-size: .85rem; font-weight: 700; }
.wd-sense-hd { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1.6fr) minmax(0, .9fr) minmax(0, .9fr) 20px;
               gap: 14px; align-items: center; padding: 16px 20px; cursor: pointer; }
.wd-hd-mean { color: var(--c-f1f5f9); line-height: 1.6; }
.wd-def { font-size: 1rem; }
.wd-hd-pron { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.wd-pinyin { color: var(--c-7dd3fc); font-style: italic; font-size: 1.05rem; }
.wd-zhuyin { color: var(--c-fbbf24); font-size: 1rem; margin-right: 4px; }
.wd-hd-pos b { display: block; color: var(--c-e2e8f0); font-weight: 600; }
.wd-hd-pos span { color: var(--c-a78bfa); font-size: .78rem; }
.wd-caret { color: var(--c-94a3b8); transition: transform .15s; text-align: center; }
.wd-sense:not(.open) .wd-caret { transform: rotate(180deg); }
.wd-sense-bd { background: var(--c-171c28); border-top: 1px solid var(--c-2d3548); border-radius: 0 0 10px 10px; padding: 6px 20px 16px; }
.wd-sense:not(.open) .wd-sense-bd { display: none; }
.wd-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.wd-block h4 { margin: 12px 0 4px; color: var(--c-94a3b8); font-size: .82rem; font-weight: 600; }
.wd-block { color: var(--c-cbd5e1); line-height: 1.8; }
@media (max-width: 760px) {
  .wd-sense-hd { grid-template-columns: 1fr 1fr; }
  .wd-cols { grid-template-columns: 1fr; gap: 0; }
}

/* 英文（展開看德／法） */
.wd-en summary { cursor: pointer; list-style: none; color: var(--c-5eead4); }
.wd-en summary::-webkit-details-marker { display: none; }
.wd-more { margin-left: 8px; color: var(--c-64748b); font-size: .75rem; }
.wd-en[open] .wd-more { visibility: hidden; }
.wd-lang { color: var(--c-a5b4fc); padding-top: 2px; font-size: .9rem; }
.wd-flag { display: inline-block; background: var(--c-7f1d1d); color: #fff; border-radius: 3px; font-size: .72rem;
           padding: 0 4px; margin-right: 6px; vertical-align: 1px; }

.wd-ex { margin: 0; padding-left: 1.3em; }
.wd-ex li { padding: 1px 0; }
#wd-page mark { background: var(--c-facc15); color: var(--c-111827); border-radius: 3px; padding: 0 2px; }
.wd-above { margin-left: 8px; color: var(--c-f87171); font-size: .75rem; }
.wd-imgs { display: flex; flex-wrap: wrap; gap: 8px; }
.wd-imgs img { max-width: 220px; max-height: 170px; border-radius: 8px; background: #fff; }
.wd-note { color: var(--c-64748b); font-size: .75rem; padding-top: 2px; }
.wd-miss-note { margin-top: 20px; font-size: .9rem; }
.wd-full { margin-top: 28px; }
.wd-full summary { cursor: pointer; color: var(--c-94a3b8); font-size: .85rem; padding: 4px 0; }
.wd-full ol { padding-left: 1.5em; color: var(--c-cbd5e1); font-size: .9rem; line-height: 1.8; }
.wd-full .badge { margin-right: 6px; }
.wd-full li { padding: 3px 0; }
.wd-full-words { margin-left: 8px; }
.wd-word-chip { display: inline-block; margin: 0 4px 2px 0; padding: 0 8px; border: 1px solid var(--c-3b4660); border-radius: 6px;
                background: var(--c-1e2330); font-size: .85rem; }
.wd-word-chip:hover { border-color: var(--c-93c5fd); }
.wd-full-ex { color: var(--c-94a3b8); font-size: .85rem; }
.wd-src { margin-top: 16px; color: var(--c-475569); font-size: .72rem; }
.wd-loading { color: var(--c-64748b); font-size: .85rem; padding: 20px 0; }

/* 可點的詞（學萌典：滑過底線、出小卡） */
.wd-link { cursor: pointer; border-bottom: 1px dotted transparent; }
.wd-link:hover { color: var(--c-93c5fd); border-bottom-color: var(--c-93c5fd); }
#wd-tip { position: fixed; z-index: 10001; background: var(--c-f8fafc); color: var(--c-1e293b); border-radius: 8px;
          box-shadow: 0 8px 28px rgba(0,0,0,.45); padding: 12px 14px; font-size: .85rem; line-height: 1.6;
          pointer-events: none; }
#wd-tip .wd-tip-word { font-size: 1.4rem; font-weight: 700; }
#wd-tip .wd-zhuyin { color: var(--c-b45309); }
#wd-tip .wd-pinyin { color: var(--c-0369a1); }
#wd-tip ol { padding-left: 1.3em; margin: 4px 0; border-top: 1px solid var(--c-e2e8f0); padding-top: 4px; }
#wd-tip .wd-tip-en { color: var(--c-0f766e); }
#wd-tip .wd-tip-hint, #wd-tip .wd-note { color: var(--c-94a3b8); font-size: .72rem; }

/* 詞條頁（全畫面） */
#wd-page { position: fixed; inset: 0; z-index: 700;  /* 新手教學說明列（800）要在上面 */ background: var(--c-0f1117); display: flex; flex-direction: column; }
#wd-page[hidden] { display: none; }
.wd-page-bar { display: flex; align-items: center; gap: 10px; padding: 10px 16px; background: var(--c-1a2236);
               border-bottom: 1px solid var(--c-2d3548); }
.wd-page-bar button { background: var(--c-2d3548); color: var(--c-e2e8f0); padding: 6px 14px; }
.wd-page-bar button:disabled { opacity: .35; cursor: default; }
.wd-trail { flex: 1; color: var(--c-94a3b8); font-size: .85rem; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.wd-page-body { flex: 1; overflow-y: auto; width: 100%; padding: 12px max(16px, calc((100% - var(--content-w)) / 2)) 80px; line-height: 1.7; }
body.wd-lock { overflow: hidden; }

/* 例句換字（超出等級的詞） */
.wd-over { border-bottom: 2px solid var(--c-f87171); color: var(--c-fecaca); }
.wd-over:hover { color: var(--c-f8fafc); border-bottom-color: var(--c-ef4444); }
.wd-ex-tools { margin-left: 8px; white-space: nowrap; }
.wd-ex-tools button, .wd-swap-own button { background: var(--c-2d3548); color: var(--c-cbd5e1); padding: 1px 8px; font-size: .72rem;
                                           font-weight: 500; margin-left: 4px; }
.wd-ex-tools button:hover, .wd-swap-own button:hover { background: var(--c-3b4660); }
.wd-swap { margin: 6px 0 4px; padding: 8px 10px; background: var(--c-1e2330); border: 1px solid var(--c-2d3548); border-radius: 8px; }
.wd-swap .rw-syn { margin: 4px 6px 0 0; }
.wd-swap-own { display: inline-flex; align-items: center; gap: 4px; margin-top: 6px; }
.wd-swap-in { background: var(--c-0f1117); border: 1px solid var(--c-2d3548); border-radius: 6px; color: var(--c-e2e8f0);
              padding: 3px 8px; font-size: .85rem; width: 9em; }

/* 圖片（點了開來源） */
.wd-img { display: inline-flex; flex-direction: column; gap: 3px; text-decoration: none; max-width: 200px; }
.wd-img span { color: var(--c-64748b); font-size: .7rem; line-height: 1.3; }
.wd-img:hover span { color: var(--c-7dd3fc); }
.wd-google { display: inline-block; margin-top: 4px; color: var(--c-7dd3fc); font-size: .78rem; }

/* 筆順下載 */
.wd-stroke-row .hw-cell .hw-dl { display: block; }
.wd-stroke-bar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 6px 0 2px; }
.wd-stroke-bar .wd-zip { padding: 7px 14px; font-size: .85rem; }
.wd-stroke-status { color: var(--c-94a3b8); font-size: .8rem; }

/* 詩句出處卡 */
.wd-poem-src { font-weight: 600; color: var(--c-fcd34d); margin-bottom: 8px; }
.wd-poem { font-family: "BiauKai", "DFKai-SB", "標楷體", "Kaiti TC", serif; font-size: 1.15rem; line-height: 1.9; margin: 6px 0 12px;
           padding: 10px 14px; background: var(--c-131722); border-radius: 8px; }
.wd-poem-hit { background: rgba(252, 211, 77, .18); color: var(--c-fde68a); border-radius: 4px; }
.wd-poem-ex { margin: 6px 0; line-height: 1.7; }

/* 手機：版面欄位不能被筆順動畫（每格 300px）撐開，筆順那一排在自己裡面左右滑 */
.wd-layout > * { min-width: 0; }
@media (max-width: 1000px) { .wd-layout { grid-template-columns: minmax(0, 1fr); } }
.wd-stroke-row { max-width: 100%; -webkit-overflow-scrolling: touch; }
.wd-parts { margin: 0; padding-left: 1.4em; line-height: 1.8; } .wd-parts .wd-pinyin { color: var(--c-94a3b8); font-size: .9em; }
/* 老師補充辭典沒收的詞 */
.wd-tw-def { font-size: 1.05rem; margin: 4px 0; }
.wd-tw-form { margin: 14px 0; padding: 12px 14px; border: 1px dashed var(--c-2d3548); border-radius: 10px; }
.wd-tw-form summary { cursor: pointer; font-weight: 600; color: var(--c-93c5fd); }
.wd-tw-form label { display: block; margin-top: 10px; font-size: .85rem; color: var(--c-94a3b8); }
.wd-tw-form input, .wd-tw-form textarea { display: block; width: 100%; box-sizing: border-box; margin-top: 4px; font: inherit; }
.wd-tw-form .wd-tw-send { margin-top: 12px; }
.wd-tw-msg { margin-left: 10px; font-size: .85rem; color: var(--c-94a3b8); }
