/* ===== 每日泰 DAILY THAI · GLASS 玻璃拟态主题 ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  /* 玻璃拟态配色：深紫蓝渐变 + 霓虹光晕 */
  --bg-1:#160a2e;
  --bg-2:#0d1b3a;
  --bg-3:#1a0f3d;
  --glass:rgba(255,255,255,.07);
  --glass-strong:rgba(255,255,255,.12);
  --glass-border:rgba(255,255,255,.16);
  --glass-border-strong:rgba(255,255,255,.28);
  --text:#f4f1ff;
  --sub:rgba(244,241,255,.62);
  --sub-2:rgba(244,241,255,.42);
  --neon-cyan:#5eead4;
  --neon-purple:#b794ff;
  --neon-pink:#ff8fc7;
  --neon-blue:#7cc4ff;
  --accent:linear-gradient(135deg,#5eead4 0%,#b794ff 50%,#ff8fc7 100%);
  --accent-soft:linear-gradient(135deg,rgba(94,234,212,.18),rgba(183,148,255,.18));
  --glow-cyan:0 0 24px rgba(94,234,212,.35);
  --glow-purple:0 0 24px rgba(183,148,255,.35);
  --shadow:0 8px 32px rgba(0,0,0,.38);
  --radius:18px;--radius-sm:12px;--radius-lg:26px;
}
html{font-size:16px;-webkit-text-size-adjust:100%}
body{
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans Thai','PingFang SC',sans-serif;
  color:var(--text);line-height:1.6;overflow-x:hidden;min-height:100vh;
  background:
    radial-gradient(circle at 18% 12%,rgba(183,148,255,.22),transparent 42%),
    radial-gradient(circle at 85% 20%,rgba(94,234,212,.18),transparent 40%),
    radial-gradient(circle at 70% 90%,rgba(255,143,199,.16),transparent 45%),
    linear-gradient(160deg,var(--bg-1) 0%,var(--bg-2) 55%,var(--bg-3) 100%);
  background-attachment:fixed;
}
/* 浮动光斑装饰 */
body::before,body::after{content:'';position:fixed;border-radius:50%;filter:blur(80px);z-index:0;pointer-events:none}
body::before{width:340px;height:340px;background:rgba(183,148,255,.20);top:-120px;left:-100px}
body::after{width:300px;height:300px;background:rgba(94,234,212,.16);bottom:-100px;right:-80px}
button{cursor:pointer;border:none;background:none;font-family:inherit;font-size:inherit;color:inherit}
input{font-family:inherit}
#app,body>*{position:relative;z-index:1}

/* ===== 玻璃通用 ===== */
.glass{
  background:var(--glass);
  backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border:1px solid var(--glass-border);
  box-shadow:var(--shadow);
}

/* ===== 激活码界面 ===== */
.activation-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px}
.activation-box{
  background:var(--glass-strong);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);
  border:1px solid var(--glass-border-strong);border-radius:var(--radius-lg);
  padding:44px 28px;width:100%;max-width:380px;text-align:center;
  box-shadow:0 20px 70px rgba(0,0,0,.5);
}
.activation-box__icon{margin-bottom:12px;display:flex;justify-content:center}
.activation-box__icon svg{width:74px;height:49px;border-radius:10px;filter:drop-shadow(0 0 18px rgba(183,148,255,.5));box-shadow:0 6px 22px rgba(0,0,0,.38)}
.activation-box__title{font-size:26px;font-weight:800;background:var(--accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px;letter-spacing:1px}
.activation-box__subtitle{color:var(--sub);font-size:14px;margin-bottom:26px}
.activation-box__input{
  width:100%;padding:15px 16px;border:1.5px solid var(--glass-border);
  border-radius:var(--radius-sm);font-size:18px;text-align:center;letter-spacing:3px;
  text-transform:uppercase;outline:none;transition:.3s;
  background:rgba(0,0,0,.22);color:var(--text);
}
.activation-box__input:focus{border-color:var(--neon-cyan);box-shadow:var(--glow-cyan)}
.activation-box__btn{
  width:100%;padding:15px;margin-top:16px;background:var(--accent);color:#160a2e;
  border-radius:var(--radius-sm);font-size:17px;font-weight:800;letter-spacing:2px;
  transition:transform .2s,box-shadow .2s;
}
.activation-box__btn:active{transform:scale(.97)}
.activation-box__btn:hover{box-shadow:var(--glow-purple)}
.activation-box__hint{color:var(--sub);font-size:13px;margin-top:16px}
.activation-box__hint.error{color:#ff8a8a}
.activation-box__secure{color:var(--sub-2);font-size:11px;margin-top:8px}
.activation-box__btn:disabled{opacity:.65;cursor:wait;box-shadow:none}

/* ===== 顶部栏 ===== */
.topbar{
  position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:12px;padding:12px 16px;
  background:rgba(13,27,58,.55);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--glass-border);
}
.topbar__back{font-size:22px;padding:4px 10px;border-radius:10px;transition:.2s}
.topbar__back:active{background:var(--glass)}
.topbar__title{flex:1;font-size:17px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar__actions{display:flex;gap:4px;align-items:center}
.topbar__btn{font-size:20px;padding:6px 9px;border-radius:10px;position:relative;transition:.2s}
.topbar__btn:active{background:var(--glass)}
.topbar__btn.active{color:var(--neon-cyan)}
.badge{position:absolute;top:-2px;right:0;background:var(--neon-pink);color:#160a2e;font-size:10px;font-weight:800;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}

/* ===== 搜索栏 ===== */
.search-bar{padding:8px 16px;background:rgba(13,27,58,.55);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--glass-border);display:flex;gap:8px;align-items:center}
.search-bar__input{flex:1;padding:10px 14px;border:1.5px solid var(--glass-border);border-radius:20px;font-size:15px;outline:none;background:rgba(0,0,0,.22);color:var(--text);transition:.3s}
.search-bar__input::placeholder{color:var(--sub-2)}
.search-bar__input:focus{border-color:var(--neon-cyan);box-shadow:var(--glow-cyan)}
.search-bar__close{font-size:18px;padding:4px 8px;color:var(--sub)}

/* ===== 内容区 ===== */
.content{padding:16px;padding-bottom:96px;max-width:680px;margin:0 auto}

/* ===== 首页 Hero ===== */
.home-hero{text-align:center;padding:30px 0 22px}
.home-hero__badge{display:inline-block;padding:5px 16px;background:var(--accent);color:#160a2e;font-size:12px;font-weight:800;border-radius:20px;margin-bottom:14px;letter-spacing:2px}
.home-hero__title{font-size:32px;font-weight:800;background:var(--accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px;letter-spacing:1px}
.home-hero__desc{color:var(--sub);font-size:14px;max-width:300px;margin:0 auto}
.home-hero__stats{display:flex;justify-content:center;gap:14px;margin-top:20px;flex-wrap:wrap}
.home-hero__stat{text-align:center;background:var(--glass);backdrop-filter:blur(18px);border:1px solid var(--glass-border);border-radius:16px;padding:12px 18px;min-width:84px}
.home-hero__stat-num{font-size:22px;font-weight:800;background:var(--accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.home-hero__stat-label{font-size:11px;color:var(--sub)}

/* ===== 模块网格 ===== */
.module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:8px}
.module-card{
  background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid var(--glass-border);border-radius:var(--radius);padding:22px 14px;text-align:center;
  box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s,border-color .2s;cursor:pointer;position:relative;overflow:hidden;
}
.module-card:active{transform:scale(.96)}
.module-card__glow{position:absolute;top:-40px;right:-40px;width:110px;height:110px;border-radius:50%;filter:blur(26px);opacity:.55;pointer-events:none}
.module-card__icon{font-size:38px;margin-bottom:8px;position:relative}
.module-card__name{font-size:16px;font-weight:800;margin-bottom:3px;position:relative}
.module-card__desc{font-size:11px;color:var(--sub);line-height:1.45;position:relative;min-height:30px}
.module-card__count{font-size:11px;color:var(--neon-cyan);margin-top:8px;font-weight:700;background:var(--accent-soft);padding:3px 10px;border-radius:10px;display:inline-block;position:relative}

/* ===== 子分类标签 ===== */
.sub-tabs{display:flex;gap:8px;overflow-x:auto;padding:10px 0 14px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.sub-tabs::-webkit-scrollbar{display:none}
.sub-tab{padding:8px 16px;background:var(--glass);backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:20px;font-size:14px;white-space:nowrap;transition:.2s;color:var(--sub)}
.sub-tab.active{background:var(--accent);color:#160a2e;border-color:transparent;font-weight:700}

/* ===== 内容切换 Tabs ===== */
.content-tabs{display:flex;gap:8px;padding:4px 0 16px}
.content-tab{flex:1;text-align:center;padding:11px 0;background:var(--glass);backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:14px;font-weight:600;color:var(--sub);transition:.2s}
.content-tab.active{background:var(--accent-soft);border-color:var(--neon-cyan);color:var(--text);box-shadow:var(--glow-cyan)}

/* ===== 句子卡片 ===== */
.sentence-card{
  background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid var(--glass-border);border-radius:var(--radius);padding:18px 16px;margin-bottom:14px;
  box-shadow:var(--shadow);position:relative;overflow:hidden;transition:border-color .2s;
}
.sentence-card:active{border-color:var(--glass-border-strong)}
.sentence-card__top{display:flex;align-items:flex-start;gap:10px}
.sentence-card__thai{flex:1;font-size:21px;font-weight:700;line-height:1.5;word-break:break-word}
.sentence-card__play{flex-shrink:0;width:42px;height:42px;border-radius:50%;background:var(--accent);color:#160a2e;font-size:17px;display:flex;align-items:center;justify-content:center;box-shadow:var(--glow-purple);transition:transform .15s}
.sentence-card__play:active{transform:scale(.9)}
.sentence-card__play.playing{animation:pulse 1s infinite}
@keyframes pulse{0%,100%{box-shadow:var(--glow-purple)}50%{box-shadow:0 0 36px rgba(183,148,255,.7)}}
.sentence-card__roman{font-size:13.5px;color:var(--neon-cyan);font-style:italic;margin:8px 0 2px;font-weight:600}
.sentence-card__zhuyin{font-size:12.5px;color:var(--neon-pink);margin-bottom:4px;opacity:.9}
.sentence-card__cn{font-size:15px;color:var(--sub);margin-bottom:8px}
.sentence-card__actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.sentence-card__act{font-size:12px;padding:6px 12px;background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:16px;color:var(--sub);transition:.2s}
.sentence-card__act:active{background:var(--glass-border-strong)}
.sentence-card__act.on{color:var(--neon-cyan);border-color:var(--neon-cyan)}
.sentence-card__fav{margin-left:auto}
.sentence-card__fav.on{color:var(--neon-pink)}
.sentence-card__panel{background:rgba(0,0,0,.22);border:1px solid var(--glass-border);border-radius:12px;padding:10px 12px;margin-bottom:8px;display:none}
.sentence-card__panel.show{display:block}
.sentence-card__panel-title{font-size:11px;font-weight:700;color:var(--neon-purple);margin-bottom:6px}
.sentence-card__breakdown-items{display:flex;flex-wrap:wrap;gap:6px}
.sentence-card__bd-item{background:var(--glass-strong);padding:4px 10px;border-radius:8px;font-size:12px;border:1px solid var(--glass-border)}
.sentence-card__bd-word{font-weight:700;color:var(--text)}
.sentence-card__bd-mean{color:var(--sub);margin-left:4px}
.sentence-card__variation{background:rgba(0,0,0,.22);padding:8px 12px;border-radius:10px;margin-bottom:6px;font-size:13px}
.sentence-card__variation-thai{font-weight:700;color:var(--text)}
.sentence-card__variation-cn{color:var(--sub);margin-left:6px}
.sentence-card__meta-item{display:flex;gap:6px;align-items:flex-start;margin-bottom:6px;font-size:13px;line-height:1.5}
.sentence-card__meta-text{flex:1;color:var(--sub)}
.sentence-card__meta-label{font-size:11px;font-weight:700;color:var(--neon-purple);margin-bottom:2px}

/* ===== 对话卡片 ===== */
.dialogue-card{background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius);padding:16px;margin-bottom:14px;box-shadow:var(--shadow)}
.dialogue-card__head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.dialogue-card__icon{font-size:26px}
.dialogue-card__title{font-size:16px;font-weight:700;flex:1}
.dialogue-card__scene{font-size:11px;color:var(--sub);margin-top:2px}
.dialogue-card__playall{font-size:12px;padding:7px 14px;background:var(--accent);color:#160a2e;border-radius:16px;font-weight:700;transition:transform .15s}
.dialogue-card__playall:active{transform:scale(.93)}
.dialogue-turn{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--glass-border)}
.dialogue-turn:last-child{border-bottom:none}
.dialogue-turn__role{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;background:var(--accent-soft);border:1px solid var(--glass-border);color:var(--neon-cyan)}
.dialogue-turn__body{flex:1;min-width:0}
.dialogue-turn__thai{font-size:15.5px;font-weight:600;line-height:1.5}
.dialogue-turn__cn{font-size:13px;color:var(--sub);margin-top:2px}
.dialogue-turn__play{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--neon-cyan);font-size:13px;display:flex;align-items:center;justify-content:center;transition:transform .15s;align-self:center}
.dialogue-turn__play:active{transform:scale(.9)}
.dialogue-turn__play.playing{animation:pulse 1s infinite}

/* ===== 单词卡片 ===== */
.vocab-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.vocab-card{background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:14px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.vocab-card__play{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;background:var(--accent);color:#160a2e;font-size:13px;display:flex;align-items:center;justify-content:center;box-shadow:var(--glow-purple);transition:transform .15s}
.vocab-card__play:active{transform:scale(.9)}
.vocab-card__thai{font-size:19px;font-weight:700;margin-bottom:2px;padding-right:38px}
.vocab-card__roman{font-size:12.5px;color:var(--neon-cyan);font-style:italic;font-weight:600}
.vocab-card__pos{display:inline-block;font-size:10px;padding:2px 8px;background:var(--accent-soft);border:1px solid var(--glass-border);border-radius:8px;color:var(--neon-purple);margin:6px 0 4px;font-weight:700}
.vocab-card__cn{font-size:14px;color:var(--text);font-weight:600}
.vocab-card__example{font-size:12px;color:var(--sub);margin-top:6px;line-height:1.45}
.vocab-card__example b{color:var(--neon-cyan);font-weight:600}

/* ===== 底部性别切换 ===== */
.gender-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:200;display:flex;gap:10px;padding:12px 16px 16px;
  background:rgba(13,27,58,.6);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border-top:1px solid var(--glass-border);max-width:680px;margin:0 auto;
}
.gender-bar__btn{flex:1;padding:12px;border-radius:var(--radius-sm);font-size:15px;font-weight:700;background:var(--glass);border:1px solid var(--glass-border);color:var(--sub);transition:.25s}
.gender-bar__btn.active{background:var(--accent);color:#160a2e;border-color:transparent;box-shadow:var(--glow-purple)}

/* ===== 设置弹窗 ===== */
.modal-overlay{position:fixed;inset:0;z-index:300;display:flex;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.5);backdrop-filter:blur(4px)}
.modal{width:100%;max-width:680px;background:var(--glass-strong);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border:1px solid var(--glass-border-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:20px 20px 32px;box-shadow:0 -10px 50px rgba(0,0,0,.5)}
.modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.modal__header h2{font-size:18px;font-weight:800}
.modal__close{font-size:22px;color:var(--sub);padding:4px 10px}
.setting-row{margin-bottom:18px}
.setting-row label{display:block;font-size:13px;color:var(--sub);margin-bottom:8px;font-weight:600}
.speed-tabs{display:flex;gap:8px}
.speed-tab{flex:1;padding:10px 0;text-align:center;background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:14px;font-weight:600;color:var(--sub);transition:.2s}
.speed-tab.active{background:var(--accent);color:#160a2e;border-color:transparent}
.setting-info{background:rgba(0,0,0,.22);border:1px solid var(--glass-border);border-radius:12px;padding:12px 14px}
.setting-info p{font-size:12.5px;color:var(--sub);margin:4px 0}

/* ===== 大字卡 ===== */
.largecard-overlay{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.6);backdrop-filter:blur(6px)}
.largecard{background:var(--glass-strong);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid var(--glass-border-strong);border-radius:var(--radius-lg);padding:32px 26px;width:100%;max-width:420px;text-align:center;box-shadow:0 20px 70px rgba(0,0,0,.6)}
.largecard__thai{font-size:30px;font-weight:800;line-height:1.5;margin-bottom:10px}
.largecard__roman{font-size:16px;color:var(--neon-cyan);font-style:italic;margin-bottom:4px}
.largecard__zhuyin{font-size:15px;color:var(--neon-pink);margin-bottom:8px}
.largecard__cn{font-size:18px;color:var(--text);margin-bottom:20px}
.largecard__play{width:64px;height:64px;border-radius:50%;background:var(--accent);color:#160a2e;font-size:24px;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--glow-purple);transition:transform .15s}
.largecard__play:active{transform:scale(.92)}

/* ===== 对话播放器浮条 ===== */
.dialogue-player{position:fixed;bottom:84px;left:16px;right:16px;z-index:250;max-width:648px;margin:0 auto;background:var(--glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border-strong);border-radius:var(--radius);padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow)}
.dialogue-player__bar{font-size:14px;flex:1;color:var(--text);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.dialogue-player button{width:38px;height:38px;border-radius:50%;background:var(--accent);color:#160a2e;font-size:15px;flex-shrink:0;display:flex;align-items:center;justify-content:center}

/* ===== 空状态 ===== */
.empty{padding:48px 20px;text-align:center;color:var(--sub)}
.empty__icon{font-size:48px;margin-bottom:12px;opacity:.6}

/* ===== 滚动条隐藏 ===== */
::-webkit-scrollbar{width:0;height:0}

/* ===== 首页快捷入口 ===== */
.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:6px 0 4px}
.feature-card{
  background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid var(--glass-border);border-radius:var(--radius);padding:16px 10px;text-align:center;
  box-shadow:var(--shadow);transition:transform .2s,border-color .2s;cursor:pointer;position:relative;overflow:hidden;
}
.feature-card:active{transform:scale(.95);border-color:var(--neon-cyan)}
.feature-card__icon{font-size:30px;margin-bottom:6px}
.feature-card__title{font-size:14px;font-weight:800;margin-bottom:2px}
.feature-card__sub{font-size:11px;color:var(--sub)}

/* ===== 对话卡片：练习按钮 ===== */
.dialogue-card__practice{font-size:12px;padding:7px 12px;background:var(--accent-soft);border:1px solid var(--neon-purple);color:var(--neon-purple);border-radius:16px;font-weight:700;transition:transform .15s;margin-left:8px}
.dialogue-card__practice:active{transform:scale(.93)}

/* ===== 角色扮演练习 ===== */
.practice-overlay{position:fixed;inset:0;z-index:450;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.62);backdrop-filter:blur(6px)}
.practice{background:var(--glass-strong);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid var(--glass-border-strong);border-radius:var(--radius-lg);padding:30px 24px;width:100%;max-width:440px;text-align:center;box-shadow:0 20px 70px rgba(0,0,0,.6);position:relative}
.practice__close{position:absolute;top:12px;right:14px;font-size:22px;color:var(--sub);background:none}
.practice__progress{font-size:13px;color:var(--sub);font-weight:700;margin-bottom:14px}
.practice__role{display:inline-block;font-size:15px;font-weight:800;padding:6px 18px;border-radius:20px;margin-bottom:18px}
.practice__role--you{background:linear-gradient(135deg,#5eead4,#b794ff);color:#160a2e}
.practice__role--other{background:var(--accent-soft);border:1px solid var(--glass-border);color:var(--neon-cyan)}
.practice__line{background:rgba(0,0,0,.28);border:1px solid var(--glass-border);border-radius:18px;padding:24px 18px;margin-bottom:20px;cursor:pointer;min-height:90px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px}
.practice__thai{font-size:28px;font-weight:800;line-height:1.5}
.practice__cn{font-size:16px;color:var(--sub)}
.practice__hint{font-size:12px;color:var(--neon-pink);margin-top:4px}
.practice__controls{display:flex;gap:10px}
.practice__btn{flex:1;padding:13px 0;border-radius:var(--radius-sm);font-size:15px;font-weight:700;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);transition:transform .15s}
.practice__btn:active{transform:scale(.96)}
.practice__btn--primary{background:var(--accent);color:#160a2e;border-color:transparent;box-shadow:var(--glow-purple)}
.practice__done-icon{font-size:64px;margin:10px 0}
.practice__done-title{font-size:24px;font-weight:800;margin-bottom:8px}
.practice__done-sub{font-size:14px;color:var(--sub);margin-bottom:22px}

/* ===== 跟读评分 ===== */
.record-overlay{position:fixed;inset:0;z-index:450;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.62);backdrop-filter:blur(6px)}
.record-card{background:var(--glass-strong);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid var(--glass-border-strong);border-radius:var(--radius-lg);padding:28px 24px;width:100%;max-width:440px;text-align:center;box-shadow:0 20px 70px rgba(0,0,0,.6);position:relative}
.record__close{position:absolute;top:12px;right:14px;font-size:22px;color:var(--sub);background:none}
.record__title{font-size:18px;font-weight:800;margin-bottom:14px}
.record__thai{font-size:26px;font-weight:800;line-height:1.5}
.record__roman{font-size:14px;color:var(--neon-cyan);font-style:italic;font-weight:600;margin-top:4px}
.record__zhuyin{font-size:13px;color:var(--neon-pink);margin-top:2px}
.record__cn{font-size:15px;color:var(--sub);margin:8px 0 16px}
.record__step{min-height:48px;margin-bottom:16px}
.record__tip{font-size:13px;color:var(--sub);background:rgba(0,0,0,.22);border:1px solid var(--glass-border);border-radius:12px;padding:12px}
.record__recording{font-size:14px;color:var(--neon-pink);font-weight:700}
.record__dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#ff5a7a;animation:pulse 1s infinite;vertical-align:middle;margin-right:6px}
.record__score{font-size:16px;color:var(--sub);margin-bottom:6px}
.record__score b{font-size:40px;font-weight:800;background:var(--accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 4px}
.record__stars{font-size:24px;margin-bottom:8px}
.record__msg{font-size:14px;color:var(--text);margin-bottom:6px}
.record__dur{font-size:12px;color:var(--sub-2);margin-bottom:8px}
.record__controls{display:flex;gap:10px}
.record__btn{flex:1;padding:13px 0;border-radius:var(--radius-sm);font-size:15px;font-weight:700;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);transition:transform .15s}
.record__btn:active{transform:scale(.96)}
.record__btn--primary{background:var(--accent);color:#160a2e;border-color:transparent;box-shadow:var(--glow-purple)}
.record__btn--stop{background:linear-gradient(135deg,#ff8fc7,#ff5a7a);color:#160a2e;border-color:transparent}

/* ===== 每日一句 ===== */
.daily-overlay{position:fixed;inset:0;z-index:450;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.62);backdrop-filter:blur(6px)}
.daily{background:var(--glass-strong);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid var(--glass-border-strong);border-radius:var(--radius-lg);padding:30px 24px;width:100%;max-width:440px;text-align:center;box-shadow:0 20px 70px rgba(0,0,0,.6);position:relative}
.daily__close{position:absolute;top:12px;right:14px;font-size:22px;color:var(--sub);background:none}
.daily__badge{display:inline-block;padding:5px 16px;background:var(--accent);color:#160a2e;font-size:12px;font-weight:800;border-radius:20px;margin-bottom:18px;letter-spacing:1px}
.daily__thai{font-size:34px;font-weight:800;line-height:1.5;margin-bottom:8px}
.daily__roman{font-size:16px;color:var(--neon-cyan);font-style:italic;font-weight:600}
.daily__zhuyin{font-size:14px;color:var(--neon-pink);margin-bottom:6px}
.daily__cn{font-size:19px;color:var(--text);margin-bottom:16px}
.daily__play{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:30px;background:var(--accent);color:#160a2e;font-size:18px;font-weight:700;box-shadow:var(--glow-purple);transition:transform .15s;margin-bottom:16px;white-space:nowrap}
.daily__play:active{transform:scale(.92)}
.daily__streak{font-size:14px;color:var(--sub);margin-bottom:16px}
.daily__streak b{color:var(--neon-pink);font-size:18px}
.daily__controls{display:flex;gap:10px}
.daily__btn{flex:1;padding:13px 0;border-radius:var(--radius-sm);font-size:15px;font-weight:700;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);transition:transform .15s}
.daily__btn:active{transform:scale(.96)}
.daily__btn--primary{background:var(--accent);color:#160a2e;border-color:transparent;box-shadow:var(--glow-purple)}
.daily__btn:disabled{opacity:.55}

/* ===== 安装横幅 ===== */
.install-banner{position:fixed;bottom:74px;left:12px;right:12px;z-index:260;max-width:656px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border-strong);border-radius:var(--radius);box-shadow:var(--shadow)}
.install-banner__icon{font-size:26px}
.install-banner__text{flex:1;min-width:0}
.install-banner__title{font-size:14px;font-weight:800}
.install-banner__sub{font-size:11px;color:var(--sub);margin-top:2px}
.install-banner__btn{padding:9px 16px;background:var(--accent);color:#160a2e;font-size:13px;font-weight:800;border-radius:12px;flex-shrink:0}
.install-banner__close{font-size:18px;color:var(--sub);padding:4px 6px;flex-shrink:0}

/* ===== v4 · 暹罗纸页主题：首页与品牌骨架 ===== */
:root{
  --bg-1:#f2eee5;--bg-2:#f8f5ee;--bg-3:#ebe6db;
  --glass:#fffdf8;--glass-strong:#fffdf8;
  --glass-border:#ddd7cb;--glass-border-strong:#c9c1b4;
  --text:#183d37;--sub:#687570;--sub-2:#959f99;
  --neon-cyan:#1d6c5d;--neon-purple:#b44a3f;--neon-pink:#d36b55;--neon-blue:#3e766c;
  --accent:#d84a3d;--accent-soft:#eef4ed;
  --glow-cyan:none;--glow-purple:none;
  --shadow:0 10px 30px rgba(40,57,50,.08);
  --radius:18px;--radius-sm:12px;--radius-lg:28px;
}
html{background:#e8e2d7}
body{color:var(--text);background:#f2eee5;font-family:"Noto Sans Thai","PingFang SC","Microsoft YaHei",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body::before,body::after{display:none}
button{-webkit-tap-highlight-color:transparent}
#app{width:min(100%,760px);min-height:100vh;margin:0 auto;background:#f8f5ee;box-shadow:0 0 60px rgba(31,50,43,.12)}

.activation-overlay{background:#f2eee5;padding:22px}
.activation-overlay::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 49.7%,rgba(24,61,55,.035) 50%,transparent 50.3%);background-size:24px 24px;pointer-events:none}
.activation-box{max-width:430px;padding:38px 34px 30px;background:#fffdf8;border:1px solid #ddd6ca;border-radius:28px;box-shadow:0 24px 70px rgba(39,54,47,.14);backdrop-filter:none;position:relative;overflow:hidden}
.activation-box::before{content:"";display:block;position:absolute;top:0;left:0;right:0;height:7px;background:linear-gradient(90deg,#b92f37 0 22%,#f5f1e8 22% 36%,#26345f 36% 64%,#f5f1e8 64% 78%,#b92f37 78%)}
.activation-box__icon{margin-bottom:17px}.activation-box__icon svg{width:62px;height:41px;border-radius:7px;filter:none;box-shadow:0 7px 18px rgba(38,52,95,.15)}
.activation-box__eyebrow{font-size:10px;color:#b44a3f;font-weight:800;letter-spacing:.18em;margin-bottom:5px}
.activation-box__title{font-size:34px;line-height:1.25;color:#183d37;background:none;-webkit-text-fill-color:currentColor;letter-spacing:.06em;margin-bottom:8px}
.activation-box__subtitle{max-width:280px;margin:0 auto 18px;color:#6c7873;font-size:14px}
.activation-box__benefits{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin-bottom:22px}.activation-box__benefits span{font-size:11px;color:#52645e;background:#eef3ed;border:1px solid #dce6dc;padding:5px 8px;border-radius:999px}
.activation-box__input{background:#f7f4ed;color:#173c36;border:1px solid #d8d1c5;border-radius:13px;font-size:17px;letter-spacing:2px}.activation-box__input:focus{border-color:#1d6c5d;box-shadow:0 0 0 4px rgba(29,108,93,.09)}
.activation-box__btn{background:#d84a3d;color:#fff;border-radius:13px;box-shadow:0 8px 18px rgba(216,74,61,.19)}.activation-box__btn:hover{box-shadow:0 10px 24px rgba(216,74,61,.24)}
.activation-box__hint{color:#6c7873}.activation-box__hint.error{color:#b92f37}.activation-box__secure{color:#95a09a}.activation-box__emergency{display:flex;align-items:center;justify-content:space-between;margin-top:21px;padding-top:17px;border-top:1px solid #ebe5db;color:#1d6c5d;text-decoration:none;font-size:13px;font-weight:700}.activation-box__emergency span{font-size:18px}

.topbar{height:66px;padding:10px 18px;background:rgba(255,253,248,.94);border-bottom:1px solid #e5dfd4;backdrop-filter:blur(14px)}
.topbar__back{width:38px;height:38px;padding:8px;border:1px solid #e4ddd1;background:#fff;border-radius:12px;display:grid;place-items:center}.topbar__back svg{width:20px;fill:none;stroke:#183d37;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.topbar__brand{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.topbar__mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#17463f;color:#fff8e9;font:800 19px/1 "Noto Sans Thai",sans-serif;box-shadow:inset 0 -2px 0 rgba(0,0,0,.12)}
.topbar__title{flex:1;color:#173c36;font-size:17px;font-weight:800;letter-spacing:.02em}
.topbar__actions{gap:6px}.topbar__btn{width:38px;height:38px;padding:9px;background:#f5f1e9;border:1px solid #e5ded2;border-radius:12px;display:grid;place-items:center}.topbar__btn svg{width:19px;height:19px;fill:none;stroke:#355850;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.topbar__btn:active{background:#e9eee8;transform:scale(.95)}.badge{top:-5px;right:-5px;background:#d84a3d;color:white}

.content{max-width:none;padding:20px 18px 108px}
.home-hero{text-align:left;position:relative;overflow:hidden;padding:32px 28px 25px;margin-bottom:16px;border-radius:25px;background:#17463f;color:#fff9ed;box-shadow:0 15px 30px rgba(23,70,63,.15)}
.home-hero::before{content:"ท";position:absolute;right:-8px;bottom:-62px;color:rgba(255,255,255,.055);font:800 210px/1 "Noto Sans Thai",sans-serif}.home-hero::after{content:"";position:absolute;width:130px;height:130px;border:1px solid rgba(246,190,89,.2);border-radius:50%;right:32px;top:-78px;box-shadow:0 0 0 18px rgba(246,190,89,.035),0 0 0 40px rgba(246,190,89,.025)}
.home-hero__eyebrow{position:relative;z-index:1;color:#f6be59;font:700 14px/1.4 "Noto Sans Thai",sans-serif;margin-bottom:14px}
.home-hero__badge{position:absolute;top:28px;right:25px;z-index:1;margin:0;padding:6px 10px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);color:#dfeae5;font-size:9px;letter-spacing:.13em;border-radius:999px}
.home-hero__title{position:relative;z-index:1;max-width:330px;color:#fff;background:none;-webkit-text-fill-color:currentColor;font-size:30px;line-height:1.25;letter-spacing:-.02em;margin-bottom:10px}
.home-hero__desc{position:relative;z-index:1;max-width:390px;margin:0;color:rgba(255,255,255,.7);font-size:13px;line-height:1.7}
.home-hero__stats{position:relative;z-index:1;justify-content:flex-start;gap:0;margin-top:24px}.home-hero__stat{min-width:0;padding:0 20px;background:none;border:0;border-radius:0;text-align:left;backdrop-filter:none}.home-hero__stat:first-child{padding-left:0}.home-hero__stat+.home-hero__stat{border-left:1px solid rgba(255,255,255,.15)}.home-hero__stat-num{font-size:23px;color:#f6be59;background:none;-webkit-text-fill-color:currentColor}.home-hero__stat-label{color:rgba(255,255,255,.55);font-size:10px}

.feature-row{gap:10px;margin:0 0 26px}.feature-card{width:100%;min-height:112px;padding:15px 11px;text-align:left;background:#fffdf8;border:1px solid #e3ddd2;border-radius:17px;box-shadow:0 6px 18px rgba(41,58,51,.055);backdrop-filter:none}.feature-card:first-child{background:#fff3df;border-color:#f0ddbb}.feature-card:active{transform:scale(.97);border-color:#bfcfc8}.feature-card__icon{font-size:25px;margin-bottom:9px}.feature-card__title{font-size:14px;color:#173c36}.feature-card__sub{font-size:10px;color:#7b8681}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin:0 3px 12px}.section-heading div{display:grid}.section-heading span{font-size:9px;letter-spacing:.14em;color:#c55748;font-weight:800}.section-heading strong{font-size:19px;color:#173c36}.section-heading small{font-size:11px;color:#84908a}

.module-grid{gap:11px;margin:0}.module-card{width:100%;min-height:166px;padding:19px 17px;text-align:left;background:#fffdf8;border:1px solid #e3ddd2;border-radius:19px;box-shadow:0 7px 20px rgba(41,58,51,.055);backdrop-filter:none}.module-card:active{transform:scale(.98)}.module-card__glow{top:16px;right:16px;width:42px;height:42px;filter:none;opacity:.12}.module-card__icon{font-size:28px;margin-bottom:19px}.module-card__name{font-size:16px;color:#173c36}.module-card__desc{min-height:34px;margin-top:5px;color:#7b8580;font-size:10.5px}.module-card__count{margin-top:10px;background:#eef3ed;color:#1d6c5d;border-radius:999px;font-size:10px;padding:4px 9px}

.gender-bar{bottom:12px;left:50%;right:auto;transform:translateX(-50%);width:calc(min(100% - 36px,724px));padding:6px;background:rgba(255,253,248,.96);border:1px solid #dcd5c9;border-radius:17px;box-shadow:0 12px 34px rgba(32,50,43,.16);backdrop-filter:blur(15px)}.gender-bar__btn{padding:10px;background:transparent;border:0;border-radius:12px;color:#78847e}.gender-bar__btn.active{background:#17463f;color:#fff;box-shadow:none}

@media(max-width:480px){.topbar{padding-inline:13px}.topbar__mark{width:32px;height:32px}.topbar__actions{gap:3px}.topbar__btn{width:36px;height:36px}.content{padding:14px 13px 102px}.home-hero{padding:27px 22px 23px;border-radius:22px}.home-hero__title{font-size:27px}.home-hero__badge{right:20px;top:23px}.home-hero__stat{padding:0 13px}.feature-row{gap:7px}.feature-card{padding:13px 9px;min-height:108px}.module-card{padding:17px 14px;min-height:160px}.activation-box{padding:35px 22px 27px}}

/* ===== v4 · 学习界面 ===== */
.topbar:has(.topbar__back[style*="block"]) .topbar__mark{display:none}
.search-bar{position:sticky;top:66px;z-index:90;padding:10px 18px;background:rgba(248,245,238,.96);border-bottom:1px solid #e4ddd2;backdrop-filter:blur(12px)}
.search-bar__input{padding:11px 16px;background:#fffdf8;color:#173c36;border:1px solid #dcd5c9;border-radius:13px}.search-bar__input::placeholder{color:#9aa39f}.search-bar__input:focus{border-color:#1d6c5d;box-shadow:0 0 0 3px rgba(29,108,93,.08)}.search-bar__close{color:#62726c}

.module-intro{display:grid;grid-template-columns:auto 1fr auto;gap:15px;align-items:center;margin-bottom:14px;padding:21px;background:#17463f;color:white;border-radius:21px;box-shadow:0 12px 26px rgba(23,70,63,.13)}
.module-intro__icon{display:grid;place-items:center;width:49px;height:49px;border-radius:15px;background:rgba(255,255,255,.1);font-size:26px}.module-intro__copy{display:grid;min-width:0}.module-intro__copy span,.page-intro span{font-size:9px;letter-spacing:.15em;color:#f6be59;font-weight:800}.module-intro__copy strong{font-size:18px;margin-top:1px}.module-intro__copy p{font-size:11px;color:rgba(255,255,255,.62);line-height:1.5;margin-top:3px}.module-intro__count{text-align:right;display:grid}.module-intro__count b{font-size:22px;color:#f6be59;line-height:1}.module-intro__count small{font-size:9px;color:rgba(255,255,255,.55)}.module-intro__count em{font-size:9px;color:rgba(255,255,255,.46);font-style:normal;margin-top:5px}
.page-intro{padding:21px 22px;margin-bottom:14px;border:1px solid #ded8cd;border-radius:20px;background:#fffdf8}.page-intro strong{display:block;font-size:20px;margin:4px 0 5px}.page-intro p{font-size:12px;color:#75827c}

.sub-tabs{gap:7px;padding:4px 0 12px}.sub-tab{padding:8px 14px;background:#fffdf8;border:1px solid #dfd8cd;border-radius:999px;color:#697771;font-size:12px;backdrop-filter:none;cursor:pointer}.sub-tab.active{background:#17463f;color:white;border-color:#17463f;font-weight:700}
.content-tabs{gap:5px;margin-bottom:14px;padding:5px;background:#ebe7dd;border:1px solid #ded7cb;border-radius:15px}.content-tab{padding:10px 4px;background:transparent;border:0;border-radius:10px;color:#727e79;font-size:13px;cursor:pointer;backdrop-filter:none}.content-tab.active{background:#fffdf8;color:#173c36;box-shadow:0 3px 10px rgba(40,56,49,.08);border:0}

.sentence-card{padding:18px 18px 13px;margin-bottom:11px;background:#fffdf8;border:1px solid #e1dbd0;border-radius:18px;box-shadow:0 6px 20px rgba(40,56,49,.05);backdrop-filter:none;overflow:visible}.sentence-card:active{border-color:#c7d3cd}.sentence-card__top{gap:14px}.sentence-card__thai{font:750 23px/1.5 "Noto Sans Thai","Leelawadee UI",sans-serif;color:#173c36;cursor:pointer}.sentence-card__play{width:44px;height:44px;background:#d84a3d;color:#fff;box-shadow:0 7px 16px rgba(216,74,61,.19)}.sentence-card__play.playing{background:#17463f;animation:paper-pulse 1.1s infinite}.sentence-card__roman{margin:7px 0 1px;color:#1d6c5d;font-size:13px}.sentence-card__zhuyin{color:#b55b4d;font-size:11.5px}.sentence-card__cn{margin-top:5px;color:#53645e;font-size:14px}.sentence-card__actions{align-items:center;gap:5px;margin:11px -4px 0;padding-top:10px;border-top:1px solid #eee8de}.sentence-card__act{padding:6px 9px;background:transparent;border:0;border-radius:9px;color:#74817b;font-size:11px}.sentence-card__act:active{background:#eef2ed}.sentence-card__act.on{color:#1d6c5d}.sentence-card__fav{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;color:#8b9690}.sentence-card__fav.active,.sentence-card__fav.on{color:#d84a3d;background:#fff0ed}.sentence-card__panel{margin:9px 0 3px;padding:13px;background:#f5f2eb;border:1px solid #e4ddd2;border-radius:13px}.sentence-card__panel-title{color:#a84c42}.sentence-card__bd-item{background:#fffdf8;border:1px solid #ded7cb}.sentence-card__bd-word{color:#173c36}.sentence-card__bd-mean,.sentence-card__meta-text{color:#63716b}.sentence-card__meta-label{color:#a84c42}.sentence-card__variation{background:#fffdf8}.sentence-card__variation-thai{color:#173c36}.sentence-card__variation-cn{color:#6d7974}
@keyframes paper-pulse{0%,100%{box-shadow:0 0 0 0 rgba(23,70,63,.18)}50%{box-shadow:0 0 0 7px rgba(23,70,63,0)}}

.dialogue-card{padding:17px;margin-bottom:11px;background:#fffdf8;border:1px solid #e1dbd0;border-radius:18px;box-shadow:0 6px 20px rgba(40,56,49,.05);backdrop-filter:none}.dialogue-card__head{align-items:flex-start;margin-bottom:13px}.dialogue-card__icon{display:grid;place-items:center;width:40px;height:40px;background:#edf3ed;border-radius:12px;font-size:20px}.dialogue-card__title{font-size:15px;color:#173c36}.dialogue-card__scene{color:#7b8781;line-height:1.45}.dialogue-card__playall{padding:7px 10px;background:#d84a3d;color:white;border-radius:10px;font-size:10px}.dialogue-card__practice{margin-left:3px;padding:7px 9px;background:#eef3ed;border:1px solid #cadbd3;color:#1d6c5d;border-radius:10px;font-size:10px}.dialogue-turn{gap:11px;padding:10px 0;border-color:#ece6db}.dialogue-turn__role{width:32px;height:32px;background:#f2eee5;border:1px solid #dfd8cd;color:#9d4b42}.dialogue-turn__thai{color:#173c36}.dialogue-turn__cn{color:#77837e}.dialogue-turn__play{background:#eef3ed;border:1px solid #d3dfd9;color:#1d6c5d}

.vocab-grid{gap:10px}.vocab-card{padding:15px;background:#fffdf8;border:1px solid #e1dbd0;border-radius:16px;box-shadow:0 5px 17px rgba(40,56,49,.05);backdrop-filter:none}.vocab-card__play{background:#d84a3d;color:#fff;box-shadow:none}.vocab-card__thai{color:#173c36}.vocab-card__roman{color:#1d6c5d}.vocab-card__pos{background:#f5eee8;border:0;color:#a64e42}.vocab-card__cn{color:#435a54}.vocab-card__example{color:#7a8680}.vocab-card__example b{color:#1d6c5d}

.empty{padding:50px 20px;color:#7d8983}.empty__icon{filter:grayscale(.4)}
.dialogue-player{bottom:82px;background:#fffdf8;border:1px solid #d8d1c5;border-radius:16px;box-shadow:0 12px 28px rgba(33,50,43,.16);backdrop-filter:none}.dialogue-player__bar{color:#173c36}.dialogue-player button{background:#d84a3d;color:white}

/* ===== v4 · 弹层与练习 ===== */
.modal-overlay,.largecard-overlay,.practice-overlay,.record-overlay,.daily-overlay{background:rgba(19,38,33,.52);backdrop-filter:blur(5px)}
.modal,.largecard,.practice,.record-card,.daily{background:#fffdf8;border:1px solid #d8d1c5;box-shadow:0 24px 70px rgba(20,37,32,.24);backdrop-filter:none;color:#173c36}
.modal{padding:22px 22px 34px;border-radius:25px 25px 0 0}.modal__header{border-bottom:1px solid #ebe5db;padding-bottom:13px}.modal__close,.largecard__close,.practice__close,.record__close,.daily__close{color:#71807a}.setting-row label{color:#62706a}.speed-tab{background:#f5f1e9;border:1px solid #dfd8cd;color:#6d7974}.speed-tab.active{background:#17463f;color:white;border-color:#17463f}.setting-info{background:#f3f0e8;border:1px solid #e2dbd0}.setting-info p{color:#68756f}
.largecard{border-radius:25px}.largecard__thai{color:#173c36}.largecard__roman{color:#1d6c5d}.largecard__zhuyin{color:#b55b4d}.largecard__cn{color:#54655f}.largecard__play{background:#d84a3d;color:white;box-shadow:0 8px 20px rgba(216,74,61,.2)}
.practice,.record-card,.daily{border-radius:25px}.practice__progress{color:#78857f}.practice__role--you{background:#17463f;color:white}.practice__role--other{background:#eef3ed;border-color:#d5e1db;color:#1d6c5d}.practice__line{background:#f5f1e9;border:1px solid #e0d9cd}.practice__thai,.record__thai,.daily__thai{color:#173c36}.practice__cn,.record__cn{color:#64726c}.practice__hint,.record__zhuyin,.daily__zhuyin{color:#b65b4d}.practice__btn,.record__btn,.daily__btn{background:#f1ede5;border:1px solid #ded7cb;color:#52625c}.practice__btn--primary,.record__btn--primary,.daily__btn--primary{background:#17463f;color:white;border-color:#17463f;box-shadow:none}.practice__done-sub{color:#73807a}
.record__roman,.daily__roman{color:#1d6c5d}.record__tip{background:#f4f1e9;border-color:#e1dbd0;color:#68756f}.record__score{color:#6f7d77}.record__score b{color:#d84a3d;background:none;-webkit-text-fill-color:currentColor}.record__recording{color:#c74b45}.record__dur{color:#89938e}.record__btn--stop{background:#d84a3d;color:white;border-color:#d84a3d}
.daily{overflow:hidden}.daily::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#b92f37 0 22%,#f5f1e8 22% 36%,#26345f 36% 64%,#f5f1e8 64% 78%,#b92f37 78%)}.daily__badge{background:#f3e4bd;color:#7c5b13}.daily__cn{color:#52635d}.daily__play{background:#d84a3d;color:white;box-shadow:0 8px 20px rgba(216,74,61,.18)}.daily__streak{color:#6e7b75}.daily__streak b{color:#d84a3d}

.install-banner{bottom:82px;background:#17463f;border:0;border-radius:17px;box-shadow:0 14px 30px rgba(23,70,63,.2);backdrop-filter:none}.install-banner__title{color:white}.install-banner__sub{color:rgba(255,255,255,.58)}.install-banner__btn{background:#f6be59;color:#173c36}.install-banner__close{color:rgba(255,255,255,.65)}

@media(max-width:560px){.module-intro{grid-template-columns:auto 1fr}.module-intro__count{display:none}.dialogue-card__head{flex-wrap:wrap}.dialogue-card__head>div[style]{min-width:calc(100% - 52px)}.vocab-grid{grid-template-columns:1fr 1fr}.practice,.record-card,.daily{padding:27px 18px}.daily__thai{font-size:30px}}
@media(max-width:370px){.feature-row{grid-template-columns:1fr}.feature-card{min-height:auto;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.feature-card__icon{grid-row:1/3;margin:0}.module-grid,.vocab-grid{grid-template-columns:1fr}.module-card{min-height:auto}.topbar__actions .topbar__btn{width:34px;height:34px}.home-hero__stats{justify-content:space-between}.home-hero__stat{padding:0 8px}}

/* ===== v5 · 统一学习系统 ===== */
.content{padding-bottom:116px}.topbar{height:62px}.topbar__mark{background:#b9473c}.topbar__actions .topbar__btn:first-child{background:#fffdf8}
.bottom-nav{position:fixed;z-index:240;left:50%;bottom:12px;transform:translateX(-50%);width:min(calc(100% - 28px),724px);height:67px;display:grid;grid-template-columns:repeat(4,1fr);padding:6px;border:1px solid rgba(202,194,182,.9);border-radius:20px;background:rgba(255,253,248,.96);box-shadow:0 14px 40px rgba(25,50,43,.16);backdrop-filter:blur(18px)}
.bottom-nav__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:14px;color:#87918c;transition:.2s}.bottom-nav__item span{font:700 20px/1 Georgia,serif}.bottom-nav__item b{font-size:9px}.bottom-nav__item.active{background:#173f37;color:#fff}.bottom-nav__item:active{transform:scale(.95)}

.learning-hero{position:relative;padding:24px 24px 20px;margin-bottom:13px;border-radius:25px;background:#173f37;color:#fff;box-shadow:0 14px 32px rgba(23,63,55,.17);overflow:hidden}.learning-hero::after{content:"๓";position:absolute;right:-8px;top:-46px;color:rgba(255,255,255,.035);font:700 220px/1 Georgia,serif}.learning-hero__top{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:start}.learning-hero__top span{color:#eec66e;font-size:10px;font-weight:700;letter-spacing:.06em}.learning-hero__top h1{margin-top:4px;font-family:Georgia,"Songti SC",serif;font-size:27px;letter-spacing:-.025em}.learning-hero__top>button{width:42px;height:42px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.08);color:#f3d892;font-size:12px;font-weight:800}
.today-mission{position:relative;z-index:1;width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:20px;padding:16px;text-align:left;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:#fffdf8;color:#173f37;box-shadow:0 8px 25px rgba(0,0,0,.1)}.today-mission__day{display:grid;width:49px;height:49px;place-items:center;border-radius:15px;background:#f1e4bc;color:#8b6518;font-size:9px;font-weight:800}.today-mission div{min-width:0}.today-mission small{display:block;color:#b9473c;font-size:8px;font-weight:800;letter-spacing:.13em}.today-mission strong{display:block;margin-top:2px;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-mission p{margin-top:3px;color:#7a8680;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-mission>b{color:#b9473c;font-size:10px;line-height:1.5;text-align:right}.today-mission:active{transform:scale(.985)}
.learning-progress{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin-top:17px;color:rgba(255,255,255,.62);font-size:9px}.learning-progress span b{color:#fff}.learning-progress i{height:5px;border-radius:99px;background:rgba(255,255,255,.13);overflow:hidden}.learning-progress i em{display:block;height:100%;border-radius:99px;background:#eec66e}.learning-progress>strong{color:#eec66e;font-size:9px}
.daily-line{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:15px 16px;margin-bottom:25px;border:1px solid #e0d9ce;border-radius:18px;background:#fffdf8;box-shadow:0 6px 18px rgba(37,54,47,.055)}.daily-line__play{width:43px;height:43px;border-radius:14px;background:#b9473c;color:#fff;font-size:13px;box-shadow:0 6px 14px rgba(185,71,60,.18)}.daily-line div{min-width:0}.daily-line span{display:block;color:#aa4a41;font-size:8px;font-weight:800;letter-spacing:.1em}.daily-line b{display:block;margin-top:1px;color:#173f37;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.daily-line small{display:block;color:#7b8781;font-size:9px}.daily-line__more{padding:7px 10px;border-radius:9px;background:#edf3ed;color:#1c6a5b;font-size:9px;font-weight:800}
.section-heading{margin-top:24px}.section-heading:first-child{margin-top:0}.section-heading>button{padding:5px 0;color:#a54b41;font-size:10px;font-weight:700}.section-heading strong{font-size:18px}
.tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.tool-grid .feature-card{min-height:112px;margin:0;padding:14px 12px;background:#fffdf8;border-color:#e2dcd1}.tool-grid .feature-card:first-child{background:#fffdf8;border-color:#e2dcd1}.tool-grid .feature-card__icon{display:grid;width:34px;height:34px;place-items:center;margin-bottom:12px;border-radius:11px;background:#edf3ed;color:#1d6658;font:700 14px/1 Georgia,serif}.tool-grid .feature-card:nth-child(2) .feature-card__icon{background:#f4e8c9;color:#8c671c}.tool-grid .feature-card:nth-child(3) .feature-card__icon{background:#f8e8e4;color:#b3473e}.tool-grid .feature-card:nth-child(4) .feature-card__icon{background:#ececf3;color:#4b5270}.tool-grid .feature-card__title{font-size:12px}.tool-grid .feature-card__sub{font-size:8px;line-height:1.4}
.path-strip{display:flex;gap:9px;margin:0 -18px 4px;padding:0 18px 8px;overflow:auto;scrollbar-width:none}.path-card{flex:0 0 145px;min-height:116px;padding:15px;text-align:left;border:1px solid #e0d9ce;border-radius:17px;background:#fffdf8;box-shadow:0 5px 16px rgba(37,54,47,.045)}.path-card span,.path-card b,.path-card small{display:block}.path-card span{color:#a4aca8;font-size:8px;font-weight:800;letter-spacing:.1em}.path-card b{margin-top:14px;color:#173f37;font-size:13px}.path-card small{margin-top:4px;color:#87918c;font-size:9px}.path-card.is-current{background:#b9473c;border-color:#b9473c;color:#fff}.path-card.is-current span,.path-card.is-current b,.path-card.is-current small{color:#fff}.path-card.is-current span,.path-card.is-current small{opacity:.7}.path-card.is-done{background:#edf5f1;border-color:#d0e1d9}.path-card.is-done span{color:#1b705c}.module-grid--home{margin-bottom:10px}
.scene-intro{background:#173f37;border:0;color:#fff}.scene-intro span{color:#eec66e}.scene-intro p{color:rgba(255,255,255,.62)}.scene-summary{display:grid;grid-template-columns:repeat(3,1fr);margin:13px 0 20px;padding:15px 5px;border:1px solid #dfd8cd;border-radius:17px;background:#fffdf8}.scene-summary div{text-align:center}.scene-summary div+div{border-left:1px solid #e5ded3}.scene-summary b,.scene-summary span{display:block}.scene-summary b{color:#b9473c;font:700 21px/1 Georgia,serif}.scene-summary span{margin-top:5px;color:#85908a;font-size:8px}
.path-list{display:grid;gap:9px}.path-list__item{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:15px;text-align:left;border:1px solid #e0d9ce;border-radius:17px;background:#fffdf8}.path-list__item>span{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:#f0ece4;color:#7c8983;font:700 13px Georgia,serif}.path-list__item small,.path-list__item b,.path-list__item p{display:block}.path-list__item small{color:#b9473c;font-size:8px;font-weight:800;letter-spacing:.08em}.path-list__item b{margin-top:2px;color:#173f37;font-size:13px}.path-list__item p{margin-top:2px;color:#87918c;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.path-list__item em{color:#b9473c;font-style:normal}.path-list__item.is-done{background:#edf5f1;border-color:#cee0d8}.path-list__item.is-done>span{background:#1d6c5d;color:#fff}
.mission-complete{width:100%;margin:-3px 0 14px;padding:11px;border:1px dashed #c9c1b5;border-radius:13px;background:#f5f1e9;color:#74817b;font-size:10px;font-weight:700}.mission-complete.is-done{border-style:solid;border-color:#cae0d7;background:#eaf4ef;color:#1a6d59}.mastery-btn.is-done{background:#e7f2ed!important;color:#176753!important}.sentence-card__actions{row-gap:3px}
.trainer-shell,.builder-shell{max-width:610px;margin:0 auto}.trainer-head{display:flex;justify-content:space-between;color:#a54b41;font-size:8px;font-weight:800;letter-spacing:.13em}.trainer-shell>h1,.builder-shell>h1{margin-top:11px;font-family:Georgia,"Songti SC",serif;font-size:29px;color:#173f37}.trainer-shell>p,.builder-shell>p{margin-top:7px;color:#7b8781;font-size:11px;line-height:1.7}.number-card{display:flex;min-height:330px;margin-top:25px;flex-direction:column;align-items:center;justify-content:center;padding:28px;border:1px solid #e0d8cc;border-radius:25px;background:#fffdf8;box-shadow:0 14px 35px rgba(35,52,45,.07)}.number-card>button{width:63px;height:63px;border-radius:50%;background:#b9473c;color:#fff;font-size:19px;box-shadow:0 9px 22px rgba(185,71,60,.22)}.number-card>span{margin-top:14px;color:#a0a8a3;font-size:9px;letter-spacing:.09em}.number-card>b{margin-top:20px;color:#173f37;font-size:29px}.number-card>em{margin-top:5px;color:#1d6c5d;font-size:12px}.number-card>strong{margin-top:18px;padding:8px 18px;border-radius:10px;background:#f2e5bd;color:#7a5c19;font-size:18px}.number-card>strong.is-hidden{background:#f1eee7;color:#aaa}.trainer-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.trainer-actions button{padding:14px;border:1px solid #ded7cc;border-radius:13px;background:#fffdf8;color:#62716b;font-size:11px;font-weight:800}.trainer-actions button.primary{background:#173f37;border-color:#173f37;color:#fff}
.builder-tabs{display:flex;gap:7px;margin-top:22px;overflow:auto}.builder-tabs button{flex:0 0 auto;padding:9px 13px;border:1px solid #dfd8cd;border-radius:99px;background:#fffdf8;color:#6d7a74;font-size:10px}.builder-tabs button.active{background:#173f37;border-color:#173f37;color:#fff}.builder-options{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:14px}.builder-options button{padding:14px;text-align:left;border:1px solid #e0d9ce;border-radius:14px;background:#fffdf8}.builder-options button b,.builder-options button span{display:block}.builder-options button b{color:#173f37;font-size:12px}.builder-options button span{margin-top:4px;color:#1d6c5d;font-size:13px}.builder-options button.active{border-color:#b9473c;box-shadow:inset 0 0 0 1px #b9473c;background:#fff7f4}.builder-result{margin-top:18px;padding:23px;border-radius:21px;background:#173f37;color:#fff}.builder-result>span{color:#eec66e;font-size:8px;font-weight:800;letter-spacing:.12em}.builder-result>b{display:block;margin-top:11px;font-size:27px;line-height:1.45}.builder-result>p{margin-top:4px;color:rgba(255,255,255,.62);font-size:11px}.builder-result>div{display:flex;gap:8px;margin-top:19px}.builder-result button{padding:10px 13px;border-radius:10px;background:#fff;color:#173f37;font-size:9px;font-weight:800}.builder-result button+button{background:rgba(255,255,255,.1);color:#fff}
.profile-hero{padding:25px;border-radius:23px;background:#173f37;color:#fff}.profile-hero>span{color:#eec66e;font-size:8px;font-weight:800;letter-spacing:.14em}.profile-hero h1{margin-top:5px;font-family:Georgia,"Songti SC",serif;font-size:29px}.profile-hero p{margin-top:7px;color:rgba(255,255,255,.62);font-size:10px}.profile-hero>div{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;margin-top:22px}.profile-hero>div>b{color:#eec66e;font:700 26px Georgia,serif}.profile-hero i{height:6px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.12)}.profile-hero i em{display:block;height:100%;background:#eec66e}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:12px;padding:17px 5px;border:1px solid #dfd8cd;border-radius:17px;background:#fffdf8}.profile-stats div{text-align:center}.profile-stats div+div{border-left:1px solid #e5ded3}.profile-stats b,.profile-stats span{display:block}.profile-stats b{color:#b9473c;font:700 22px Georgia,serif}.profile-stats span{margin-top:4px;color:#89928e;font-size:8px}.profile-actions{display:grid;gap:9px;margin-top:18px}.profile-actions>button{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;text-align:left;border:1px solid #dfd8cd;border-radius:16px;background:#fffdf8}.profile-actions>button>span{display:grid;width:39px;height:39px;place-items:center;border-radius:12px;background:#edf3ed;color:#1d6c5d;font-weight:800}.profile-actions b,.profile-actions small{display:block}.profile-actions b{color:#173f37;font-size:12px}.profile-actions small{margin-top:3px;color:#8a948f;font-size:9px}.profile-actions em{color:#b9473c;font-style:normal}
.dialogue-player{bottom:92px}.install-banner{bottom:92px}
@media(max-width:600px){.tool-grid{grid-template-columns:repeat(2,1fr)}.tool-grid .feature-card{min-height:102px}.module-grid--home{grid-template-columns:repeat(2,1fr)}.learning-hero{padding:21px 18px 18px}.today-mission{grid-template-columns:auto 1fr}.today-mission>b{display:none}.learning-hero__top h1{font-size:24px}.daily-line{grid-template-columns:auto minmax(0,1fr) auto}.path-strip{margin-inline:-13px;padding-inline:13px}.bottom-nav{bottom:8px;width:calc(100% - 18px)}.content{padding-bottom:105px}}
@media(max-width:370px){.today-mission__day{display:none}.today-mission{grid-template-columns:1fr}.daily-line__more{display:none}.tool-grid{grid-template-columns:1fr 1fr}.builder-result>b{font-size:23px}}

/* ===== v5 · 223 个办事与行业任务 ===== */
.tool-grid{grid-template-columns:repeat(3,1fr)}.life-task-banner{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 16px;margin:0 0 18px;padding:17px 18px;text-align:left;border-radius:17px;background:#173f37;color:#fff}.life-task-banner span{color:#eec66e;font-size:8px;font-weight:800;letter-spacing:.12em}.life-task-banner b{grid-column:1;max-width:480px;font-size:12px}.life-task-banner em{grid-column:2;grid-row:1/3;align-self:center;color:#fff;font-size:9px;font-style:normal}.life-task-hero{padding:25px;border-radius:23px;background:#173f37;color:#fff;overflow:hidden}.life-task-hero>span{color:#eec66e;font-size:8px;font-weight:800;letter-spacing:.14em}.life-task-hero h1{max-width:470px;margin-top:6px;font-family:Georgia,"Songti SC",serif;font-size:28px;line-height:1.3}.life-task-hero>p{max-width:500px;margin-top:8px;color:rgba(255,255,255,.63);font-size:10px;line-height:1.7}.life-task-hero>div{display:grid;grid-template-columns:auto auto auto auto;justify-content:start;align-items:end;gap:5px 9px;margin-top:20px}.life-task-hero>div b{color:#eec66e;font:700 22px/1 Georgia,serif}.life-task-hero>div small{color:rgba(255,255,255,.55);font-size:8px;margin-right:12px}.life-task-search{display:flex;align-items:center;gap:9px;margin-top:13px;padding:0 14px;border:1px solid #ded7cb;border-radius:14px;background:#fffdf8}.life-task-search span{color:#b9473c;font:700 20px Georgia,serif}.life-task-search input{width:100%;height:49px;border:0;outline:0;background:transparent;color:#173f37;font-size:11px}.life-task-count{margin:18px 3px 9px;color:#87918c;font-size:9px;font-weight:700}.life-task-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.life-task-grid>button{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:15px;text-align:left;border:1px solid #e0d9ce;border-radius:17px;background:#fffdf8}.life-task-grid>button>span{display:grid;width:39px;height:39px;place-items:center;border-radius:12px;color:#173f37;font:800 10px Georgia,serif}.life-task-grid b,.life-task-grid small,.life-task-grid p{display:block}.life-task-grid b{color:#173f37;font-size:12px}.life-task-grid div>small{margin-top:1px;color:#1d6c5d;font-size:9px}.life-task-grid p{margin-top:5px;color:#87918c;font-size:8px}.life-task-grid>button>em{color:#b9473c;font:700 15px Georgia,serif;text-align:right}.life-task-grid>button>em small{color:#9aa39e;font:500 7px sans-serif}.life-task-grid>button:active{transform:scale(.985)}
.life-category-hero{display:flex;gap:15px;align-items:center;padding:23px;border-radius:21px;background:#173f37;color:#fff}.life-category-hero>span{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;color:#173f37;font:800 12px Georgia,serif}.life-category-hero small{color:#eec66e;font-size:9px}.life-category-hero h1{margin-top:2px;font-family:Georgia,"Songti SC",serif;font-size:24px}.life-category-hero p{margin-top:3px;color:rgba(255,255,255,.58);font-size:9px}.life-category-note{margin:12px 0;padding:14px 16px;border:1px solid #e0d8cc;border-radius:14px;background:#f4eee0}.life-category-note b{color:#8a6518;font-size:10px}.life-category-note p{margin-top:3px;color:#7f7766;font-size:9px;line-height:1.6}.life-route-list{display:grid;gap:7px}.life-route-list button{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:13px 14px;text-align:left;border:1px solid #e1dbd0;border-radius:14px;background:#fffdf8}.life-route-list span{color:#acb2ae;font:700 10px Georgia,serif}.life-route-list b{color:#294942;font-size:11px}.life-route-list em{color:#b9473c;font-style:normal}.task-detail-head{padding:23px 24px;border-radius:21px;background:#173f37;color:#fff}.task-detail-head span{color:#eec66e;font-size:8px;font-weight:800;letter-spacing:.1em}.task-detail-head h1{margin-top:7px;font-family:Georgia,"Songti SC",serif;font-size:25px;line-height:1.35}.task-detail-head p{margin-top:7px;color:rgba(255,255,255,.58);font-size:9px}.task-block,.task-speak,.task-warning{margin-top:11px;padding:18px;border:1px solid #e0d9ce;border-radius:17px;background:#fffdf8}.task-block>span,.task-speak>span{color:#b9473c;font-size:7px;font-weight:800;letter-spacing:.14em}.task-block h2,.task-speak h2{margin:3px 0 10px;color:#173f37;font-size:14px}.task-block>p{color:#68756f;font-size:10px;line-height:1.7}.task-block ul{padding-left:18px;color:#64716b;font-size:10px;line-height:1.9}.task-checklist label{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:10px 0;border-top:1px solid #eee8de;cursor:pointer}.task-checklist input{position:absolute;opacity:0}.task-checklist i{display:grid;width:19px;height:19px;place-items:center;border:1px solid #cfc8bc;border-radius:6px;background:#f7f3ec}.task-checklist input:checked+i{border-color:#1d6c5d;background:#1d6c5d}.task-checklist input:checked+i::after{content:"✓";color:#fff;font-size:11px}.task-checklist label>b{color:#5c6a64;font-size:10px;line-height:1.7}.task-checklist input:checked~b{color:#85908a;text-decoration:line-through}.task-speak{position:relative;padding-right:72px;background:#f2e5bd;border-color:#e5d39f}.task-speak>span{color:#8c681c}.task-speak>b{display:block;color:#173f37;font-size:21px;line-height:1.55}.task-speak>p{margin-top:5px;color:#756b51;font-size:10px}.task-speak>button{position:absolute;right:17px;top:50%;width:45px;height:45px;transform:translateY(-20%);border-radius:50%;background:#b9473c;color:#fff}.task-warning{border-color:#ead0cb;background:#fff1ee}.task-warning b{color:#ad443b;font-size:10px}.task-warning p{margin-top:4px;color:#7f625e;font-size:9px;line-height:1.7}
@media(max-width:600px){.tool-grid{grid-template-columns:repeat(2,1fr)}.life-task-grid{grid-template-columns:1fr}.life-task-hero{padding:22px 20px}.life-task-hero h1{font-size:25px}.life-task-banner{grid-template-columns:1fr}.life-task-banner em{grid-column:1;grid-row:auto;margin-top:5px}.task-speak>b{font-size:19px}}
