:root{--palette-parchment:#f4efe4;--palette-parchment-bright:#fffdf8;--palette-parchment-dim:#eae2d0;--palette-parchment-line:#ded4be;--palette-ink:#2a2420;--palette-ink-soft:#6b6255;--palette-charcoal:#201c16;--palette-charcoal-bright:#2b251d;--palette-charcoal-dim:#362e23;--palette-charcoal-line:#453c2f;--palette-parchment-text:#ede6d8;--palette-parchment-text-soft:#a69c8a;--palette-violet:#5b4b8a;--palette-violet-deep:#4a3c73;--palette-violet-bright:#9b84d6;--palette-violet-brighter:#b29ee0;--palette-gold:#97721f;--palette-gold-deep:#7d5e19;--palette-gold-bright:#d9b04d;--palette-gold-brighter:#e8c670;--palette-green:#4c7a4c;--palette-green-bright:#7fb37f;--palette-amber:#c17a2e;--palette-amber-bright:#e2a85c;--palette-red:#a6433b;--palette-red-bright:#d9736a;--color-bg:var(--palette-parchment);--color-surface:var(--palette-parchment-bright);--color-surface-alt:var(--palette-parchment-dim);--color-text:var(--palette-ink);--color-text-muted:var(--palette-ink-soft);--color-border:var(--palette-parchment-line);--color-accent:var(--palette-violet);--color-accent-hover:var(--palette-violet-deep);--color-accent-contrast:#fff;--color-accent-secondary:var(--palette-gold);--color-accent-secondary-hover:var(--palette-gold-deep);--color-accent-secondary-contrast:var(--palette-ink);--color-success:var(--palette-green);--color-warning:var(--palette-amber);--color-danger:var(--palette-red);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--font-family-base:system-ui, -apple-system, "Segoe UI", sans-serif;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.25rem;--font-size-xl:1.75rem;--font-size-2xl:2.25rem;--font-weight-bold:700;--line-height-base:1.5;--line-height-tight:1.2;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--shadow-sm:0 1px 2px #00000014;--shadow-pop:0 8px 24px #00000024;--container-max-width:72rem;--layout-navbar-height:73px;--color-cat-person:var(--palette-violet);--color-cat-place:var(--palette-green);--color-cat-thing:var(--palette-gold);--color-cat-event:var(--palette-amber);--color-cat-faction:var(--palette-red);--color-swatch-violet:var(--palette-violet);--color-swatch-gold:var(--palette-gold);--color-swatch-green:var(--palette-green);--color-swatch-amber:var(--palette-amber);--color-swatch-red:var(--palette-red)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:var(--palette-charcoal);--color-surface:var(--palette-charcoal-bright);--color-surface-alt:var(--palette-charcoal-dim);--color-text:var(--palette-parchment-text);--color-text-muted:var(--palette-parchment-text-soft);--color-border:var(--palette-charcoal-line);--color-accent:var(--palette-violet-bright);--color-accent-hover:var(--palette-violet-brighter);--color-accent-contrast:var(--palette-charcoal);--color-accent-secondary:var(--palette-gold-bright);--color-accent-secondary-hover:var(--palette-gold-brighter);--color-accent-secondary-contrast:var(--palette-charcoal);--color-success:var(--palette-green-bright);--color-warning:var(--palette-amber-bright);--color-danger:var(--palette-red-bright);--color-cat-person:var(--palette-violet-bright);--color-cat-place:var(--palette-green-bright);--color-cat-thing:var(--palette-gold-bright);--color-cat-event:var(--palette-amber-bright);--color-cat-faction:var(--palette-red-bright);--color-swatch-violet:var(--palette-violet-bright);--color-swatch-gold:var(--palette-gold-bright);--color-swatch-green:var(--palette-green-bright);--color-swatch-amber:var(--palette-amber-bright);--color-swatch-red:var(--palette-red-bright);--shadow-sm:0 1px 2px #00000059;--shadow-pop:0 10px 28px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--color-bg:var(--palette-charcoal);--color-surface:var(--palette-charcoal-bright);--color-surface-alt:var(--palette-charcoal-dim);--color-text:var(--palette-parchment-text);--color-text-muted:var(--palette-parchment-text-soft);--color-border:var(--palette-charcoal-line);--color-accent:var(--palette-violet-bright);--color-accent-hover:var(--palette-violet-brighter);--color-accent-contrast:var(--palette-charcoal);--color-accent-secondary:var(--palette-gold-bright);--color-accent-secondary-hover:var(--palette-gold-brighter);--color-accent-secondary-contrast:var(--palette-charcoal);--color-success:var(--palette-green-bright);--color-warning:var(--palette-amber-bright);--color-danger:var(--palette-red-bright);--color-cat-person:var(--palette-violet-bright);--color-cat-place:var(--palette-green-bright);--color-cat-thing:var(--palette-gold-bright);--color-cat-event:var(--palette-amber-bright);--color-cat-faction:var(--palette-red-bright);--color-swatch-violet:var(--palette-violet-bright);--color-swatch-gold:var(--palette-gold-bright);--color-swatch-green:var(--palette-green-bright);--color-swatch-amber:var(--palette-amber-bright);--color-swatch-red:var(--palette-red-bright);--shadow-sm:0 1px 2px #00000059;--shadow-pop:0 10px 28px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:after,:before{box-sizing:border-box}body,html{height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-md);line-height:var(--line-height-base);margin:0}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}.btn{justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-bold);cursor:pointer;border:1px solid #0000;transition:background-color .15s,opacity .15s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-accent-contrast)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-secondary{background:var(--color-surface-alt);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg)}.btn-danger{background:var(--color-danger);color:var(--color-accent-contrast)}.btn-danger:hover:not(:disabled){opacity:.85}.card--illuminated{border:1.5px solid var(--color-accent-secondary);box-shadow:inset 0 0 0 4px var(--color-surface);position:relative}.page-gutter{padding:var(--space-lg) var(--space-md)}@media (width>=600px){.page-gutter{padding:var(--space-xl) var(--space-lg)}}.card--illuminated:after{content:"";border:1px solid color-mix(in srgb,var(--color-accent-secondary) 45%,transparent);border-radius:inherit;pointer-events:none;position:absolute;inset:6px}
