:root{--bg: #0e0f12;--panel: #151824;--text: #e9ecf1;--muted: #a9b2c3;--border: rgba(255, 255, 255, .1);--link: #c7d2fe;--radius: 14px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.container{width:min(1100px,92vw);margin:0 auto;padding:24px 0 64px}.page h1{margin:0 0 10px}.lead{font-size:1.1rem;color:var(--muted);max-width:70ch}.muted{color:var(--muted)}.btn{border:1px solid var(--border);background:#232844;color:var(--text);padding:10px 12px;border-radius:10px;cursor:pointer;display:inline-block}.btn:hover{filter:brightness(1.05)}.btn--ghost{background:transparent}.full{width:100%}.card{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius);padding:16px}.grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px}@media(max-width:900px){.grid{grid-template-columns:1fr}}.topNav{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border);background:#0e0f12d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topNav__inner{width:min(1100px,92vw);margin:0 auto;padding:14px 0;display:flex;align-items:center;gap:18px}.brand{font-weight:700;letter-spacing:.2px}.topNav__links{display:flex;gap:12px;flex-wrap:wrap}.topNav__links a{color:var(--text);opacity:.85}.topNav__links a.active{opacity:1;text-decoration:underline}.topNav__cta{margin-left:auto;display:flex;gap:10px}.footer{border-top:1px solid var(--border);padding:20px 0}.footer__inner{width:min(1100px,92vw);margin:0 auto;display:flex;justify-content:space-between;gap:12px}.appShell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--border);background:#101321;padding:16px;display:flex;flex-direction:column;gap:14px}.sidebar__brand{width:100%;text-align:left;border:1px solid var(--border);background:#ffffff0a;color:var(--text);padding:12px;border-radius:12px;cursor:pointer;font-weight:800}.sidebar__brandSub{display:block;margin-top:4px;font-size:.85rem;color:var(--muted);font-weight:500}.sidebar__nav{display:flex;flex-direction:column;gap:6px}.sidebar__nav a{padding:10px 12px;border-radius:10px;color:var(--text);opacity:.85}.sidebar__nav a.active{background:#ffffff0f;opacity:1}.sidebar__footer{margin-top:auto}.appMain{display:flex;flex-direction:column}.appTopBar{border-bottom:1px solid var(--border);padding:14px 18px;display:flex;justify-content:space-between;gap:10px;background:#0e0f1299;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.appTopBar__left{display:grid;gap:2px}.appTitle{font-weight:800;letter-spacing:.2px}.appSubtitle{font-size:.9rem;color:var(--muted)}.appTopBar__right{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.topBarSlot{border:1px solid var(--border);background:#ffffff08;border-radius:12px;padding:8px 10px;min-width:140px}.slotLabel{font-size:.75rem;color:var(--muted);margin-bottom:2px}.slotValue{font-size:.9rem}.appContent{padding:20px}@media(max-width:900px){.appShell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10}}.form{display:grid;gap:12px;max-width:420px;margin-top:14px}.form label{display:grid;gap:6px;color:var(--muted)}.form input{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:#0f1220;color:var(--text)}.page ul{padding-left:18px;margin:10px 0 0}.page li{margin-bottom:6px}.storyReader .readerBlocks{max-width:75ch}.storyNav{display:flex;justify-content:space-between;gap:10px;margin-top:22px}.readerPage{padding:24px 0 64px}.readerHeader{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.readerKicker{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.readerTitle{margin:6px 0;font-size:2rem}.readerMeta{font-size:.95rem}.readerLayout{display:grid;grid-template-columns:280px 1fr;gap:16px;align-items:start}.readerToc{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius);padding:14px;position:sticky;top:84px}.readerTocTitle{font-weight:800;margin-bottom:10px}.readerTocList{display:grid;gap:8px}.readerTocItem{width:100%;text-align:left;border:1px solid var(--border);background:#ffffff08;color:var(--text);padding:10px;border-radius:10px;cursor:pointer;opacity:.9}.readerTocItem:hover{opacity:1}.readerTocItem.active{background:#ffffff0f;opacity:1}.readerTocFooter{margin-top:12px;font-size:.9rem}.readerTocDivider{height:1px;background:#ffffff1f;margin:14px 0}.readerTocSections{display:grid;gap:8px}.readerTocSectionGroup{display:grid;gap:6px}.readerTocSectionLink{display:block;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:#ffffff05;color:var(--text);text-decoration:none;opacity:.9;font-size:.95rem}.readerTocSectionLink:hover{opacity:1}.readerTocSectionLink.active{background:#ffffff0f;opacity:1}.readerTocSectionLink--chapter{font-weight:800}.readerTocSubList{display:grid;gap:6px;padding-left:10px}.readerTocSubLink{display:block;padding:7px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff04;color:var(--text);text-decoration:none;opacity:.82;font-size:.9rem}.readerTocSubLink:hover{opacity:1}.readerTocSubLink.active{background:#ffffff0f;opacity:1}.readerTocSectionGroup{padding-bottom:6px}.readerTocSectionGroup:has(.readerTocSubList) .readerTocSectionLink{background:#ffffff0a}.readerContent{border:1px solid var(--border);background:#ffffff05;border-radius:var(--radius);padding:18px}.readerChapterTitle{margin:0 0 14px;font-size:1.4rem}.readerSection{padding:14px 0;border-top:1px solid var(--border)}.readerSection:first-of-type{border-top:0;padding-top:0}.readerSectionHeader{display:flex;align-items:baseline;gap:8px}.readerSectionTitle{margin:0;font-size:1.15rem}.readerAnchor{text-decoration:none;opacity:.7}.readerAnchor:hover{opacity:1;text-decoration:underline}.readerBlocks{margin-top:10px;max-width:75ch}.readerP{color:var(--text);opacity:.92;line-height:1.6;margin:0 0 12px}.readerList{margin:0 0 12px;padding-left:18px;color:var(--text);opacity:.92}.readerList li{margin-bottom:6px}.readerQuote{margin:0 0 12px;padding:10px 12px;border-left:3px solid rgba(255,255,255,.18);background:#ffffff08;border-radius:10px;color:var(--text);opacity:.92}.readerSectionTitle{scroll-margin-top:96px}.readerChapterHeader{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--border)}.readerChapterTop{display:flex;align-items:baseline;gap:8px}.readerChapterTitle{margin:0;font-size:1.5rem;letter-spacing:.2px}.readerSubsections{margin-top:14px;padding-top:14px;border-top:1px dashed rgba(255,255,255,.14)}.readerSubsection{padding:12px 0;border-top:1px solid rgba(255,255,255,.08)}.readerSubsection:first-of-type{border-top:0;padding-top:0}.readerSubsectionHeader{display:flex;align-items:baseline;gap:8px}.readerSubsectionTitle{margin:0;font-size:1.02rem;font-weight:800;opacity:.95}.readerChapterHeader,.readerSectionTitle,.readerSubsectionTitle{scroll-margin-top:96px}@media(max-width:900px){.readerLayout{grid-template-columns:1fr}.readerToc{position:relative;top:auto}}.codexControls{display:grid;gap:12px;margin:14px 0 10px}.codexTabs{display:flex;flex-wrap:wrap;gap:8px}.codexFilters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.input,.select{border:1px solid var(--border);background:#ffffff08;color:var(--text);border-radius:12px;padding:10px 12px;min-width:220px}.select{min-width:160px}.chip{border:1px solid var(--border);background:#ffffff08;color:var(--text);border-radius:999px;padding:8px 12px;cursor:pointer;opacity:.85}.chip--active{background:#ffffff14;opacity:1}.codexTags{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.tag{border:1px solid var(--border);background:#ffffff05;color:var(--text);border-radius:999px;padding:6px 10px;cursor:pointer;opacity:.85;font-size:.9rem}.tag:hover{opacity:1}.codexCardTop{display:flex;justify-content:space-between;align-items:start}.codexBadges{display:flex;gap:8px;flex-wrap:wrap}.badge{display:inline-block;padding:4px 8px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);font-size:.85rem}.badge--ghost{background:#ffffff05}.codexEntryHeader{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.codexEntryActions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.codexEntryTags{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.codexEntryLayout{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}.codexEntryContent{border:1px solid var(--border);background:#ffffff05;border-radius:var(--radius);padding:16px}.codexEntrySide{display:grid;gap:12px}.sideCard{border:1px solid var(--border);background:#ffffff08;border-radius:var(--radius);padding:14px}.sideCardTitle{font-weight:800;margin-bottom:10px}.sideList{display:grid;gap:10px}.sideLink{display:block;padding:10px;border-radius:12px;border:1px solid var(--border);background:#ffffff05;color:var(--text);text-decoration:none;opacity:.92}.sideLink:hover{opacity:1}.sideLinkTitle{font-weight:700}.sideLinkMeta{font-size:.9rem;margin-top:2px}@media(max-width:900px){.codexEntryLayout{grid-template-columns:1fr}}.builderPage{padding:10px 0 50px}.builderHeader{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.builderHeaderActions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.builderLayout{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}.builderMain{display:grid;gap:12px}.builderStepper{display:flex;flex-wrap:wrap;gap:8px}.builderWarnings{border:1px solid var(--border);background:#ffffff08;border-radius:var(--radius);padding:12px}.builderStepCard{border:1px solid var(--border);background:#ffffff05;border-radius:var(--radius);padding:14px}.builderStepTitle{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px}.builderFields{display:grid;gap:12px}.fieldLabel{font-weight:700;margin-bottom:6px}.builderNav{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.builderPreview .sideCard{position:sticky;top:84px}.previewLine{display:grid;gap:2px;padding:10px 0;border-top:1px solid var(--border)}.previewLine:first-of-type{border-top:0;padding-top:0}.previewStatGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.previewStat{display:flex;justify-content:space-between;border:1px solid var(--border);background:#ffffff05;border-radius:10px;padding:8px 10px}@media(max-width:900px){.builderLayout{grid-template-columns:1fr}.builderPreview .sideCard{position:relative;top:auto}}
