/* 曾墨语文频道 · 书卷气 / 书本风格 (紧凑精排版) */
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  font-family:"Noto Serif SC","Songti SC","STSong","SimSun",Georgia,"Times New Roman",serif;
  background:#f3ecdb url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency="0.9" numOctaves="2"/><feColorMatrix values="0 0 0 0 0.55 0 0 0 0 0.5 0 0 0 0 0.42 0 0 0 0.05 0"/></filter><rect width="120" height="120" filter="url(%23n)"/></svg>');
  color:#3a2f23;line-height:1.7;min-height:100vh;font-size:15px;
}
a{color:#8a3324;text-decoration:none}
a:hover{color:#5e1f12}
.mono{font-family:ui-monospace,Menlo,Consolas,monospace}

/* ---- 顶栏(线装书签样式) ---- */
.pnav{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(61,43,28,.96);border-bottom:2.5px solid #c9a86a;
  box-shadow:0 2px 10px rgba(50,30,10,.25);backdrop-filter:blur(4px)}
.pnav-in{max-width:1120px;margin:auto;padding:0 18px;height:52px;display:flex;align-items:center;gap:22px}
.pnav .logo{display:flex;align-items:center;gap:8px;color:#f4ead2;font-size:18px;letter-spacing:2.5px;font-weight:bold}
.pnav .logo .lg{width:30px;height:30px;border-radius:50%;background:#8a3324;color:#f6e8cf;display:flex;align-items:center;justify-content:center;font-size:15px;border:1.5px solid #c9a86a}
.pnav nav{flex:1;display:flex;gap:2px}
.pnav nav a{color:#d8c9a8;padding:4px 11px;border-radius:3px;font-size:13px;letter-spacing:1px}
.pnav nav a:hover{color:#fff;background:rgba(255,255,255,.08)}
.pnav nav a.on{color:#8a3324;background:#f4ead2;font-weight:bold}
.pnav .cta{display:flex;gap:8px;align-items:center}
.pnav .cta .uname{color:#e8d9b8;font-size:13px}
/* 个人中心独立导航: 深墨色 + 金色, 与书库米黄区分 */
.pnav-user{background:linear-gradient(90deg,#241a10,#3a2a18);border-bottom:2.5px solid #b98a3e}
.pnav-user .logo{color:#f0dfc0}
.pnav-user .logo .lg{background:#7a2c1e;border-color:#d4a84f}
.pnav-user nav a{color:#cbb888}
.pnav-user nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.pnav-user nav a.on{color:#7a2c1e;background:#f0dfc0}
.pnav-user .cta .btn.ghost{color:#dcc99a;border-color:#8a6a35;background:transparent}
.pnav-user .cta .btn.ghost:hover{background:rgba(255,255,255,.08)}

/* ---- 书页容器 ---- */
main.wrap{max-width:1120px;margin:auto;padding:84px 18px 36px}
.page{background:#fdf9ee;border:1px solid #d8c9a8;border-radius:4px;padding:26px 30px;
  box-shadow:0 2px 14px rgba(90,60,20,.08), inset 0 0 60px rgba(170,140,80,.05);position:relative}
.page::before{content:"";position:absolute;top:0;bottom:0;left:12px;width:1px;background:rgba(160,120,60,.25)}
.page::after{content:"";position:absolute;top:0;bottom:0;right:12px;width:1px;background:rgba(160,120,60,.25)}
.page h1{font-size:22px;color:#5e1f12;letter-spacing:2px;margin-bottom:5px;text-align:center}
.page .sub{text-align:center;color:#8a7d62;font-size:13px;margin-bottom:20px;letter-spacing:1px}
.page h2{font-size:17px;color:#5e1f12;border-left:3.5px solid #c9a86a;padding-left:10px;margin:22px 0 12px;letter-spacing:1px}
.page h3{font-size:14.5px;color:#6b4a2f;margin:14px 0 6px}

/* ---- 表单 ---- */
.field{margin-bottom:13px}
.field label{display:block;font-size:13px;color:#6b5a3e;margin-bottom:5px;letter-spacing:1px}
.input{width:100%;padding:9px 12px;border:1px solid #d8c9a8;border-radius:4px;background:#fffdf6;
  font-family:inherit;font-size:14px;color:#3a2f23;outline:none;transition:border .2s}
.input:focus{border-color:#8a3324}
textarea.input{resize:vertical;min-height:76px}

/* ---- 按钮 ---- */
.btn{display:inline-block;padding:8px 20px;border:1.2px solid #8a3324;border-radius:4px;background:transparent;
  color:#8a3324;font-family:inherit;font-size:13.5px;letter-spacing:2px;cursor:pointer;transition:all .18s}
.btn:hover{background:#8a3324;color:#f6e8cf}
.btn.solid{background:#8a3324;color:#f6e8cf}
.btn.solid:hover{background:#5e1f12;border-color:#5e1f12}
.btn.sm{padding:5px 12px;font-size:12px;letter-spacing:1px}
.btn.ghost{border-color:#c9a86a;color:#6b5a3e}
.btn.ghost:hover{background:#efe3c6;color:#3a2f23}
.btn.full{width:100%;text-align:center}
.btn.danger{border-color:#b0402e;color:#b0402e}
.btn.danger:hover{background:#b0402e;color:#fff}

/* ---- 提示 ---- */
.msg,.err,.info{border-radius:4px;padding:10px 13px;margin-bottom:13px;font-size:13px}
.msg{background:#eef4e3;border:1px solid #b8cc8a;color:#4a6a1e}
.err{background:#f9e9e4;border:1px solid #ddab9c;color:#8a2a18}
.info{background:#f2ecda;border:1px solid #d8c9a8;color:#6b5a3e}

/* ---- 卡片/列表 ---- */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.card{background:#fdf9ee;border:1px solid #d8c9a8;border-radius:4px;padding:14px 16px;transition:all .18s}
.card:hover{border-color:#c9a86a;box-shadow:0 4px 16px rgba(90,60,20,.1);transform:translateY(-2px)}
.card h3{font-size:15px;color:#5e1f12;margin-bottom:5px}
.card .meta{font-size:12px;color:#8a7d62;margin-bottom:7px}
.card .desc{font-size:13px;color:#5c5344;min-height:34px}
.chip{display:inline-block;font-size:11.5px;padding:1px 8px;border-radius:20px;background:#efe3c6;color:#6b5a3e;margin:2px 5px 2px 0}
.pill{font-size:12.5px;color:#8a7d62}
.empty{padding:34px 18px;text-align:center;color:#9a8b6e;font-size:13.5px;letter-spacing:2px}

/* ---- 表格 ---- */
table{width:100%;border-collapse:collapse;font-size:13px}
th{background:#efe3c6;color:#5e1f12;padding:8px 10px;text-align:left;border-bottom:2px solid #c9a86a;letter-spacing:1px}
td{padding:8px 10px;border-bottom:1px solid #e5d9bb;color:#3a2f23;vertical-align:middle}
tr:hover td{background:#f8f0dc}

/* ---- 课文排版 ---- */
.lesson-text{font-family:"Noto Serif SC","KaiTi","STKaiti","KaiTi_GB2312",serif;font-size:16.5px;line-height:2;color:#2f2a24;letter-spacing:1px}
.lesson-text p{margin:0.8em 0;text-indent:2em}
.lesson-text .poem p{text-indent:0;text-align:center}
.lesson-text .poem{text-align:center;margin:1em 0}
.author-line{text-align:center;color:#6b5a3e;font-size:13.5px;margin:5px 0 12px;letter-spacing:1px}
.tag{display:inline-block;font-size:11.5px;padding:1px 8px;border-radius:3px;background:#8a3324;color:#f6e8cf;margin-right:5px}
.tag.alt{background:#efe3c6;color:#6b5a3e}
.seal{display:inline-block;color:#a0301c;border:2px solid #a0301c;padding:3px 8px;font-size:12px;border-radius:4px;transform:rotate(-4deg);letter-spacing:2px;margin-left:10px}

/* ---- 搜索/筛选 ---- */
.searchbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.searchbar .input{flex:1;min-width:220px}
.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
.filters select{min-width:120px}
.stats{display:flex;gap:26px;justify-content:center;margin:14px 0}
.stat{text-align:center}
.stat .n{display:block;font-size:25px;color:#8a3324;font-weight:bold;line-height:1.2}
.stat .t{font-size:12px;color:#8a7d62;letter-spacing:1px}

/* ---- 评论 ---- */
.cmt{border-left:3px solid #e0d2ae;padding:8px 13px;margin:10px 0;background:#faf4e4;border-radius:0 4px 4px 0}
.cmt .who{font-size:12.5px;color:#8a3324;font-weight:bold}
.cmt .at{font-size:11.5px;color:#a8987a}
.cmt .txt{margin-top:3px;font-size:13.5px}

/* ---- 头像 ---- */
.avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;border:1.5px solid #c9a86a;background:#efe3c6}
.avatar.sm{width:30px;height:30px;border-width:1px}
.avatar.lg{width:96px;height:96px}

/* ---- 页脚 ---- */
.pfoot{text-align:center;padding:22px 16px;color:#9a8b6e;font-size:12px;letter-spacing:1px;border-top:1px solid #ddd0ae;margin-top:36px;background:rgba(253,249,238,.6)}
.pfoot a{color:#8a7d62}

/* ---- 书架 ---- */
.bookshelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}
.book{background:linear-gradient(135deg,#7a2e1e,#9c4030);border-radius:3px 9px 9px 3px;color:#f6e8cf;
  padding:14px 10px;text-align:center;box-shadow:2px 3px 12px rgba(60,30,10,.3);cursor:pointer;transition:all .2s;position:relative}
.book::before{content:"";position:absolute;left:5px;top:0;bottom:0;width:2.5px;background:rgba(240,220,180,.35);border-radius:2px}
.book:hover{transform:translateY(-4px) rotate(-1deg);box-shadow:4px 6px 18px rgba(60,30,10,.4)}
.book .bt{font-size:13.5px;letter-spacing:2px}
.book .by{font-size:11px;color:#e6cfa4;margin-top:5px}
.book.alt{background:linear-gradient(135deg,#33594a,#4a7a64)}
.book.alt2{background:linear-gradient(135deg,#5d4a2a,#8a6b3a)}
/* 有真实封面的册 */
.book.hascover{background:#fdf9ee;padding:8px 8px 10px;box-shadow:2px 3px 10px rgba(60,30,10,.18);border:1px solid #d8c9a8}
.book.hascover::before{display:none}
.book .bcover{width:100%;height:168px;object-fit:cover;border-radius:3px 7px 7px 3px;display:block;margin-bottom:7px;box-shadow:1px 2px 6px rgba(60,30,10,.25)}
.book .bname{font-size:13.5px;letter-spacing:1.5px;color:#5e1f12;text-align:center;margin-bottom:2px}
.book.hascover .by{color:#8a7d62;text-align:center}
@media(max-width:720px){
  .page{padding:18px 16px}
  .pnav-in{gap:12px}
  .pnav .logo{font-size:15px;letter-spacing:1px}
  .pnav nav a{padding:4px 7px;font-size:12px}
}