:root{color-scheme:light;--font-display: "STKaiti", "Kaiti SC", "Songti SC", "Noto Serif SC", serif;--font-body: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--paper-bg: #f8f3ea;--paper-panel: #fffdf9;--paper-panel-strong: #fff8ef;--paper-border: #d8c8b0;--paper-ink: #2f2822;--paper-ink-soft: #66594f;--paper-accent: #a45b43;--paper-accent-strong: #8e462f;--paper-danger: #a83030;--paper-shadow: 0 16px 42px -24px rgba(56, 32, 14, .45);--paper-shadow-strong: 0 24px 52px -24px rgba(56, 32, 14, .5);--ring: rgba(164, 91, 67, .35);--radius-l: 18px;--radius-xl: 24px;--radius-pill: 999px;--motion-fast: .16s;--motion-medium: .24s;--bg-mesh: radial-gradient(circle at 8% 12%, rgba(208, 172, 142, .22) 0%, transparent 36%), radial-gradient(circle at 90% 3%, rgba(201, 158, 126, .2) 0%, transparent 28%), radial-gradient(circle at 12% 92%, rgba(164, 91, 67, .1) 0%, transparent 32%), linear-gradient(135deg, #f7efe2 0%, #f4ebde 48%, #f2e6d8 100%)}:root[data-theme=dark]{color-scheme:dark;--paper-bg: #1c1916;--paper-panel: #26211d;--paper-panel-strong: #2d2722;--paper-border: #4f4134;--paper-ink: #f5ecdf;--paper-ink-soft: #ccb9a4;--paper-accent: #df9275;--paper-accent-strong: #f3ac8f;--paper-danger: #f58f8f;--paper-shadow: 0 20px 38px -22px rgba(0, 0, 0, .75);--paper-shadow-strong: 0 34px 64px -30px rgba(0, 0, 0, .85);--ring: rgba(243, 172, 143, .42);--bg-mesh: radial-gradient(circle at 5% 10%, rgba(223, 146, 117, .16) 0%, transparent 30%), radial-gradient(circle at 86% 6%, rgba(111, 82, 66, .45) 0%, transparent 34%), radial-gradient(circle at 12% 88%, rgba(86, 58, 44, .4) 0%, transparent 32%), linear-gradient(140deg, #1a1714 0%, #171411 52%, #141210 100%)}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}body{margin:0;background:var(--bg-mesh);color:var(--paper-ink);font-family:var(--font-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.skip-link{position:absolute;left:12px;top:-100px;z-index:200;background:var(--paper-panel);border:1px solid var(--paper-border);border-radius:10px;padding:8px 10px}.skip-link:focus-visible{top:12px}.page-root{max-width:1240px;margin:0 auto;padding:20px;display:grid;gap:18px}.paper-card{background:linear-gradient(0deg,#ffffff5c,#ffffff5c),repeating-linear-gradient(to bottom,transparent,transparent 28px,rgba(168,141,121,.085) 28px,rgba(168,141,121,.085) 29px),var(--paper-panel);border:1px solid var(--paper-border);border-radius:var(--radius-xl);box-shadow:var(--paper-shadow)}:root[data-theme=dark] .paper-card{background:linear-gradient(0deg,#00000038,#00000038),repeating-linear-gradient(to bottom,transparent,transparent 28px,rgba(231,205,178,.06) 28px,rgba(231,205,178,.06) 29px),var(--paper-panel)}.app-header{position:sticky;top:12px;z-index:120;display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:16px 18px;border-radius:var(--radius-xl);background:color-mix(in srgb,var(--paper-panel) 78%,transparent);border:1px solid color-mix(in srgb,var(--paper-border) 80%,transparent);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:var(--paper-shadow)}.brand-kicker{margin:0;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--paper-ink-soft)}.brand-title{margin:4px 0 0;font-family:var(--font-display);font-size:clamp(1.1rem,2vw,1.6rem);line-height:1.2}.top-nav{display:flex;gap:8px;align-items:center}.top-nav-link{border-radius:var(--radius-pill);border:1px solid transparent;padding:8px 14px;font-size:14px;color:var(--paper-ink-soft);transition:background var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease}.top-nav-link:hover,.top-nav-link:focus-visible,.top-nav-link.is-active{background:color-mix(in srgb,var(--paper-accent) 16%,transparent);border-color:color-mix(in srgb,var(--paper-accent) 45%,transparent);color:var(--paper-ink)}.header-actions{display:flex;gap:8px;align-items:center}.user-chip{display:inline-flex;align-items:center;max-width:120px;padding:8px 12px;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb,var(--paper-border) 70%,transparent);background:color-mix(in srgb,var(--paper-panel) 76%,transparent);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-panel{display:grid;gap:18px}.primary-button,.ghost-button,.text-link,.inline-button{cursor:pointer}.primary-button,.ghost-button{border-radius:var(--radius-pill);border:1px solid transparent;padding:10px 16px;font-weight:600;transition:transform var(--motion-fast) ease,background var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease}.primary-button{background:var(--paper-accent);color:#fff}.primary-button:hover,.primary-button:focus-visible{background:var(--paper-accent-strong);transform:translateY(-1px)}.primary-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.ghost-button{background:transparent;border-color:color-mix(in srgb,var(--paper-border) 65%,transparent);color:var(--paper-ink-soft)}.ghost-button:hover,.ghost-button:focus-visible{color:var(--paper-ink);border-color:color-mix(in srgb,var(--paper-accent) 55%,transparent);background:color-mix(in srgb,var(--paper-accent) 12%,transparent)}.status-view{padding:36px;border-radius:var(--radius-xl);border:1px dashed color-mix(in srgb,var(--paper-border) 80%,transparent);background:color-mix(in srgb,var(--paper-panel) 78%,transparent);display:grid;gap:12px;justify-items:start}.status-view h2{margin:0;font-family:var(--font-display)}.status-view p{margin:0;color:var(--paper-ink-soft)}.status-view-action{margin-top:4px}.paper-spinner{width:36px;height:36px;border-radius:50%;border:3px solid color-mix(in srgb,var(--paper-border) 60%,transparent);border-top-color:var(--paper-accent);animation:spin 1s linear infinite}.list-layout,.editor-layout,.detail-layout{display:grid;gap:16px;grid-template-columns:2fr 1fr}.list-column,.editor-card,.detail-article,.comment-panel,.side-note{padding:20px}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.section-kicker{margin:0;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--paper-ink-soft)}h2,h3{margin:4px 0 0;font-family:var(--font-display)}.section-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.diary-grid{display:grid;gap:12px}.diary-card{display:grid;gap:8px;padding:14px;border-radius:var(--radius-l);border:1px solid color-mix(in srgb,var(--paper-border) 68%,transparent);background:color-mix(in srgb,var(--paper-panel-strong) 92%,transparent);transition:border-color var(--motion-fast) ease,transform var(--motion-fast) ease,box-shadow var(--motion-fast) ease;content-visibility:auto;contain-intrinsic-size:180px}.diary-card:hover,.diary-card:focus-visible{border-color:color-mix(in srgb,var(--paper-accent) 60%,transparent);transform:translateY(-2px);box-shadow:var(--paper-shadow-strong)}.diary-card h3{margin:0;font-size:1.15rem}.diary-card-date,.diary-card-meta,.muted-text{margin:0;font-size:13px;color:var(--paper-ink-soft)}.diary-card-content{margin:0;line-height:1.65;color:var(--paper-ink);display:-webkit-box;line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.diary-card-meta{display:flex;justify-content:space-between}.side-note ul,.side-note li{margin:0;padding:0;list-style:none}.side-note ul{display:grid;gap:8px;margin-top:14px}.side-note li{padding-left:12px;position:relative;line-height:1.5}.side-note li:before{content:"·";position:absolute;left:0;color:var(--paper-accent)}.detail-content{margin:0;font-size:1.02rem;line-height:1.9;white-space:pre-wrap}.media-grid{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.media-grid img{width:100%;display:block;border-radius:12px;border:1px solid color-mix(in srgb,var(--paper-border) 70%,transparent)}.comment-list{display:grid;gap:8px;margin-top:12px}.comment-item{border:1px solid color-mix(in srgb,var(--paper-border) 66%,transparent);border-radius:14px;padding:12px;background:color-mix(in srgb,var(--paper-panel-strong) 88%,transparent)}.comment-item header{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px}.comment-item strong{font-size:13px}.comment-item span{font-size:12px;color:var(--paper-ink-soft)}.comment-item p{margin:0;line-height:1.6}.comment-editor,.editor-panel,.editor-form,.auth-form{display:grid;gap:10px}label{font-size:13px;color:var(--paper-ink-soft)}input,textarea{border-radius:12px;border:1px solid color-mix(in srgb,var(--paper-border) 72%,transparent);padding:10px 12px;background:color-mix(in srgb,var(--paper-panel) 94%,transparent);color:var(--paper-ink)}textarea{min-height:132px;resize:vertical}input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.form-error{margin:0;color:var(--paper-danger);font-size:14px}.text-link{background:none;border:none;color:var(--paper-accent);padding:0;font-weight:600}.back-create{margin-top:12px;justify-self:start}.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(560px,100%);padding:28px}.auth-eyebrow{margin:0;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--paper-ink-soft)}.auth-card h1{margin:4px 0 10px;font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.2rem)}.auth-copy{margin:0 0 18px;color:var(--paper-ink-soft);line-height:1.7}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:1024px){.app-header{grid-template-columns:1fr;gap:10px}.header-actions{justify-content:flex-start;flex-wrap:wrap}.list-layout,.editor-layout,.detail-layout{grid-template-columns:1fr}}@media(max-width:640px){.page-root{padding:12px}.paper-card,.status-view{border-radius:16px}.list-column,.editor-card,.detail-article,.comment-panel,.side-note,.auth-card{padding:14px}.top-nav{flex-wrap:wrap}.user-chip{max-width:96px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
