
:root{
  --bg0:#eef5ff;--bg1:#f8fbff;--panel:rgba(255,255,255,.86);--panel-solid:#fff;
  --text:#0f172a;--muted:#64748b;--line:rgba(148,163,184,.26);
  --primary:#4f46e5;--primary2:#06b6d4;--accent:#f97316;--success:#16a34a;--danger:#ef4444;--warning:#f59e0b;
  --shadow:0 24px 70px rgba(15,23,42,.12);--shadow2:0 12px 28px rgba(79,70,229,.22);--radius:24px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;color:var(--text);background:
  radial-gradient(circle at 8% 2%,rgba(79,70,229,.22),transparent 28rem),
  radial-gradient(circle at 92% 8%,rgba(6,182,212,.20),transparent 24rem),
  linear-gradient(180deg,var(--bg0),var(--bg1));}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.38) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.38) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,black,transparent 75%)}
button,input,select{font:inherit}button{cursor:pointer;border:0}button:active{transform:scale(.98)}
.app-shell{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:18px 0 42px;position:relative}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0 12px;backdrop-filter:blur(20px)}
.brand{display:flex;align-items:center;gap:12px;user-select:none}.brand-logo{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;color:white;font-weight:900;font-size:25px;background:linear-gradient(135deg,var(--primary),#8b5cf6 52%,var(--primary2));box-shadow:var(--shadow2);position:relative}.brand-logo:after{content:"";position:absolute;inset:7px;border-radius:14px;border:1px solid rgba(255,255,255,.45)}.brand h1{margin:0;font-size:21px;letter-spacing:-.03em}.brand p{margin:3px 0 0;color:var(--muted);font-size:13px}.nav-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;padding:6px;border:1px solid rgba(255,255,255,.65);background:rgba(255,255,255,.58);border-radius:999px;box-shadow:0 10px 30px rgba(15,23,42,.07);backdrop-filter:blur(18px)}.nav-btn{padding:10px 15px;border-radius:999px;background:transparent;color:#475569;font-weight:800;transition:.16s ease}.nav-btn:hover{background:rgba(79,70,229,.08);color:var(--primary)}.nav-btn.active{background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;box-shadow:0 10px 24px rgba(79,70,229,.25)}
.main-panel{background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.72));border:1px solid rgba(255,255,255,.72);box-shadow:var(--shadow);border-radius:34px;padding:24px;min-height:72vh;backdrop-filter:blur(18px)}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch}.hero-card,.card{background:var(--panel-solid);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 12px 32px rgba(15,23,42,.05)}.hero-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#f8fbff 54%,#edf7ff 100%)}.hero-card:before{content:"";display:none}.hero-title{margin:0;max-width:680px;font-size:clamp(30px,5.4vw,54px);letter-spacing:-.055em;line-height:1.04}.hero-subtitle{color:var(--muted);line-height:1.85;margin:16px 0 22px;max-width:680px}.actions{display:flex;gap:10px;flex-wrap:wrap}.btn{padding:12px 16px;border-radius:16px;font-weight:900;background:#eef2ff;color:#3730a3;transition:.16s ease;box-shadow:none}.btn:hover{transform:translateY(-1px);filter:saturate(1.05)}.btn.primary{background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;box-shadow:0 14px 30px rgba(79,70,229,.24)}.btn.ghost{background:#fff;color:var(--text);border:1px solid var(--line)}.btn.danger{background:#fee2e2;color:#991b1b}.btn.success{background:#dcfce7;color:#166534}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.stat{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid var(--line);border-radius:18px;padding:14px}.stat b{display:block;font-size:28px;letter-spacing:-.04em}.stat span{color:var(--muted);font-size:13px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:24px 0 12px}.section-title h2{margin:0;font-size:21px}.section-title p{margin:5px 0 0;color:var(--muted)}.subject-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.subject-card{background:var(--panel-solid);border:1px solid var(--line);border-radius:22px;padding:17px;transition:.16s ease;position:relative;overflow:hidden}.subject-card:after{content:"";position:absolute;right:-38px;bottom:-38px;width:92px;height:92px;border-radius:50%;background:rgba(79,70,229,.06)}.subject-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(15,23,42,.08);border-color:rgba(79,70,229,.22)}.subject-card h3{margin:10px 0 8px;font-size:19px}.badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:900;background:#f1f5f9;color:var(--muted)}.badge.ready{background:#dcfce7;color:#166534}.badge.partial{background:#fef3c7;color:#92400e}.subject-card p{color:var(--muted);line-height:1.68;min-height:72px;font-size:14px}.count{font-weight:900;color:var(--primary)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field{display:flex;flex-direction:column;gap:8px}.field label{color:var(--muted);font-size:14px;font-weight:900}.field select,.field input{width:100%;border:1px solid var(--line);background:#fff;border-radius:16px;padding:13px 14px;color:var(--text);outline:0}.field select:focus,.field input:focus{border-color:rgba(79,70,229,.55);box-shadow:0 0 0 4px rgba(79,70,229,.10)}.helper{color:var(--muted);font-size:13px;line-height:1.75}.practice-layout{display:grid;grid-template-columns:1fr 310px;gap:18px}.progress-wrap{margin-bottom:14px}.progress-meta{display:flex;justify-content:space-between;color:var(--muted);font-weight:900;font-size:14px;margin-bottom:8px}.progress-bar{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden}.progress-bar>div{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary2));width:0%;transition:width .2s ease}.question-card{background:var(--panel-solid);border:1px solid var(--line);border-radius:26px;padding:22px;box-shadow:0 12px 32px rgba(15,23,42,.05)}.question-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.question-text{font-size:20px;line-height:1.78;margin:0 0 17px;white-space:pre-wrap}.notice{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:16px;padding:13px;margin:12px 0;line-height:1.65}.options{display:grid;gap:10px}.option{width:100%;text-align:left;background:#f8fafc;color:var(--text);border:1px solid var(--line);border-radius:18px;padding:14px 15px;display:flex;gap:10px;align-items:flex-start;transition:.14s ease}.option:hover{border-color:#93c5fd;background:#eff6ff}.option.selected{border-color:var(--primary);background:#eef2ff;box-shadow:0 0 0 4px rgba(79,70,229,.08)}.option.correct{border-color:#86efac;background:#dcfce7}.option.wrong{border-color:#fecaca;background:#fee2e2}.option-key{font-weight:900;min-width:28px;color:var(--primary)}.answer-panel{display:none;margin-top:16px;border-top:1px dashed var(--line);padding-top:16px;line-height:1.85}.answer-panel.show{display:block}.side-panel{display:flex;flex-direction:column;gap:12px}.timer-card{background:linear-gradient(135deg,#0f172a,#1e1b4b);color:white;border-radius:22px;padding:18px;box-shadow:0 14px 28px rgba(15,23,42,.18)}.timer-card b{font-size:36px;letter-spacing:.02em}.mini-list{display:flex;flex-wrap:wrap;gap:8px}.mini-dot{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:#f1f5f9;color:var(--muted);font-weight:900}.mini-dot.done{background:var(--primary);color:#fff}.mini-dot.right{background:#dcfce7;color:#166534}.mini-dot.bad{background:#fee2e2;color:#991b1b}.result-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.review-list,.history-list{display:grid;gap:12px;margin-top:14px}.review-item{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px}.review-item h4{margin:0 0 8px;line-height:1.65}.review-meta{color:var(--muted);font-size:13px;line-height:1.75}.correct-text{color:var(--success);font-weight:900}.wrong-text{color:var(--danger);font-weight:900}.empty-state{text-align:center;padding:60px 20px;color:var(--muted)}.empty-state h3{color:var(--text);font-size:24px}.empty-icon{font-size:52px}.footer-tools{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}.hidden{display:none!important}
.history-card{position:relative}.history-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}.history-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 4px}.history-summary{color:var(--muted);font-size:13px;line-height:1.7}.history-pagination{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}.history-detail-grid{display:grid;gap:14px;margin-top:14px}.history-answer-box{margin-top:10px;padding:13px 14px;border-radius:15px;background:#f8fafc;border:1px solid var(--line);line-height:1.75;white-space:normal}.history-answer-box.user{background:#eff6ff;border-color:#bfdbfe}.history-answer-box.reference{background:#f8fafc}.history-answer-label{font-size:12px;font-weight:900;color:var(--muted);margin-bottom:6px}.history-question-text{white-space:pre-wrap;line-height:1.75}.history-detail-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}.history-storage-note{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f1f5f9;color:var(--muted);font-size:12px;font-weight:800}
.history-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.history-tab{border:1px solid var(--line);background:#fff;color:var(--muted);padding:10px 14px;border-radius:14px;font-weight:900}.history-tab.active{border-color:var(--primary);background:#eef2ff;color:var(--primary)}
.instant-tip{margin:12px 0;padding:13px 15px;border-radius:16px;background:#eef2ff;border:1px solid #c7d2fe;color:#3730a3;line-height:1.7;font-weight:800}.instant-feedback{margin-top:16px;padding:18px;border-radius:18px;text-align:center;font-size:20px;font-weight:900}.instant-feedback.ok{background:#dcfce7;border:1px solid #86efac;color:#166534}.instant-feedback.bad{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.instant-progress-list{display:flex;flex-wrap:wrap;gap:7px}.instant-step{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#f1f5f9;color:var(--muted);font-size:12px;font-weight:900}.instant-step.done{background:#e0e7ff;color:#3730a3}.instant-step.current{background:var(--primary);color:#fff}.instant-lock-note{color:var(--muted);font-size:13px;line-height:1.65}


@media(max-width:900px){.topbar{align-items:flex-start;flex-direction:column;position:static}.nav-tabs{width:100%;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:6px}.nav-btn{white-space:nowrap}.hero,.practice-layout{grid-template-columns:1fr}.stats-grid,.result-grid{grid-template-columns:repeat(2,1fr)}.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}.main-panel{padding:14px;border-radius:24px}.app-shell{width:min(100% - 16px,1180px);padding-top:8px}.question-text{font-size:18px}}
@media(max-width:620px){body{padding-bottom:82px}.brand h1{font-size:19px;line-height:1.2}.brand p{font-size:12px}.brand-logo{width:46px;height:46px;border-radius:16px}.topbar{gap:10px}.nav-tabs{position:fixed;left:10px;right:10px;bottom:10px;z-index:50;justify-content:space-around;overflow:visible;border-radius:24px;background:rgba(255,255,255,.86);box-shadow:0 18px 42px rgba(15,23,42,.18);backdrop-filter:blur(20px)}.nav-btn{flex:1;padding:10px 6px;font-size:13px}.hero-card,.card,.question-card{padding:16px;border-radius:22px}.hero-title{font-size:34px}.hero-subtitle{font-size:14px}.subject-grid,.stats-grid,.result-grid{grid-template-columns:1fr}.subject-card p{min-height:0}.actions .btn{flex:1 1 100%}.option{padding:13px}.main-panel{min-height:calc(100vh - 178px)}}

/* v0.3 手机竖屏导航修复：部分安卓浏览器 content:// 打开时 viewport 宽度在 620~760px，v0.2 的底部导航规则没有触发，导致标题被导航盖住。 */
@media(max-width:760px){
  body{padding-bottom:92px!important;}
  .app-shell{width:min(100% - 16px,1180px);padding-top:8px;}
  .topbar{position:relative!important;z-index:30!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important;padding:10px 0 12px!important;}
  .brand{min-width:0;width:100%;}
  .brand h1{font-size:19px!important;line-height:1.22!important;white-space:normal!important;}
  .brand p{font-size:12px!important;}
  .brand-logo{width:46px;height:46px;border-radius:16px;flex:0 0 auto;}
  .nav-tabs{position:fixed!important;left:10px!important;right:10px!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;top:auto!important;z-index:80!important;justify-content:space-around!important;overflow:visible!important;flex-wrap:nowrap!important;border-radius:24px!important;background:rgba(255,255,255,.88)!important;box-shadow:0 18px 42px rgba(15,23,42,.20)!important;backdrop-filter:blur(20px)!important;}
  .nav-btn{flex:1 1 0!important;padding:10px 6px!important;font-size:13px!important;white-space:nowrap!important;}
  .main-panel{margin-top:4px;min-height:calc(100vh - 178px);padding:14px;border-radius:24px;}
  .hero,.practice-layout{grid-template-columns:1fr;}
  .subject-grid,.stats-grid,.result-grid{grid-template-columns:1fr;}
  .form-grid{grid-template-columns:1fr;}
  .hero-card,.card,.question-card{padding:16px;border-radius:22px;}
  .hero-title{font-size:34px;}
  .hero-subtitle{font-size:14px;}
  .actions .btn{flex:1 1 100%;}
}



/* v0.4 稳定导航修复：
   部分安卓文件管理器/内置浏览器打开 content:// 本地文件时，position:fixed + bottom 会被错误计算，
   导致导航条压到标题上。v0.4 统一改成“跟随顶部标题流式排列”，横屏竖屏都不悬浮，不再遮挡内容。 */
@media(max-width:900px){
  body{padding-bottom:0!important;}
  .app-shell{width:min(100% - 16px,1180px)!important;padding-top:8px!important;}
  .topbar{position:static!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important;padding:10px 0 14px!important;}
  .brand{width:100%!important;min-width:0!important;position:relative!important;z-index:1!important;}
  .brand h1{white-space:normal!important;line-height:1.22!important;}
  .nav-tabs{position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;z-index:2!important;width:100%!important;display:flex!important;flex-wrap:nowrap!important;justify-content:space-around!important;overflow-x:auto!important;border-radius:22px!important;background:rgba(255,255,255,.82)!important;box-shadow:0 12px 30px rgba(15,23,42,.10)!important;}
  .nav-btn{flex:1 0 auto!important;min-width:70px!important;white-space:nowrap!important;}
  .main-panel{margin-top:0!important;}
}
@media(max-width:620px){
  .brand h1{font-size:20px!important;}
  .brand p{font-size:12px!important;}
  .nav-btn{padding:10px 8px!important;font-size:13px!important;}
  .hero-title{font-size:32px!important;letter-spacing:-.045em!important;}
  .hero-subtitle{line-height:1.75!important;}
}
@media(max-height:520px) and (orientation:landscape){
  .topbar{gap:8px!important;padding:8px 0 10px!important;}
  .brand-logo{width:44px!important;height:44px!important;border-radius:15px!important;font-size:20px!important;}
  .brand h1{font-size:18px!important;}
  .brand p{font-size:12px!important;margin-top:1px!important;}
  .nav-tabs{padding:5px!important;border-radius:20px!important;}
  .nav-btn{padding:8px 10px!important;font-size:13px!important;}
  .main-panel{padding:14px!important;border-radius:24px!important;}
}


/* v0.6 图文理解图片显示 */
.question-imgs{display:grid;gap:12px;margin:4px 0 18px;}
.answer-imgs{margin-top:12px}.answer-img{border-color:rgba(34,197,94,.28);background:#fff}.question-img{width:100%;max-height:520px;object-fit:contain;border-radius:18px;border:1px solid var(--line);background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.06);}
@media(max-width:620px){.answer-imgs{margin-top:12px}.answer-img{border-color:rgba(34,197,94,.28);background:#fff}.question-img{max-height:420px;border-radius:14px;}}

/* v1.8 刷题逻辑增强：题号可点击跳转、整组交卷模式、题量细化 */
.mini-dot{border:0;cursor:pointer;transition:.14s ease}.mini-dot:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.10)}.mini-dot.current{background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;box-shadow:0 10px 22px rgba(79,70,229,.24)}.mini-dot.unanswered{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.batch-tip{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:16px;padding:12px 14px;line-height:1.65;margin:12px 0}.inline-input-tip{color:var(--muted);font-size:12px;margin-top:6px}.detail-count-panel{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}.detail-count-title{font-size:13px;font-weight:900;color:var(--muted);margin:0 0 8px}.badge.count-badge{background:#f8fafc;color:#334155;border:1px solid var(--line)}
.material-reading-box{background:#f8fafc;border:1px solid var(--line);border-radius:20px;padding:16px;margin:12px 0 18px;line-height:1.86;max-height:42vh;overflow:auto;white-space:pre-wrap}.material-reading-box h3{margin:0 0 10px;font-size:16px}.stem-title{background:#fff;border:1px solid var(--line);border-left:5px solid var(--primary);border-radius:18px;padding:14px 16px;margin:14px 0 16px;line-height:1.72;font-size:18px;font-weight:800;white-space:pre-wrap}.group-nav-card .mini-dot.same-material{background:#e0f2fe;color:#075985;border:1px solid #bae6fd}.group-nav-card .mini-dot.same-material.current{background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff}.subjective-box{display:grid;gap:12px;margin-top:12px}.answer-textarea{width:100%;min-height:150px;resize:vertical;border:1px solid var(--line);border-radius:18px;padding:14px 15px;line-height:1.75;outline:0;background:#fff;color:var(--text)}.answer-textarea:focus{border-color:rgba(79,70,229,.55);box-shadow:0 0 0 4px rgba(79,70,229,.10)}.grading-mode-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.score-input{width:130px;border:1px solid var(--line);border-radius:14px;padding:10px 12px}.copy-panel{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px;padding:12px;line-height:1.75}.keyword-chip{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:12px;font-weight:900;margin:3px}.keyword-chip.hit{background:#dcfce7;color:#166534}.keyword-chip.miss{background:#fee2e2;color:#991b1b}.copy-status{font-size:13px;color:var(--success);font-weight:900}.manual-score-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.material-reading-box::-webkit-scrollbar{width:6px}.material-reading-box::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}


/* v2.5 数学专项优化：题图重裁 + 题图/文字双模式 + 填空匹配 */
.article-header{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.article-question-block{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;margin:14px 0;box-shadow:0 10px 24px rgba(15,23,42,.04)}
.article-question-block.answered{background:#fafafa}
.article-question-title{font-size:16px;font-weight:900;line-height:1.7;margin-bottom:12px;white-space:pre-wrap}
.article-sub-status{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 12px}
.article-nav-card .mini-dot{min-width:54px;border-radius:14px}
.article-nav-card .mini-dot.current{transform:none}
.article-progress-note{background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:10px 12px;line-height:1.7;margin:8px 0 12px;color:#475569}
.copy-textbox{width:100%;min-height:100px;border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#fff;white-space:pre-wrap;line-height:1.7;color:#334155}
.rubric-note{font-size:13px;line-height:1.7;color:#64748b}
@media (max-width:700px){.article-question-block{padding:13px;border-radius:16px}.article-question-title{font-size:15px}.article-nav-card .mini-dot{min-width:46px}}


.math-view-switch{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}.math-view-switch .btn{padding:8px 12px;border-radius:12px}.math-text-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;line-height:1.85;font-size:17px;overflow:auto}.math-text-card .inline-formula{max-height:34px;vertical-align:middle;margin:0 2px}.option img.inline-formula{max-height:30px;vertical-align:middle}.math-mode-hint{font-size:13px;color:var(--muted);font-weight:800}.math-fill-note{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;padding:12px;line-height:1.7}.question-img{background:white}

/* v3.0 主观题答案与模拟卷主观评分 + 无选项锁定优化 */
.subjective-subquestion-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:14px;margin:12px 0}
.subjective-subquestion-card h4{margin:0 0 8px;font-size:15px;line-height:1.7}
.rubric-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:10px 0}
.rubric-mini-stat{border:1px solid var(--line);border-radius:14px;background:#f8fafc;padding:10px;text-align:center}
.rubric-mini-stat b{display:block;font-size:20px;color:var(--primary)}
.rubric-part{border:1px solid var(--line);border-radius:18px;background:#fff;padding:14px;margin:12px 0}
.rubric-part-title{font-weight:900;margin-bottom:8px;color:#111827}
.rubric-point-list{display:grid;gap:8px;margin-top:10px}
.rubric-point{border-radius:14px;border:1px solid var(--line);padding:10px;background:#f8fafc;line-height:1.75}
.rubric-point.hit{border-color:#86efac;background:#f0fdf4}
.rubric-point.miss{border-color:#fecaca;background:#fff7ed}
.rubric-point .point-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:900;margin-bottom:4px}
.ref-answer-box{background:#f8fafc;border:1px solid var(--line);border-radius:18px;padding:14px;line-height:1.85;white-space:pre-wrap}
.ref-answer-box .ref-part-title{font-weight:900;color:#3730a3;margin:8px 0 4px}
.ref-answer-box .ref-point{padding-left:10px;border-left:3px solid #c7d2fe;margin:6px 0}


/* v3.0 模拟卷样式 */
.mock-paper{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;margin-top:16px;box-shadow:var(--shadow2)}
.mock-title{text-align:center;margin:0 0 8px;font-size:24px;font-weight:950;letter-spacing:.02em}.mock-subtitle{text-align:center;color:var(--muted);margin:0 0 18px}.mock-section{border-top:2px solid #e2e8f0;padding-top:18px;margin-top:22px}.mock-section-title{font-size:18px;font-weight:950;margin:0 0 12px;line-height:1.65}.mock-question{border:1px solid var(--line);border-radius:18px;padding:14px;margin:12px 0;background:#fbfdff}.mock-question-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.mock-textarea{width:100%;min-height:110px;border:1px solid var(--line);border-radius:14px;padding:12px;line-height:1.75}.mock-result-item{border-left:4px solid #cbd5e1;background:#f8fafc;border-radius:12px;padding:10px;margin:8px 0}.mock-result-item.ok{border-color:var(--success);background:#f0fdf4}.mock-result-item.bad{border-color:var(--danger);background:#fef2f2}
@media(max-width:620px){.mock-paper{padding:15px;border-radius:20px}.mock-title{font-size:20px}.mock-section-title{font-size:16px}}


/* ================= v3.6 结算复盘与科目筛选 ================= */
.subject-filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 16px;padding:6px;border:1px solid var(--line);border-radius:18px;background:#f8fafc}
.subject-filter-btn{border:1px solid transparent;background:transparent;color:#475569;border-radius:13px;padding:9px 12px;font-weight:900;transition:.14s ease}
.subject-filter-btn:hover{background:#fff;border-color:var(--line)}
.subject-filter-btn.active{background:#fff;color:var(--primary);border-color:#c7d2fe;box-shadow:0 6px 16px rgba(79,70,229,.10)}
.filter-empty-v36{border:1px dashed var(--line);border-radius:18px;padding:34px 18px;text-align:center;color:var(--muted);background:#fbfdff}
.library-summary-v36{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:8px 0 14px}
.library-summary-v36 strong{font-size:18px}

.practice-result-hero-v36{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:16px;align-items:stretch}
.practice-result-main-v36{border:1px solid var(--line);border-radius:26px;padding:24px;background:linear-gradient(135deg,#fff 0%,#f8fbff 72%,#eef2ff 100%)}
.result-kicker-v36{font-size:13px;font-weight:950;color:var(--primary);letter-spacing:.08em;text-transform:uppercase}
.practice-result-main-v36 h2{font-size:30px;line-height:1.25;letter-spacing:-.035em;margin:8px 0 10px}
.practice-result-main-v36 p{margin:0;color:var(--muted);line-height:1.8}
.practice-score-card-v36{border:1px solid var(--line);border-radius:26px;background:#fff;padding:20px;display:grid;place-items:center;text-align:center}
.score-ring-v36{--score:0;width:150px;height:150px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--primary) calc(var(--score)*1%),#e2e8f0 0);position:relative}
.score-ring-v36:before{content:"";position:absolute;inset:12px;border-radius:50%;background:#fff}
.score-ring-value-v36{position:relative;z-index:1}.score-ring-value-v36 b{display:block;font-size:42px;line-height:1;letter-spacing:-.06em}.score-ring-value-v36 span{font-size:13px;color:var(--muted);font-weight:900}
.result-metrics-v36{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}
.result-metric-v36{border:1px solid var(--line);border-radius:18px;background:#fff;padding:14px}.result-metric-v36 b{display:block;font-size:24px;letter-spacing:-.04em}.result-metric-v36 span{font-size:13px;color:var(--muted)}
.result-review-panel-v36{margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:26px;padding:22px}
.result-review-head-v36{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap}.result-review-head-v36 h3{margin:0;font-size:22px}.result-review-head-v36 p{margin:5px 0 0;color:var(--muted);line-height:1.7}
.result-filter-bar-v36{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.result-filter-btn-v36{border:1px solid var(--line);background:#fff;color:#475569;border-radius:14px;padding:10px 14px;font-weight:900}.result-filter-btn-v36.active{background:#eef2ff;color:var(--primary);border-color:#c7d2fe}.result-filter-btn-v36.wrong.active{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.result-filter-btn-v36.correct.active{background:#f0fdf4;color:#166534;border-color:#bbf7d0}
.result-note-v36{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;padding:11px 13px;color:#475569;font-size:13px;line-height:1.7}

.review-card-v36{border:1px solid var(--line);border-radius:22px;background:#fff;padding:18px;margin-top:14px;overflow:hidden}
.review-card-v36.is-wrong{border-left:5px solid var(--danger)}.review-card-v36.is-correct{border-left:5px solid var(--success)}
.review-card-head-v36{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}.review-card-meta-v36{color:var(--muted);font-size:13px;line-height:1.7}.review-status-v36{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:950}.review-status-v36.ok{background:#dcfce7;color:#166534}.review-status-v36.bad{background:#fee2e2;color:#991b1b}
.review-question-v36{font-size:17px;line-height:1.8;white-space:pre-wrap;margin:12px 0;font-weight:800}
.review-material-v36{border:1px solid var(--line);border-radius:16px;background:#f8fafc;margin:10px 0}.review-material-v36 summary{cursor:pointer;padding:11px 13px;font-weight:900;color:#475569}.review-material-body-v36{border-top:1px solid var(--line);padding:13px;white-space:pre-wrap;line-height:1.8;color:#334155}
.review-images-v36{display:grid;gap:10px;margin:10px 0}.review-images-v36 img{width:100%;max-height:460px;object-fit:contain;border:1px solid var(--line);border-radius:14px;background:#fff}
.review-options-v36{display:grid;gap:9px;margin-top:12px}.review-option-v36{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:16px;padding:12px 13px;background:#f8fafc}.review-option-v36.correct{background:#f0fdf4;border-color:#86efac}.review-option-v36.wrong-selected{background:#fef2f2;border-color:#fecaca}.review-option-v36.selected:not(.correct):not(.wrong-selected){background:#eff6ff;border-color:#bfdbfe}.review-option-key-v36{min-width:30px;font-weight:950;color:var(--primary)}.review-option-content-v36{flex:1;line-height:1.7;min-width:0}.review-option-content-v36 img{max-width:100%;max-height:90px;object-fit:contain;vertical-align:middle}.review-option-tags-v36{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.review-option-tag-v36{font-size:11px;font-weight:950;border-radius:999px;padding:4px 7px;white-space:nowrap}.review-option-tag-v36.answer{background:#dcfce7;color:#166534}.review-option-tag-v36.user{background:#dbeafe;color:#1d4ed8}.review-option-tag-v36.user-bad{background:#fee2e2;color:#991b1b}
.review-answer-summary-v36{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.review-answer-box-v36{border:1px solid var(--line);border-radius:15px;padding:12px;background:#f8fafc;line-height:1.75;white-space:pre-wrap}.review-answer-box-v36.user{background:#eff6ff;border-color:#bfdbfe}.review-answer-box-v36.reference{background:#f0fdf4;border-color:#bbf7d0}.review-answer-label-v36{font-size:12px;color:var(--muted);font-weight:950;margin-bottom:5px}
.review-explanation-v36{margin-top:12px;border-radius:16px;border:1px solid #fde68a;background:#fffbeb;padding:12px 13px;line-height:1.8;color:#713f12}.review-explanation-v36 b{display:block;margin-bottom:4px;color:#92400e}.review-source-v36{margin-top:10px;color:var(--muted);font-size:12px;line-height:1.65}

.mock-report-v36{border:1px solid #cbd5e1;border-radius:28px;background:#fff;overflow:hidden}
.mock-report-head-v36{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;padding:26px;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff}.mock-report-head-v36 h2{font-size:28px;margin:7px 0 10px;letter-spacing:-.03em}.mock-report-head-v36 p{margin:0;color:#cbd5e1;line-height:1.75}.mock-score-ticket-v36{border:1px solid rgba(255,255,255,.22);border-radius:22px;background:rgba(255,255,255,.08);padding:18px;display:flex;flex-direction:column;justify-content:center;text-align:center}.mock-score-ticket-v36 small{color:#cbd5e1;font-weight:900}.mock-score-ticket-v36 b{font-size:48px;line-height:1.1;letter-spacing:-.06em}.mock-score-ticket-v36 span{font-size:14px;color:#e2e8f0}
.mock-overview-v36{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}.mock-overview-item-v36{padding:12px;border-radius:16px;background:#f8fafc;border:1px solid var(--line)}.mock-overview-item-v36 b{display:block;font-size:23px}.mock-overview-item-v36 span{font-size:13px;color:var(--muted)}
.mock-section-wrap-v36{padding:22px}.mock-section-wrap-v36 h3{margin:0 0 5px}.mock-section-wrap-v36>p{margin:0 0 14px;color:var(--muted)}.mock-section-grid-v36{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mock-section-card-v36{border:1px solid var(--line);border-radius:18px;padding:14px;background:#fbfdff}.mock-section-top-v36{display:flex;justify-content:space-between;gap:10px;align-items:center}.mock-section-top-v36 strong{line-height:1.5}.mock-section-score-v36{font-weight:950;white-space:nowrap}.mock-section-meta-v36{color:var(--muted);font-size:12px;margin-top:6px}.mock-section-bar-v36{height:9px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin-top:10px}.mock-section-bar-v36>span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--primary2));border-radius:inherit}
.mock-actions-v36{display:flex;gap:10px;flex-wrap:wrap;padding:0 22px 22px}.mock-review-panel-v36{margin-top:16px;border:1px solid var(--line);border-radius:26px;background:#fff;padding:22px}.mock-review-section-v36{margin-top:18px}.mock-review-section-title-v36{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:2px solid #e2e8f0;padding-bottom:9px}.mock-review-section-title-v36 h4{margin:0;font-size:17px}.mock-review-section-title-v36 span{color:var(--muted);font-size:13px}

@media(max-width:760px){
  .practice-result-hero-v36,.mock-report-head-v36{grid-template-columns:1fr}.practice-score-card-v36{place-items:start;text-align:left}.score-ring-v36{width:126px;height:126px}.score-ring-value-v36 b{font-size:36px}
  .result-metrics-v36,.mock-overview-v36{grid-template-columns:repeat(2,minmax(0,1fr))}.mock-section-grid-v36{grid-template-columns:1fr}.review-answer-summary-v36{grid-template-columns:1fr}.mock-score-ticket-v36{text-align:left}
}
@media(max-width:480px){
  .practice-result-main-v36,.result-review-panel-v36,.mock-section-wrap-v36,.mock-review-panel-v36{padding:15px}.practice-result-main-v36 h2,.mock-report-head-v36 h2{font-size:23px}.mock-report-head-v36{padding:18px}.result-metrics-v36{grid-template-columns:1fr 1fr}.review-card-v36{padding:14px}.review-option-v36{display:grid;grid-template-columns:auto 1fr}.review-option-tags-v36{grid-column:1/-1;justify-content:flex-start;padding-left:40px}.subject-filter-btn{padding:8px 10px;font-size:13px}
}


/* ================= v3.7 复盘联动与题库查看 ================= */
.history-result-context-v37{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px;padding:15px 17px;border:1px solid #c7d2fe;border-radius:20px;background:linear-gradient(135deg,#eef2ff,#f8fafc)}
.history-result-context-v37 strong{display:block;font-size:17px}.history-result-context-v37 p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.7}
.review-card-actions-v37{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.star-toggle-v37{padding:7px 10px!important;border-radius:12px!important;font-size:12px!important;box-shadow:none!important}
.star-toggle-v37.is-starred{background:#fef3c7!important;border-color:#fcd34d!important;color:#92400e!important}
.library-card-actions-v37{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.library-card-actions-v37 .btn{padding:9px 12px;border-radius:13px;font-size:13px}
.library-detail-head-v37{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:14px}.library-detail-head-v37 h2{margin:0}.library-detail-head-v37 p{margin:5px 0 0;color:var(--muted);line-height:1.7}
.review-card-v36.is-important{border-left:5px solid var(--warning)}.review-status-v36.important{background:#fef3c7;color:#92400e}
.review-answer-summary-v36.single{grid-template-columns:1fr}
.score-ring-value-v36 b{font-size:36px;letter-spacing:-.04em}
@media(max-width:620px){.history-result-context-v37 .actions,.library-detail-head-v37 .actions{width:100%}.review-card-actions-v37{width:100%;justify-content:flex-start}.score-ring-value-v36 b{font-size:32px}}


/* ================= v3.8 错题管理、题型筛选与批量标记 ================= */
.type-filter-wrap-v38{margin-top:10px;padding-top:10px;border-top:1px dashed #dbe3ef}
.type-filter-label-v38{margin:0 0 8px;color:var(--muted);font-size:13px;font-weight:900}
.type-filter-bar-v38{display:flex;gap:8px;flex-wrap:wrap}
.type-filter-btn-v38{border:1px solid var(--line);background:#fff;color:#475569;border-radius:13px;padding:8px 11px;font-size:13px;font-weight:900}
.type-filter-btn-v38.active{background:#ecfeff;color:#0f766e;border-color:#99f6e4}
.bulk-star-row-v38{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:10px 0 14px;padding:11px 13px;border:1px solid #fde68a;border-radius:15px;background:#fffbeb}
.bulk-star-row-v38 span{color:#78350f;font-size:13px;line-height:1.65}
.bulk-star-row-v38 .btn:disabled{opacity:.72;cursor:default}
.remove-wrong-v38{background:#fff7f7!important;border-color:#fecaca!important;color:#b91c1c!important}
.library-summary-v36 .filter-path-v38{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:700}
@media(max-width:520px){.type-filter-btn-v38{padding:8px 9px;font-size:12px}.bulk-star-row-v38 .btn{width:100%}}


/* ================= v3.9 全端稳定巡检 ================= */
.question-text,.stem-title,.review-question-v36,.review-answer-box-v36,.review-explanation-v36,.review-material-body-v36,.history-question-text,.review-item h4{overflow-wrap:anywhere;word-break:break-word}
button,.btn,.nav-btn,.option,.mock-option{touch-action:manipulation}
@media(max-width:480px){
  .nav-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;overflow:visible!important;justify-content:stretch!important;padding:6px!important}
  .nav-btn{min-width:0!important;width:100%!important;flex:none!important;padding:9px 4px!important;font-size:13px!important}
}
@media(max-width:350px){.nav-btn{font-size:12px!important;padding:8px 3px!important}}



/* ================= v4.0 题库审核与重复题标签 ================= */
.phonetic-underline{display:inline-block;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;font-weight:850}
.audit-badge-row{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:10px 0}
.audit-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid transparent;border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:800;line-height:1.2}
.audit-chip.audit-a{background:#e8f7ee;color:#17663a;border-color:#b9e4c8}
.audit-chip.audit-b{background:#fff6df;color:#865800;border-color:#f1d895}
.audit-chip.audit-c{background:#eef1f5;color:#4b5563;border-color:#d6dce4}
.audit-chip.audit-dup{background:#f1edff;color:#5b3bb6;border-color:#d5c9ff}
.question-notice{border:1px solid #dfe5ed;border-radius:14px;background:#fbfcfe;margin:10px 0 14px;overflow:hidden}
.question-notice summary{cursor:pointer;list-style:none;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:800}
.question-notice summary::-webkit-details-marker{display:none}
.question-notice summary::after{content:'查看说明';font-size:.75rem;color:var(--muted);font-weight:700;white-space:nowrap}
.question-notice[open] summary::after{content:'收起说明'}
.question-notice-body{padding:0 13px 12px;color:#4b5563;font-size:.88rem;line-height:1.7}
.question-notice-item+.question-notice-item{margin-top:8px;padding-top:8px;border-top:1px dashed #dfe5ed}
.question-notice.compact{margin:7px 0 10px}
.question-notice.compact summary{padding:7px 10px}
.unique-count-note{margin-top:10px;padding:10px 12px;border-radius:12px;background:#f7f8fb;color:#4b5563;font-size:.86rem;line-height:1.6}
.subject-count-pair{display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}
.subject-count-pair .count-secondary{font-size:.86rem;color:var(--muted);font-weight:700}
.dedupe-field-note{font-size:.78rem;color:var(--muted);margin-top:5px;line-height:1.45}
@media (min-width:980px){.stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media (max-width:560px){.question-notice summary{align-items:flex-start;flex-direction:column}.question-notice summary::after{align-self:flex-end}.audit-chip{font-size:.74rem;padding:5px 8px}}


/* ================= v4.3 数学零基础衔接、解析与逻辑修复 ================= */
.knowledge-bridge-v43{border:1px solid #fde68a;background:linear-gradient(180deg,#fffbeb,#fff);border-radius:20px;padding:20px}.knowledge-bridge-v43 h3{color:#92400e}.knowledge-bridge-v43 .bridge-note{color:#92400e;font-weight:750;margin-bottom:10px}.knowledge-concept-grid-v43{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.knowledge-concept-v43{border:1px solid #dbeafe;background:#f8fbff;border-radius:17px;padding:16px}.knowledge-concept-v43 h4{margin:0 0 8px;color:#1e40af}.knowledge-concept-v43 p{margin:0;line-height:1.75;color:#334155}.knowledge-tiny-v43{margin-top:14px;padding:14px 16px;border-left:4px solid #06b6d4;background:#ecfeff;border-radius:12px;line-height:1.75}.knowledge-coverage-v43{display:flex;flex-wrap:wrap;gap:8px}.knowledge-coverage-v43 span{padding:7px 11px;border-radius:999px;background:#f1f5f9;color:#334155;font-weight:750;font-size:13px}.knowledge-label-v43{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.knowledge-label-v43 button,.knowledge-label-v43 span{border:1px solid #c7d2fe;background:#eef2ff;color:#3730a3;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.knowledge-label-v43 button{cursor:pointer}.outline-tree-v43{display:grid;gap:14px}.outline-module-v43{border:1px solid #dbe3ee;border-radius:20px;background:#fff;overflow:hidden}.outline-module-v43>summary{cursor:pointer;padding:17px 19px;font-weight:900;color:#1e293b;background:#f8fafc}.outline-node-v43{padding:14px 19px;border-top:1px solid #eef2f7}.outline-node-v43 h4{margin:0 0 7px}.outline-node-v43 p{margin:4px 0;color:#64748b;line-height:1.65}.unanswered-v43{background:#fff7ed!important;color:#c2410c!important}.math-explain-mark-v43{display:inline-flex;margin-bottom:8px;padding:5px 9px;border-radius:999px;background:#ecfeff;color:#0e7490;font-size:12px;font-weight:850}
@media(max-width:760px){.knowledge-concept-grid-v43{grid-template-columns:1fr}.knowledge-bridge-v43{padding:16px}}



/* v4.8 beginner-first lessons and computer */
.v48-route-card{margin:18px 0}.v48-route-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.v48-route-grid article{background:#fff;border:1px solid #dbe5f1;border-radius:22px;padding:20px;box-shadow:0 12px 30px rgba(15,23,42,.05)}.v48-route-grid article>span,.v48-step-chip,.computer-chip-v48{display:inline-flex;padding:7px 12px;border-radius:999px;background:#e0f2fe;color:#075985;font-weight:900;font-size:.84rem}.v48-route-grid h3{margin:12px 0 6px}.v48-route-grid p{color:#64748b;line-height:1.7}.v48-beginner-card{border-left:5px solid #38bdf8}.v48-big-plain{font-size:1.08rem;line-height:1.95;color:#172554;font-weight:700;background:#eff6ff;border-radius:18px;padding:18px}.v48-three-grid{display:grid;gap:12px;margin:14px 0}.v48-three-grid>div{display:grid;grid-template-columns:40px 1fr;align-items:center;gap:12px;padding:13px 15px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px}.v48-three-grid b{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#4f46e5;color:#fff}.v48-walk-list{display:grid;gap:12px;padding-left:24px;line-height:1.8}.v48-finish-line,.computer-compare-v48{margin-top:14px;padding:15px 17px;border-radius:16px;background:#fffbeb;border:1px solid #fde68a;line-height:1.75;color:#713f12}.computer-hero-v48{background:linear-gradient(135deg,#ecfeff,#eef2ff);border:1px solid #a5f3fc;border-radius:26px;padding:24px;margin-bottom:18px}.computer-card-v48{border-color:#bae6fd}.knowledge-chip-v42.warn{background:#fff7ed;color:#9a3412}
@media(max-width:650px){.v48-route-grid{grid-template-columns:1fr}.v48-big-plain{font-size:1rem;padding:15px}.v48-route-grid article{padding:17px}.computer-hero-v48{padding:18px}}



/* v3.3 首页水印移除 */
.hero-card:before{content:""!important;display:none!important;}
.changelog-list{display:grid;gap:12px;margin-top:14px}.changelog-item{border:1px solid var(--line);border-radius:18px;padding:14px;background:#fff}.changelog-item h3{margin:0 0 8px}.changelog-item p{margin:0;color:var(--muted);line-height:1.75}.version-pill{display:inline-flex;align-items:center;border-radius:999px;background:#eef2ff;color:#3730a3;font-weight:950;padding:5px 10px;margin-right:6px}


/* v3.3 最终体验优化：普通文字点击不再显示打字竖杠；保留文字复制与输入框正常输入 */
body, body *:not(input):not(textarea):not(select):not(button):not(a) {
  cursor: default;
}
body *:not(input):not(textarea) {
  caret-color: transparent;
}
input, textarea {
  cursor: text;
  caret-color: auto;
  user-select: text;
  -webkit-user-select: text;
}
button, a, select, .btn, .tab, .pill, .chip, .option, .choice, .nav-item, .qnav button,
.subject-card, .mode-card, .type-card, .source-card, .answer-option, [role="button"], [onclick] {
  cursor: pointer;
}
.badge:empty { display: none !important; }
html, body { -webkit-tap-highlight-color: transparent; }



  .nav-btn:disabled{opacity:.46;cursor:not-allowed;filter:saturate(.55);box-shadow:none!important}
  .brand.session-locked{opacity:.72;cursor:not-allowed;pointer-events:none}
  .session-lock-toast{position:fixed;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:140;max-width:min(92vw,520px);padding:11px 16px;border-radius:999px;background:rgba(15,23,42,.94);color:#fff;font-size:14px;font-weight:800;text-align:center;box-shadow:0 16px 40px rgba(15,23,42,.28);animation:v39ToastIn .18s ease}
  @keyframes v39ToastIn{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}
  .resume-overlay-v39{position:fixed;inset:0;z-index:180;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.55);backdrop-filter:blur(8px)}
  .resume-dialog-v39{width:min(100%,540px);max-height:min(86vh,720px);overflow:auto;background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:28px;padding:24px;box-shadow:0 30px 90px rgba(15,23,42,.32)}
  .resume-icon-v39{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;font-size:27px;box-shadow:0 12px 28px rgba(79,70,229,.22)}
  .resume-dialog-v39 h2{margin:14px 0 6px;font-size:23px}
  .resume-dialog-v39 p{margin:0;color:var(--muted);line-height:1.72}
  .resume-meta-v39{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}
  .resume-meta-v39>div{padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#f8fafc}
  .resume-meta-v39 b{display:block;color:var(--text);font-size:16px;overflow-wrap:anywhere}
  .resume-meta-v39 span{display:block;margin-top:3px;color:var(--muted);font-size:12px}
  .resume-actions-v39{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
  .resume-actions-v39 .btn{flex:1 1 180px}
  @media(max-width:520px){.resume-dialog-v39{padding:19px;border-radius:23px}.resume-meta-v39{grid-template-columns:1fr}.resume-actions-v39 .btn{flex-basis:100%}.session-lock-toast{bottom:calc(132px + env(safe-area-inset-bottom));border-radius:18px}}



.question-version-switch-v41{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 14px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc}
.question-version-switch-v41 .btn{padding:8px 12px;border-radius:12px}
.question-version-switch-v41 .version-hint-v41{font-size:13px;color:var(--muted);font-weight:800;line-height:1.55}
.question-version-switch-v41.frozen{background:#fff7ed;border-color:#fed7aa}
.question-version-badge-v41{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;font-size:13px;font-weight:900;background:#e0e7ff;color:#3730a3}
.question-version-badge-v41.corrected{background:#dcfce7;color:#166534}
.question-version-badge-v41.legacy{background:#fef3c7;color:#92400e}
.version-context-note-v41{margin:8px 0 12px;padding:9px 12px;border-radius:13px;background:#eef2ff;color:#3730a3;font-size:13px;font-weight:800;line-height:1.6}
.qv-setup-note-v41{font-size:12px;color:var(--muted);line-height:1.55;margin-top:6px}
.mock-version-toolbar-v41{position:sticky;top:8px;z-index:8;margin:12px 0 18px;box-shadow:0 8px 24px rgba(15,23,42,.08)}
.answer-version-line-v41{margin-top:8px;font-size:13px;color:#475569;font-weight:800}
.review-version-row-v41{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 10px}
.review-math-text-v41{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;line-height:1.9;font-size:18px;overflow:auto;margin:10px 0}
.review-math-text-v41 img.inline-formula{max-height:36px!important;max-width:100%!important;width:auto!important;height:auto!important;vertical-align:middle!important;object-fit:contain}
.review-card-v36.is-math-v41 .review-option-content-v36 img,
.review-card-v36.is-math-v41 .review-option-content-v36 img.inline-formula{max-height:48px!important;max-width:100%!important;width:auto!important;height:auto!important;object-fit:contain!important;vertical-align:middle!important}
.review-card-v36.is-math-v41 .review-option-v36{min-height:74px;align-items:center}
.review-card-v36.is-math-v41 .review-option-content-v36{min-width:0;overflow:auto;display:flex;align-items:center}
.review-math-image-details-v41{margin:10px 0;border:1px dashed #cbd5e1;border-radius:14px;padding:8px 12px;background:#f8fafc}
.review-math-image-details-v41 summary{cursor:pointer;font-weight:850;color:#475569}
.review-math-image-details-v41 img{display:block;max-width:100%;height:auto;margin:10px auto 0;border-radius:10px;background:#fff}
.alternate-version-v41{margin-top:12px;border:1px dashed #cbd5e1;border-radius:14px;padding:9px 12px;background:#fafafa}
.alternate-version-v41 summary{cursor:pointer;font-weight:850;color:#475569}
.alternate-version-body-v41{padding-top:10px;line-height:1.75;font-size:14px}
.alternate-version-body-v41 .alt-options-v41{margin-top:6px;display:grid;gap:5px}
@media (max-width:640px){
  .question-version-switch-v41{padding:9px;gap:6px}
  .question-version-switch-v41 .btn{flex:1;min-width:116px}
  .review-math-text-v41{font-size:17px;padding:12px}
  .review-card-v36.is-math-v41 .review-option-content-v36 img,
  .review-card-v36.is-math-v41 .review-option-content-v36 img.inline-formula{max-height:42px!important}
  .review-card-v36.is-math-v41 .review-option-v36{min-height:68px}
}




/* ================= v4.3 数学零基础衔接与解析版 ================= */
.nav-tabs{overflow-x:auto;scrollbar-width:none}.nav-tabs::-webkit-scrollbar{display:none}
.knowledge-home-v42{display:grid;gap:18px}.knowledge-hero-v42{padding:26px;border-radius:24px;background:linear-gradient(135deg,#eef2ff 0%,#ecfeff 100%);border:1px solid #dbeafe;box-shadow:0 18px 45px rgba(55,65,170,.09)}
.knowledge-hero-v42 h2{margin:0 0 8px;font-size:clamp(26px,4vw,38px)}.knowledge-hero-v42 p{margin:0;color:#53627a;line-height:1.75}
.knowledge-subject-grid-v42,.knowledge-module-grid-v42{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.knowledge-subject-card-v42,.knowledge-module-card-v42,.knowledge-node-card-v42{border:1px solid #dfe5ef;border-radius:20px;background:#fff;padding:18px;box-shadow:0 8px 24px rgba(15,23,42,.045)}
.knowledge-subject-card-v42.available{border-color:#a5b4fc;background:linear-gradient(180deg,#fff,#f5f7ff)}.knowledge-subject-card-v42 h3,.knowledge-module-card-v42 h3,.knowledge-node-card-v42 h3{margin:8px 0 7px}.knowledge-subject-card-v42 p,.knowledge-module-card-v42 p,.knowledge-node-card-v42 p{color:#64748b;line-height:1.65;margin:0}
.knowledge-subject-meta-v42,.knowledge-node-meta-v42{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.knowledge-chip-v42{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:750}.knowledge-chip-v42.muted{background:#f1f5f9;color:#64748b}.knowledge-chip-v42.warn{background:#fff7ed;color:#c2410c}.knowledge-chip-v42.good{background:#ecfdf5;color:#047857}
.knowledge-toolbar-v42{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.knowledge-progress-v42{height:10px;border-radius:999px;background:#e8edf5;overflow:hidden}.knowledge-progress-v42>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4f46e5,#06b6d4)}
.knowledge-summary-grid-v42{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:16px}.knowledge-summary-v42{padding:14px;border:1px solid #e2e8f0;border-radius:16px;background:rgba(255,255,255,.8)}.knowledge-summary-v42 b{display:block;font-size:23px}.knowledge-summary-v42 span{font-size:12px;color:#64748b}
.knowledge-module-card-v42{cursor:pointer;transition:.18s transform,.18s border-color}.knowledge-module-card-v42:hover{transform:translateY(-2px);border-color:#a5b4fc}.knowledge-module-number-v42{font-weight:850;color:#4f46e5;font-size:13px}
.knowledge-node-grid-v42{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}.knowledge-node-card-v42{display:flex;flex-direction:column;gap:8px}.knowledge-node-card-v42 .actions{margin-top:auto}.knowledge-status-v42{display:inline-flex;padding:5px 10px;border-radius:999px;font-weight:800;font-size:12px;background:#f1f5f9;color:#475569}.knowledge-status-v42[data-status="学习中"]{background:#eff6ff;color:#1d4ed8}.knowledge-status-v42[data-status="基本掌握"]{background:#fefce8;color:#a16207}.knowledge-status-v42[data-status="需要复习"]{background:#fff1f2;color:#be123c}.knowledge-status-v42[data-status="已掌握"]{background:#ecfdf5;color:#047857}
.knowledge-breadcrumb-v42{display:flex;flex-wrap:wrap;gap:7px;align-items:center;color:#64748b;font-size:13px;margin-bottom:12px}.knowledge-breadcrumb-v42 button{border:0;background:none;color:#4f46e5;font-weight:750;padding:0;cursor:pointer}
.knowledge-node-layout-v42{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:16px;align-items:start}.knowledge-side-v42{position:sticky;top:92px;display:grid;gap:12px}
.knowledge-card-v42{border:1px solid #e2e8f0;border-radius:20px;background:#fff;padding:20px}.knowledge-card-v42 h3{margin:0 0 12px}.knowledge-list-v42{margin:0;padding-left:20px;color:#334155;line-height:1.8}.knowledge-formula-grid-v42{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.knowledge-formula-v42{padding:13px 15px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;font-family:"Cambria Math","Times New Roman",serif;font-size:17px;overflow-wrap:anywhere}
.knowledge-method-v42{counter-reset:kstep;display:grid;gap:9px}.knowledge-method-step-v42{counter-increment:kstep;display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start}.knowledge-method-step-v42:before{content:counter(kstep);display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#4f46e5;color:#fff;font-weight:850}
.knowledge-question-tag-v42{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.knowledge-q-preview-v42{border:1px solid #dbe3ee;border-radius:18px;padding:16px;background:#fbfdff}.knowledge-q-preview-v42 .knowledge-math-text-v42{font-size:18px;line-height:1.8;overflow-x:auto}.knowledge-q-preview-v42 img.inline-formula{max-height:46px;width:auto;vertical-align:middle}.knowledge-q-option-v42{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;margin-top:8px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:13px;background:#fff;overflow-x:auto}.knowledge-q-option-v42 .key{font-weight:900;color:#4f46e5}.knowledge-q-option-v42 img.inline-formula{max-height:42px;width:auto}.knowledge-original-image-v42 img{max-width:100%;height:auto;border-radius:12px;margin-top:10px}
.knowledge-guide-v42{border:1px solid #c7d2fe;background:linear-gradient(180deg,#f8faff,#fff);border-radius:20px;padding:18px}.knowledge-guide-focus-v42{font-weight:800;color:#3730a3;margin-bottom:12px}.knowledge-guide-step-v42{display:grid;grid-template-columns:32px 1fr;gap:10px;margin:10px 0;animation:knowledgeFadeV42 .2s ease}.knowledge-guide-step-v42 .num{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#4338ca;color:#fff;font-weight:850}.knowledge-guide-hidden-v42{padding:15px;border:1px dashed #cbd5e1;border-radius:14px;color:#64748b;text-align:center}.knowledge-takeaway-v42{margin-top:12px;padding:13px 15px;border-radius:14px;background:#ecfdf5;color:#065f46;font-weight:700}@keyframes knowledgeFadeV42{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.knowledge-status-controls-v42{display:grid;gap:8px}.knowledge-status-buttons-v42{display:flex;flex-wrap:wrap;gap:7px}.knowledge-status-buttons-v42 button{border:1px solid #dbe3ee;background:#fff;border-radius:999px;padding:7px 10px;cursor:pointer;font-weight:700;color:#475569}.knowledge-status-buttons-v42 button.active{background:#4f46e5;color:#fff;border-color:#4f46e5}
.knowledge-question-list-v42{display:grid;gap:8px}.knowledge-question-row-v42{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;border:1px solid #e2e8f0;border-radius:13px;background:#fff}.knowledge-question-row-v42 .meta{font-size:12px;color:#64748b}.knowledge-result-panel-v42{margin:14px 0;padding:18px;border:1px solid #a5b4fc;border-radius:20px;background:linear-gradient(135deg,#eef2ff,#ecfeff)}
.knowledge-coming-v42{opacity:.78}.knowledge-start-banner-v42{margin-bottom:16px;padding:16px 18px;border-radius:18px;border:1px solid #c7d2fe;background:#f5f7ff;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media(max-width:760px){.knowledge-node-layout-v42{grid-template-columns:1fr}.knowledge-side-v42{position:static}.knowledge-hero-v42{padding:20px}.knowledge-node-grid-v42{grid-template-columns:1fr}.knowledge-question-row-v42{align-items:flex-start;flex-direction:column}.knowledge-q-preview-v42 .knowledge-math-text-v42{font-size:16px}.knowledge-q-preview-v42 img.inline-formula{max-height:38px}.knowledge-q-option-v42 img.inline-formula{max-height:36px}}




/* v4.4：错题/重要题数学公式预览 */
.library-math-preview-v44{
  margin:8px 0 4px;
  color:var(--text);
  font-size:1.08rem;
  line-height:1.85;
  font-weight:800;
  overflow-wrap:anywhere;
}
.library-math-preview-v44 img,
.library-math-preview-v44 .inline-formula{
  display:inline-block;
  width:auto !important;
  max-width:min(100%, 360px);
  max-height:1.55em !important;
  object-fit:contain;
  vertical-align:-0.32em;
  margin:0 .08em;
}
.library-math-preview-v44.is-image-only{
  color:var(--muted);
  font-weight:700;
  padding:10px 12px;
  border:1px dashed var(--line);
  border-radius:14px;
  background:rgba(248,250,252,.86);
}

/* v4.4：历史记录重新分层 */
.history-card-v44{
  padding:20px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 28px rgba(30,64,175,.055);
}
.history-card-v44 + .history-card-v44{margin-top:14px}
.history-card-top-v44{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.history-date-v44{
  color:var(--muted);
  font-size:.9rem;
  line-height:1.5;
}
.history-subject-v44{
  display:inline-flex;
  align-items:center;
  padding:6px 11px;
  border-radius:999px;
  background:#eef2ff;
  color:#4338ca;
  font-size:.84rem;
  font-weight:800;
  white-space:nowrap;
}
.history-card-v44 h4{
  margin:12px 0 9px;
  font-size:1.12rem;
  line-height:1.55;
  color:var(--text);
}
.history-context-v44{
  color:var(--muted);
  font-size:.9rem;
  line-height:1.55;
  margin-bottom:10px;
}
.history-tags-v44{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 15px;
}
.history-tags-v44 span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 10px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid #e5e7eb;
  color:#536174;
  font-size:.8rem;
  font-weight:700;
}
.history-metrics-v44{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin:0 0 16px;
}
.history-metric-v44{
  min-width:0;
  padding:11px 10px;
  border-radius:15px;
  background:#f8fafc;
  border:1px solid #edf0f5;
}
.history-metric-v44 b{
  display:block;
  color:var(--text);
  font-size:1.08rem;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.history-metric-v44 span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.76rem;
}
.history-metric-v44.primary{
  background:#eef7ff;
  border-color:#cfe7ff;
}
.history-metric-v44.primary b{color:#175cd3}
.history-card-actions-v44{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.history-card-actions-v44 .btn{min-width:124px}
@media(max-width:640px){
  .history-card-v44{padding:16px;border-radius:19px}
  .history-card-top-v44{align-items:center}
  .history-card-v44 h4{font-size:1.05rem;margin-top:10px}
  .history-metrics-v44{grid-template-columns:repeat(2,minmax(0,1fr))}
  .history-card-actions-v44{display:grid;grid-template-columns:1fr 1fr}
  .history-card-actions-v44 .btn{min-width:0;width:100%}
}



.chinese-hero-v45{background:linear-gradient(135deg,#fff7ed,#fff,#fef2f2);border:1px solid #fed7aa;border-radius:26px;padding:24px}
.chinese-chip-v45{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;font-size:.82rem;font-weight:800}
.chinese-node-card-v45{border-color:#fed7aa;background:linear-gradient(180deg,#fff,#fffaf5)}
.chinese-lesson-v45{border:1px solid #fed7aa;background:#fffaf5;border-radius:20px;padding:19px}
.chinese-lesson-v45 h3{color:#9a3412}
.chinese-concepts-v45{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:11px}
.chinese-concept-v45{border:1px solid #fde7d3;background:#fff;border-radius:16px;padding:15px;line-height:1.72}
.chinese-concept-v45 b{display:block;color:#9a3412;margin-bottom:5px}
.chinese-task-sheet-v45{border-left:4px solid #f97316;background:#fff7ed;border-radius:14px;padding:14px 16px;line-height:1.75}
.chinese-evidence-v45{display:grid;gap:9px;counter-reset:evidence}
.chinese-evidence-v45>div{position:relative;padding:12px 14px 12px 48px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;line-height:1.7}
.chinese-evidence-v45>div:before{counter-increment:evidence;content:counter(evidence);position:absolute;left:13px;top:11px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#f97316;color:#fff;font-weight:900}
.chinese-preview-material-v45{margin-top:10px;border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc}
.chinese-preview-material-v45 summary{padding:11px 14px;cursor:pointer;font-weight:800;color:#475569}
.chinese-preview-material-v45 .material{padding:0 14px 14px;white-space:pre-wrap;line-height:1.72;color:#334155;max-height:360px;overflow:auto}
.knowledge-batch-bar-v45{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:13px 15px;margin:12px 0;border:1px solid #bfdbfe;background:#eff6ff;border-radius:16px}
.knowledge-batch-bar-v45 b{color:#1d4ed8}
.knowledge-guide-anchor-v45{scroll-margin-top:18px}
.subject-progress-pair-v45{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:640px){.subject-progress-pair-v45{grid-template-columns:1fr}.chinese-hero-v45{padding:19px}.knowledge-batch-bar-v45 .btn{width:100%}}



  .zero-base-v46{display:grid;gap:12px}.zero-base-v46 .plain-card{border:1px solid #dbeafe;background:linear-gradient(135deg,#f8fbff,#eef7ff);border-radius:20px;padding:16px}.zero-base-v46 .plain-card h4{margin:0 0 8px;color:#1d4ed8}.poem-overview-v46{display:grid;gap:12px}.poem-bigidea-v46{padding:16px;border-radius:18px;background:#fff7ed;border:1px solid #fed7aa;line-height:1.8}.poem-word-grid-v46{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.poem-word-v46{padding:12px;border:1px solid #e2e8f0;border-radius:16px;background:#fff}.poem-line-v46{border-left:5px solid #8b5cf6;padding:14px 15px;background:#faf5ff;border-radius:0 16px 16px 0;display:grid;gap:7px}.poem-line-v46 .quote{font-weight:900;font-family:"Noto Serif CJK SC","Source Han Serif SC",serif;font-size:1.08rem}.poem-line-v46 .plain{color:#334155;line-height:1.8}.poem-line-v46 .role{color:#7c3aed;font-weight:800}.memory-route-v46{display:grid;gap:8px}.memory-route-v46 div{padding:11px 13px;border-radius:14px;background:#f1f5f9}.english-hero-v46{background:linear-gradient(135deg,#eff6ff,#ecfeff);border:1px solid #bae6fd;border-radius:26px;padding:22px}.english-node-card-v46{border-top:5px solid #0ea5e9}.english-chip-v46{display:inline-flex;padding:7px 11px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-weight:900}.english-concepts-v46{display:grid;gap:10px}.english-concept-v46{padding:14px;border-radius:16px;border:1px solid #dbeafe;background:#f8fbff;line-height:1.75}.english-concept-v46 b{display:block;color:#0369a1;margin-bottom:3px}.english-task-v46{margin-top:12px;padding:14px;border-radius:16px;background:#ecfeff;border:1px solid #a5f3fc;line-height:1.75}.english-sentence-v46{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#0f172a;color:#f8fafc;padding:14px;border-radius:16px;line-height:1.8;overflow-wrap:anywhere}.english-evidence-v46{display:grid;gap:9px}.english-evidence-v46>div{padding:11px 13px;border-radius:14px;background:#f1f5f9}.english-pronounce-v46{display:flex;gap:8px;flex-wrap:wrap}.english-pronounce-v46 span{padding:8px 10px;border-radius:999px;background:#f0f9ff;border:1px solid #bae6fd}.knowledge-subject-card-v42.available.english-card-v46{background:linear-gradient(180deg,#fff,#f0f9ff)}
  @media(max-width:640px){.poem-word-grid-v46{grid-template-columns:1fr}.poem-line-v46{padding:12px}.english-hero-v46{padding:16px}}



.politics-hero-v47{padding:28px;border-radius:28px;background:linear-gradient(135deg,rgba(254,242,242,.96),rgba(255,251,235,.96));border:1px solid rgba(239,68,68,.16);box-shadow:var(--shadow)}
.politics-chip-v47{display:inline-flex;padding:7px 12px;border-radius:999px;background:#fee2e2;color:#991b1b;font-weight:800;font-size:.88rem}
.politics-card-v47{border-top:5px solid rgba(220,38,38,.62)}
.politics-plain-v47{padding:18px;border-radius:20px;background:#fff7ed;border:1px solid #fed7aa;line-height:1.85;color:#7c2d12}
.politics-concepts-v47{display:grid;gap:10px}.politics-concept-v47{padding:15px 16px;border-radius:18px;background:#f8fafc;border:1px solid var(--line);line-height:1.75}.politics-concept-v47 b{display:block;color:#991b1b;margin-bottom:4px}
.politics-translator-v47{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.politics-translator-v47>div{padding:14px;border-radius:16px;background:#fff;border:1px dashed rgba(220,38,38,.3);font-weight:750;color:#334155}
.politics-warning-v47{padding:16px;border-radius:18px;background:#fff1f2;border:1px solid #fecdd3;color:#9f1239;line-height:1.75}
.politics-time-v47{padding:14px 16px;border-radius:16px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;line-height:1.7}
@media(max-width:720px){.politics-translator-v47{grid-template-columns:1fr 1fr}.politics-hero-v47{padding:20px}}


/* ================= v4.9 engineering foundation ================= */
.v49-tools-btn{border:1px solid rgba(79,70,229,.24);background:#fff;color:#4338ca;border-radius:14px;padding:10px 13px;font-weight:900;cursor:pointer;white-space:nowrap;transition:.18s ease}
.v49-tools-btn:hover{background:#eef2ff;transform:translateY(-1px)}
.v49-modal-backdrop{position:fixed;inset:0;z-index:9999;background:rgba(15,23,42,.48);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:18px}
.v49-modal{width:min(860px,100%);max-height:min(88vh,900px);overflow:auto;background:#fff;border-radius:24px;box-shadow:0 30px 80px rgba(15,23,42,.28);border:1px solid #e2e8f0}
.v49-modal-head{position:sticky;top:0;z-index:2;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:20px 22px;border-bottom:1px solid #e2e8f0}
.v49-modal-head h2{margin:0 0 5px;font-size:22px}.v49-modal-head p{margin:0;color:#64748b;font-size:13px;line-height:1.6}
.v49-close{border:0;background:#f1f5f9;color:#334155;border-radius:12px;width:38px;height:38px;font-size:20px;cursor:pointer;flex:0 0 auto}
.v49-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:16px 22px 0}.v49-tab{border:1px solid #dbe3ee;background:#f8fafc;color:#475569;border-radius:999px;padding:8px 13px;font-weight:900;cursor:pointer}.v49-tab.active{background:#eef2ff;border-color:#a5b4fc;color:#3730a3}
.v49-body{padding:18px 22px 24px}.v49-panel{display:grid;gap:14px}.v49-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:15px 16px;line-height:1.7;color:#475569}.v49-info strong{color:#0f172a}
.v49-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v49-stat{border:1px solid #e2e8f0;border-radius:16px;padding:13px;background:#fff}.v49-stat b{display:block;font-size:20px;color:#0f172a}.v49-stat span{font-size:12px;color:#64748b;font-weight:800}
.v49-actions{display:flex;flex-wrap:wrap;gap:10px}.v49-action{appearance:none;border:1px solid #cbd5e1;border-radius:14px;padding:11px 14px;background:#fff;color:#334155;font-weight:900;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px}.v49-action.primary{background:linear-gradient(135deg,#4f46e5,#7c3aed);border-color:transparent;color:#fff}.v49-action.danger{border-color:#fecaca;color:#b91c1c;background:#fff7f7}.v49-action:hover{filter:brightness(.98)}
.v49-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v49-doc-card{border:1px solid #e2e8f0;border-radius:18px;padding:16px;background:#fff}.v49-doc-card h3{margin:0 0 5px}.v49-doc-card p{margin:0 0 12px;color:#64748b;font-size:13px;line-height:1.65}.v49-doc-actions{display:flex;gap:8px;flex-wrap:wrap}
.v49-warning{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.v49-success{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.v49-hidden{display:none!important}.v49-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
@media(max-width:760px){.v49-tools-btn{padding:9px 10px;font-size:12px}.v49-modal-backdrop{align-items:flex-end;padding:0}.v49-modal{border-radius:24px 24px 0 0;max-height:92vh}.v49-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.v49-doc-grid{grid-template-columns:1fr}.v49-modal-head,.v49-body{padding-left:16px;padding-right:16px}.v49-tabs{padding-left:16px;padding-right:16px}}

/* ================= v5.0 account system ================= */
.v50-account-btn{border:1px solid #bae6fd;background:linear-gradient(135deg,#f0f9ff,#ecfeff);color:#075985;border-radius:14px;padding:10px 13px;font-weight:900;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:7px;max-width:160px;overflow:hidden;text-overflow:ellipsis}.v50-account-dot{width:8px;height:8px;border-radius:50%;background:#94a3b8;flex:0 0 auto}.v50-account-dot.online{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12)}
.v50-auth-backdrop{position:fixed;inset:0;z-index:10020;background:rgba(15,23,42,.54);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:18px}.v50-auth-modal{width:min(620px,100%);max-height:min(90vh,880px);overflow:auto;background:#fff;border-radius:26px;border:1px solid #dbeafe;box-shadow:0 34px 90px rgba(15,23,42,.3)}.v50-auth-head{position:sticky;top:0;z-index:2;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);display:flex;justify-content:space-between;gap:12px;padding:22px;border-bottom:1px solid #e2e8f0}.v50-auth-head h2{margin:4px 0 5px;font-size:24px}.v50-auth-head p{margin:0;color:#64748b;font-size:13px;line-height:1.6}.v50-auth-kicker{font-size:11px;letter-spacing:.16em;font-weight:950;color:#2563eb}.v50-auth-close{width:40px;height:40px;border:0;border-radius:13px;background:#f1f5f9;color:#334155;font-size:22px;cursor:pointer}.v50-auth-body{padding:20px 22px 24px}.v50-hidden{display:none!important}
.v50-setup,.v50-profile{display:grid;gap:14px}.v50-state-icon{font-size:42px}.v50-setup h3{margin:0;font-size:20px}.v50-setup p,.v50-setup li{color:#475569;line-height:1.75}.v50-setup ol{margin:0;padding-left:22px}.v50-setup code,.v50-id-box code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f1f5f9;border-radius:7px;padding:2px 6px;overflow-wrap:anywhere}.v50-config-preview{display:grid;gap:6px;padding:14px 15px;border:1px solid #dbeafe;border-radius:16px;background:#f8fbff}.v50-config-preview span{color:#475569;font-size:13px}.v50-security{padding:13px 14px;border-radius:15px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412!important}
.v50-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;background:#f1f5f9;border-radius:15px;margin-bottom:17px}.v50-auth-tabs button{border:0;border-radius:11px;background:transparent;padding:10px;font-weight:900;color:#64748b;cursor:pointer}.v50-auth-tabs button.active{background:#fff;color:#1d4ed8;box-shadow:0 2px 10px rgba(15,23,42,.06)}.v50-auth-form,.v50-profile-form{display:grid;gap:13px}.v50-auth-form>label,.v50-profile-form>label{display:grid;gap:7px;font-weight:850;color:#334155}.v50-auth-form input,.v50-profile-form input{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:14px;padding:12px 13px;font-size:16px;background:#fff;color:#0f172a;outline:none}.v50-auth-form input:focus,.v50-profile-form input:focus{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(59,130,246,.1)}.v50-btn{border:1px solid #cbd5e1;border-radius:14px;padding:12px 14px;background:#fff;color:#334155;font-weight:950;cursor:pointer}.v50-btn.primary{border-color:transparent;color:#fff;background:linear-gradient(135deg,#2563eb,#06b6d4)}.v50-btn.danger{border-color:#fecaca;background:#fff7f7;color:#b91c1c}.v50-small{font-size:12px;line-height:1.65;color:#64748b;margin:0}.v50-form-msg{margin-top:13px;padding:12px 13px;border-radius:14px;font-size:13px;line-height:1.65}.v50-form-msg.error{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239}.v50-form-msg.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}
.v50-role-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px}.v50-role-choice>label{position:relative}.v50-role-choice input{position:absolute;opacity:0;pointer-events:none}.v50-role-choice span{display:grid;gap:3px;height:100%;box-sizing:border-box;padding:13px;border:1px solid #dbe3ee;border-radius:15px;background:#fff;cursor:pointer}.v50-role-choice small{color:#64748b;font-weight:650}.v50-role-choice input:checked+span{border-color:#60a5fa;background:#eff6ff;box-shadow:0 0 0 3px rgba(59,130,246,.09)}
.v50-loading{text-align:center;padding:38px 10px;color:#64748b}.v50-spinner{width:34px;height:34px;border:3px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:v50spin .8s linear infinite;margin:0 auto 12px}@keyframes v50spin{to{transform:rotate(360deg)}}.v50-profile-hero{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #dbeafe;border-radius:20px;background:linear-gradient(135deg,#f8fbff,#ecfeff)}.v50-avatar{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,#2563eb,#06b6d4);color:#fff;display:grid;place-items:center;font-weight:950;font-size:23px}.v50-profile-hero h3{margin:0 0 3px}.v50-profile-hero p{margin:0 0 7px;color:#64748b;font-size:13px}.v50-role{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:950}.v50-role.student{background:#dcfce7;color:#166534}.v50-role.teacher{background:#fef3c7;color:#92400e}.v50-note{border-radius:16px;padding:13px 14px;line-height:1.7;font-size:13px}.v50-note.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.v50-note.warn{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.v50-id-box{border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc}.v50-id-box summary{padding:12px 14px;cursor:pointer;font-weight:850;color:#475569}.v50-id-box>div{padding:0 14px 14px;display:grid;gap:6px}.v50-id-box code{display:block;white-space:normal}
@media(max-width:760px){.v50-account-btn{padding:9px 10px;font-size:12px;max-width:110px}.v50-auth-backdrop{align-items:flex-end;padding:0}.v50-auth-modal{border-radius:26px 26px 0 0;max-height:93vh}.v50-auth-head,.v50-auth-body{padding-left:16px;padding-right:16px}.v50-role-choice{grid-template-columns:1fr}}

/* v5.0.1 account entry hotfix */
@media(max-width:480px){
  .nav-tabs>.v49-tools-btn,.nav-tabs>.v50-account-btn{min-width:0!important;width:100%!important;max-width:none!important;justify-content:center!important;padding:9px 4px!important;font-size:13px!important;border-radius:14px!important;}
}
