/* 纸间书房：儿童端独立主题。保留正文自适应、进度状态及导航尺寸契约。 */
.paper-theme {
  --bg:#f7f5ef; --card:#fffef9; --ink:#253d32; --ink-soft:#747e73;
  --primary:#42684d; --primary-deep:#30533c; --green:#68936b;
  --blue:#65828c; --red:#bc6153; --gold:#b39558; --radius:9px;
  --shadow:0 5px 22px #253d3208;
  --paper-serif:"Songti SC","STSong","Noto Serif CJK SC","SimSun",serif;
}
.paper-theme button:focus-visible,.paper-theme input:focus-visible {
  outline:3px solid #a58a54; outline-offset:4px;
}
.paper-theme .view { background:var(--bg); }
.paper-theme .shelf-top { padding:22px max(5vw,calc((100vw - 1200px)/2));gap:22px;border-bottom:1px solid #dfdfd2;flex-wrap:nowrap; }
.paper-theme .shelf-hi { font-size:23px;font-weight:600;letter-spacing:2px; }
.paper-theme .shelf-sub { font-size:11px;letter-spacing:2px;margin-top:7px; }
.paper-theme .shelf-stats { gap:22px; }
.paper-theme .mini-stat { background:none;box-shadow:none;padding:0;border-radius:0;gap:5px; }
.paper-theme .mini-stat .mi { display:none; }
.paper-theme .mini-stat b { font-size:23px;font-weight:500;font-family:var(--paper-serif);color:var(--ink); }
.paper-theme .mini-stat .mk,.paper-theme .mini-stat .ml { font-size:12px; }
.paper-theme .account-btn { box-shadow:none;border:1px solid #dfdfd2;background:transparent;padding:8px 13px;opacity:1;min-height:44px; }
.paper-theme .account-btn .ab-name { max-width:8em; }
.paper-theme .account-menu { z-index:25;border:1px solid #dfdfd2;border-radius:9px;background:var(--card);box-shadow:0 15px 45px #253d321a; }
.paper-theme .paper-shelf-scroll { flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:40px max(5vw,calc((100vw - 1200px)/2)) 30px;scrollbar-color:#a5b39c transparent;scrollbar-width:thin; }
.paper-theme .paper-hero { display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:center;margin:0 0 42px; }
.paper-theme .paper-eyebrow { display:block;font-size:11px;letter-spacing:3px;color:var(--ink-soft);font-weight:400; }
.paper-theme .paper-welcome h2 { font:500 clamp(29px,3.3vw,46px)/1.5 var(--paper-serif);letter-spacing:2px;margin:13px 0 16px; }
.paper-theme .paper-intro { font-size:14px;line-height:1.9;color:var(--ink-soft); }
.paper-theme .paper-feature { min-width:0; }
.paper-theme .paper-first { border:1px solid #dfdfd2;padding:30px 35px;background:var(--card);border-radius:9px; }
.paper-theme .paper-first h3 { font:500 28px/1.65 var(--paper-serif);margin:13px 0; }
.paper-theme .paper-first p { font-size:13px;line-height:1.8;color:var(--ink-soft); }
.paper-theme .paper-feature:has(#shelf-continue:not([hidden])) .paper-first { display:none; }
.paper-theme .continue-card { display:grid;grid-template-columns:112px minmax(0,1fr);gap:27px;align-items:center;max-width:none;width:100%;margin:0;padding:25px 28px;background:var(--card);border:1px solid #dfdfd2;border-radius:9px;box-shadow:none;text-align:left;color:var(--ink);font-weight:400; }
.paper-theme .paper-continue-cover { display:flex;flex-direction:column;align-items:center;justify-content:space-between;height:166px;min-width:0;padding:13px 10px;background:#dde3cf;color:#354b39;border-left:5px solid #c3cdb2;border-radius:2px 6px 6px 2px;box-shadow:4px 5px 0 #253d3210; }
.paper-theme .paper-continue-cover strong { font:500 21px/1.5 var(--paper-serif);writing-mode:vertical-rl;max-height:112px;text-wrap:balance;letter-spacing:2px; }
.paper-theme .paper-cover-series,.paper-theme .paper-cover-bottom { font-size:9px;letter-spacing:1px; }
.paper-theme .paper-continue-info { min-width:0;display:flex;flex-direction:column;align-items:flex-start; }
.paper-theme .continue-title { max-width:100%;width:100%;font:600 23px/1.6 var(--paper-serif);margin:9px 0 4px;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden; }
.paper-theme .continue-summary { font-size:11px;color:var(--ink-soft);line-height:1.8; }
.paper-theme .continue-progress { width:100%;height:3px;display:block;background:#e8ecdf;margin:13px 0; }
.paper-theme .continue-progress i { display:block;height:100%;background:var(--primary); }
.paper-theme .continue-go { background:var(--primary);color:var(--card);padding:11px 19px;min-height:44px;display:inline-flex;align-items:center;gap:25px;border-radius:6px;font-size:13px; }
.paper-theme .paper-shelf-heading { display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px; }
.paper-theme .paper-shelf-heading h2 { font:600 25px var(--paper-serif); }
.paper-theme #paper-shelf-count { font-size:12px;color:var(--ink-soft); }
.paper-theme .paper-shelf-tools { display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding-bottom:18px;margin-bottom:26px;border-bottom:1px solid #dfdfd2; }
.paper-theme #view-shelf .level-tabs { position:static;margin:0;max-width:100%;box-shadow:none;background:none;padding:0;gap:5px;border-radius:0; }
.paper-theme #view-shelf .level-tabs:first-of-type { gap:22px; }
.paper-theme #view-shelf .level-tab { box-shadow:none;background:none;color:var(--ink-soft);font-size:13px;min-height:44px;padding:8px 10px;border-radius:5px; }
.paper-theme #view-shelf .level-tab.active { background:var(--primary);color:var(--card); }
.paper-theme #view-shelf [data-genre] { border-radius:0;padding:9px 0; }
.paper-theme #view-shelf [data-genre].active { background:none;color:var(--ink);box-shadow:0 2px var(--primary); }
.paper-theme .level-tab .l-badge { font-size:10px;padding:2px 5px;background:#253d320c;color:inherit; }
.paper-theme .level-tab.active .l-badge { background:#ffffff24; }
.paper-theme .paper-search { display:flex;align-items:center;gap:9px;margin-left:auto;font-size:12px;color:var(--ink-soft);border-left:1px solid #dfdfd2;padding-left:15px; }
.paper-theme .paper-search input { width:124px;min-width:0;border:0;background:transparent;font:inherit;color:var(--ink);padding:12px 0;min-height:44px; }
.paper-theme .shelf-grid { flex:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 25px;overflow:visible;padding:0;background:none;min-height:0; }
.paper-theme .book-card { width:auto;min-width:0;padding:0;background:transparent;border-radius:0;box-shadow:none;gap:7px; }
.paper-theme .book-card:hover .paper-cover { transform:translateY(-4px); }
.paper-theme .book-card .paper-cover { height:202px;aspect-ratio:auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:20px 23px;background:#dfe5d1;color:#3e563c;border-left:6px solid #c6ceb7;border-radius:2px 7px 7px 2px;box-shadow:4px 5px 0 #253d320a;transition:transform .2s; }
.paper-theme .book-card[data-tone="1"] .paper-cover { background:#e8dfc9;color:#6e5b38;border-left-color:#d6c7a9; }
.paper-theme .book-card[data-tone="2"] .paper-cover { background:#dce3e3;color:#3c5960;border-left-color:#bdcece; }
.paper-theme .book-card[data-tone="3"] .paper-cover { background:#e8d9ce;color:#735549;border-left-color:#d4bdab; }
.paper-theme .paper-cover-title { font:500 27px/1.55 var(--paper-serif);letter-spacing:1px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-wrap:balance; }
.paper-theme .book-lv { position:static;align-self:flex-start;background:none!important;color:var(--ink-soft);box-shadow:none;font-weight:400;font-size:10px;padding:6px 0 0; }
.paper-theme .book-title { font:600 17px/1.6 var(--paper-serif);min-height:3.2em;height:3.2em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }
.paper-theme .book-desc { font-size:12px;line-height:1.7;min-height:5.1em;height:5.1em;color:var(--ink-soft); }
.paper-theme .book-meta { font-size:10px;color:var(--ink-soft);gap:4px 7px;min-height:38px; }
.paper-theme .book-tag { background:none;padding:0;color:var(--ink-soft);font-size:10px; }
.paper-theme .book-prog-text { color:var(--primary-deep);font-size:10px; }
.paper-theme .book-bar { background:#e2e5da;height:3px;border-radius:0; }
.paper-theme .book-bar i { background:var(--primary);border-radius:0; }
.paper-theme .paper-shelf-note { font:400 14px var(--paper-serif);color:var(--ink-soft);text-align:center;padding:38px 0 10px;letter-spacing:2px; }
.paper-theme .shelf-empty { grid-column:1/-1;padding:60px 12px; }
.paper-theme .hero-paper-title { font:500 21px/1.6 var(--paper-serif);writing-mode:vertical-rl;letter-spacing:2px;max-height:88px;overflow:hidden;padding:0 8px; }
/* 书内首页、阅读工具与完成页 */
.paper-theme .topbar { border-bottom:1px solid #dfdfd2;padding-left:max(24px,calc((100vw - 1250px)/2));padding-right:max(24px,calc((100vw - 1250px)/2)); }
.paper-theme .topbar-title { font-family:var(--paper-serif);letter-spacing:1px; }
.paper-theme .btn-icon,.paper-theme .btn-nav { border:1px solid #dfdfd2;box-shadow:none;background:var(--card); }
.paper-theme .btn-pill,.paper-theme .btn-mid { box-shadow:none;border:1px solid #dfdfd2;border-radius:7px;background:var(--card);font-size:14px;min-height:44px; }
.paper-theme .btn-primary,.paper-theme .btn-nav.cta { background:var(--primary);box-shadow:none;color:var(--card); }
.paper-theme .mod-tabs { background:#e8ecdf;border-radius:8px;box-shadow:none;padding:4px; }
.paper-theme .mod-tab { font-size:14px;box-shadow:none;border-radius:5px;min-height:40px;background:none;color:var(--ink-soft); }
.paper-theme .mod-tab.active { color:var(--ink);background:var(--card);box-shadow:0 2px 8px #253d3208; }
.paper-theme .home-scroll { max-width:1120px;width:100%;margin:0 auto;padding:30px 28px;gap:28px; }
.paper-theme .book-hero { margin:0;padding:28px;border:1px solid #dfdfd2;border-radius:9px;box-shadow:none; }
.paper-theme .hero-cover { border:0;border-radius:4px;background:#e8ecdf;box-shadow:3px 4px 0 #253d3210; }
.paper-theme .hero-title { font-family:var(--paper-serif);font-size:32px;font-weight:600;line-height:1.5; }
.paper-theme .hero-tag { border-radius:3px;background:#e8ecdf;font-size:12px;padding:5px 9px; }
.paper-theme .home-intro { border-top:1px solid #dfdfd2; }
.paper-theme .intro-block { background:none;border-radius:4px;font-family:var(--paper-serif);font-size:20px; }
.paper-theme .intro-block::before,.paper-theme .intro-block.playing::before { background:var(--primary);box-shadow:none; }
.paper-theme .intro-block.playing { background:#e8ecdf; }
.paper-theme .home-modules { margin:0;padding:0;gap:0;justify-content:flex-start;flex:none; }
.paper-theme .mod-card { flex:none;max-height:none;padding:24px 10px;border-radius:0;box-shadow:none;background:none;border-bottom:1px solid #dfdfd2; }
.paper-theme .mod-no { font:400 26px var(--paper-serif);background:none;color:var(--primary);box-shadow:none; }
.paper-theme .mod-title { font-family:var(--paper-serif);font-size:25px; }
.paper-theme .mod-go { background:var(--primary);box-shadow:none; }
.paper-theme .mod-bar { height:4px;background:#e2e5da; }
.paper-theme .story-text-panel,.paper-theme #view-words .word-card { background:var(--card);border:1px solid #dfdfd2;border-radius:9px;box-shadow:0 4px 25px #253d3205; }
.paper-theme .story-text .zi b,.paper-theme .word-main .zi b { font-family:var(--paper-serif);font-weight:400; }
.paper-theme .sentence.speaking { background:#eee8d5;color:var(--ink); }
.paper-theme .story-footer { padding-top:14px;padding-bottom:max(16px,env(safe-area-inset-bottom)); }
.paper-theme .story-page-no { font-size:13px;letter-spacing:1px;color:var(--ink-soft); }
.paper-theme .jump-btn,.paper-theme .word-jump .wj-btn { background:#eeeee4;color:var(--ink-soft);box-shadow:none;border-radius:5px; }
.paper-theme .jump-btn.cur { background:var(--primary);color:var(--card); }
.paper-theme .jump-btn.done.cur { box-shadow:0 0 0 2px var(--green); }
.paper-theme .btn-pill.on { background:var(--primary);color:var(--card);border-color:var(--primary); }
.paper-theme #btn-story-auto.is-on { background:#e3ecd9;color:var(--primary-deep); }
.paper-theme .tab { border-radius:5px;box-shadow:none;background:none;color:var(--ink-soft); }
.paper-theme .tab.active { background:var(--primary);color:var(--card); }
.paper-theme .btn-mic { background:var(--primary);box-shadow:0 5px 18px #42684d24; }
.paper-theme .btn-mic.rec { background:var(--red); }
.paper-theme .btn-myplay,.paper-theme .btn-listen { box-shadow:none;background:var(--card);border:1px solid #dfdfd2;border-radius:7px;color:var(--ink); }
.paper-theme .quiz-q { font-family:var(--paper-serif); }
.paper-theme .quiz-options { gap:14px; }
.paper-theme .opt-btn { background:var(--card);border:2px solid #dfdfd2;box-shadow:none;border-radius:8px; }
.paper-theme .opt-btn.picked { border-color:var(--blue); }
.paper-theme .opt-btn.right { background:#e3efdb;border-color:#82a775;color:#346032; }
.paper-theme .opt-btn.wrong { background:#f8e6df;border-color:#ce9582;color:#914e36; }
.paper-theme .mod-card.locked .mod-no { background:none;box-shadow:none;color:var(--ink-soft); }
.paper-theme .auth-card,.paper-theme .modal-card { background:var(--card);border:1px solid #dfdfd2;box-shadow:0 18px 65px #253d3210;border-radius:12px; }
.paper-theme .auth-title,.paper-theme .done-title { font-family:var(--paper-serif); }
.paper-theme .auth-wrap { background:radial-gradient(ellipse at 20% 20%,#e8ecdf,transparent 60%),var(--bg); }
.paper-theme .auth-submit { border-radius:7px; }
.paper-theme .auth-field input,.paper-theme .child-add-form input { border-radius:6px;border-color:#d6ddcf;background:var(--card); }
.paper-theme .auth-tab.active { background:var(--primary);box-shadow:none;color:var(--card); }
.paper-theme .done-wrap { max-width:800px;margin:auto; }
@media(min-width:900px) {
  .paper-theme .home-scroll { display:grid;grid-template-columns:1.05fr 1fr;align-content:center;align-items:start; }
}
/* 窄屏覆盖放在文件末尾；导航64px、字号下限、翻页格子不变。 */
@media(max-width:900px) {
  .paper-theme .shelf-top { flex-wrap:wrap;padding:18px 5%;gap:12px; }
  .paper-theme .shelf-brand { order:0; }
  .paper-theme .account-btn { order:1;margin-left:auto; }
  .paper-theme .shelf-stats { order:2;width:100%;justify-content:flex-start;gap:25px; }
  .paper-theme .paper-hero { gap:28px; }
  .paper-theme .continue-card { padding:20px;gap:18px;grid-template-columns:88px minmax(0,1fr); }
  .paper-theme .paper-continue-cover { height:142px; }
  .paper-theme .continue-title { font-size:21px; }
  .paper-theme .paper-search { margin-left:0; }
  .paper-theme .shelf-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:27px 20px; }
  .paper-theme .book-card .paper-cover { height:190px;padding:19px; }
  .paper-theme .paper-cover-title { font-size:24px; }
}
@media(max-width:600px) {
  .paper-theme .shelf-top { padding:14px 20px 12px;gap:10px; }
  .paper-theme .shelf-hi { font-size:19px;letter-spacing:1px; }
  .paper-theme .shelf-sub { font-size:9px;letter-spacing:1px; }
  .paper-theme .shelf-stats { gap:22px; }
  .paper-theme .mini-stat b { font-size:18px; }
  .paper-theme .mini-stat .mk,.paper-theme .mini-stat .ml { font-size:10px; }
  .paper-theme .account-btn { padding:7px 10px; }
  .paper-theme .account-btn .ab-name { max-width:4.5em;font-size:12px; }
  .paper-theme .paper-shelf-scroll { padding:25px 20px; }
  .paper-theme .paper-hero { grid-template-columns:1fr;gap:22px;margin-bottom:31px; }
  .paper-theme .paper-welcome h2 { font-size:29px;line-height:1.5;margin:9px 0 11px; }
  .paper-theme .paper-intro { font-size:12px; }
  .paper-theme .paper-intro br { display:none; }
  .paper-theme .paper-eyebrow { font-size:9px;letter-spacing:2px; }
  .paper-theme .paper-first { padding:20px 24px; }
  .paper-theme .paper-first h3 { font-size:22px; }
  .paper-theme .paper-first h3 br { display:none; }
  .paper-theme .paper-first p { font-size:11px; }
  .paper-theme .continue-card { grid-template-columns:78px minmax(0,1fr);gap:22px;padding:20px; }
  .paper-theme .paper-continue-cover { height:126px;padding:10px 7px; }
  .paper-theme .paper-continue-cover strong { font-size:17px;letter-spacing:1px;max-height:95px; }
  .paper-theme .paper-continue-cover .paper-cover-series,.paper-theme .paper-continue-cover .paper-cover-bottom { display:none; }
  .paper-theme .continue-title { font-size:20px;margin:5px 0; }
  .paper-theme .continue-summary { font-size:10px; }
  .paper-theme .continue-go { font-size:12px;padding:9px 15px;gap:15px; }
  .paper-theme .continue-progress { margin:9px 0; }
  .paper-theme .paper-shelf-heading { gap:10px;margin-bottom:12px; }
  .paper-theme .paper-shelf-heading h2 { font-size:22px; }
  .paper-theme #paper-shelf-count { font-size:10px; }
  .paper-theme .paper-shelf-tools { display:grid;grid-template-columns:1fr 133px;gap:9px 12px;margin-bottom:23px;padding-bottom:13px; }
  .paper-theme #view-shelf .paper-shelf-tools>.level-tabs:first-of-type { grid-column:1;grid-row:1;gap:18px; }
  .paper-theme #shelf-level-tabs { grid-column:1/-1;grid-row:2; }
  .paper-theme #view-shelf .level-tabs { max-width:100%;width:100%;gap:3px; }
  .paper-theme #view-shelf .level-tab { flex:none;font-size:11px;padding:8px 9px;min-height:44px; }
  .paper-theme #view-shelf [data-genre] { font-size:13px; }
  .paper-theme .level-tab .l-badge { font-size:9px;margin-left:3px;padding:2px 3px; }
  .paper-theme .paper-search { grid-column:2;grid-row:1;width:100%;border-left:1px solid #dfdfd2;border-top:0;padding:0 0 0 11px;font-size:11px; }
  .paper-theme .paper-search>span { display:none; }
  .paper-theme .paper-search input { flex:1;width:100%; }
  .paper-theme .shelf-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px; }
  .paper-theme .book-card .paper-cover { height:172px;padding:15px 12px;border-left-width:4px; }
  .paper-theme .paper-cover-title { font-size:22px;line-height:1.6; }
  .paper-theme .paper-cover-series,.paper-theme .paper-cover-bottom { font-size:8px; }
  .paper-theme .book-title { font-size:15px; }
  .paper-theme .book-desc { font-size:11px; }
  .paper-theme .book-meta { font-size:9px;gap:4px 6px;min-height:35px; }
  .paper-theme .book-tag,.paper-theme .book-prog-text { font-size:9px; }
  .paper-theme .topbar { padding-left:12px;padding-right:12px; }
  .paper-theme .topbar-title { font-size:17px; }
  .paper-theme .btn-pill { font-size:12px;padding:8px 11px; }
  .paper-theme .mod-tab { font-size:12px;min-height:40px;padding:8px 13px; }
  .paper-theme .home-scroll { display:flex;padding:22px 16px;gap:14px; }
  .paper-theme .book-hero { padding:20px; }
  .paper-theme .hero-title { font-size:26px; }
  .paper-theme .hero-cover { width:74px;height:94px; }
  .paper-theme .hero-tags { gap:5px; }
  .paper-theme .hero-tag { font-size:10px;padding:4px 7px; }
  .paper-theme .intro-block { font-size:18px;padding:10px 0; }
  .paper-theme .mod-card { padding:21px 5px;gap:11px; }
  .paper-theme .mod-title { font-size:23px; }
  .paper-theme .mod-no { width:34px; }
  .paper-theme .mod-meta { flex-wrap:wrap;gap:4px; }
  .paper-theme .mod-prog { font-size:12px; }
  .paper-theme .story-footer { padding-top:10px;padding-bottom:max(12px,env(safe-area-inset-bottom)); }
  .paper-theme .auth-card { padding:28px 22px; }
}
@media(prefers-reduced-motion:reduce) {
  .paper-theme * { animation:none!important;transition:none!important; }
}
