:root{color-scheme:dark;--font-display: "Segoe UI", Inter, "Helvetica Neue", Arial, sans-serif;--font-body: "Segoe UI", Inter, "Helvetica Neue", Arial, sans-serif;--background: 220 24% 9%;--foreground: 220 18% 95%;--card: 220 22% 14%;--card-foreground: 220 16% 95%;--primary: 220 76% 62%;--primary-foreground: 220 24% 10%;--secondary: 220 18% 18%;--secondary-foreground: 220 14% 92%;--muted: 220 18% 16%;--muted-foreground: 220 12% 68%;--accent: 165 48% 46%;--accent-foreground: 220 24% 10%;--destructive: 0 65% 45%;--destructive-foreground: 0 0% 100%;--border: 220 16% 24%;--input: 220 18% 18%;--ring: 220 76% 62%;--color-bg-canvas: hsl(var(--background));--color-bg-subtle: hsl(var(--secondary));--color-bg-elevated: hsl(var(--muted));--color-bg-overlay: hsl(var(--background) / .78);--color-surface-1: hsl(var(--card));--color-surface-2: hsl(var(--card));--color-surface-3: hsl(var(--secondary));--color-surface-inset: hsl(var(--muted));--color-border-subtle: hsl(var(--border) / .45);--color-border-strong: hsl(var(--border) / .75);--color-text-primary: hsl(var(--foreground));--color-text-secondary: hsl(var(--muted-foreground));--color-text-tertiary: hsl(var(--muted-foreground) / .8);--color-text-inverse: hsl(var(--background));--color-focus-ring: hsl(var(--ring) / .45);--color-danger: hsl(var(--destructive));--space-page: min(1400px, calc(100% - 2rem) );--radius-card: 12px;--radius-pill: 999px;--shadow-surface: 0 12px 28px rgba(0, 0, 0, .22);--shadow-hover: 0 16px 32px rgba(0, 0, 0, .28);--motion-fast: .2s ease-out;--motion-base: .3s ease-out}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font-body);line-height:1.65;color:var(--color-text-primary);background:radial-gradient(circle at top,hsl(var(--primary) / .08),transparent 22rem),linear-gradient(180deg,hsl(var(--background)),hsl(var(--secondary)))}a{color:inherit}img{display:block;max-width:100%}h1,h2,h3{margin:0;font-family:var(--font-display);line-height:1.04;letter-spacing:-.025em}p{margin:0}main,header,footer{position:relative;z-index:1}#root{min-height:100vh}.accent-books{--primary: 214 82% 62%;--accent: 208 74% 58%}.accent-series{--primary: 258 72% 66%;--accent: 264 62% 62%}.accent-worlds{--primary: 184 62% 48%;--accent: 170 55% 44%}.accent-characters{--primary: 30 90% 62%;--accent: 24 86% 60%}.admin-accent{--primary: 184 62% 48%;--accent: 170 55% 44%}.surface-card,.card,.gallery-card,.list-hero,.detail-art,.detail-copy,.detail-section,.hero-copy,.hero-panel,.site-footer,.admin-page{border:1px solid hsl(var(--border));border-radius:var(--radius-card);background:hsl(var(--card));box-shadow:var(--shadow-surface)}.apt-card{border:1px solid hsl(var(--border));border-radius:var(--radius-card);background:hsl(var(--card));color:hsl(var(--card-foreground));box-shadow:var(--shadow-surface)}.apt-tag{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:var(--radius-pill);border:1px solid hsl(var(--border));background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.apt-media-frame{display:grid;gap:.65rem;margin:0}.apt-media-image{display:block;width:100%;object-fit:contain;object-position:center}.apt-browse-card{display:flex;min-height:10.5rem;align-items:start;justify-content:start;flex-direction:column;gap:.55rem;padding:1.1rem;border:1px solid hsl(var(--border));border-radius:12px;text-decoration:none;color:var(--color-text-secondary);background:hsl(var(--foreground) / .02);transition:border-color var(--motion-fast),color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.apt-browse-card:hover,.apt-browse-card:focus-visible{border-color:hsl(var(--primary) / .5);color:var(--color-text-primary);background:hsl(var(--accent) / .14);transform:translateY(-1px)}.apt-browse-card-title{font-family:var(--font-display);font-size:1.4rem;color:var(--color-text-primary)}.apt-browse-card-copy{color:var(--color-text-secondary);line-height:1.55}.apt-status-pill{display:inline-flex;align-items:center;padding:.28rem .62rem;border-radius:var(--radius-pill);border:1px solid var(--color-border-subtle);background:hsl(var(--foreground) / .03);color:var(--color-text-secondary);text-transform:capitalize}.apt-status-published{border-color:hsl(var(--accent) / .45);color:hsl(var(--accent))}.apt-status-draft{border-color:hsl(var(--primary) / .45);color:hsl(var(--primary))}.apt-status-archived{border-color:hsl(var(--muted-foreground) / .5);color:hsl(var(--muted-foreground))}.apt-form,.editor-form{display:grid;gap:1rem}.apt-form-section,.editor-form fieldset{border:1px solid var(--color-border-subtle);border-radius:12px;padding:1rem;display:grid;gap:.8rem;background:hsl(var(--foreground) / .02)}.apt-form-section legend,.editor-form legend{padding:0 .35rem;color:hsl(var(--accent));letter-spacing:.08em;text-transform:uppercase;font-size:.82rem}.apt-field,.editor-form label{display:grid;gap:.32rem;color:var(--color-text-secondary)}.field-help{color:var(--color-text-tertiary);font-size:.92rem;line-height:1.5}.apt-field-checkbox,.admin-inline-checkbox{align-items:center;justify-content:start;grid-auto-flow:column;gap:.7rem}.apt-form textarea,.apt-form input,.apt-form select,.editor-form textarea,.editor-form input,.editor-form select{width:100%;padding:.68rem .75rem;border:1px solid var(--color-border-subtle);border-radius:10px;font:inherit;color:var(--color-text-primary);background:var(--color-surface-inset);transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.apt-form textarea,.editor-form textarea{min-height:74px}.apt-field-checkbox input,.admin-inline-checkbox input{width:auto}.apt-sticky-bar,.admin-sticky-actions{position:sticky;bottom:1rem;z-index:15;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border:1px solid hsl(var(--border));border-radius:12px;background:hsl(var(--background) / .92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-surface)}.apt-sticky-copy,.admin-sticky-meta{display:grid;gap:.2rem}.apt-sticky-title,.admin-sticky-title{font-weight:700}.apt-sticky-description,.admin-sticky-copy{color:var(--color-text-secondary);font-size:.94rem}.apt-sticky-actions,.admin-sticky-buttons,.admin-form-actions{display:flex;justify-content:flex-start;gap:.75rem;flex-wrap:wrap}.apt-collection,.array-controls{display:grid;gap:.7rem}.apt-collection-item,.array-item{border:1px dashed var(--color-border-strong);border-radius:10px;padding:.75rem;display:grid;gap:.55rem;background:hsl(var(--foreground) / .02)}.apt-checklist,.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.65rem}.apt-checklist-item,.inline-checkbox{display:flex;align-items:start;gap:.7rem;min-height:100%;padding:.85rem .95rem;border:1px solid var(--color-border-subtle);border-radius:10px;background:hsl(var(--foreground) / .025);cursor:pointer;transition:border-color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.apt-checklist-item:hover,.apt-checklist-item:focus-within{border-color:hsl(var(--primary) / .42);background:hsl(var(--foreground) / .045);transform:translateY(-1px)}.apt-checklist-item-copy{display:grid;gap:.18rem}.apt-checklist-item-label{color:var(--color-text-primary);font-weight:600}.apt-checklist-item-description{color:var(--color-text-tertiary);font-size:.9rem}.apt-checklist-item input,.inline-checkbox input{width:auto;margin-top:.15rem}.relationship-picker{display:grid;gap:.9rem}.relationship-picker-header{display:flex;justify-content:space-between;align-items:start;gap:1rem}.relationship-picker-copy{display:grid;gap:.3rem}.relationship-picker-title{font-weight:700;color:var(--color-text-primary)}.relationship-picker-help{max-width:42rem;color:var(--color-text-secondary);font-size:.94rem}.relationship-picker-count{white-space:nowrap;color:hsl(var(--accent));font-size:.9rem;font-weight:600}.relationship-picker-toolbar{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap}.relationship-picker-search{flex:1 1 20rem}.relationship-picker-actions{display:flex;gap:.75rem;flex-wrap:wrap}.relationship-picker-list{margin-top:.1rem}.relationship-picker-empty{margin:0}.apt-section-heading,.section-heading,.admin-section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem}.apt-section-copy{display:grid;gap:.35rem}.apt-section-actions{display:flex;gap:.75rem;flex-wrap:wrap}.top-banner,.main-nav,.page,.site-footer{width:var(--space-page);margin-inline:auto}.top-banner{display:flex;justify-content:space-between;gap:1rem;margin-top:.85rem;margin-bottom:.75rem;padding:.9rem 1.2rem;border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);background:hsl(var(--card));color:var(--color-text-secondary);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.main-nav{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;margin-top:0;margin-bottom:1.65rem;padding:1.2rem 1.3rem;position:sticky;top:1rem;z-index:20;background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-block{display:grid;gap:.35rem}.brand-mark{text-decoration:none;font-family:var(--font-display);font-size:clamp(1.9rem,3vw,2.7rem);font-weight:700;color:var(--color-text-primary)}.brand-copy{max-width:35rem;color:var(--color-text-secondary)}.main-nav nav{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:flex-end}.main-nav a{text-decoration:none;padding:.5rem .9rem;border-radius:var(--radius-pill);border:1px solid transparent;color:var(--color-text-secondary);transition:border-color var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast)}.main-nav nav a:hover,.main-nav nav a:focus-visible{border-color:var(--color-border-strong);background:hsl(var(--foreground) / .03);color:var(--color-text-primary);transform:translateY(-1px)}.main-nav nav a.active{border-color:hsl(var(--primary) / .5);background:hsl(var(--primary) / .16);color:var(--color-text-primary)}.page{padding:0 0 3rem}.page:first-of-type{padding-top:0}.page-section{padding-top:.4rem}.hero-text,.detail-lead,.list-hero p:last-child{font-size:1.06rem;color:var(--color-text-secondary)}.hero-actions,.purchase-row,.split-links,.footer-links,.admin-nav{display:flex;gap:.8rem;flex-wrap:wrap}.hero-panel{display:grid;gap:1rem;padding:clamp(1.1rem,2.4vw,1.5rem);align-content:start;background:hsl(var(--secondary))}.hero-panel h2{font-size:clamp(1.65rem,3vw,2.3rem)}.hero-panel-note,.detail-note,.caption,.empty-state{color:var(--color-text-tertiary)}.section-kicker,.footer-kicker,.card-eyebrow{color:hsl(var(--accent));font-size:.78rem;letter-spacing:.22em;text-transform:uppercase}.section-heading h1,.section-heading h2,.apt-section-heading h1,.apt-section-heading h2,.detail-section h2{font-size:clamp(1.8rem,3vw,2.35rem)}.section-intro{max-width:52rem;margin-top:.75rem;color:var(--color-text-secondary)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.card-link{text-decoration:none;color:inherit}.card{height:100%;overflow:hidden;transition:transform var(--motion-base),border-color var(--motion-base),box-shadow var(--motion-base)}.card-link:hover .card,.card-link:focus-visible .card{transform:translateY(-2px);border-color:hsl(var(--primary) / .45);box-shadow:var(--shadow-hover)}.card-image-wrap{display:grid;place-items:center;overflow:hidden;min-height:clamp(16rem,28vw,20rem);padding:.85rem;background:var(--color-surface-inset)}.card-image{height:100%;max-height:clamp(14.5rem,25vw,18.5rem);border-radius:10px;filter:drop-shadow(0 10px 24px hsl(var(--background) / .35))}.card-body{display:grid;gap:.75rem;padding:1.1rem 1.15rem 1.2rem}.card h3{font-size:1.45rem}.card p{color:var(--color-text-secondary)}.card-caption{color:hsl(var(--accent));font-weight:600}.list-hero{display:grid;gap:.85rem;margin-bottom:1rem;padding:1.4rem 1.5rem;background:hsl(var(--card))}.list-hero h1{font-size:clamp(2.25rem,4.2vw,3.15rem)}.detail-page{display:grid;gap:1rem}.detail-hero-column{display:grid;gap:1rem;align-content:start}.detail-hero{display:grid;grid-template-columns:minmax(280px,.88fr) minmax(0,1.12fr);gap:1rem;align-items:start}.detail-art,.detail-copy{padding:1rem}.detail-art{display:grid;align-content:start;gap:.8rem;background:hsl(var(--card))}.detail-media-image{max-height:clamp(22rem,62vh,36rem);padding:.65rem;border-radius:10px;background:hsl(var(--secondary))}.detail-copy{display:grid;gap:1rem;padding:clamp(1.3rem,3vw,2rem);background:hsl(var(--card))}.detail-copy h1{font-size:clamp(2rem,4vw,3rem)}.detail-meta{display:grid;grid-template-columns:auto 1fr;gap:.65rem 1rem;margin:0}.detail-meta dt{color:hsl(var(--accent));font-weight:700}.detail-meta dd{margin:0;color:var(--color-text-secondary)}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem}.chip-link,.browse-pill,.panel-link{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .9rem;border:1px solid hsl(var(--border));border-radius:10px;text-decoration:none;color:var(--color-text-secondary);background:hsl(var(--foreground) / .02);transition:border-color var(--motion-fast),color var(--motion-fast),background-color var(--motion-fast),transform var(--motion-fast)}.chip-link:hover,.browse-pill:hover,.panel-link:hover,.chip-link:focus-visible,.browse-pill:focus-visible,.panel-link:focus-visible{border-color:hsl(var(--primary) / .5);color:var(--color-text-primary);background:hsl(var(--accent) / .14);transform:translateY(-1px)}.apt-button,.button-link,button{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;gap:.4rem;padding:.72rem 1.12rem;border:1px solid hsl(var(--primary) / .55);border-radius:var(--radius-pill);background:hsl(var(--primary));color:hsl(var(--primary-foreground));text-decoration:none;cursor:pointer;transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast),background-color var(--motion-fast)}.apt-button:hover,.button-link:hover,button:hover,.apt-button:focus-visible,.button-link:focus-visible,button:focus-visible{transform:translateY(-1px);border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--ring) / .34),var(--shadow-hover)}.apt-button-secondary,.button-link-secondary{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-color:hsl(var(--border))}.apt-button-danger,.button-danger{border-color:hsl(var(--destructive) / .45);background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.text-link,.inline-link,.reading-list a,.link-list a,.footer-links a{color:hsl(var(--accent));font-weight:600;text-decoration:none}.detail-section{display:grid;gap:.8rem;padding:1.3rem 1.4rem}.detail-rich-text{white-space:pre-line}.detail-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}.panel-link{flex:1 1 260px}.panel-link-muted{color:var(--color-text-tertiary)}.reading-list,.link-list{display:grid;gap:.7rem;margin:0;padding-left:1.3rem;color:var(--color-text-secondary)}.gallery-card{overflow:hidden;padding:.8rem;align-content:start;background:hsl(var(--card))}.gallery-button{padding:0;border:0;background:transparent;text-align:left}.gallery-button .gallery-card{transition:border-color var(--motion-fast),box-shadow var(--motion-fast),transform var(--motion-fast)}.gallery-button:hover .gallery-card,.gallery-button:focus-visible .gallery-card{border-color:hsl(var(--primary) / .5);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.gallery-media-image{max-height:clamp(14rem,34vw,22rem);padding:.45rem;border-radius:10px;background:var(--color-surface-inset)}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:1.5rem;background:hsl(var(--background) / .86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.lightbox-panel{width:min(1100px,100%);max-height:min(90vh,100%);display:grid;gap:.9rem;padding:1rem;border:1px solid hsl(var(--border));border-radius:14px;background:hsl(var(--card));box-shadow:var(--shadow-hover)}.lightbox-close{justify-self:end}.lightbox-media{gap:.8rem}.lightbox-image{max-height:min(72vh,900px);padding:.8rem;border-radius:12px;background:hsl(var(--secondary))}.caption{font-size:.92rem}.browse-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem}.site-footer{display:flex;justify-content:space-between;gap:1.2rem;margin-top:1.25rem;margin-bottom:2rem;padding:1.35rem 1.4rem}.footer-primary,.footer-secondary{display:grid;gap:.65rem}.footer-meta{display:grid;gap:.28rem}.footer-title{max-width:36rem;font-family:var(--font-display);font-size:1.45rem}.footer-note{max-width:28rem;color:var(--color-text-primary)}.footer-domain{color:hsl(var(--accent));font-weight:600;text-decoration:none}.footer-disclaimer{max-width:34rem;color:var(--color-text-secondary);font-size:.94rem}.footer-links a{padding:.2rem 0}.author-hero{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:1rem;padding:1.2rem}.author-media{align-content:start}.author-photo{width:100%;max-height:32rem;padding:.8rem;border-radius:12px;background:hsl(var(--secondary))}.author-copy{display:grid;align-content:start;gap:1rem}.author-site-note{color:var(--color-text-secondary);font-size:1rem}.author-overview{display:grid;gap:1rem;color:var(--color-text-secondary)}.author-themes{gap:.75rem}.author-theme-chip{flex:0 1 auto}.admin-page{padding:1.2rem;margin-top:1rem}.admin-shell{display:grid;gap:1rem}.admin-hero,.admin-panel{width:var(--space-page);margin-inline:auto}.admin-hero{display:grid;gap:.75rem;padding:clamp(1.35rem,3vw,2rem);background:hsl(var(--card))}.admin-hero h1{font-size:clamp(2.4rem,5vw,4rem)}.admin-hero-copy{max-width:44rem;color:var(--color-text-secondary)}.admin-panel{display:grid;gap:1rem}.admin-panel-narrow{max-width:40rem}.admin-section-heading h2,.apt-section-heading h2{font-size:clamp(1.5rem,3vw,2.1rem)}.admin-nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem}.admin-nav-link{display:block;text-decoration:none}.admin-nav-card{min-height:0}.admin-nav-card .apt-browse-card-title{font-size:1.35rem}.admin-nav-card-active{border-color:hsl(var(--primary) / .5);background:hsl(var(--primary) / .12)}.admin-action-bar{gap:.85rem}.admin-table-wrap{overflow-x:auto;border-radius:12px}.admin-table{width:100%;border-collapse:collapse;min-width:640px;background:var(--color-surface-inset)}.admin-table th,.admin-table td{border:1px solid var(--color-border-subtle);padding:.75rem;text-align:left;vertical-align:top}.admin-table th{color:var(--color-text-secondary);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}.admin-table tbody tr:nth-child(2n){background:hsl(var(--foreground) / .015)}.admin-table-actions{display:flex;gap:.55rem;flex-wrap:wrap}.admin-form-actions{padding-top:.25rem}.admin-message,.apt-message{padding:.85rem .95rem;border-radius:10px;border:1px solid var(--color-border-subtle);background:hsl(var(--foreground) / .025);color:var(--color-text-secondary)}.admin-message-error,.apt-message-error{border-color:hsl(var(--destructive) / .4);color:hsl(var(--destructive-foreground))}.admin-message-success,.apt-message-success{border-color:hsl(var(--accent) / .4);color:hsl(var(--accent))}.loading-state,.empty-state{padding:1rem;border:1px solid hsl(var(--border));border-radius:var(--radius-card);background:hsl(var(--card))}.error-state{padding:1rem;border:1px solid hsl(var(--destructive) / .45);border-radius:var(--radius-card);background:hsl(var(--destructive) / .12);color:hsl(var(--destructive-foreground))}.apt-form textarea:focus,.apt-form input:focus,.apt-form select:focus,.editor-form textarea:focus,.editor-form input:focus,.editor-form select:focus,.apt-button:focus,.main-nav a:focus,.button-link:focus,button:focus,.chip-link:focus,.browse-pill:focus,.panel-link:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 3px var(--color-focus-ring)}.error-text{color:var(--color-danger)}@media(max-width:920px){.main-nav,.detail-hero,.site-footer,.author-hero{display:grid;grid-template-columns:1fr}.main-nav{position:static;align-items:start}.main-nav nav{justify-content:start}.site-footer{justify-content:start}.admin-section-heading{align-items:start}.apt-sticky-bar,.admin-sticky-actions,.relationship-picker-header,.relationship-picker-toolbar{align-items:start;flex-direction:column}}@media(max-width:640px){.top-banner,.section-heading,.purchase-row,.split-links,.footer-links{display:grid}.top-banner,.main-nav,.page,.site-footer{width:min(1400px,calc(100% - 1rem))}.detail-meta{grid-template-columns:1fr}.detail-copy h1,.list-hero h1{font-size:clamp(1.9rem,9vw,2.8rem)}}
