:root{--color-bg:#f7f7f5;--color-surface:#fff;--color-border:#e4e2dd;--color-text:#1c1b19;--color-text-dim:#6f6b63;--color-accent:#b5533c;--color-accent-contrast:#fff;--color-chip-bg:#efece5;--color-danger:#b3261e;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--font-size-sm:.8rem;--font-size-base:.9rem;--font-size-lg:1.1rem;--font-size-xl:1.4rem;--radius-sm:4px;--radius-md:8px;--radius-full:999px;--sidebar-width:240px}@media (prefers-color-scheme:dark){:root{--color-bg:#171614;--color-surface:#201f1c;--color-border:#34322d;--color-text:#ece9e3;--color-text-dim:#a19c92;--color-accent:#e0836a;--color-accent-contrast:#171614;--color-chip-bg:#2b2a25;--color-danger:#ff8a80}}*{box-sizing:border-box}html,body,#app{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic,sans-serif;font-size:var(--font-size-base);background:var(--color-bg);color:var(--color-text);margin:0;line-height:1.5}a{color:inherit}button,input,select{font:inherit;color:inherit}.app-shell{grid-template-columns:var(--sidebar-width) 1fr;height:100%;display:grid}.sidebar{border-right:1px solid var(--color-border);padding:var(--space-4) 0;overflow-y:auto}.main{min-width:0;overflow-y:auto}.breadcrumb{padding:var(--space-4) var(--space-5) 0;font-size:var(--font-size-sm);color:var(--color-text-dim)}.breadcrumb a:hover{color:var(--color-accent)}.chip{font-size:var(--font-size-sm);border-radius:var(--radius-full);background:var(--color-chip-bg);color:var(--color-text-dim);cursor:pointer;border:1px solid #0000;align-items:center;gap:.3em;padding:.2em .7em;display:inline-flex}.chip.active{background:var(--color-accent);color:var(--color-accent-contrast)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.status-text{color:var(--color-text-dim);font-size:var(--font-size-sm);padding:var(--space-4) var(--space-5)}.btn{align-items:center;gap:var(--space-1);border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;padding:.4em .9em;display:inline-flex}.btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.article-body{font-size:1.05rem;line-height:1.9}.article-body h1{margin:0 0 1.2em;font-size:1.6rem;font-weight:700;line-height:1.4}.article-body h2{margin:1.8em 0 .7em;font-size:1.3rem;font-weight:700;line-height:1.4}.article-body h3{margin:1.5em 0 .6em;font-size:1.1rem;font-weight:700}.article-body p{margin:0 0 1.3em}.article-body img{border-radius:var(--radius-md);width:100%;margin:1.6em 0;display:block}.article-body figcaption,.article-body img+em{text-align:center;font-size:var(--font-size-sm);color:var(--color-text-dim);margin-top:-1.2em;margin-bottom:1.6em;display:block}.article-body blockquote{border-left:3px solid var(--color-accent);color:var(--color-text-dim);margin:1.4em 0;padding:.2em 1.2em;font-style:italic}.article-body ul,.article-body ol{margin:0 0 1.3em;padding-left:1.4em}.article-body li{margin-bottom:.4em}.article-body a{color:var(--color-accent);text-underline-offset:.15em;text-decoration:underline}.article-body code{background:var(--color-chip-bg);border-radius:4px;padding:.15em .4em;font-size:.9em}.article-body pre{background:var(--color-chip-bg);border-radius:var(--radius-md);padding:var(--space-4);margin:0 0 1.3em;overflow-x:auto}.article-body pre code{background:0 0;padding:0}.article-body hr{border:none;border-top:1px solid var(--color-border);margin:2.2em 0}
