/* Neutral charcoal surfaces shared by all website pages. Story artwork keeps its own colors. */
:root{--bg:#141414;--panel:#202020;--panel-2:#262626;--sidebar:#151515;--line:#3c3c3c;--text:#f1f1ed;--muted:#aaa9a5;--dim:#858580;--glass-bg:linear-gradient(145deg,#ffffff0a,#ffffff04);--glass-line:#ffffff1f;--glass-shadow:0 16px 50px #0000003b}
body{background:radial-gradient(ellipse at 80% 3%,#ffffff03,transparent 46%),#141414;background-attachment:fixed}
body .story-entrance{background:radial-gradient(ellipse at 50% 65%,#202020,transparent 64%),#101010}
body .topbar,body .sidebar{background:linear-gradient(135deg,#191919f2,#141414f5);border-color:#3b3b3b}
body .panel,body .book-card,body .character-card,body .story-row,body .creator-profile,body .guide-document,body .guide-index,body .stat-grid>div,body .play-data-card{background:linear-gradient(145deg,#242424e6,#1b1b1be6);border-color:var(--glass-line)}
body .modal,body .account-dropdown{background:#202020f7;border-color:#4b4b4b}
body .modal-overlay{background:#000000b8}
body .auth-layout,body .auth-layout.auth-register{background:#141414}
body .auth-panel,body .auth-register .auth-panel{background:radial-gradient(ellipse at top right,#ffffff04,transparent 58%),#171717}
body .auth-scene{background:#111111}
body .auth-scene:after,body .auth-register .auth-scene:after{background:linear-gradient(180deg,#00000033 0%,#00000005 30%,#000000a6 62%,#101010f5 100%)}
body .auth-register .registration-card,body .registration-card{background:linear-gradient(145deg,#242424e6,#1b1b1be6);border-color:#ffffff1f}
body .story-detail-hero,body .story-people .cast-photo.framed-portrait{background:#181818}
body .field input,body .field textarea,body .field select,body input:not([type=checkbox]):not([type=radio]):not([type=file]),body textarea,body select{background:linear-gradient(120deg,#242424,#1d1d1d);border-color:#55555580}
body .sidebar-bottom,body .page-footer,body .account-menu-profile,body .account-menu-divider{border-color:#3a3a3a}
body .nav-button:not(.active):hover,body .account-dropdown>button:hover,body .account-dropdown>button:focus-visible{background:#303030}
body .button:not(.primary):not(.quiet){background:#262626;border-color:#555555;color:#efefea}
body .bottom-nav{background:#171717f5;border-color:#3c3c3c}
body .glass-story-card .shelf-overlay{background:linear-gradient(0deg,#101010f5 0%,#101010df 65%,#1010108a 88%,transparent)}
body .r3-sidebar-announcement{background:#22222291;border-color:#66666655}
/* Scene URLs still identify the existing actor framing; only the painted backdrop changes. */
body .novel-layout,
body .novel-layout .message-column,
body .novel-layout .novel-page-background,
body .novel-layout .novel-visual,
body .novel-layout .scene-banner,
body .novel-layout .composer{background:var(--bg)!important}
body .novel-layout .novel-page-background::after,
body .novel-layout[data-decoration=true] .novel-visual::before{background:none!important}
