/* 生词本(中英恢复本): 查词卡 / 生词本列表 / 复习卡片 —— 配色沿用阅读器主题变量, 夜间自动跟随 */
/* ⚠️ 层级必须站在 svkit 那一套之上: 它的面板/浮条用的是 100000+ 量级(.svsheet 就是 9999 之上的
   100005 那一档)。生词本原来用 1200~1400, 一开笔记面板就被整个盖住 —— Kris 点「开始复习」
   看到的是一片黑, 关掉面板才发现卡片在后面。 */
::highlight(sv-word){ background:rgba(201,162,74,.42); }
/* 已收进生词本的单词: 正文里划一条线(不涂底色, 免得跟朗读跟随/搜索命中的高亮混淆) */
::highlight(sv-voc){ text-decoration:underline; text-decoration-color:rgba(135,26,26,.55);
  text-decoration-thickness:2px; text-underline-offset:3px; }
html[data-sv-theme="night"] ::highlight(sv-voc){ text-decoration-color:rgba(201,162,74,.7); }

/* ── 查词卡 ── */
.svwc-scrim{position:fixed;inset:0;z-index:100020;background:transparent;touch-action:none}
.svwc{position:fixed;z-index:100021;width:min(340px,calc(100vw - 20px));
  background:var(--paper,#fbf7ee);color:var(--ink,#2a2622);
  border:1px solid var(--line,#e6dcc8);border-radius:14px;
  box-shadow:0 12px 40px rgba(0,0,0,.28);overflow:hidden;
  animation:svwcIn .16s ease-out}
@keyframes svwcIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.svwc-hd{display:flex;align-items:center;gap:10px;padding:12px 14px 8px}
.svwc-w{flex:1;min-width:0;display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.svwc-w b{font-size:21px;font-weight:800;letter-spacing:.2px;
  font-family:Georgia,"Times New Roman",serif;color:var(--brown,#871a1a)}
.svwc-ph{font-size:13px;color:var(--soft,#6b6258);font-family:Georgia,serif}
.svwc-spk{flex:0 0 auto;width:34px;height:34px;border:0;border-radius:50%;cursor:pointer;
  background:rgba(135,26,26,.09);color:var(--brown,#871a1a);display:flex;align-items:center;justify-content:center}
.svwc-spk:active{background:rgba(135,26,26,.2)}
.svwc-bd{padding:0 14px 4px;max-height:44vh;overflow:auto;-webkit-overflow-scrolling:touch}
.svwc-load{color:var(--soft,#6b6258);font-size:14px;padding:6px 0 12px}
.svwc-base{font-size:12.5px;color:var(--soft,#6b6258);margin-bottom:6px}
.svwc-base b{color:var(--brown,#871a1a)}
.svwc-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}
.svwc-tags i{font-style:normal;font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;
  background:rgba(135,26,26,.08);color:var(--brown,#871a1a)}
.svwc-tags i.star{background:rgba(201,162,74,.18);color:#a9791f;letter-spacing:-1px}
.svwc-tr{font-size:15px;line-height:1.75;color:var(--ink,#2a2622);word-break:break-word}
.svwc-tr em{font-style:normal;font-weight:700;color:var(--brown,#871a1a);margin-right:2px}
.svwc-name{font-size:14.5px;color:var(--soft,#6b6258);padding:2px 0 6px}
.svwc-grammar{margin:2px 0 10px;padding:10px 11px;border-left:3px solid #b33a32;border-radius:8px;background:rgba(179,58,50,.07);line-height:1.65}
.svwc-grammar b{display:block;margin-bottom:3px;color:#b33a32;font-size:13px}
.svwc-grammar span{display:block;color:var(--ink,#2a2622);font-size:14.5px}
.svwc-cn{margin:6px 0 10px;padding:9px 11px;border-radius:9px;background:rgba(0,0,0,.035);
  font-size:14px;line-height:1.75}
.svwc-cn span{display:block;font-size:11.5px;font-weight:700;color:var(--gold,#a9791f);margin-bottom:3px;letter-spacing:.5px}
.svwc-ft{display:flex;align-items:center;gap:10px;padding:9px 14px 12px;border-top:1px solid var(--line,#e6dcc8)}
.svwc-rf{flex:1;min-width:0;font-size:12.5px;color:var(--soft,#6b6258);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.svwc-add{flex:0 0 auto;border:0;border-radius:0;padding:8px 2px;cursor:pointer;
  font:inherit;font-size:14px;font-weight:800;background:transparent;color:#b33a32}
.svwc-add.on{background:transparent;color:#b33a32}
.svwc-add:active{opacity:.82}
.svwc-toast{position:fixed;left:50%;bottom:14vh;transform:translateX(-50%);z-index:100030;
  background:rgba(0,0,0,.82);color:#fff;font-size:14px;padding:9px 18px;border-radius:999px}

/* ── 生词本列表(笔记面板里) ── */
.svvb-bar{display:flex;align-items:center;gap:10px;padding:2px 2px 10px;flex-wrap:wrap}
.svvb-n{font-size:13px;color:var(--soft,#6b6258)}
.svvb-n b{color:var(--brown,#871a1a)}
.svvb-sort{margin-left:auto;display:inline-flex;background:rgba(0,0,0,.05);border-radius:999px;padding:2px}
.svvb-sort button{border:0;background:transparent;font:inherit;font-size:12.5px;font-weight:700;
  color:var(--soft,#6b6258);padding:5px 11px;border-radius:999px;cursor:pointer}
.svvb-sort button.on{background:#fff;color:var(--brown,#871a1a);box-shadow:0 1px 4px rgba(0,0,0,.12)}
.svvb-go{display:block;width:100%;margin:0 0 12px;border:0;border-radius:11px;padding:12px;cursor:pointer;
  font:inherit;font-size:15px;font-weight:800;background:var(--brown,#871a1a);color:#fff}
.svvb-go:active{opacity:.85}
.svvb-i{border:1px solid var(--line,#e6dcc8);border-radius:11px;padding:11px 13px;margin-bottom:9px;
  background:var(--paper,#fbf7ee)}
.svvb-i.done{opacity:.62}
/* ⚠️「已掌握」原来被长单词挤得【字自己折成两行】(Kris: 这里不允许换行)。
   规矩: 标签本身永远一行(nowrap); 一行确实排不下时, 让【整个标签】换到下一行右侧,
   而不是把它压扁。删除叉固定在卡片右上角, 不参与挤位置。 */
.svvb-i{position:relative}
.svvb-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-right:24px}
.svvb-top b{font-size:17px;font-weight:800;font-family:Georgia,serif;color:var(--brown,#871a1a);
  min-width:0;word-break:break-word}
.svvb-top .ph{font-size:12px;color:var(--soft,#6b6258);font-family:Georgia,serif}
.svvb-top .grow{flex:1 1 0;min-width:0}
.svvb-top .spk,.svvb-top .del{border:0;background:transparent;cursor:pointer;font-size:14px;
  color:var(--soft,#6b6258);padding:2px 5px;line-height:1;flex:0 0 auto}
.svvb-top .del{position:absolute;right:5px;top:8px}
.svvb-top .ok{flex:0 0 auto;margin-left:auto;white-space:nowrap;
  font-size:11.5px;font-weight:700;color:#2e7d32;background:rgba(46,125,50,.1);
  padding:2px 8px;border-radius:999px}
.svvb-tr{font-size:13.5px;line-height:1.7;color:var(--ink,#2a2622);margin-top:5px;word-break:break-word}
.svvb-tag{font-size:11.5px;color:var(--gold,#a9791f);margin-top:4px}
.svvb-rf{font-size:12px;color:var(--brown,#871a1a);margin-top:6px;cursor:pointer;display:inline-block;
  border-bottom:1px dashed rgba(135,26,26,.35)}
.svvb-foot{display:flex;align-items:center;gap:10px;margin-top:7px}
.svvb-foot .svvb-rf{margin-top:0}

/* ── 复习卡片 ── */
.svrv{position:fixed;inset:0;z-index:100040;background:rgba(0,0,0,.55);
  display:flex;align-items:center;justify-content:center;padding:18px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.svrv-box{width:min(400px,100%);background:var(--paper,#fbf7ee);border-radius:18px;padding:18px 18px 20px;
  box-shadow:0 20px 60px rgba(0,0,0,.4);text-align:center}
.svrv-hd{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;color:var(--soft,#6b6258)}
.svrv-close{border:0;background:transparent;font-size:17px;color:var(--soft,#6b6258);cursor:pointer;line-height:1}
.svrv-w{font-size:32px;font-weight:800;font-family:Georgia,serif;color:var(--brown,#871a1a);
  margin:16px 0 4px;display:flex;align-items:center;justify-content:center;gap:10px;word-break:break-word}
.svrv-spk{border:0;background:transparent;font-size:19px;cursor:pointer;line-height:1}
.svrv-ph{font-size:14px;color:var(--soft,#6b6258);font-family:Georgia,serif;margin-bottom:14px}
.svrv-tr{font-size:15.5px;line-height:1.75;color:var(--ink,#2a2622);margin:10px 0;word-break:break-word}
.svrv-s{font-size:13px;line-height:1.7;color:var(--soft,#6b6258);background:rgba(0,0,0,.04);
  border-radius:9px;padding:9px 11px;margin:10px 0;text-align:left;font-family:Georgia,serif}
.svrv-s i{display:block;font-style:normal;font-size:11.5px;color:var(--gold,#a9791f);margin-top:5px}
.svrv-show{width:100%;border:1px solid var(--line,#e6dcc8);background:#fff;border-radius:11px;
  padding:12px;font:inherit;font-size:14.5px;font-weight:700;color:var(--brown,#871a1a);cursor:pointer;margin-top:12px}
.svrv-act{display:flex;gap:10px;margin-top:14px}
.svrv-act button{flex:1;border:0;border-radius:11px;padding:13px;font:inherit;font-size:15px;font-weight:800;cursor:pointer}
.svrv-act .no{background:rgba(135,26,26,.1);color:var(--brown,#871a1a)}
.svrv-act .yes{background:#2e7d32;color:#fff}
.svrv-done{font-size:19px;font-weight:800;color:var(--brown,#871a1a);padding:26px 0}
.svrv-x{width:100%;border:0;border-radius:11px;padding:13px;font:inherit;font-size:15px;font-weight:800;
  background:var(--brown,#871a1a);color:#fff;cursor:pointer}

/* 夜间 */
html[data-sv-theme="night"] .svwc,
html[data-sv-theme="night"] .svrv-box,
html[data-sv-theme="night"] .svvb-i{background:#22262c;border-color:#333a44;color:#cfc9bb}
html[data-sv-theme="night"] .svwc-w b,
html[data-sv-theme="night"] .svvb-top b,
html[data-sv-theme="night"] .svrv-w{color:var(--gold,#c9a24a)}
html[data-sv-theme="night"] .svwc-tr,
html[data-sv-theme="night"] .svvb-tr,
html[data-sv-theme="night"] .svrv-tr{color:#cfc9bb}
html[data-sv-theme="night"] .svvb-go,
html[data-sv-theme="night"] .svrv-x{background:#8a6a24;color:#fff}
html[data-sv-theme="night"] .svwc-add{background:transparent;color:#e07468}
html[data-sv-theme="night"] .svwc-cn,
html[data-sv-theme="night"] .svrv-s{background:rgba(255,255,255,.06)}
html[data-sv-theme="night"] .svrv-show{background:#2a2f37;border-color:#3a414c;color:#cfc9bb}
html[data-sv-theme="night"] .svvb-sort button.on{background:#2a2f37;color:var(--gold,#c9a24a)}

/* 专名的「通用词典义项」降级成小字备注 —— 提醒读者那不是圣经语境 */
.svwc-note{margin-top:8px;font-size:12.5px;line-height:1.65;color:var(--soft,#6b6258)}
.svwc-note i{font-style:normal;opacity:.75}
html[data-sv-theme="night"] .svwc-note{color:#9a948a}
html[data-sv-theme="night"] .svwc-grammar{background:rgba(224,116,104,.1);border-left-color:#e07468}
html[data-sv-theme="night"] .svwc-grammar b{color:#e07468}
html[data-sv-theme="night"] .svwc-grammar span{color:#e7e2da}

/* 词卡左下的「本节」键 —— 从英文栏切到经节操作浮条(收藏/复制/笔记/多选/纠错) */
.svwc-vs{flex:1;min-width:0;display:flex;align-items:center;gap:6px;border:0;background:transparent;
  cursor:pointer;font:inherit;font-size:12.5px;color:var(--soft,#6b6258);padding:4px 0;text-align:left}
.svwc-vs span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  border-bottom:1px dashed rgba(135,26,26,.3)}
.svwc-vs:active{opacity:.6}
html[data-sv-theme="night"] .svwc-vs{color:#9a948a}

/* ⚠️ 词卡整体禁掉原生选择: 否则长按会弹出浏览器自带的「复制/分享/全选/网页搜索」,
   既盖住释义, 又会把选中的字丢给搜索引擎(Kris 截图)。复制走我们自己那条浮条。 */
.svwc,.svwc *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.svwc-cp{position:fixed;z-index:100050;display:flex;align-items:center;gap:6px;border:0;
  border-radius:9px;padding:9px 15px;cursor:pointer;font:inherit;font-size:14px;font-weight:700;
  background:#2b2f36;color:#fff;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.svwc-cp:active{opacity:.85}

/* 自己写的备注 —— 跟词典释义明显区分: 暖黄底 + 左边一道竖线 + 标着「备注」 */
.svvb-my{margin-top:7px;padding:8px 11px;border-radius:9px;background:rgba(201,162,74,.13);
  border-left:3px solid var(--gold,#c9a24a);font-size:13.5px;line-height:1.7;
  color:#6b5324;cursor:pointer;word-break:break-word}
.svvb-my span{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.5px;
  color:#fff;background:var(--gold,#c9a24a);border-radius:4px;padding:1px 6px;margin-right:7px;vertical-align:1px}
.svvb-addnote{margin-left:auto;border:1px dashed var(--line,#e6dcc8);background:transparent;border-radius:8px;
  padding:5px 11px;cursor:pointer;font:inherit;font-size:12.5px;color:#2f73c8;white-space:nowrap}
.svvb-addnote:active{opacity:.6}
/* 复习卡片里的备注 */
.svrv-my{margin:10px 0;padding:9px 11px;border-radius:9px;background:rgba(201,162,74,.13);
  border-left:3px solid var(--gold,#c9a24a);font-size:14px;line-height:1.7;color:#6b5324;text-align:left}
.svrv-my span{display:inline-block;font-size:11px;font-weight:800;color:#fff;
  background:var(--gold,#c9a24a);border-radius:4px;padding:1px 6px;margin-right:7px;vertical-align:1px}

/* 写备注的那一层。
   ⚠️ 弹层从底部升起, 但【保存/取消放在顶部标题行】—— 键盘一弹就会把底部按钮顶出屏幕,
   那时既点不到保存、关掉键盘弹层又整个滑到最下面(Kris 说的体验太差)。
   高度跟着 visualViewport 走(JS 里设), 正文区自己限高可滚。 */
.svnt{position:fixed;left:0;right:0;top:0;bottom:0;z-index:100060;background:rgba(0,0,0,.5);
  display:flex;align-items:flex-end;justify-content:center}
@media(min-width:900px){.svnt{align-items:center}}
.svnt-box{width:min(460px,100%);background:var(--paper,#fbf7ee);border-radius:18px 18px 0 0;
  padding:12px 14px 14px;box-shadow:0 -8px 40px rgba(0,0,0,.3);
  display:flex;flex-direction:column;max-height:min(80vh,560px);overflow:hidden}
@media(min-width:900px){.svnt-box{border-radius:18px}}
.svnt-hd{display:flex;align-items:center;gap:9px;margin-bottom:10px;flex:0 0 auto}
.svnt-hd b{font-size:19px;font-weight:800;font-family:Georgia,serif;color:var(--brown,#871a1a)}
.svnt-hd>span:not(.grow){font-size:12.5px;color:var(--soft,#6b6258);font-family:Georgia,serif}
.svnt-hd .grow{flex:1}
.svnt-hd button{flex:0 0 auto;border:0;border-radius:9px;padding:8px 15px;font:inherit;
  font-size:14px;font-weight:700;cursor:pointer}
.svnt-ta{width:100%;box-sizing:border-box;flex:1 1 auto;min-height:110px;
  border:1px solid var(--line,#e6dcc8);border-radius:11px;padding:11px 12px;
  font:inherit;font-size:15px;line-height:1.7;background:#fff;color:var(--ink,#2a2622);resize:none}
.svnt-ta:focus{outline:none;border-color:var(--gold,#c9a24a)}
.svnt-ft{flex:0 0 auto;margin-top:10px}
.svnt-c{background:rgba(0,0,0,.06);color:var(--soft,#6b6258)}
.svnt-k{background:var(--brown,#871a1a);color:#fff}
.svnt-del{border:0;background:transparent;color:#9a4b4b;font:inherit;font-size:13.5px;
  cursor:pointer;padding:6px 0}

html[data-sv-theme="night"] .svnt-box{background:#22262c}
html[data-sv-theme="night"] .svnt-ta{background:#2a2f37;border-color:#3a414c;color:#cfc9bb}
html[data-sv-theme="night"] .svnt-k{background:#8a6a24}
html[data-sv-theme="night"] .svvb-my,html[data-sv-theme="night"] .svrv-my{color:#e0cfa4;background:rgba(201,162,74,.16)}

/* 长按词卡里的某一块 → 那块画下划线, 明确告诉你复制的是哪一段(Kris) */
.svwc [data-cp]{border-radius:6px;transition:background .12s}
.svwc .svwc-sel{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;
  text-decoration-color:var(--gold,#c9a24a);background:rgba(201,162,74,.14)}
/* 复习例句里把这个词划出来 */
.svrv-s .svrv-hit{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;
  text-decoration-color:var(--gold,#c9a24a);color:var(--brown,#871a1a);font-weight:700}
html[data-sv-theme="night"] .svrv-s .svrv-hit{color:var(--gold,#c9a24a)}

/* 删词二次确认(Kris: 防误删) —— 自己的弹窗, 跟着主题走 */
.svcf{position:fixed;inset:0;z-index:100070;background:rgba(0,0,0,.5);
  display:flex;align-items:center;justify-content:center;padding:22px}
.svcf-box{width:min(320px,100%);background:var(--paper,#fbf7ee);border-radius:16px;
  padding:20px 18px 16px;box-shadow:0 18px 50px rgba(0,0,0,.4);text-align:center}
.svcf-t{font-size:16px;font-weight:800;color:var(--ink,#2a2622);margin-bottom:12px}
.svcf-w{margin-bottom:6px}
.svcf-w b{font-size:21px;font-weight:800;font-family:Georgia,serif;color:var(--brown,#871a1a)}
.svcf-w span{font-size:12.5px;color:var(--soft,#6b6258);font-family:Georgia,serif;margin-left:7px}
.svcf-warn{font-size:12.5px;color:#9a4b4b;background:rgba(154,75,75,.09);
  border-radius:8px;padding:7px 10px;margin:10px 0 2px;line-height:1.6}
.svcf-act{display:flex;gap:10px;margin-top:16px}
.svcf-act button{flex:1;border:0;border-radius:10px;padding:12px;font:inherit;
  font-size:15px;font-weight:700;cursor:pointer}
.svcf-c{background:rgba(0,0,0,.06);color:var(--soft,#6b6258)}
.svcf-k{background:#9a4b4b;color:#fff}
html[data-sv-theme="night"] .svcf-box{background:#22262c}
html[data-sv-theme="night"] .svcf-t{color:#cfc9bb}
html[data-sv-theme="night"] .svcf-w b{color:var(--gold,#c9a24a)}
