:root{
  --bg:#11100e; --bg2:#171411; --card:#211c17; --card2:#2a231d; --line:#3a3027;
  --text:#f7efe2; --muted:#b9a995; --muted2:#786b5c; --gold:#e6a94b; --gold2:#f0bd62;
  --red:#ec6f61; --green:#8bc986; --blue:#7bb7ff; --shadow:0 18px 50px rgba(0,0,0,.32);
  --radius:24px; --safe-bottom:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif}button,input,textarea,select{font:inherit}button{border:0;cursor:pointer;color:inherit}.app-shell{max-width:540px;margin:0 auto;min-height:100vh;background:linear-gradient(180deg,#15120f 0%,#11100e 45%,#0f0e0c 100%);position:relative;padding:18px 16px calc(94px + var(--safe-bottom));overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(17,16,14,.88);backdrop-filter:blur(14px);z-index:5}.brand{font-size:24px;font-weight:900;letter-spacing:.5px}.brand span,.accent{color:var(--gold)}.pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 14px;background:#2a2118;color:var(--gold2);font-weight:800}.small{font-size:12px;color:var(--muted)}.muted{color:var(--muted)}.page{display:none;animation:fade .18s ease}.page.active{display:block}@keyframes fade{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}.section-title{font-size:13px;color:var(--muted);font-weight:800;margin:22px 4px 10px}.hero{padding:22px 0 10px}.hero h1{font-size:30px;line-height:1.12;margin:0 0 8px}.hero p{margin:0;color:var(--muted);line-height:1.6}.grid{display:grid;gap:12px}.grid.two{grid-template-columns:1fr 1fr}.card{background:linear-gradient(180deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card.pad{padding:18px}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stat{background:#191510;border:1px solid #302820;border-radius:18px;padding:14px 10px;text-align:center}.stat b{font-size:20px;color:var(--text)}.stat span{display:block;margin-top:4px;font-size:12px;color:var(--muted)}.progress-bar{height:10px;background:#302820;border-radius:999px;overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold),#93ce82);transition:.25s}.action-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border-radius:22px;background:var(--card);border:1px solid var(--line)}.action-card h3{margin:0 0 5px;font-size:17px}.action-card p{margin:0;font-size:12px;color:var(--muted);line-height:1.35}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:18px;padding:12px 16px;background:var(--gold);color:#20150a;font-weight:900;box-shadow:0 8px 18px rgba(230,169,75,.18)}.btn.secondary{background:#30271f;color:var(--text);border:1px solid var(--line);box-shadow:none}.btn.ghost{background:transparent;color:var(--muted);border:1px solid var(--line);box-shadow:none}.btn.red{background:#3a201e;color:#ff9d92;border:1px solid #7b3d36;box-shadow:none}.btn.green{background:#203220;color:#aee5a6;border:1px solid #446e3f;box-shadow:none}.btn.block{width:100%}.btn:active{transform:scale(.98)}.bottom-nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(540px,100%);height:74px;padding-bottom:var(--safe-bottom);background:rgba(28,24,20,.95);border-top:1px solid var(--line);backdrop-filter:blur(16px);display:grid;grid-template-columns:repeat(4,1fr);z-index:10}.nav-item{background:transparent;color:var(--muted2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:12px}.nav-item b{font-size:21px;line-height:1}.nav-item.active{color:var(--gold)}.study-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 14px}.back{font-size:28px;background:transparent;color:var(--muted);padding:8px 10px}.deck-title{font-weight:900;font-size:18px}.deck-sub{font-size:12px;color:var(--muted);margin-top:3px}.card-word{min-height:430px;display:flex;flex-direction:column;justify-content:space-between;padding:22px;border-radius:30px;background:radial-gradient(circle at 60% 20%,rgba(230,169,75,.10),transparent 36%),linear-gradient(180deg,#2c251f,#211c17);border:1px solid #493b2f;box-shadow:var(--shadow)}.card-top{display:flex;align-items:center;justify-content:space-between}.tag{display:inline-flex;border-radius:999px;padding:6px 10px;background:#191510;border:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:800}.word-main{text-align:center;margin:36px 0 24px}.word-main .word{font-family:Georgia,"Times New Roman",serif;font-size:48px;font-weight:900;line-height:1.05;word-break:break-word}.word-main .ipa{margin-top:12px;color:var(--muted);font-size:14px}.reveal-hint{display:flex;justify-content:center;margin:16px 0}.answer-panel{display:none;margin-top:20px;gap:12px}.answer-panel.show{display:grid}.meaning{font-size:22px;font-weight:900;line-height:1.4}.mnemonic,.example{line-height:1.55;color:#e9ddcc;background:#181510;border:1px solid #342a22;border-radius:18px;padding:14px}.mnemonic::before{content:"记忆方法";display:block;color:var(--gold);font-size:12px;font-weight:900;margin-bottom:6px}.example::before{content:"例句";display:block;color:var(--blue);font-size:12px;font-weight:900;margin-bottom:6px}.grade-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:14px}.icon-btn{width:42px;height:42px;border-radius:16px;background:#191510;border:1px solid var(--line);color:var(--muted);display:inline-flex;align-items:center;justify-content:center}.icon-btn.active{color:var(--gold);border-color:#8a622a}.unit-list{display:grid;gap:10px;margin-top:16px}.unit-item{padding:16px;border-radius:20px;background:var(--card);border:1px solid var(--line)}.unit-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.unit-name{font-size:17px;font-weight:900}.unit-meta{font-size:12px;color:var(--muted);margin-top:4px}.unit-progress{height:7px;background:#302820;border-radius:999px;overflow:hidden;margin-top:12px}.word-row{display:grid;grid-template-columns:1.1fr 1.5fr auto;gap:12px;align-items:center;padding:14px 4px;border-bottom:1px solid var(--line)}.word-row:last-child{border-bottom:0}.word-row .w{font-family:Georgia,"Times New Roman",serif;font-size:20px;font-weight:900}.word-row .m{color:var(--muted);font-size:14px;line-height:1.35}.level-badge{font-size:11px;color:var(--muted);background:#29231d;border-radius:9px;padding:5px 7px}.dot{width:9px;height:9px;border-radius:999px;background:#574b40;display:inline-block;margin-right:9px}.dot.good{background:var(--green)}.dot.vague{background:var(--gold)}.dot.bad{background:var(--red)}.search{width:100%;border:1px solid var(--line);background:#181510;color:var(--text);border-radius:18px;padding:14px 16px;outline:none}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--line)}.settings-row:last-child{border-bottom:0}.settings-row input{width:100px;border:1px solid var(--line);background:#15120f;color:var(--text);border-radius:14px;padding:10px;text-align:center}.empty{padding:38px 18px;text-align:center;color:var(--muted);line-height:1.6}.toast{position:fixed;left:50%;bottom:92px;transform:translateX(-50%) translateY(20px);background:#2c251f;border:1px solid var(--line);color:var(--text);border-radius:18px;padding:12px 16px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.2s;z-index:20}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.danger-zone{border-color:#63362f}.hidden-file{display:none}@media(max-width:420px){.app-shell{padding-left:12px;padding-right:12px}.word-main .word{font-size:42px}.grade-row{gap:8px}.btn{padding:11px 12px}.stat-row{gap:7px}.stat{padding:12px 7px}.card-word{min-height:410px}}
