/*
Theme Name: Lingxi Notebook · 案头
Theme URI: https://lingxi.me/
Author: Lingxi Kong
Description: A personal Chinese-first notebook, in warm ivory with blue pencil notes.
Version: 0.2.3
Requires at least: 6.3
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lingxi-notebook
*/

  :root{
    --desk:#e9e2d7;            /* 浅色桌面 */
    --desk-2:#dcd1c0;
    --paper:#fffdf6;           /* 牛皮纸偏暖 */
    --paper-2:#f4eddf;
    --paper-rule:rgba(106,111,131,.17);
    --ink:#302a24;
    --ink-soft:#675c4f;
    --pencil:#405d89;          /* 蓝铅笔批注 */
    --seal:#b13e33;            /* 印泥红 */
    --tape:rgba(241,221,169,.62);
    --tab-1:#ad4a3d; --tab-2:#976c2d; --tab-3:#6d6f8c; --tab-4:#476b93; --tab-5:#7b5d8c; --tab-6:#88664c; --tab-7:#74716a;
    --song:"Songti SC","STSong","Noto Serif CJK SC","Source Han Serif SC","SimSun",serif;
    --kai:"Kaiti SC","STKaiti","KaiTi","BiauKai","Noto Serif CJK SC",serif;
    --latin:"Iowan Old Style","Palatino Linotype","Palatino","Georgia",serif;
    --hand:"Bradley Hand","Snell Roundhand","Segoe Script","Comic Sans MS",cursive;
    --mono:"SF Mono","Menlo","Consolas",monospace;
    --dur:.45s;
  }
  @media (prefers-reduced-motion: reduce){ :root{ --dur:0s; } *{ animation:none !important; } }
  *{ box-sizing:border-box; }
  html{ scroll-behavior:smooth; }
  @media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }
  body{
    margin:0; color:var(--ink); font-family:var(--song); font-size:17px; line-height:1.85;
    background:
      radial-gradient(ellipse at 30% 10%, rgba(255,255,255,.07), transparent 50%),
      repeating-linear-gradient(115deg, rgba(255,255,255,.015) 0 2px, transparent 2px 6px),
      linear-gradient(180deg, var(--desk), var(--desk-2));
    min-height:100vh; -webkit-font-smoothing:antialiased; overflow-x:hidden;
  }
  a{ color:inherit; }
  :focus-visible{ outline:2px solid var(--pencil); outline-offset:3px; }

  body .en{ display:none; }
  html.en .zh{ display:none; }
  html.en .en{ display:revert; }
  html.en body{ font-family:var(--latin); }
  html.en .zh-keep{ font-family:var(--song); }
  html.en .kai, html.en .margin, html.en .contact, html.en .photo .cap{ font-family:var(--hand); font-size:.95em; }

  /* ---------- label strip at top ---------- */
  .strip{
    display:flex; justify-content:space-between; align-items:center; gap:16px;
    padding:14px 28px; color:#d8d2bf; font-size:13px; letter-spacing:.1em;
  }
  .strip .who{ display:flex; gap:12px; align-items:baseline; text-decoration:none; }
  .strip .who b{ font-weight:500; letter-spacing:.3em; font-size:16px; }
  .strip .who span{ font-family:var(--mono); font-size:11px; opacity:.7; letter-spacing:.16em; text-transform:uppercase; }
  .strip nav{ display:flex; gap:18px; align-items:center; }
  .strip nav a{ text-decoration:none; opacity:.8; } .strip nav a:hover{ opacity:1; text-decoration:underline; }
  .btn{
    font:inherit; font-family:var(--mono); font-size:11px; letter-spacing:.16em; cursor:pointer;
    color:#f1e9d6; background:transparent; border:1px solid rgba(241,233,214,.4); border-radius:999px; padding:7px 12px;
  }
  .btn:hover{ border-color:#f1e9d6; }
  .btn[aria-pressed="true"]{ background:#f1e9d6; color:var(--desk); }

  /* ---------- notebook ---------- */
  .desk{ max-width:1240px; margin:12px auto 0; padding:0 64px 80px 24px; position:relative; }
  .book{
    position:relative; display:grid; grid-template-columns:1fr 1fr; gap:0;
    filter:drop-shadow(0 30px 40px rgba(0,0,0,.45)) drop-shadow(0 4px 6px rgba(0,0,0,.3));
    transform:rotate(-.4deg);
  }
  .notebook-leaf{
    position:relative; min-height:720px; padding:56px 52px 60px;
    background:
      repeating-linear-gradient(180deg, transparent 0 31px, var(--paper-rule) 31px 32px),
      linear-gradient(180deg, var(--paper) 0, var(--paper-2) 100%);
    background-position:0 90px, 0 0;
    overflow:visible;
  }
  .notebook-leaf::after{ /* paper grain */
    content:""; position:absolute; inset:0; pointer-events:none; opacity:.35; mix-blend-mode:multiply;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.4 0 0 0 0 0.35 0 0 0 0 0.25 0 0 0 .5 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  }
  .notebook-leaf.left{ border-radius:10px 2px 2px 10px; box-shadow:inset -28px 0 40px -30px rgba(0,0,0,.45); }
  .notebook-leaf.right{ border-radius:2px 10px 10px 2px; box-shadow:inset 28px 0 40px -30px rgba(0,0,0,.45); }
  .notebook-leaf.left::before{ /* red margin line */
    content:""; position:absolute; top:0; bottom:0; left:44px; width:1px; background:rgba(179,39,30,.35);
  }
  .holes{ position:absolute; top:40px; bottom:40px; width:14px; display:flex; flex-direction:column; justify-content:space-between; }
  .notebook-leaf.left .holes{ right:-7px; } .notebook-leaf.right .holes{ left:-7px; }
  .holes i{ width:14px; height:14px; border-radius:50%; background:var(--desk-2); box-shadow:inset 0 2px 3px rgba(0,0,0,.6); }

  /* left page content */
  .photo{
    position:relative; width:230px; margin:-6px 0 22px 14px; transform:rotate(-2.4deg);
    background:#fff; padding:10px 10px 36px; box-shadow:0 6px 14px rgba(0,0,0,.25);
  }
  .photo img{ display:block; width:100%; height:auto; aspect-ratio:3/4; object-fit:cover; object-position:50% 14%; }
  .photo .cap{ position:absolute; left:12px; right:12px; bottom:8px; font-family:var(--kai); font-size:14px; color:var(--ink-soft); text-align:center; letter-spacing:.1em; }
  .tape{ position:absolute; width:92px; height:26px; background:var(--tape); box-shadow:0 1px 2px rgba(0,0,0,.15); opacity:.9; }
  .tape.tl{ left:-28px; top:-10px; transform:rotate(-38deg); }
  .tape.br{ right:-30px; bottom:22px; transform:rotate(-38deg); }
  h1{ font-weight:500; font-size:clamp(38px, 4.4vw, 56px); line-height:1.15; letter-spacing:.06em; margin:0 0 14px; }
  .lede{ font-size:18px; max-width:40ch; margin:0 0 .9em; }
  .kai{ font-family:var(--kai); color:var(--pencil); }
  .note3l{
    display:inline-block; margin:8px 0 0 -4px; padding:4px 12px; transform:rotate(-1.2deg);
    background:linear-gradient(transparent 20%, rgba(216,160,52,.45) 20% 85%, transparent 85%);
    font-size:17px;
  }
  .contact{ margin-top:30px; font-family:var(--kai); font-size:19px; color:var(--pencil); }
  .contact a{ text-decoration:none; border-bottom:1.5px solid var(--pencil); }
  .contact a:hover{ background:rgba(63,91,138,.1); }
  .seal{
    position:absolute; right:48px; bottom:52px; width:84px; height:84px; transform:rotate(8deg);
    color:var(--seal); opacity:.85; mix-blend-mode:multiply;
  }
  .seal svg{ width:100%; height:100%; }

  /* right page: tabs + sheets */
  .tabs{
    position:absolute; right:-44px; top:48px; display:flex; flex-direction:column; gap:10px; margin:0; padding:0; list-style:none;
  }
  .tab{
    font:inherit; font-family:var(--song); cursor:pointer; border:0;
    width:44px; padding:14px 0 12px; writing-mode:vertical-rl; letter-spacing:.2em; font-size:14px; color:#fff;
    border-radius:0 8px 8px 0; box-shadow:2px 3px 6px rgba(0,0,0,.3); opacity:.78;
    transition:transform var(--dur), opacity var(--dur);
    text-shadow:0 1px 1px rgba(0,0,0,.25);
  }
  .tab:hover{ opacity:1; transform:translateX(3px); }
  .tab[aria-selected="true"]{ opacity:1; transform:translateX(6px); font-weight:600; }
  .tab:focus-visible{ outline:2px solid #fff; outline-offset:-4px; }
  .tab.c1{ background:var(--tab-1);} .tab.c2{ background:var(--tab-2);} .tab.c3{ background:var(--tab-3);}
  .tab.c4{ background:var(--tab-4);} .tab.c5{ background:var(--tab-5);} .tab.c6{ background:var(--tab-6);} .tab.c7{ background:var(--tab-7);}

  .sheet{ display:none; animation:flip var(--dur) ease-out; transform-origin:left center; }
  .sheet.on{ display:block; }
  @keyframes flip{ from{ opacity:0; transform:rotateY(-14deg) translateX(8px);} to{ opacity:1; transform:none; } }
  .sheet .k{ font-family:var(--mono); font-size:11px; letter-spacing:.26em; text-transform:uppercase; color:var(--ink-soft); margin:0 0 12px; }
  .sheet h2{ font-weight:500; font-size:clamp(30px, 3vw, 40px); letter-spacing:.04em; line-height:1.2; margin:0 0 10px; }
  .sheet h2 small{ display:block; font-family:var(--mono); font-size:12px; letter-spacing:.14em; color:var(--ink-soft); margin-top:4px; text-transform:none; }
  .sheet p{ margin:0 0 1em; max-width:44ch; }
  .url{
    display:inline-block; margin-top:8px; padding:6px 12px; text-decoration:none; font-family:var(--mono); font-size:13px; letter-spacing:.06em;
    border:1px solid var(--ink); border-radius:3px; background:rgba(255,255,255,.4);
  }
  .url:hover{ background:var(--ink); color:var(--paper); }
  .url.minor{ border-style:dashed; opacity:.75; }
  .margin{
    font-family:var(--kai); color:var(--pencil); font-size:16px; line-height:1.6; margin:20px 0 0; max-width:36ch;
    transform:rotate(-1deg); padding-left:14px; border-left:2px solid rgba(63,91,138,.35);
    display:none;
  }
  html.notes .margin{ display:block; animation:flip var(--dur) ease-out; }
  .margin::before{ content:"批注 · "; font-size:12px; letter-spacing:.2em; opacity:.7; }
  html.en .margin::before{ content:"margin note · "; }
  .tags{ display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:14px 0 0; list-style:none; }
  .tags li{ font-size:14px; padding:3px 10px; border:1px solid rgba(35,33,28,.35); border-radius:999px; background:rgba(255,255,255,.35); }

  /* ---------- loose things on the desk ---------- */
  .loose{ position:relative; display:grid; grid-template-columns:1.1fr 1fr 1fr; gap:28px; margin-top:60px; align-items:start; }
  .loose > *{ position:relative; }
  .loose .head{ grid-column:1 / -1; color:#d8d2bf; font-size:13px; letter-spacing:.2em; font-family:var(--mono); text-transform:uppercase; opacity:.75; margin:0 0 -6px; }
  .torn{
    background:var(--paper); padding:34px 34px 40px; transform:rotate(1.6deg); box-shadow:0 12px 24px rgba(0,0,0,.35);
    clip-path:polygon(0 0, 100% 0, 100% 96%, 96% 100%, 88% 97%, 80% 100%, 70% 98%, 60% 100%, 50% 97%, 40% 100%, 30% 98%, 20% 100%, 10% 97%, 0 100%);
  }
  .torn .t{ font-size:30px; letter-spacing:.2em; text-decoration:none; display:block; margin-bottom:12px; }
  .torn .t:hover{ color:var(--seal); }
  .torn .v{ white-space:pre-line; font-size:19px; line-height:2; }
  .card{
    background:#fbf6e6; padding:28px 30px; transform:rotate(-2deg); box-shadow:0 12px 24px rgba(0,0,0,.35);
    background-image:repeating-linear-gradient(180deg, transparent 0 27px, rgba(179,39,30,.18) 27px 28px); background-position:0 64px;
    font-family:var(--latin);
  }
  .card .t{ font-size:24px; font-style:italic; text-decoration:none; display:block; margin-bottom:10px; }
  .card .t:hover{ color:var(--seal); }
  .card .v{ white-space:pre-line; font-size:18px; line-height:1.6; font-style:italic; }
  .napkin{
    background:#f7f3ea; padding:30px 30px 60px; transform:rotate(3deg); box-shadow:0 12px 24px rgba(0,0,0,.35); border-radius:3px;
    background-image:
      radial-gradient(circle at 78% 82%, transparent 54px, rgba(120,72,30,.35) 56px, rgba(120,72,30,.12) 60px, transparent 64px),
      radial-gradient(circle at 60% 90%, transparent 40px, rgba(120,72,30,.28) 42px, rgba(120,72,30,.08) 46px, transparent 49px);
    font-family:var(--latin);
  }
  .napkin .t{ font-size:21px; text-decoration:none; display:block; margin-bottom:10px; line-height:1.3; }
  .napkin .t:hover{ color:var(--seal); }
  .meta{ font-size:13px; color:var(--ink-soft); margin:10px 0 0; line-height:1.6; }
  .meta .o{ font-family:var(--mono); font-size:10px; letter-spacing:.18em; text-transform:uppercase; }
  .clip{ position:absolute; top:-14px; left:24px; width:22px; height:60px; border:3px solid #9aa3ad; border-radius:11px; border-bottom-color:transparent; transform:rotate(12deg); }
  .pin{ position:absolute; top:-10px; right:30px; width:18px; height:18px; border-radius:50%; background:radial-gradient(circle at 35% 35%, #ff8a73, #b3271e 70%); box-shadow:0 3px 4px rgba(0,0,0,.35); }

  .foot{ margin:70px 0 0; color:#d8d2bf; font-family:var(--mono); font-size:12px; letter-spacing:.14em; display:flex; flex-wrap:wrap; gap:14px 30px; opacity:.8; }
  .foot a{ text-decoration:none; } .foot a:hover{ text-decoration:underline; }

  /* ---------- phone ---------- */
  @media (max-width: 980px){
    .tabs{ right:-38px; } .tab{ width:38px; font-size:13px; }
    .notebook-leaf{ padding:40px 36px 48px; }
  }
  @media (max-width: 760px){
    body{ font-size:16px; }
    .strip{ padding:12px 16px; }
    .desk{ padding:0 12px 60px; }
    .book{ grid-template-columns:1fr; transform:none; }
    .notebook-leaf{ min-height:auto; padding:34px 26px 40px; }
    .notebook-leaf.left{ border-radius:10px 10px 0 0; box-shadow:none; }
    .notebook-leaf.right{ border-radius:0 0 10px 10px; box-shadow:none; border-top:2px dashed rgba(35,33,28,.25); padding-top:28px; }
    .holes{ display:none; }
    .notebook-leaf.left::before{ left:22px; }
    .photo{ width:170px; margin-left:8px; }
    .seal{ right:22px; bottom:24px; width:64px; height:64px; }
    .tabs{ position:static; flex-direction:row; flex-wrap:wrap; gap:8px; margin:0 0 20px; }
    .tab{ writing-mode:horizontal-tb; width:auto; padding:8px 12px; border-radius:6px; font-size:13px; letter-spacing:.1em; }
    .tab[aria-selected="true"]{ transform:translateY(-2px); }
    .loose{ grid-template-columns:1fr; gap:34px; margin-top:44px; }
    .torn, .card, .napkin{ transform:rotate(0deg); }
    .torn{ transform:rotate(.8deg);} .card{ transform:rotate(-.8deg);} .napkin{ transform:rotate(.6deg);}
  }

  /* Palette variation: 暖米白. Source notebook layout by Fable 5.1. */
  :root{--desk-ink:#514438;--book-shadow:rgba(83,61,40,.18);--edge-shadow:rgba(83,61,40,.12);}
  .strip,.loose .head,.foot{color:var(--desk-ink);}
  .strip nav a{opacity:.92;}
  .strip .who b{white-space:nowrap;}
  .strip .who span{opacity:.88;}
  .btn{color:var(--desk-ink);border-color:color-mix(in srgb,var(--desk-ink) 45%,transparent);white-space:nowrap;background:rgba(255,255,255,.15);}
  .btn[aria-pressed="true"]{color:var(--paper);background:var(--desk-ink);border-color:var(--desk-ink);}
  .book{filter:drop-shadow(0 22px 30px var(--book-shadow)) drop-shadow(0 3px 5px var(--edge-shadow));}
  .notebook-leaf::after{opacity:.14;}
  .notebook-leaf.left{box-shadow:inset -28px 0 40px -30px rgba(70,51,37,.23);}
  .notebook-leaf.right{box-shadow:inset 28px 0 40px -30px rgba(70,51,37,.23);}
  .holes i{background:var(--desk-2);box-shadow:inset 0 2px 3px rgba(60,47,36,.3);}
  .tab{opacity:.95;box-shadow:2px 3px 6px rgba(56,41,28,.18);}
  .tab[aria-selected="true"]{opacity:1;}
  .torn,.card,.napkin{box-shadow:0 12px 24px var(--book-shadow);}
  .margin{border-left-color:color-mix(in srgb,var(--pencil) 35%,transparent);}
  .loose .head,.foot{opacity:1;}
  @media (hover:hover) and (pointer:fine){.btn:hover{border-color:var(--desk-ink);background:rgba(255,255,255,.35);}.btn[aria-pressed="true"]:hover{background:var(--desk-ink);}}
  @media (max-width:760px){.strip{gap:12px;}.strip .who{display:grid;gap:0;}.strip .who span{font-size:9px;letter-spacing:.08em;}.strip nav{gap:9px;}.notebook-leaf.left,.notebook-leaf.right{box-shadow:none;}}
  @media (max-width:760px){.strip .btn{font-size:10px;padding:6px 9px;letter-spacing:.08em;}}

/* Working theme: archive, reading pages, and progressive notebook navigation. */
[hidden]{display:none!important;}
.skip-link{position:absolute;top:-100px;left:20px;z-index:99999;background:var(--paper);padding:10px 20px;border:2px solid var(--pencil);}
.skip-link:focus{top:12px;}
.strip .btn{display:inline-flex;align-items:center;text-decoration:none;line-height:1.7;}
.strip .who b{letter-spacing:.22em;}
.desktop-navigation{display:flex;align-items:center;gap:18px;}
.mobile-directory{display:none;position:relative;}
.mobile-directory summary{list-style:none;user-select:none;}
.mobile-directory summary::-webkit-details-marker{display:none;}
.directory-mark{display:inline-block;font:16px/1 var(--latin);margin-left:6px;transition:transform var(--dur);}
.mobile-directory[open] .directory-mark{transform:rotate(45deg);}
.directory-page{position:absolute;top:calc(100% + 14px);right:0;z-index:50;width:285px;max-width:calc(100vw - 32px);padding:20px 24px 16px;background:var(--paper);border:1px solid #d1c3af;border-radius:2px;box-shadow:0 15px 30px var(--book-shadow);transform:rotate(.6deg);}
.directory-caption{font:14px/1.7 var(--kai);color:var(--pencil);margin:0 0 12px;letter-spacing:.02em;}
.strip .directory-page a{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-top:1px solid var(--paper-rule);font:16px/1.6 var(--song);letter-spacing:.03em;opacity:1;}
html.en .strip .directory-page a{font-family:var(--latin);}
.directory-number{color:var(--pencil);font:11px/2.3 var(--mono);}
.book .notebook-leaf{min-width:0;}
.sheet{display:block;margin-bottom:60px;}
.notebook-ready .sheet{display:none;margin-bottom:0;}
.notebook-ready .sheet.on{display:block;}
.tabs{gap:7px;}
.tab{display:block;text-decoration:none;line-height:1.5;text-align:center;}
.tab[aria-selected=true]{opacity:1;transform:translateX(6px);font-weight:600;}
.margin{display:block;}
.notebook-ready .margin{display:none;}
html.notes .notebook-ready .margin{display:block;}
.sheet-prose{max-width:44ch;}
.sheet-prose p{margin-bottom:1.25em;}
.sheet h2{margin-bottom:24px;}
.sheet .k{margin-bottom:20px;}
.sheet .url{margin-top:4px;}
.student-mark{color:var(--pencil);font:46px/1.4 var(--mono);letter-spacing:.06em;margin-top:28px!important;}
.pencil-aside{font-size:16px;margin:18px 0 0;}
.contact{font-size:17px;padding-right:64px;}
.contact a{white-space:nowrap;}
.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-bottom:1px solid #b5a38e;padding-bottom:18px;}
.section-title h2{font-size:22px;font-weight:500;letter-spacing:.12em;margin:0;}
.section-title a{font-size:14px;white-space:nowrap;text-decoration:none;color:var(--pencil);}
.recent-writing{margin:80px 0 0;}
.recent-list{list-style:none;padding:0;margin:0;}
.recent-list li{display:grid;grid-template-columns:112px 1fr;gap:20px;align-items:baseline;border-bottom:1px solid #c2b4a240;padding:20px 0;}
.recent-list time{font:12px var(--mono);color:var(--ink-soft);}
.recent-list a{text-decoration:none;font-size:20px;}
.recent-list a span{font-size:13px;color:var(--pencil);margin-left:8px;}
.letter{position:relative;background:var(--paper);margin-top:80px;padding:45px 54px 50px;box-shadow:0 10px 22px var(--book-shadow);transform:rotate(-.4deg);}
.letter .k{font:11px var(--mono);letter-spacing:.2em;color:var(--ink-soft);}
.letter h2{font-size:clamp(25px,3vw,36px);font-weight:500;line-height:1.6;margin:20px 0;}
.letter-mark{position:absolute;right:35px;top:28px;font:40px var(--latin);color:var(--seal);}
.email-link{font-size:clamp(18px,2.5vw,25px);color:var(--pencil);text-decoration:none;border-bottom:1px solid currentColor;overflow-wrap:anywhere;}
.site-footer.desk{padding-bottom:36px;margin-top:0;}
.footer-note{font-family:var(--kai);font-size:16px;color:var(--pencil);margin-top:55px;}
.foot{margin-top:24px;letter-spacing:.03em;gap:10px 23px;font-size:11px;}
.reader-desk{max-width:1080px;margin:18px auto 0;padding:0 34px 40px;}
.reading-page{background:linear-gradient(180deg,var(--paper),#fcf7ed);border-radius:4px;box-shadow:0 15px 34px var(--book-shadow);padding:55px 72px 70px;position:relative;overflow-wrap:anywhere;}
.reading-page::before{content:"";position:absolute;left:35px;top:0;bottom:0;width:1px;background:#b13e331f;pointer-events:none;}
.reading-page h1{font-size:clamp(32px,4.5vw,52px);line-height:1.35;letter-spacing:.03em;margin:15px 0 22px;overflow-wrap:break-word;}
.eyebrow{font-size:13px;letter-spacing:.06em;color:var(--ink-soft);margin:0 0 32px;}
.eyebrow a{text-decoration:none;}
.entry-header{margin-bottom:40px;}
.entry-featured{max-width:100%;margin:0 0 38px;}
.entry-featured img{display:block;max-width:100%;height:auto;margin:0 auto;}
.entry-featured figcaption{font-size:13px;line-height:1.8;color:var(--ink-soft);text-align:center;margin-top:10px;}
.entry-meta{font-size:12px;color:var(--ink-soft);letter-spacing:.02em;}
.entry-categories{font-size:12px;color:var(--pencil);letter-spacing:.06em;margin:0;}
.entry-categories a{text-decoration:none;}
.entry-content{font-family:var(--song);font-size:19px;line-height:2.05;}
.entry-content[lang=en]{font-family:var(--latin);font-size:20px;line-height:1.8;}
.entry-content p{margin:0 0 1.5em;}
.entry-content a{color:var(--pencil);text-underline-offset:3px;}
.entry-content img,.entry-content video,.entry-content iframe{max-width:100%;height:auto;}
.entry-content figure{max-width:100%;margin:1.8em 0;}
.entry-content figcaption{color:var(--ink-soft);font-size:13px;}
.entry-content blockquote{margin:1.8em 0;padding:0 0 0 24px;border-left:2px solid var(--pencil);}
.entry-content pre{overflow:auto;background:#e9e1d566;padding:20px;font:14px/1.7 var(--mono);}
.entry-content table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;}
.entry-content td,.entry-content th{border:1px solid #c7baa7;padding:8px 12px;}
.historical-note{font-size:14px;line-height:1.8;color:var(--ink-soft);padding:15px 18px;background:#ede4d366;border-left:2px solid var(--pencil);margin:0 0 35px;}
.post-neighbors{border-top:1px solid #d9cebd;margin-top:50px;padding-top:25px;display:flex;justify-content:space-between;gap:25px;font-size:14px;}
.post-neighbors>div{max-width:48%;}
.post-neighbors a{color:var(--pencil);text-decoration:none;}
.archive-intro{font-size:16px;color:var(--ink-soft);}
.writing-search{margin:30px 0;font-size:13px;}
.writing-search label{display:block;color:var(--ink-soft);letter-spacing:.08em;margin-bottom:8px;}
.search-fields{display:flex;max-width:590px;}
.search-fields input{flex:1;min-width:0;font:16px var(--song);border:1px solid #bdaf9b;border-right:0;background:#fffdf9;border-radius:3px 0 0 3px;padding:12px 14px;color:var(--ink);}
.search-fields button{font:14px var(--song);padding:10px 20px;color:var(--pencil);background:#e9e1d555;border:1px solid #bdaf9b;border-radius:0 3px 3px 0;cursor:pointer;white-space:nowrap;}
.category-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:10px;}
.category-links a{font-size:14px;text-decoration:none;color:var(--pencil);}
.archive-list{list-style:none;padding:0;margin:0;}
.archive-item{display:grid;grid-template-columns:105px 1fr;gap:20px;border-top:1px solid #d6ccbc;padding:30px 0;}
.archive-item h2{font-size:25px;line-height:1.5;font-weight:500;margin:0 0 10px;}
.archive-item h2 a{text-decoration:none;}
.entry-date{font:11px/1.8 var(--mono);color:var(--ink-soft);padding-top:8px;}
.entry-summary{font-size:15px;line-height:1.9;color:var(--ink-soft);margin:0 0 12px;}
.entry-summary[lang=en]{font-family:var(--latin);font-size:16px;}
.pagination{margin-top:28px;}
.pagination ul{list-style:none;padding:0;display:flex;gap:8px;flex-wrap:wrap;}
.pagination li a,.pagination li span{display:block;min-width:35px;text-align:center;padding:5px 10px;border:1px solid #c3b49e;text-decoration:none;font-size:14px;}
.pagination .current{background:var(--pencil);border-color:var(--pencil);color:var(--paper);}
.empty-page{padding:35px 0;}
.guestbook-label{font:11px var(--mono);letter-spacing:.2em;color:var(--pencil);margin:40px 0 20px;}
.guestbook-intro{font-size:18px;line-height:1.9;max-width:38ch;}
.endorsal-wall{margin:40px 0;min-height:280px;}
.wall-placeholder{min-height:280px;border:1px dashed #bca98e;padding:45px 30px;text-align:center;color:var(--ink-soft);background:repeating-linear-gradient(180deg,transparent 0 31px,#6a6f8312 31px 32px);}
.wall-pencil{font-size:40px;color:var(--pencil);}
.wall-placeholder p{font:23px/1.6 var(--kai);}
.wall-placeholder small{font:12px var(--mono);}
.guestbook-email,.guestbook-link{font-size:14px;color:var(--pencil);margin-top:24px;}
.guestbook-email a,.guestbook-link a{text-decoration:none;border-bottom:1px solid currentColor;}
.comments-area{margin-top:55px;border-top:1px solid #d6ccbc;padding-top:25px;font-size:15px;}
.comments-area h2,.comments-area h3{font-weight:500;}
.comment-list{list-style:none;padding:0;}
.comment-list .children{list-style:none;padding-left:24px;}
.comment-body{padding:20px 0;border-bottom:1px solid #e0d6c7;}
.comment-meta{font-size:12px;color:var(--ink-soft);}
.comments-area input:not([type=checkbox]),.comments-area textarea{font:inherit;border:1px solid #bdaf9b;background:#fffdf9;color:var(--ink);max-width:100%;padding:9px;}
.comments-area textarea{display:block;width:100%;}
.comment-form label{display:block;}
.comment-form-cookies-consent label{display:inline;}
@media(hover:hover) and (pointer:fine){.recent-list a:hover,.archive-item h2 a:hover,.eyebrow a:hover{color:var(--pencil);}.section-title a:hover,.post-neighbors a:hover{text-decoration:underline;}.tab:hover{opacity:1;}}
@media(max-width:980px){.reading-page{padding:45px 45px 60px;}.reading-page::before{left:22px;}.contact{padding-right:30px;font-size:16px;}}
@media(max-width:760px){.tab[aria-selected=true]{transform:translateY(-2px);}.sheet{margin-bottom:42px;}.notebook-ready .sheet{margin-bottom:0;}.sheet h2{font-size:31px;}.contact{padding-right:15px;}.recent-writing{margin-top:55px;}.section-title h2{font-size:19px;letter-spacing:.04em;}.section-title a{font-size:12px;}.recent-list li{grid-template-columns:78px 1fr;gap:12px;padding:17px 0;}.recent-list time{font-size:10px;}.recent-list a{font-size:17px;}.letter{padding:28px;margin-top:50px;}.letter-mark{right:20px;top:15px;}.reader-desk{padding:0 12px 25px;margin-top:8px;}.reading-page{padding:30px 26px 40px;}.reading-page::before{left:12px;}.reading-page h1{font-size:33px;}.eyebrow{margin-bottom:25px;}.entry-content{font-size:17px;line-height:2;}.entry-content[lang=en]{font-size:18px;}.entry-header{margin-bottom:30px;}.archive-item{grid-template-columns:1fr;gap:7px;padding:22px 0;}.entry-date{padding:0;}.archive-item h2{font-size:22px;}.search-fields button{padding:10px 12px;}.post-neighbors{display:block;}.post-neighbors>div{max-width:100%;margin:0 0 18px;}.site-footer.desk{padding-bottom:25px;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.sheet{animation:none!important;}.tab{transition:none;}}
@media(max-width:760px){.strip{position:relative;z-index:20;flex-wrap:wrap;}.strip .who{flex-shrink:0;}.strip nav{margin-left:auto;position:relative;}.desktop-navigation{display:none;}.mobile-directory{display:block;position:static;}.mobile-directory summary{display:flex;align-items:center;}.directory-page{top:calc(100% + 13px);}.directory-page a{min-height:44px;}.contact{padding-right:80px;}#notebook-pages{scroll-margin-top:16px;}}
@media(prefers-reduced-motion:reduce){.directory-mark{transition:none;}}
@media print{body{background:#fff;color:#000;}.strip,.site-footer,.post-neighbors,.writing-search,.comments-area,.tabs,.holes{display:none!important;}.reader-desk,.desk{max-width:none;padding:0;margin:0;}.reading-page{box-shadow:none;background:#fff;padding:0;}.reading-page::before{display:none;}.entry-content a{color:inherit;}.notebook-ready .sheet[hidden]{display:block!important;}.book{filter:none;}}

/* B「剪贴」: the selected article layout, shared by the archive and recent pages. */
.scrapbook-desk{max-width:1230px;margin:18px auto 0;padding:0 46px 55px;}
.writing-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;padding:28px 0 38px;}
.writing-hero .eyebrow{font-size:12px;color:var(--pencil);margin:0 0 20px;}
.writing-hero h1{font-size:clamp(37px,4.7vw,61px);font-weight:500;line-height:1.4;letter-spacing:.04em;margin:0 0 17px;overflow-wrap:anywhere;}
.writing-hero .archive-intro{margin:0;max-width:37em;}
.writing-aside{max-width:210px;color:var(--pencil);font:21px/1.8 var(--kai);padding:0 0 17px;transform:rotate(-3deg);border-bottom:1px solid #405d8955;}
html.en .writing-aside{font-family:var(--latin);font-size:18px;}
.writing-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #c7b9a5;border-bottom:1px solid #c7b9a5;padding:17px 0;margin:10px 0 38px;}
.writing-categories{display:flex;gap:4px;flex-wrap:wrap;}
.writing-categories a{font-size:14px;line-height:1.4;color:var(--ink-soft);padding:11px 14px;text-decoration:none;border:1px solid transparent;border-radius:2px;}
.writing-categories a[aria-current=page]{background:var(--pencil);border-color:var(--pencil);color:var(--paper);}
.writing-find{display:flex;gap:20px;align-items:center;flex-wrap:wrap;}
.writing-find .writing-search{margin:0;font-size:11px;}
.writing-find .writing-search label{margin-bottom:3px;letter-spacing:.03em;}
.writing-find .search-fields{max-width:260px;}
.writing-find .search-fields input{width:145px;padding:7px 8px;font-size:14px;border:0;border-bottom:1px solid #a79580;border-radius:0;background:transparent;}
.writing-find .search-fields button{font-size:12px;padding:7px 9px;border:0;border-bottom:1px solid #a79580;border-radius:0;background:transparent;}
.writing-order{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.writing-order a{font-size:12px;line-height:1.8;text-decoration:none;color:var(--ink-soft);border-bottom:1px solid transparent;padding:7px 0 4px;}
.writing-order a[aria-current=page]{color:var(--pencil);border-bottom-color:currentColor;}
.writing-cards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:31px 29px;align-items:stretch;padding:7px 5px;}
.writing-cards .writing-card{display:block;position:relative;min-width:0;grid-column:span 4;padding:0;border:0;background:#fffdf4;box-shadow:1px 7px 14px #725a3821;transform:rotate(.7deg);}
.writing-card:nth-child(3n+2){background:#edf0f0;transform:rotate(-.7deg);}
.writing-card:nth-child(3n+3){background:#eee7ef;transform:rotate(.5deg);}
.writing-cards .writing-card:first-child{grid-column:span 7;transform:rotate(-.65deg);background:repeating-linear-gradient(0deg,transparent 0 32px,#596c8c16 32px 33px),#fffdf4;}
.writing-cards .writing-card:nth-child(2){grid-column:span 5;transform:rotate(1.1deg);}
.writing-card-link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none;}
.writing-card-link:focus-visible{outline:3px solid var(--pencil);outline-offset:6px;}
.writing-card-body{position:relative;z-index:1;padding:26px 29px 24px;display:flex;flex-direction:column;flex:1;min-width:0;}
.writing-card:first-child .writing-card-body{padding:34px 39px 26px;}
.writing-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--ink-soft);font:12px/1.6 var(--song);margin-bottom:17px;}
.writing-card-category{color:var(--pencil);}
.writing-card.is-poem .writing-card-category{color:var(--seal);}
.writing-card h2{font-size:27px;line-height:1.5;font-weight:500;letter-spacing:.015em;margin:0 0 15px;overflow-wrap:anywhere;}
.writing-card h2[lang=en]{font-family:var(--latin);font-size:29px;letter-spacing:0;line-height:1.25;}
.writing-card:first-child h2{font-size:37px;margin-bottom:20px;}
.writing-card:first-child.is-poem h2[lang=zh-CN]{font-size:57px;letter-spacing:.12em;color:#7d3831;}
.writing-card:nth-child(2) h2[lang=en]{font-size:38px;font-style:italic;max-width:13ch;}
.writing-excerpt{font-size:15px;line-height:1.95;color:#75695b;margin:0 0 20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;}
.writing-excerpt[lang=en]{font-family:var(--latin);font-size:16px;line-height:1.7;}
.writing-verse{font:18px/1.8 var(--latin);color:#615747;margin:0 0 26px;}
.writing-verse[lang=zh-CN]{font-family:var(--song);font-size:17px;}
.writing-card:first-child .writing-verse{font-size:18px;line-height:1.85;max-width:36ch;}
.writing-verse .poem-line{display:block;text-wrap:balance;overflow-wrap:anywhere;}
.writing-card-foot{margin-top:auto;padding-top:23px;display:flex;justify-content:space-between;gap:15px;align-items:center;font:10px/1.6 var(--mono);letter-spacing:.04em;color:var(--ink-soft);}
.writing-read{font:14px var(--kai);color:var(--pencil);}
html.en .writing-read{font-family:var(--latin);}
.writing-card-art{height:175px;margin:18px 18px -5px;background:#fffdf8;transform:rotate(-1deg);box-shadow:0 2px 4px #67574012;overflow:hidden;}
.writing-card-art img{display:block;width:100%;height:100%;object-fit:contain;padding:12px;background:#fffdf7;mix-blend-mode:multiply;}
.writing-tape{position:absolute;z-index:3;left:calc(50% - 44px);top:-12px;width:88px;height:25px;background:#e7ce8b72;box-shadow:0 1px 1px #87653013;transform:rotate(-4deg);pointer-events:none;}
.writing-card:nth-child(2) .writing-tape{left:auto;right:16px;transform:rotate(22deg);}
.writing-card:nth-child(n+3) .writing-tape{display:none;}
.writing-clip{display:none;}
.writing-card:nth-child(4) .writing-clip{display:block;position:absolute;z-index:4;left:22px;top:-13px;width:15px;height:45px;border:2px solid #7b8493;border-radius:8px;transform:rotate(13deg);pointer-events:none;}
.writing-card:nth-child(5){background:radial-gradient(circle at 92% 8%,transparent 31px,#9d70412b 33px,#9d70410c 38px,transparent 40px),#f7f0df;}
.writing-endnote{margin:60px 0 0;padding-top:25px;border-top:1px dashed #c7b9a5;font:17px/1.8 var(--kai);color:var(--pencil);}
html.en .writing-endnote{font-family:var(--latin);}
.writing-cards-home{margin-top:38px;}
.writing-cards-home .writing-card:nth-child(3),.writing-cards-home .writing-card:nth-child(4){grid-column:span 6;}
@media(hover:hover) and (pointer:fine){.writing-categories a:hover{border-color:#ac9b82;}.writing-order a:hover{color:var(--pencil);}.writing-card-link:hover h2{color:var(--pencil);}.writing-card:first-child.is-poem .writing-card-link:hover h2{color:var(--pencil);}.writing-card-link:hover{box-shadow:0 10px 24px #6b57351c;}}
@media(max-width:1000px){.scrapbook-desk{padding:0 32px 45px;}.writing-aside{max-width:180px;}.writing-cards .writing-card,.writing-cards .writing-card:first-child,.writing-cards .writing-card:nth-child(2){grid-column:span 6;}.writing-card:first-child .writing-card-body{padding:28px;}.writing-find{width:100%;justify-content:space-between;}}
@media(max-width:650px){.scrapbook-desk{padding:0 20px 35px;margin-top:4px;}.writing-hero{display:block;padding:28px 0 22px;}.writing-hero .eyebrow{font-size:11px;margin-bottom:14px;}.writing-hero h1{font-size:36px;line-height:1.45;}.writing-hero .archive-intro{font-size:14px;line-height:1.9;}.writing-aside,html.en .writing-aside{font-size:16px;display:inline-block;margin-top:22px;max-width:none;padding-bottom:9px;transform:none;}.writing-aside br{display:none;}.writing-tools{gap:18px;margin:8px 0 30px;padding:15px 0;}.writing-categories{gap:2px;}.writing-categories a{font-size:13px;padding:11px;}.writing-find{gap:14px;}.writing-find .writing-search{flex:1;min-width:150px;}.writing-order{gap:9px;}.writing-order a{font-size:11px;}.writing-cards{display:block;padding:2px 3px;}.writing-cards .writing-card{margin-bottom:29px;transform:rotate(.35deg);}.writing-card:nth-child(3n+2){transform:rotate(-.5deg);}.writing-cards .writing-card:first-child,.writing-cards .writing-card:nth-child(2){transform:rotate(-.4deg);}.writing-card-body{padding:25px;}.writing-card:first-child .writing-card-body{padding:28px 27px 24px;}.writing-card h2,.writing-card h2[lang=en]{font-size:27px;}.writing-card:first-child h2{font-size:30px;}.writing-card:first-child.is-poem h2[lang=zh-CN]{font-size:50px;}.writing-card:nth-child(2) h2[lang=en]{font-size:35px;}.writing-card:first-child .writing-verse{font-size:16px;}.writing-card-foot{padding-top:15px;}.writing-endnote{margin-top:35px;}.writing-cards-home{margin-top:32px;}}
@media(max-width:350px){.scrapbook-desk{padding:0 16px 30px;}.writing-hero h1{font-size:32px;}.writing-categories a{padding:10px 9px;}.writing-card-body,.writing-card:first-child .writing-card-body{padding:26px 23px;}.writing-find{gap:12px;}.writing-order{width:100%;justify-content:flex-end;}}
@media print{.writing-tools,.writing-tape,.writing-clip{display:none;}.writing-cards{display:block;}.writing-cards .writing-card{break-inside:avoid;box-shadow:none;transform:none;margin-bottom:25px;}}

