:root{--bg:#faf8f4;--sidebar:#f1ede6;--surface:#fff;--text:#1c1917;--muted:#6b6459;--faint:#756c61;--accent:#a6462b;--divider:#1c19171c;--rail:230px;--serif:"Fraunces", Georgia, "Times New Roman", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif}:root[data-theme=dark]{--bg:#121110;--sidebar:#0c0b0a;--surface:#1b1917;--text:#ede8e0;--muted:#a09889;--faint:#8a8378;--accent:#de7f58;--divider:#ffffff17}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg);-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;min-height:100vh;transition:background .35s,color .35s}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}@media (hover:none){a:active,button:active{opacity:.55}}.layout{grid-template-columns:var(--rail) 1fr;min-height:100vh;display:grid}.layout>.sidebar{grid-area:1/1}.layout>.content{grid-area:1/2}.sidebar{background:var(--sidebar);border-right:1px solid var(--divider);flex-direction:column;height:100vh;padding:30px 22px 24px;transition:background .35s,border-color .35s;display:flex;position:sticky;top:0;overflow-y:auto}.profile{border-radius:10px;align-items:center;gap:11px;margin-bottom:6px;margin-left:-8px;padding:6px 8px;transition:background .18s;display:flex}@media (hover:hover){.profile:hover{background:color-mix(in srgb, var(--text) 6%, transparent)}}img.avatar{object-fit:cover}.avatar{background:radial-gradient(circle at 30% 28%, color-mix(in srgb, var(--accent) 62%, #10463f), #0e2b28);color:#fff;width:40px;height:40px;font-family:var(--serif);letter-spacing:.4px;border-radius:50%;flex:none;place-items:center;font-size:.9rem;font-weight:500;display:grid}.profile-txt{flex-direction:column;gap:2px;line-height:1.2;display:flex}.profile-name{font-size:.95rem;font-weight:600}.profile-role{color:var(--muted);font-size:.74rem}.status{color:var(--muted);border-left:2px solid var(--accent);margin:14px 0 8px;padding-left:11px;font-size:.75rem;line-height:1.45}.status b{color:var(--text);font-weight:600}.nav{flex-direction:column;gap:1px;margin-top:18px;display:flex}.nav a{color:var(--muted);cursor:pointer;border-radius:8px;align-items:center;gap:9px;padding:8px 10px;font-size:.92rem;transition:color .18s,background .18s;display:flex;position:relative}.nav a .ic{opacity:.8;flex:none;width:15px;height:15px}@media (hover:hover){.nav a:hover{color:var(--text);background:color-mix(in srgb, var(--text) 6%, transparent)}}.nav a.active{color:var(--text)}.nav a.active:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;height:18px;position:absolute;top:50%;left:-22px;transform:translateY(-50%)}.nav a.active .ic{opacity:1;color:var(--accent)}.nav a.ext .arrow{opacity:.45;stroke:currentColor;width:12px;height:12px;margin-left:auto}@media (hover:hover){.nav a.ext:hover .arrow{opacity:.85}}.spacer{flex:1}.side-bottom{border-top:1px solid var(--divider);margin-top:16px;padding-top:14px}.side-bottom .nav a .lock{color:var(--accent);opacity:.9}.toggle{cursor:pointer;width:100%;color:var(--muted);font-family:var(--sans);background:0 0;border:none;border-radius:8px;align-items:center;gap:9px;margin-top:6px;padding:8px 10px;font-size:.92rem;transition:color .18s,background .18s;display:flex}@media (hover:hover){.toggle:hover{color:var(--text);background:color-mix(in srgb, var(--text) 6%, transparent)}}.toggle .ic{width:15px;height:15px}.toggle .moon,[data-theme=light] .toggle .sun{display:none}[data-theme=light] .toggle .moon{display:inline}.credit{color:var(--faint);margin-top:14px;padding-left:2px;font-size:.7rem}.content{padding:60px clamp(24px,5vw,72px) 72px}.inner{max-width:768px;margin:0 auto}.desk{border:1px solid var(--divider);background:color-mix(in srgb, var(--text) 4%, transparent);color:var(--muted);border-radius:999px;align-items:center;gap:8px;margin-bottom:22px;padding:6px 15px;font-size:.79rem;line-height:1;display:inline-flex}.desk b{color:var(--text);font-weight:600}.desk img{object-fit:cover;border-radius:50%;width:22px;height:22px;display:none}.page-title{font-family:var(--serif);letter-spacing:-.01em;text-wrap:balance;margin-bottom:18px;font-size:clamp(2.2rem,4.8vw,3.4rem);font-weight:400;line-height:1.08}.page-title em{color:var(--accent);font-style:italic}.lead{color:var(--muted);max-width:52ch;font-size:1.02rem;line-height:1.58}.sig{background:var(--accent);border-radius:2px;width:54px;height:3px;margin:30px 0 34px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:26px;font-size:.68rem;font-weight:600}.search{margin-bottom:14px;position:relative}.search-ic{width:16px;height:16px;color:var(--faint);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.search-input{border:1px solid var(--divider);background:var(--surface);width:100%;color:var(--text);font-family:var(--sans);border-radius:8px;padding:11px 14px 11px 39px;font-size:.92rem;transition:border-color .16s}.search-input::placeholder{color:var(--faint)}.search-input:focus{border-color:color-mix(in srgb, var(--accent) 55%, transparent)}.search-input::-webkit-search-decoration{-webkit-appearance:none}.search-input::-webkit-search-results-button{-webkit-appearance:none}.filters{flex-wrap:wrap;gap:9px;margin-bottom:8px;display:flex}.chip{font-family:var(--sans);cursor:pointer;border:1px solid var(--divider);color:var(--muted);background:0 0;border-radius:8px;padding:8px 16px;font-size:.82rem;font-weight:500;transition:color .16s,border-color .16s,background .16s}@media (hover:hover){.chip:hover{color:var(--text);border-color:color-mix(in srgb, var(--text) 26%, transparent)}}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.post{border-bottom:1px solid var(--divider);padding:22px 0;transition:border-color .35s;display:block;position:relative}.post-list{border-top:1px solid var(--divider)}.post:before{content:"";background:var(--accent);border-radius:2px;width:3px;height:0;transition:height .22s;position:absolute;top:26px;left:-20px}@media (hover:hover){.post:hover:before{height:60px}}.tags{gap:14px;margin-bottom:11px;display:flex}.tag{letter-spacing:.11em;text-transform:uppercase;color:var(--accent);font-size:.7rem;font-weight:600}.tag.alt{color:var(--muted)}.post h2{font-family:var(--serif);letter-spacing:-.005em;margin-bottom:8px;font-size:1.5rem;font-weight:500;line-height:1.2;transition:color .18s}@media (hover:hover){.post:hover h2{color:var(--accent)}}.post p{color:var(--muted);margin-bottom:13px;font-size:.98rem;line-height:1.5}.meta{color:var(--faint);align-items:center;gap:10px;font-size:.8rem;display:flex}.meta .dotsep{opacity:.7;background:currentColor;border-radius:50%;width:3px;height:3px}.post.hide{display:none}.seeall{color:var(--accent);cursor:pointer;align-items:center;gap:7px;margin-top:30px;font-size:.9rem;font-weight:600;display:inline-flex}.seeall svg{stroke:currentColor;width:15px;height:15px;transition:transform .16s}@media (hover:hover){.seeall:hover svg{transform:translate(3px)}}.signup{border:1px solid var(--divider);background:color-mix(in srgb, var(--text) 3.5%, transparent);border-radius:14px;margin-top:56px;padding:26px 28px}.signup-title{font-family:var(--serif);margin-bottom:6px;font-size:1.28rem;font-weight:500;line-height:1.25}.signup-note{color:var(--muted);margin-bottom:16px;font-size:.9rem;line-height:1.5}.signup-form{flex-wrap:wrap;gap:9px;display:flex}.signup-input{border:1px solid var(--divider);background:var(--surface);min-width:0;color:var(--text);font-family:var(--sans);border-radius:8px;flex:220px;padding:11px 13px;font-size:.92rem}.signup-input::placeholder{color:var(--faint)}.signup-btn{cursor:pointer;background:var(--accent);color:#fff;font-family:var(--sans);border:none;border-radius:8px;flex:none;padding:11px 22px;font-size:.92rem;font-weight:600;transition:filter .18s}@media (hover:hover){.signup-btn:hover{filter:brightness(1.08)}}@media (width<=480px){.signup-btn{flex:100%}}.signup-status{color:var(--text);margin-top:14px;font-size:.9rem;line-height:1.5}.signup-status.is-error{color:var(--accent)}.recs{margin-top:46px}.recs-title{font-family:var(--serif);margin-bottom:22px;font-size:1.34rem;font-weight:500;line-height:1.25}.rec-list{gap:30px;list-style:none;display:grid}.rec{color:inherit;border-radius:12px;grid-template-columns:112px 1fr;align-items:start;gap:20px;margin:-14px;padding:14px;text-decoration:none;transition:background .18s,color .18s;display:grid}.rec-cover{object-fit:cover;border:1px solid var(--divider);background:var(--surface);border-radius:8px;width:112px;height:150px}.rec-list-square .rec-cover{height:112px}.rec-cover-empty{background:color-mix(in srgb, var(--text) 5%, transparent)}.rec-name{font-family:var(--serif);align-items:baseline;gap:6px;margin-bottom:4px;font-size:1.08rem;font-weight:500;line-height:1.3;display:flex}.rec-arrow{stroke:currentColor;width:13px;height:13px;color:var(--faint);flex:none;transition:color .18s,opacity .18s,transform .18s;transform:translateY(1px)}@media (hover:hover){.rec-arrow{opacity:0}.rec-link:hover{background:color-mix(in srgb, var(--text) 4%, transparent)}.rec-link:hover .rec-name{color:var(--accent)}.rec-link:hover .rec-arrow{opacity:1;color:var(--accent);transform:translate(2px,-1px)}}.rec-link:active{opacity:.72}.rec-author{color:var(--muted);margin-bottom:8px;font-size:.88rem}.rec-note{color:var(--muted);font-size:.94rem;line-height:1.55}@media (width<=480px){.rec{grid-template-columns:84px 1fr;gap:15px}.rec-cover{width:84px;height:112px}.rec-list-square .rec-cover{height:84px}}.empty{color:var(--muted);padding:30px 0;font-size:.95rem}.tabbar{display:none}@media (width<=1040px){:root{--rail:222px}}@media (width<=680px){.layout{grid-template-columns:1fr}.sidebar{display:none}.desk img{display:block}.desk{padding:5px 15px 5px 5px}.content{padding:40px 22px calc(80px + env(safe-area-inset-bottom))}.tabbar{z-index:10;background:color-mix(in srgb, var(--sidebar) 92%, transparent);backdrop-filter:saturate(180%)blur(14px);border-top:1px solid var(--divider);padding:7px 14px calc(7px + env(safe-area-inset-bottom));align-items:center;gap:2px;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{min-width:0;color:var(--muted);border-radius:9px;flex-direction:column;flex:1 1 0;align-items:center;gap:3px;padding:4px 2px;font-size:.63rem;transition:color .16s;display:flex}.tab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.tab .tab-ic{opacity:.85;width:19px;height:19px}.tab.on{color:var(--accent)}.tab.on .tab-ic{opacity:1}.tabbar .toggle{flex:none;width:auto;margin:0 0 0 4px;padding:8px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
