:root{color-scheme:light;--bg:#efe5d2;--panel:rgba(255,249,240,0.86);--panel-strong:#fffaf0;--ink:#1f1a14;--muted:#6c5f4f;--accent:#96371f;--accent-soft:#d58a65;--accent-ink:#6d2514;--ok:#1f5d45;--warn:#8a3b26;--line:rgba(31,26,20,0.12);--shadow:rgba(58,35,17,0.11)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:radial-gradient(circle at 15% 20%,rgba(150,55,31,.18),transparent 30%),radial-gradient(circle at 90% 10%,rgba(53,91,89,.12),transparent 24%),linear-gradient(0deg,rgba(255,255,255,.28),rgba(255,255,255,.28)),linear-gradient(180deg,#eadfc8,#f7f2e7);color:var(--ink);font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Palatino,Georgia,serif}body{min-height:100vh}.page-shell{width:min(1120px,calc(100vw - 48px));margin:0 auto;padding:56px 0 76px}.hero{max-width:760px;margin-bottom:34px}.eyebrow{margin:0 0 16px;text-transform:uppercase;letter-spacing:.18em;color:var(--accent);font-size:.8rem}h1{margin:0;font-size:clamp(2.6rem,6vw,4.8rem);line-height:.98;text-wrap:balance}.lede{margin:16px 0 0;font-size:1.06rem;line-height:1.55;color:var(--muted);max-width:62ch}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.button-link,.inline-link{text-decoration:none;color:var(--ink)}.button-link{padding:11px 15px;border-radius:999px;border:1px solid var(--line);background:rgba(255,250,242,.7);font-size:.92rem;font-weight:600;transition:transform .13s ease,box-shadow .13s ease,border-color .13s ease}.button-link:focus-visible,.button-link:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(58,35,17,.12);border-color:rgba(150,55,31,.4);outline:none}.button-link.primary{background:var(--accent);color:#fff8f2;border-color:transparent}.grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:20px;padding:20px;box-shadow:0 16px 48px var(--shadow)}.card h2{margin-top:0;margin-bottom:12px;font-size:1.35rem}.card p{margin:0;color:var(--muted);line-height:1.6}.card-link{display:block}.story-strip{display:grid;grid-gap:16px;gap:16px;grid-template-columns:1.3fr 1fr;margin-top:18px}.story-card{border:1px solid var(--line);border-radius:22px;background:rgba(255,251,244,.8);padding:22px;box-shadow:0 14px 42px var(--shadow)}.story-card.large h2{margin:0 0 12px;font-size:2rem}.story-card.large p:last-child{margin-bottom:0}.muted-panel{background:linear-gradient(180deg,rgba(231,221,204,.88),rgba(255,251,244,.88))}.workspace-shell{width:min(1320px,calc(100vw - 40px));margin:0 auto;padding:28px 0 56px}.workspace-header{display:flex;gap:24px;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.workspace-header h1{font-size:clamp(2.8rem,5vw,4.4rem)}.panel-kicker,.workspace-kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.18em;color:var(--accent);font-size:.74rem}.body-copy,.workspace-summary{color:var(--muted);line-height:1.7;max-width:62ch}.workspace-metrics{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,minmax(120px,1fr))}.metric-card{padding:16px 18px;border-radius:22px;background:rgba(255,250,242,.78);border:1px solid var(--line)}.metric-card strong{display:block;font-size:1.5rem}.metric-card span{color:var(--muted);font-size:.92rem}.workspace-tabs{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:22px}.tab-strip{display:flex;gap:10px;flex-wrap:wrap}.tab-link{display:inline-flex;align-items:center;padding:12px 16px;border-radius:999px;border:1px solid var(--line);background:rgba(255,250,242,.6);color:var(--ink);text-decoration:none}.tab-link.active{background:#fffaf0;border-color:rgba(150,55,31,.34)}.workspace-grid{display:grid;grid-template-columns:280px minmax(0,1fr) 300px;grid-gap:16px;gap:16px}.campaign-card,.content-panel,.mini-panel,.rail-panel,.scene-card{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:22px;box-shadow:0 12px 36px var(--shadow)}.content-panel,.rail-panel{padding:20px}.article-panel{padding-bottom:28px}.panel-heading h2,.panel-heading h3{margin:0}.panel-heading.compact{margin-bottom:18px}.title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.inline-actions{display:inline-flex;gap:14px;flex-wrap:wrap}.status-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:capitalize;background:rgba(31,26,20,.06);color:var(--muted)}.status-pill.active,.status-pill.ready,.status-pill.stable{background:rgba(57,122,90,.14);color:#1f5d45}.status-pill.draft,.status-pill.needs-review,.status-pill.paused{background:rgba(150,55,31,.12);color:#8a3b26}.article-layout{display:grid;grid-gap:20px;gap:20px;grid-template-columns:minmax(0,1.45fr) minmax(280px,.9fr)}.character-list,.coverage-list,.session-stack,.stack-column{display:grid;grid-gap:16px;gap:16px}.mini-panel{padding:20px}.emphasis-panel{background:linear-gradient(180deg,rgba(150,55,31,.09),rgba(255,249,240,.9))}.plain-list{margin:0;padding-left:18px;color:var(--muted);line-height:1.7}.tag-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.tag-chip{padding:8px 12px;border-radius:999px;background:rgba(31,26,20,.06);color:var(--muted);font-size:.86rem}.campaign-grid,.runboard,.scene-grid,.tree-block{display:grid;grid-gap:16px;gap:16px}.tree-node+.tree-node{margin-top:10px}.tree-label{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:18px;background:rgba(255,250,242,.68)}.coverage-link,.inline-link-inline,.tree-link{text-decoration:none}.tree-label small{color:var(--muted);text-transform:capitalize}.character-row,.coverage-row,.session-row{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;padding:16px 18px;border-radius:20px;background:rgba(255,250,242,.62)}.campaign-card p,.character-row p,.coverage-row p,.mini-panel p,.scene-card p,.session-row p,.story-card p{color:var(--muted);line-height:1.65}.campaign-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.campaign-card,.scene-card{padding:18px}.inline-link{display:inline-flex;margin-top:10px;color:var(--accent);font-weight:600}.inline-link-inline{display:inline;margin-top:0}.runboard{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);margin-bottom:20px}.scene-board{margin-top:8px}.scene-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.spotlight-dot{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:rgba(150,55,31,.14);color:var(--accent);font-weight:700}.compact-hero{margin-bottom:36px}.search-grid{grid-template-columns:minmax(0,1fr) 280px}.editor-grid{grid-template-columns:minmax(0,1fr) 300px}.search-form{display:flex;gap:12px;margin:20px 0 24px}.search-input{flex:1 1;min-width:0;padding:15px 18px;border-radius:18px;border:1px solid var(--line);background:rgba(255,250,242,.8);color:var(--ink);font:inherit}.search-button{margin-top:0}.query-list,.search-results{display:grid;grid-gap:14px;gap:14px}.search-result{display:block;color:inherit;border:1px solid var(--line);border-radius:18px;padding:14px 16px}.query-chip,.search-result{text-decoration:none;background:rgba(255,250,242,.62)}.query-chip{display:inline-flex;color:var(--ink);padding:12px 14px;border-radius:999px;border:1px solid var(--line)}.empty-state{border:1px dashed rgba(31,26,20,.18);border-radius:18px;padding:16px;background:rgba(255,250,242,.42)}.empty-state p,.stats-inline{color:var(--muted)}.stats-inline{display:flex;gap:12px;flex-wrap:wrap;margin:10px 0 16px}.stats-inline.vertical{flex-direction:column;gap:8px;margin-top:0}.session-list-panel{margin-top:20px}.editor-form{display:grid;grid-gap:18px;gap:18px}.editor-form.compact{gap:12px}.field-row{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;grid-gap:8px;gap:8px}.field span{font-size:.92rem;color:var(--muted)}.text-area,.text-input{width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:rgba(255,250,242,.8);color:var(--ink);font:inherit}.text-area:focus,.text-input:focus{outline:2px solid rgba(150,55,31,.25);border-color:rgba(150,55,31,.45)}.hero-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr);margin-bottom:16px}.density-panel,.hero-shell{border:1px solid var(--line);border-radius:22px;background:var(--panel);box-shadow:0 16px 44px var(--shadow)}.hero-shell{padding:24px}.density-panel{padding:18px}.dense-grid{margin-top:0}.dense-card,.kpi-grid{display:grid;grid-gap:10px;gap:10px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}.kpi-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:rgba(255,250,242,.72)}.kpi-card strong{display:block;font-size:1.2rem}.kpi-label,.meta-row{color:var(--muted);font-size:.8rem}.meta-row{display:flex;flex-wrap:wrap;gap:8px}.meta-row span{padding:4px 8px;border-radius:999px;background:rgba(31,26,20,.05)}.compact-list,.table-row{display:grid;grid-gap:8px;gap:8px}.table-row{padding:10px 12px;border-radius:14px;border:1px solid rgba(31,26,20,.08);background:rgba(255,251,245,.64)}.table-row p{margin:6px 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.dense-section{margin-top:16px;display:grid;grid-gap:12px;gap:12px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.section-head h3{margin:0}.auth-shell{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr)}.auth-panel{max-width:620px}.auth-context{align-self:start}.text-area{resize:vertical}.text-area.short{min-height:110px}.text-area.tall{min-height:220px}@media (max-width:720px){.page-shell{width:min(100vw - 32px,1120px);padding-top:56px}}@media (max-width:1100px){.article-layout,.auth-shell,.editor-grid,.hero-grid,.runboard,.search-grid,.story-strip,.workspace-grid{grid-template-columns:1fr}.workspace-header{flex-direction:column;align-items:flex-start}.workspace-metrics{width:100%}}@media (max-width:780px){.page-shell,.workspace-shell{width:min(100vw - 24px,1320px)}.search-form,.workspace-tabs{flex-direction:column;align-items:stretch}.field-row,.workspace-metrics{grid-template-columns:1fr}}