/* 拜堂 · 共享样式 · 中式恐怖 */
:root{
  --bg:#100d0c; --bg2:#181312; --ink:#d8cdb4; --sub:#8f8371;
  --red:#8e1f1f; --red2:#c03a2b; --gold:#b08d4f; --paper:#e9dcc3; --paperink:#3a2f24;
  --line:#3a302a; --serif:"Kaiti","STKaiti","KaiTi",serif; --song:"SimSun","STSong",serif;
  --mono:"Courier New",monospace;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{background:var(--bg);color:var(--ink);font-family:var(--serif);line-height:1.9;
  min-height:100vh;}
a{color:var(--gold);text-decoration:none;}
a:hover{color:#d9b876;}
.topbar{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#0b0908;
  border-bottom:1px solid var(--line);font-size:13px;color:var(--sub);position:sticky;top:0;z-index:5;}
.topbar .url{flex:1;background:#161110;border:1px solid var(--line);border-radius:14px;
  padding:3px 14px;font-family:var(--mono);font-size:12px;color:#a3947c;overflow:hidden;white-space:nowrap;}
.wrap{max-width:760px;margin:0 auto;padding:26px 18px 90px;}
.card{background:var(--bg2);border:1px solid var(--line);border-radius:6px;padding:20px 22px;margin-bottom:18px;}
.card h2{font-size:17px;color:var(--red2);margin-bottom:12px;letter-spacing:2px;font-weight:600;
  border-left:3px solid var(--red);padding-left:10px;}
.btn{display:inline-block;background:var(--red);color:#f0e2c8;border:none;border-radius:3px;
  padding:10px 26px;font-size:15px;cursor:pointer;font-family:var(--serif);letter-spacing:3px;}
.btn:hover{background:#a52a2a;}
.btn.ghost{background:transparent;color:var(--gold);border:1px solid var(--gold);}
.btn.gray{background:#2a2320;color:var(--sub);border:1px solid var(--line);}
input[type=text],input[type=password]{background:#0d0a09;border:1px solid var(--line);border-radius:3px;
  padding:10px 12px;font-size:14px;color:var(--ink);width:100%;max-width:300px;font-family:var(--mono);}
input:focus{outline:1px solid var(--gold);}
.field{margin-bottom:14px;}
.field label{display:block;font-size:12px;color:var(--sub);margin-bottom:5px;}
.err{color:#c96a5a;font-size:13px;margin-top:8px;min-height:18px;}
details.hint{margin-top:14px;font-size:13px;color:var(--sub);}
details.hint summary{cursor:pointer;color:var(--gold);}
details.hint>div{background:#1c1712;border:1px solid #3d3223;border-radius:4px;padding:10px 14px;margin-top:8px;}
table.doc{width:100%;border-collapse:collapse;font-size:13.5px;font-family:var(--song);}
table.doc th{background:#1e1815;color:var(--sub);text-align:left;padding:8px 10px;border:1px solid var(--line);font-weight:600;}
table.doc td{padding:8px 10px;border:1px solid var(--line);vertical-align:top;}
table.doc tr.hl td{background:#241a14;color:#e4d3ae;}
.tag{display:inline-block;font-size:11px;border-radius:2px;padding:1px 8px;}
.tag.red{background:#3d1512;color:#d98a7a;}
.tag.gray{background:#241f1c;color:#8f8371;}
.paper{background:var(--paper);color:var(--paperink);border-radius:2px;padding:24px 26px;
  font-family:var(--song);font-size:14px;line-height:2.1;box-shadow:0 4px 18px rgba(0,0,0,.5);
  position:relative;}
.paper.red{background:linear-gradient(160deg,#9e2424,#7a1818);color:#f3dcb8;}
.paper h3{text-align:center;letter-spacing:6px;font-size:18px;margin-bottom:14px;font-weight:600;}
.vert{writing-mode:vertical-rl;letter-spacing:6px;}
.record{border-left:3px solid var(--line);padding:4px 0 4px 14px;margin-bottom:14px;font-size:14px;}
.record .rt{color:var(--sub);font-size:12px;font-family:var(--mono);}
.record.redline{border-left-color:var(--red);}
.muted{font-size:12.5px;color:var(--sub);}
.center{text-align:center;}
.xi{color:var(--red2);font-size:42px;line-height:1;font-family:var(--song);}
.fadein{animation:btfd 1s ease;}
@keyframes btfd{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
/* 聊天 */
.cmsg{margin:12px 0;font-size:14.5px;}
.cmsg .cn{font-size:11.5px;color:var(--sub);margin-bottom:3px;}
.cmsg .cb{background:#221c18;border:1px solid var(--line);border-radius:8px;display:inline-block;
  padding:9px 14px;max-width:82%;}
.cmsg.me{text-align:right;}
.cmsg.me .cb{background:#26301f;text-align:left;}
.cmsg.sys{text-align:center;color:var(--sub);font-size:12px;margin:18px 0 8px;}
.cmsg.ghost .cb{background:#2d1414;border-color:#5a2020;color:#e8c9c0;}
/* 相册 */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;}
.ph{background:#0d0a09;border:1px solid var(--line);border-radius:4px;overflow:hidden;cursor:pointer;}
.ph svg{display:block;width:100%;height:auto;}
.ph .cap{font-size:12px;color:var(--sub);padding:7px 10px;border-top:1px solid var(--line);}
.viewer{margin-top:18px;}
/* 桌面 */
.desk{max-width:860px;margin:0 auto;padding:30px 20px 90px;}
.icons{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:18px;margin-top:26px;}
.icon{background:rgba(24,19,18,.85);border:1px solid var(--line);border-radius:8px;padding:20px 10px;
  text-align:center;cursor:pointer;font-size:14px;color:var(--ink);}
.icon:hover{border-color:var(--gold);}
.icon .em{font-size:30px;display:block;margin-bottom:8px;}
.stick{background:#efe6c8;color:#4a3d28;font-family:var(--serif);font-size:15px;line-height:2;
  padding:14px 18px;max-width:340px;box-shadow:3px 4px 10px rgba(0,0,0,.5);transform:rotate(-1deg);}
/* 论坛（旧网风） */
.bbs{background:#f2ead6;color:#3c3223;font-family:var(--song);min-height:100vh;}
.bbs .bhead{background:#5a4632;color:#f2e6c8;padding:14px 20px;letter-spacing:3px;font-size:17px;}
.bbs .bhead small{display:block;font-size:11px;opacity:.8;letter-spacing:1px;}
.bbs .bwrap{max-width:760px;margin:0 auto;padding:18px 16px 80px;}
.thread{background:#faf4e2;border:1px solid #cbbc99;margin-bottom:12px;border-radius:3px;}
.thread .th{padding:10px 14px;cursor:pointer;font-size:14.5px;display:flex;justify-content:space-between;gap:8px;}
.thread .th:hover{background:#f3ecd5;}
.thread .tb{display:none;border-top:1px dashed #cbbc99;padding:12px 16px;font-size:13.5px;line-height:2;}
.thread.open .tb{display:block;}
.fl{color:#8a6d3b;font-size:12px;}
.bbs a{color:#8a4a1f;text-decoration:underline;}
/* 笔记 */
#btnote-btn{position:fixed;right:16px;bottom:16px;z-index:50;width:46px;height:46px;border-radius:50%;
  background:var(--red);color:#f0e2c8;border:1px solid #5a1414;font-size:20px;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.6);}
#btnote{position:fixed;right:16px;bottom:70px;z-index:50;width:300px;max-height:60vh;overflow:auto;
  background:#efe6c8;color:#443724;border-radius:6px;padding:16px 18px;font-size:13.5px;line-height:1.9;
  box-shadow:0 8px 30px rgba(0,0,0,.7);display:none;font-family:var(--serif);}
#btnote h4{font-size:14px;border-bottom:1px solid #c9b98e;padding-bottom:6px;margin-bottom:8px;letter-spacing:2px;}
#btnote li{margin-left:18px;margin-bottom:4px;}
#btnote li.done{color:#9a8a68;text-decoration:line-through;}
#btnote .nh{color:#8a4a1f;font-size:12.5px;}
