/* v43 光中的群贤书院：纯白画布、清晰对比、方向性的窗光。 */
@layer light-court {
  :root {
    --color-day-paper:#fff;
    --color-day-paper-deep:#f5f7f8;
    --color-day-paper-warm:#f7f3eb;
    --color-day-ink:#1d1d1f;
    --color-day-ink-soft:#4b5560;
    --color-day-muted:#66727a;
    --color-day-rule:#e2e8eb;
    --color-day-rule-strong:#b8c5ca;
    --color-day-accent:#0f6f73;
    --color-day-accent-soft:#dcefed;
    --color-warm:#b85a35;
    --color-warm-soft:#fde9e1;
    --color-warm-hover:#9f4b2e;
    --color-warm-fill:#e79572;
    --color-pencil:#92701c;
    --color-pencil-fill:#d8b85c;
    --border-control:#849197;
    --bg-soft:#f5f7f8;
    --bg-card:#fff;
    --light-window:#eef7f7;
    --light-gold:#f4d98b;
    --light-card:#f5f9f8;
    --light-known-bg:#eaf5f4;
    --light-forgot-bg:#fff5f1;
    --light-star-bg:#fffaf0;
    --accent-current:var(--color-day-accent);
    --accent-soft-current:var(--color-day-accent-soft);
    --ink:var(--text-primary);
    --ink-primary:var(--text-primary);
    --ink-strong:var(--text-primary);
    --ink-soft:var(--text-secondary);
    --ink-muted:var(--text-muted);
    --ink-faint:color-mix(in srgb,var(--text-muted) 72%,var(--surface-canvas));
    --paper:var(--surface-canvas);
    --paper-deep:var(--surface-subtle);
    --accent-warm:var(--color-warm-hover);
    --accent-soft:var(--color-day-accent-soft);
  }
  html[data-theme="light"] { --action-primary:var(--color-day-accent); --action-subtle:var(--color-day-accent-soft); --focus-ring:var(--color-day-accent); }
  html[data-theme="night"] {
    --color-night-paper:#182225; --color-night-paper-deep:#223337; --color-night-ink:#edf3f1; --color-night-ink-soft:#c6d4d2; --color-night-muted:#9eafad; --color-night-rule:#3c5556; --color-night-rule-strong:#63807e; --color-night-accent:#8dd0cb; --color-night-accent-soft:#2d5557;
    --accent-warm:var(--color-night-accent); --accent-soft:var(--color-night-accent-soft); --bg-soft:var(--color-night-paper-deep); --bg-card:var(--color-night-paper); --accent-current:var(--color-night-accent); --accent-soft-current:var(--color-night-accent-soft); --light-window:#223337; --light-gold:#d8b85c; --light-card:#223337; --light-known-bg:#2d5557; --light-forgot-bg:#493331; --light-star-bg:#3c3828;
  }
  @media (prefers-color-scheme:dark) { html[data-theme="auto"] { --accent-warm:var(--color-night-accent); --accent-soft:var(--color-night-accent-soft); --bg-soft:var(--color-night-paper-deep); --bg-card:var(--color-night-paper); --accent-current:var(--color-night-accent); --accent-soft-current:var(--color-night-accent-soft); --light-window:#223337; --light-gold:#d8b85c; --light-card:#223337; --light-known-bg:#2d5557; --light-forgot-bg:#493331; --light-star-bg:#3c3828; } }
  html[data-paper="warm"][data-theme="light"],html[data-paper="warm"][data-theme="auto"] { --surface-canvas:var(--color-day-paper-warm); --surface-subtle:color-mix(in srgb,var(--color-day-paper-warm) 72%,var(--color-day-paper)); }
  @media (prefers-color-scheme:dark) { html[data-paper="warm"][data-theme="auto"] { --surface-canvas:var(--color-night-paper); --surface-subtle:var(--color-night-paper-deep); } }

  body,.site-header,.site-footer { background:var(--surface-canvas); }
  body { -webkit-font-smoothing:auto; }
  .library-hall { position:relative; }
  .library-hall-head--minimal { position:relative; overflow:hidden; padding:clamp(40px,7vw,88px) clamp(20px,4vw,56px) clamp(30px,5vw,56px); border:1px solid var(--border-subtle); border-radius:18px; background:var(--surface-canvas); box-shadow:0 14px 36px rgba(31,70,73,.07); }
  /* 用斜向几何窗光表达方向，避免圆形光晕。 */
  .library-hall-head--minimal::after { content:""; position:absolute; width:58%; height:135%; right:-12%; top:-18%; background:var(--light-window); clip-path:polygon(18% 0,100% 0,82% 100%,0 100%); transform:skewX(-8deg); pointer-events:none; }
  .library-hall-head--minimal::before { content:""; position:absolute; right:17%; top:15%; width:7px; height:70%; background:var(--light-gold); opacity:.58; transform:rotate(14deg); transform-origin:center; pointer-events:none; }
  .notebook-greeting-main,.notebook-preface { position:relative; z-index:1; }
  .notebook-greeting-main { color:var(--text-primary); }
  .notebook-preface { max-width:720px; color:var(--text-secondary); }
  .top-nav { border-color:var(--border-subtle); }

  .zhaiji-review-card { position:relative; border-color:var(--border-strong); border-top-color:var(--accent-current); border-radius:14px; background:var(--light-card); box-shadow:0 12px 34px rgba(38,83,85,.10); }
  .zhaiji-review-card::after { content:"✦"; position:absolute; top:18px; right:24px; color:var(--light-gold); font-size:18px; }
  .zhaiji-review-knew { border-color:var(--accent-current); box-shadow:inset 0 -3px 0 var(--accent-current); background:var(--light-known-bg); }
  .zhaiji-review-forgot { border-color:var(--color-warm); background:var(--light-forgot-bg); }
  .zhaiji-list .zhaiji-entry { border-bottom-color:var(--border-subtle); }
  .zhaiji-translation { border-left-color:var(--color-pencil); background:var(--surface-canvas); }
  .library-entry:hover,.collection-entry:hover,.mark-row:hover { background:color-mix(in srgb,var(--accent-soft-current) 48%,var(--surface-canvas)); }
  .directory-summary-label { color:var(--accent-current); }
  .librarian-flag { color:var(--accent-current); border-color:color-mix(in srgb,var(--accent-current) 45%,var(--border-subtle)); background:var(--bg-soft); }
  .librarian-score { color:var(--color-pencil); }
  .year-heading { color:var(--text-primary); }
  .year-group { position:relative; }
  .year-group::before { content:""; position:absolute; left:-18px; top:10px; bottom:0; width:2px; background:var(--color-pencil-fill); opacity:.65; }
  .index-cat-details[open] .index-cat-name { color:var(--text-primary); }
  .index-cat-name::after { content:""; width:5px; height:5px; margin-left:auto; border-radius:50%; background:var(--color-pencil-fill); opacity:.75; }
  .starred-item--featured .starred-star { color:var(--color-pencil); }
  body[data-density="compact"] .library-entry.is-starred { background:var(--light-star-bg); }
  .librarian-note { background:var(--bg-soft); border-left-color:var(--accent-current); }
  .eyebrow,.section-kicker { color:var(--text-muted); }
  input,textarea,select { border-color:var(--border-control); }
  .zhaiji-decide-quiet { opacity:1; }
  .page-shell h1,.page-shell h2,.page-shell h3,.page-shell h4,.page-shell h5,.page-shell h6 { letter-spacing:0; }
  @media (max-width:560px) { .library-hall-head--minimal { padding:36px 20px 30px; border-radius:12px; } }
}
