/* Site redesign 2026 — override layer.
   Applies the new design system (deep blue-black ground, cyan glow rules, Orbitron display,
   Share Tech Mono labels, amber secondary, modern rhythm) on top of the existing SPA markup.
   Loaded last so it wins the cascade; visual properties only, no selector or mechanic is
   removed, so behaviour and tests are untouched. Fonts are served from same-origin files. */
@font-face{font-family:'Orbitron';font-style:normal;font-weight:500 700;font-display:swap;src:url('/fonts/orbitron/orbitron-latin-wght-normal.woff2') format('woff2');}
@font-face{font-family:'Share Tech Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/share-tech-mono/share-tech-mono-latin-wght-normal.woff2') format('woff2');}

:root{
 --rd-bg0:#000a14;--rd-bg1:#001428;--rd-panel:rgba(0,20,40,.55);--rd-raise:rgba(0,255,255,.05);
 --rd-line:rgba(0,255,255,.22);--rd-line-soft:rgba(0,255,255,.12);--rd-cyan:#00ffff;
 --rd-cyan-bright:#80ffff;--rd-amber:#ffbb48;--rd-text:#d8fbff;--rd-muted:rgba(216,251,255,.62);
 --rd-display:'Orbitron',system-ui,-apple-system,"Segoe UI",sans-serif;
 --rd-mono:'Share Tech Mono',ui-monospace,SFMono-Regular,monospace;
 --rd-sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
html{scroll-behavior:smooth}
body{color:var(--rd-text);font-family:var(--rd-sans);background:var(--rd-bg0);
 background-image:
  repeating-linear-gradient(0deg,rgba(0,255,255,.02) 0 1px,transparent 1px 4px),
  radial-gradient(1100px 520px at 78% -10%,rgba(0,120,190,.28),transparent 62%),
  radial-gradient(900px 480px at -8% 108%,rgba(0,255,255,.07),transparent 60%),
  repeating-linear-gradient(90deg,rgba(0,255,255,.028) 0 1px,transparent 1px 56px),
  repeating-linear-gradient(0deg,rgba(0,255,255,.028) 0 1px,transparent 1px 56px),
  linear-gradient(135deg,var(--rd-bg1) 0%,var(--rd-bg0) 100%);
 background-attachment:fixed}
::selection{background:var(--rd-cyan);color:var(--rd-bg0)}
a{color:var(--rd-cyan);text-underline-offset:.18em}
a:hover{color:var(--rd-cyan-bright)}
:focus-visible{outline:2px solid var(--rd-cyan);outline-offset:3px}
h1,h2,.section-title,.category-title,.portfolio-header,.pricing-header{
 font-family:var(--rd-display);letter-spacing:.04em;color:var(--rd-cyan);
 text-shadow:0 0 14px rgba(0,255,255,.45)}
h3,h4,.product-name,.price-name,.subforum-name,.topic-title{font-family:var(--rd-display);
 letter-spacing:.06em;color:var(--rd-cyan-bright)}
.tagline,.subtitle,.pricing-tagline,.portfolio-tagline{color:var(--rd-text);letter-spacing:.02em}
p,.contact-item,.product-description{color:var(--rd-text)}
.small,.fine, .topic-meta,.post-date,.version-date,.contact-label{color:var(--rd-muted)}
/* buttons */
.btn-primary,.buy-button,.login-button,.oauth-btn,.steam-btn,.google-btn,.visitor-confirmation-btn,
button.btn-primary,#app input[type="submit"],#loginContainer input[type="submit"]{
 font-family:var(--rd-display);font-weight:500;letter-spacing:.14em;text-transform:uppercase;
 color:var(--rd-bg0);background:linear-gradient(135deg,#00ffff,#00cccc);border:1px solid transparent;
 box-shadow:0 0 16px rgba(0,255,255,.35);border-radius:2px;
 clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.btn-secondary,.btn-small,.menu-btn,.more-btn,.filter-select,.menu-select,.back-button,.details-link,
.dialog-actions button:not(.btn-primary){
 font-family:var(--rd-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--rd-cyan);
 background:rgba(0,255,255,.07);border:1px solid var(--rd-line);border-radius:2px;
 clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.btn-secondary:hover,.btn-small:hover,.menu-btn:hover,.more-btn:hover{background:rgba(0,255,255,.16);
 box-shadow:0 0 12px rgba(0,255,255,.3);color:var(--rd-cyan-bright)}
.btn-danger{background:rgba(255,51,102,.14);border-color:rgba(255,51,102,.5);color:#ff8fa3}
/* menu bar — no backdrop-filter here: it would become the containing block for the
   position:fixed dialog backdrops rendered inside the menu subtree */
#menuBar,.menu-bar,.btlg-menu{background:rgba(0,10,20,.92);
 border-bottom:1px solid var(--rd-line);box-shadow:0 4px 24px rgba(0,0,0,.5)}
.btlg-menu .menu-btn,#menuBar .menu-btn{color:var(--rd-cyan)}
#userButton,#hubButton,#fullScreenButton,#telegramButton{color:var(--rd-cyan);border-color:var(--rd-line-soft)}
#welcomeMessage{color:var(--rd-muted);font-family:var(--rd-mono);letter-spacing:.08em}
.more-dropdown,.dropdown-items{background:rgba(0,10,20,.94);border:1px solid var(--rd-line);
 box-shadow:0 0 24px rgba(0,255,255,.15)}
.dropdown-item{color:var(--rd-text);font-family:var(--rd-mono);letter-spacing:.1em}
.dropdown-item:hover{background:rgba(0,255,255,.12);color:var(--rd-cyan-bright)}
/* panels, cards, grids */
.feature-card,.stat-card,.product-card,.subforum-card,.post-card,.settings-section,.detail-section,
.dialog-content,#genericDialog,#loginDialog,#feedbackDialog,#subscriptionPopup,.history-content,
.account-content,.login-content,.feedback-content{
 background:linear-gradient(160deg,rgba(0,255,255,.06),rgba(0,10,20,.66));
 border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-cyan);border-radius:3px;
 box-shadow:inset 0 0 26px rgba(0,255,255,.05);color:var(--rd-text)}
.stat-count,.price-amount{font-family:var(--rd-display);color:var(--rd-text);
 text-shadow:0 0 10px rgba(0,255,255,.4)}
.price-discount{color:var(--rd-amber);font-family:var(--rd-mono);letter-spacing:.12em}
.stat-name,.category-label{font-family:var(--rd-mono);letter-spacing:.16em;text-transform:uppercase;
 color:var(--rd-muted)}
.grid-cell,.portfolio-gallery-item{border:1px solid var(--rd-line-soft);border-radius:3px;overflow:hidden;
 background:var(--rd-bg1);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.grid-cell:hover,.portfolio-gallery-item:hover{transform:translateY(-3px);border-color:var(--rd-cyan);
 box-shadow:0 0 22px rgba(0,255,255,.22)}
.game-grid,.features-grid,.product-cards,.subforums-grid,.portfolio-gallery{gap:18px}
/* landing + page shells */
.landing-page,.portfolio-page,.pricing-page,.forum-page,.account-page,.business-page,.terms-page,
.product-page,.not-found-page,.feedback-page{background:transparent;color:var(--rd-text)}
.title-section h1,.hero-section h1{font-size:clamp(32px,4.6vw,54px);line-height:1.12}
.hero-section,.title-section{padding:72px 0 40px}
.features-section,.how-it-works-section,.portfolio-section,.topics-section,.links-section,
.pricing-category,.release-groups{padding:56px 0}
.section-title,.category-title,.release-group-title{border-bottom:1px solid var(--rd-line-soft);
 padding-bottom:10px}
#background-canvas{opacity:.85}
.site-footer,footer,.pricing-footer,.footer-links{background:rgba(0,10,20,.72);
 border-top:1px solid var(--rd-line);color:var(--rd-muted)}
.site-footer a,footer a,.footer-links a{color:var(--rd-muted);font-family:var(--rd-mono);
 letter-spacing:.14em;text-transform:uppercase;font-size:11px}
.site-footer a:hover,footer a:hover,.footer-links a:hover{color:var(--rd-cyan)}
/* forms */
.form-group label,.contact-label,.settings-label,.field-label{font-family:var(--rd-mono);
 font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--rd-muted)}
.form-control,#app input,#app select,#app textarea,#loginContainer input,#loginContainer select,
#loginContainer textarea,.admin-page input,.admin-page select,.admin-page textarea,.filter-select,.menu-select{
 background:rgba(0,10,20,.7);color:var(--rd-text);border:1px solid var(--rd-line-soft);border-radius:2px}
.form-control:focus,#app input:focus,#app select:focus,#app textarea:focus,#loginContainer input:focus,
#loginContainer select:focus,#loginContainer textarea:focus,.admin-page input:focus,.admin-page select:focus,
.admin-page textarea:focus{outline:none;border-color:var(--rd-cyan);
 box-shadow:0 0 12px rgba(0,255,255,.25)}
.error-message{color:#ff8fa3;background:rgba(255,51,102,.12);border:1px solid rgba(255,51,102,.4);
 border-radius:2px;font-family:var(--rd-mono);letter-spacing:.06em}
.success-message{color:#a5d6a7;background:rgba(76,175,80,.12);border:1px solid rgba(76,175,80,.4);
 border-radius:2px;font-family:var(--rd-mono);letter-spacing:.06em}
/* tables */
#app table,.admin-table,.highscore-table{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);
 border-collapse:collapse}
#app th,.admin-table th{font-family:var(--rd-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
 color:var(--rd-muted);background:rgba(0,255,255,.07)}
#app td,.admin-table td{border-bottom:1px solid var(--rd-line-soft);color:var(--rd-text)}
#app tbody tr:hover td,.admin-table tbody tr:hover td{background:rgba(0,255,255,.05)}
/* forum */
.topic-row{border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-line);border-radius:2px;
 background:rgba(0,10,20,.6)}
.topic-row:hover{border-left-color:var(--rd-cyan)}
.topic-preview,.post-content,.story-text,.synopsis{color:var(--rd-muted)}
.forum-breadcrumbs,.breadcrumb-separator{color:var(--rd-muted);font-family:var(--rd-mono)}
/* dialogs and overlays — background only; backdrop-filter on the backdrop would re-anchor
   any fixed-position descendants of it */
.dialog-overlay,.dialog-backdrop{background:rgba(0,4,10,.82)}
/* loading + misc */
.loading{color:var(--rd-cyan);font-family:var(--rd-mono);letter-spacing:.2em;text-transform:uppercase}
.json-content,.versions-list{background:rgba(0,10,20,.7);border:1px solid var(--rd-line-soft);
 border-radius:2px;font-family:var(--rd-mono)}
.frontend-outdated-warning{background:rgba(255,187,72,.1);border:1px solid rgba(255,187,72,.45);
 color:var(--rd-amber)}
.not-found-content h1,.not-found-content h2{font-size:clamp(40px,6vw,72px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---- family completion: every remaining page surface in the same language ----
   Selectors are family-scoped so they outrank the legacy per-page stylesheets,
   which load before this override. */
/* reader */
.reader-page{color:var(--rd-text)}
.reader-container,.reader-main,.reader-content{background:transparent;color:var(--rd-text)}
.reader-top-nav,.reader-bottom-nav{background:rgba(0,10,20,.9);border-color:var(--rd-line)}
.chapter-title,.toc-title,.sidebar-title,.downloads-header,.bookmarks-header{font-family:var(--rd-display);color:var(--rd-cyan);letter-spacing:.06em}
.chapter-text,.paragraph,.narration,.reader-segment{color:var(--rd-text)}
.toc-list,.bookmarks-list,.settings-content{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft)}
.toc-bookmark,.bookmark-item{border-color:var(--rd-line-soft);color:var(--rd-text)}
.font-size-controls,.line-height-controls,.display-settings,.settings-row{color:var(--rd-muted)}
.paywall-modal,.paywall-backdrop{background:rgba(0,4,10,.85)}
.paywall-title{font-family:var(--rd-display);color:var(--rd-cyan)}
.paywall-description,.paywall-error{color:var(--rd-muted)}
/* webcomic */
.webcomic-page,.webcomic-scene-page,.webcomic-container,.webcomic-reader-container{background:transparent;color:var(--rd-text)}
.webcomic-header,.story-header{border-bottom:1px solid var(--rd-line-soft)}
.story-title,.scene-title,.chapter-title-nav{font-family:var(--rd-display);color:var(--rd-cyan)}
.scene-meta,.scene-count,.scene-location{font-family:var(--rd-mono);color:var(--rd-muted);letter-spacing:.1em}
.scenes-grid,.stories-list{gap:16px}
.scene-card{border:1px solid var(--rd-line-soft);border-radius:3px;overflow:hidden;background:var(--rd-bg1);transition:border-color .15s ease,transform .15s ease}
.scene-card:hover{border-color:var(--rd-cyan);transform:translateY(-2px)}
.webcomic-hud,.hud-actions,.chat-panel,.chat-overlay{background:rgba(0,10,20,.85);border-color:var(--rd-line)}
.hud-progress{background:rgba(0,255,255,.12)}
.hud-progress-fill,.progress-fill{background:linear-gradient(90deg,var(--rd-cyan),#00cccc);box-shadow:0 0 10px rgba(0,255,255,.5)}
.hud-progress-text,.progress-text,.chat-hint{font-family:var(--rd-mono);color:var(--rd-muted)}
.chat-messages,.chat-text,.typed-text{color:var(--rd-text)}
.chat-speaker,.reader-speaker{color:var(--rd-cyan-bright);font-family:var(--rd-mono)}
.webcomic-help-modal,.webcomic-help-overlay,.help-grid,.help-section{background:rgba(0,10,20,.92);border-color:var(--rd-line)}
.panel-view,.panel-image-wrapper{border:1px solid var(--rd-line-soft);background:var(--rd-bg0)}
/* forum + agent forum */
.forum-page,.forum-content{background:transparent;color:var(--rd-text)}
.topics-list,.posts-list{display:flex;flex-direction:column;gap:8px}
.forum-topic,.forum-post,.post-form,.topic-form,.forum-edit-post,.forum-edit-topic{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-line);border-radius:2px}
.forum-topic:hover,.forum-post:hover{border-left-color:var(--rd-cyan)}
.topic-author,.post-author{color:var(--rd-cyan-bright);font-family:var(--rd-mono)}
.topic-date,.post-date,.page-info,.version-label{color:var(--rd-muted);font-family:var(--rd-mono);font-size:12px}
.pagination,.forum-actions,.post-actions{gap:8px}
.version-header,.version-content{color:var(--rd-muted)}
.subforum-topic-count{color:var(--rd-muted);font-family:var(--rd-mono)}
/* account / auth */
.account-page,.password-reset-page,.login-content,.account-content{background:transparent;color:var(--rd-text)}
.account-info,.owned-products-section,.setting-row,.info-row{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-cyan);border-radius:2px}
.setting-label,.label,.reader-language-label{font-family:var(--rd-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--rd-muted)}
.value,.no-products,.not-logged-in{color:var(--rd-text)}
.account-actions,.language-picker{gap:10px}
/* admin */
.admin-page,.admin-content,.admin-panel{background:transparent;color:var(--rd-text)}
.admin-header{border-bottom:1px solid var(--rd-line);font-family:var(--rd-display);color:var(--rd-cyan)}
.tab-bar{border-bottom:1px solid var(--rd-line-soft)}
.tab-bar button,.admin-actions button,.role-select{font-family:var(--rd-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--rd-cyan);background:rgba(0,255,255,.07);border:1px solid var(--rd-line-soft)}
.tab-bar button.active{background:linear-gradient(135deg,#00ffff,#00cccc);color:var(--bg0, #000a14);color:#000a14}
.stats-grid{gap:14px}
.disk-space-summary,.webhook-stats,.detail-content,.detail-row{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft)}
.status-warning{color:var(--amber,#ffbb48);color:#ffbb48}
.generated-alpha-keys,.alpha-key-generator,.alpha-key-generator-form{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft)}
.alpha-key-description,.generated-at{color:var(--rd-muted);font-family:var(--rd-mono)}
.access-denied{color:#ff8fa3}
/* assessment */
.assessment-page,.assessment-content{background:transparent;color:var(--rd-text)}
.assessment-page .step-title,.assessment-page .title{font-family:var(--rd-display);color:var(--rd-cyan)}
.step-text,.slider-labels,.slider-label-left,.slider-label-right{color:var(--rd-text)}
.step-choices,.choices{gap:10px}
.choice-btn,.link-btn,.next-btn{background:rgba(0,255,255,.07);border:1px solid var(--rd-line-soft);color:var(--rd-text);border-radius:2px}
.choice-btn:hover,.next-btn:hover{border-color:var(--rd-cyan);box-shadow:0 0 12px rgba(0,255,255,.25)}
.step-slider,.slider{accent-color:var(--rd-cyan)}
.step-link{font-family:var(--rd-mono);letter-spacing:.12em}
/* leaderboard */
.leaderboard-page,.leaderboard-content{background:transparent;color:var(--rd-text)}
.leaderboard-title{font-family:var(--rd-display);color:var(--rd-cyan)}
.leaderboard-subtitle,.footer-bottom{color:var(--rd-muted);font-family:var(--rd-mono)}
.searchbar,.search-section{background:rgba(0,10,20,.7);border:1px solid var(--rd-line-soft)}
.scores-table .rank,.scores-table .score,.scores-table .name{font-family:var(--rd-mono)}
.no-scores{color:var(--rd-muted)}
.leaderboard-footer,.footer-download,.footer-social,.social-links{color:var(--rd-muted)}
/* pricing / portfolio / business pages */
.pricing-page,.portfolio-page,.portfolio-body,.about-page,.contact-page,.privacy-page,.refunds-page,.business-page{background:transparent;color:var(--rd-text)}
.product-header,.product-pricing,.price-option,.period{color:var(--rd-text)}
.product-header h1,.product-header h2,.portfolio-header,.pricing-header{font-family:var(--rd-display);color:var(--rd-cyan)}
.pricing-products,.pricing-section,.pricing-table,.product-actions{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft)}
.portfolio-links,.portfolio-link{color:var(--rd-cyan)}
.contact-details,.effective-date,.product-note,.legal-section{color:var(--rd-muted)}
.available-soon-badge,.not-yet-available-badge{background:rgba(255,187,72,.14);border:1px solid rgba(255,187,72,.5);color:#ffbb48;font-family:var(--rd-mono)}
.available-soon-overlay,.not-yet-available-overlay{background:rgba(0,10,20,.72);color:#ffbb48}
/* landing extras */
.release-group,.release-group-empty{border-top:1px solid var(--rd-line-soft)}
.product-title-overlay{font-family:var(--rd-display);letter-spacing:.08em;color:var(--rd-text)}
.category-cell .category-overlay{background:linear-gradient(180deg,transparent,rgba(0,10,20,.85))}
.category-label{font-family:var(--rd-display);letter-spacing:.14em;color:var(--rd-cyan)}
.buy-badge{background:linear-gradient(135deg,#00ffff,#00cccc);color:#000a14;font-family:var(--rd-mono);letter-spacing:.1em}
.landscape-cell,.landscape-layout{border-color:var(--rd-line-soft)}
.message{color:var(--rd-muted)}
/* catalog + game product pages */
.catalog-product-image,.game-splash-image,.hero-image{border:1px solid var(--rd-line);border-radius:3px;box-shadow:0 0 26px rgba(0,255,255,.18)}
.hero-description,.hero-title,.demo-cta-description{color:var(--rd-text)}
.hero-actions,.demo-cta-grid,.demo-cta-section,.how-to-play-controls,.how-to-play-tutorial{gap:12px}
.catalog-current-state,.catalog-availability-button{font-family:var(--rd-mono);letter-spacing:.12em;color:var(--rd-cyan)}
.feature-list li::marker{color:var(--rd-cyan)}
/* book + dinkel product pages */
.book-page,.dinkel-page,.book-content,.content-column{background:transparent;color:var(--rd-text)}
.book-title,.book-header h1{font-family:var(--rd-display);color:var(--rd-cyan)}
.book-subtitle,.series-info,.includes-text,.isbn-section,.why-read,.license-section{color:var(--rd-muted)}
.book-buttons,.buy-buttons-row,.format-groups{gap:10px}
.slide,.slide-content,.slide-image,.image-container{border:1px solid var(--rd-line-soft);border-radius:3px;background:var(--rd-bg1)}
.slider-nav,.slider-indicators,.format-group-link{color:var(--rd-cyan)}
.wip-banner,.wip-text{background:rgba(255,187,72,.12);border:1px solid rgba(255,187,72,.45);color:#ffbb48}
.login-prompt,.category-badge{font-family:var(--rd-mono);color:var(--rd-muted)}
/* brainlift landing variant */
.brainlift-page,.brainlift-content,.brainlift-story,.download-content{background:transparent;color:var(--rd-text)}
.hero-title,.download-title,.story-title-1,.story-title-2{font-family:var(--rd-display);color:var(--rd-cyan);text-shadow:0 0 14px rgba(0,255,255,.45)}
.story-paragraph,.book-connection-content{color:var(--rd-text)}
.hero-buttons,.book-buttons,.download-buttons{gap:12px}
.btn,.btn-book,.btn-sign{border:1px solid var(--rd-cyan);color:var(--rd-cyan);background:rgba(0,255,255,.07);font-family:var(--rd-display);letter-spacing:.14em;text-transform:uppercase}
.newsletter-form,.stay-updated-content{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft)}
.brainlift-footer,.footer-legal,.footer-newsletter{color:var(--rd-muted)}
/* software / extensions / mealcalc */
.mealcalc-page,.attentionguard-page,.ticket2clip-page{background:transparent;color:var(--rd-text)}
.config-section,.config-item,.installation-section,.usage-section,.links-list,.note,.legal-section{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);color:var(--rd-text)}
.install-btn,.product-status-badge,.coming-soon{font-family:var(--rd-mono);letter-spacing:.12em;color:var(--rd-cyan)}
.steps-list .step,.step{border-top:2px solid var(--rd-cyan);background:rgba(0,10,20,.6)}
.mealcalc-pricing{font-family:var(--rd-display);color:var(--rd-text)}
/* taskboard beta + pricing pages */
.taskboard-beta-page,.taskboard-pricing-page{background:transparent;color:var(--rd-text)}
.taskboard-beta-kicker,.taskboard-pricing-kicker{font-family:var(--rd-mono);letter-spacing:.26em;color:#ffbb48}
.taskboard-beta-hero,.taskboard-pricing-hero{font-family:var(--rd-display);color:var(--rd-cyan)}
.taskboard-beta-lead,.taskboard-pricing-lead,.taskboard-pricing-lead-secondary,.taskboard-beta-disclaimer{color:var(--rd-text)}
.taskboard-beta-console,.taskboard-beta-console-bar,.taskboard-beta-rail,.taskboard-beta-readiness,.taskboard-beta-fit-grid{background:rgba(0,10,20,.7);border:1px solid var(--rd-line-soft)}
.taskboard-beta-step,.taskboard-beta-ticket,.taskboard-beta-ticket-meta,.taskboard-pricing-limits-card{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-cyan)}
.taskboard-beta-step-number{font-family:var(--rd-display);color:var(--rd-cyan)}
.taskboard-beta-primary,.taskboard-pricing-primary{background:linear-gradient(135deg,#00ffff,#00cccc);color:#000a14;border-color:transparent}
.taskboard-beta-secondary,.taskboard-pricing-secondary{border:1px solid var(--rd-cyan);color:var(--rd-cyan)}
.taskboard-pricing-price-amount{font-family:var(--rd-display);color:var(--rd-text)}
.taskboard-pricing-price-period,.taskboard-pricing-price-note,.taskboard-pricing-cta-note{color:var(--rd-muted);font-family:var(--rd-mono)}
.taskboard-pricing-packages,.taskboard-pricing-docs,.taskboard-pricing-usecases,.taskboard-pricing-gallery{gap:16px}
.taskboard-beta-not-ready,.taskboard-pricing-draft{color:#ffbb48}
/* maintenance + prompts + dialogs */
.maintenance-page,.maintenance-content{background:transparent;color:var(--rd-text)}
.maintenance-icon{color:var(--rd-cyan)}
.visitor-confirmation-prompt,.measurement-consent-prompt{background:rgba(0,10,20,.94);border:1px solid var(--rd-line);box-shadow:0 0 30px rgba(0,255,255,.2)}
.visitor-confirmation-primary,.measurement-consent-primary{background:linear-gradient(135deg,#00ffff,#00cccc);color:#000a14}
.help-dialog,.highscore-dialog,.subscription-dialog,.dialog-footer{background:rgba(0,10,20,.94);border-color:var(--rd-line)}
.help-content,.subscription-status,.subscription-error{color:var(--rd-text)}
.oauth-options,.subscription-actions{gap:10px}
.welcome-message{font-family:var(--rd-mono);color:var(--rd-muted)}
.back-btn,.btn-link,.hide-btn,.menu-toggle-chevron{color:var(--rd-cyan)}
/* alpha access section */
.alpha-access-section{background:rgba(0,10,20,.7);border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-cyan)}
.alpha-access-description,.alpha-access-confirmed-lead,.alpha-key-description{color:var(--rd-text)}
.alpha-access-actions,.alpha-access-launches,.alpha-access-cta-row{gap:10px}
.alpha-access-granted{color:#a5d6a7}
.alpha-access-entry,.alpha-access-form{color:var(--rd-muted)}

/* ---- completion pass two: remaining visible controls inherit the language ---- */
.footer-btn,.footer-info,.footer-store-unavailable{font-family:var(--rd-mono);letter-spacing:.14em;color:var(--rd-muted);text-transform:uppercase;font-size:11px}
.footer-btn:hover{color:var(--rd-cyan)}
.form-actions,.feedback-form,.visitor-confirmation-actions,.measurement-consent-actions,.oauth-options{display:flex;gap:10px;flex-wrap:wrap}
.buy-section,.buy-link-section,.buy-buttons-row{margin:14px 0}
.buy-btn-active,.buy-btn-half,.sample-btn-half,.epub-btn,.pdf-btn,.download-btn,.format-action-btn,.reset-settings-btn,.size-btn,.nav-button,.sidebar-toggle,.help-close-btn,.btn-download-logs{
 border:1px solid var(--rd-line);color:var(--rd-cyan);background:rgba(0,255,255,.07);
 font-family:var(--rd-mono);letter-spacing:.12em;text-transform:uppercase;border-radius:2px;
 clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px))}
.buy-btn-active:hover,.buy-btn-half:hover,.epub-btn:hover,.pdf-btn:hover,.download-btn:hover{background:rgba(0,255,255,.16);box-shadow:0 0 12px rgba(0,255,255,.3)}
.book-page .buy-btn-disabled,.dinkel-page .buy-btn-disabled,.landing-page .disabled,
.pricing-page .buy-button.disabled{opacity:.55;filter:saturate(.4)}
.download-section,.downloads-section,.bookmarks-section,.bookmark-controls,.bookmark-hint,.download-status,.download-warning{color:var(--rd-muted);background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft)}
.download-warning{color:#ffbb48;border-color:rgba(255,187,72,.45)}
.chapter-content,.chapter-section,.chapter-indicator,.chapters-list,.toc-header,.toc-number,.scene-panels,.panel-separator,.end-of-scene,.no-scenes{color:var(--rd-text);border-color:var(--rd-line-soft)}
.chapter-indicator,.toc-number,.scene-number,.size-value,.line-height-value{font-family:var(--rd-mono);color:var(--rd-cyan)}
.forum-new-post,.forum-new-topic,.forum-post-history{background:rgba(0,255,255,.07);border:1px solid var(--rd-line);color:var(--rd-cyan);font-family:var(--rd-mono);letter-spacing:.12em;text-transform:uppercase}
.filter-bar,.search-indicator{background:rgba(0,10,20,.7);border:1px solid var(--rd-line-soft)}
.back-link,.back-home-link,.back-to-book-link,.webcomic-link,.step-link{font-family:var(--rd-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--rd-cyan)}
.content-grid,.book-info-column,.book-cta,.book-connection-background,.brainlift-hero,.brainlift-download,.brainlift-stay-updated,.brainlift-book-connection,.demo-cta-subscribe{background:rgba(0,10,20,.55);border:1px solid var(--rd-line-soft);color:var(--rd-text)}
.expand-icon,.enlarge-hint,.chat-container,.comic-reader{color:var(--rd-muted)}
.format-group,.format-header,.format-name{color:var(--rd-text);border-color:var(--rd-line-soft)}
.format-name,.story-section,.chapter-title{font-family:var(--rd-display);letter-spacing:.06em;color:var(--rd-cyan-bright)}
.admin-tag-options,.emails-tab,.users-tab,.licensekeys-tab,.pagehits-tab,.rowcounts-tab,.webhooks-tab,.i18nprogress-tab{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);color:var(--rd-text)}
.daily-visitors-table,.pagehits-table,.rowcounts-table,.i18nprogress-table,.webhook-stats table{width:100%;border-collapse:collapse}
.reader-page .tagged,.webcomic-scene-page .current,.book-page .clickable,.book-page .wide,
.dinkel-page .wide{color:var(--rd-text)}
.nav-spacer{flex:1}

/* ---- completion pass three: last visible surfaces; the remainder inherit from
   element-level rules (input, select, button, a, table) or are external icon fonts ---- */
.memory-dive-landing-page,.landing-content,.page-content,.story-content,.hero-content,.tab-content,
.sidebar-content,.i18nprogress-content,.password-reset-content,.taskboard-pricing-body{background:transparent;color:var(--rd-text)}
.forum-subforum,.owned-products-list,.post-header{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-line)}
.isbn-values,.generated-alpha-keys-header,.taskboard-beta-ticket-key{font-family:var(--rd-mono);color:var(--rd-cyan)}
.how-to-play-details{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);color:var(--rd-text)}
.menu-wrapper,.more-menu-container{background:rgba(0,10,20,.92)}
.untyped-text,.webcomic-access-denied{color:var(--rd-muted)}
.webcomic-access-denied{border:1px solid rgba(255,187,72,.45);background:rgba(255,187,72,.08);color:#ffbb48}
.progress-bar,.hud-progress-bar{background:rgba(0,255,255,.12);border-radius:99px;overflow:hidden}
.taskboard-beta-actions,.taskboard-beta-cta,.taskboard-beta-section,.taskboard-beta-workflow,
.taskboard-beta-testers,.taskboard-pricing-actions,.taskboard-pricing-cta,.taskboard-pricing-section,
.taskboard-pricing-limits,.taskboard-pricing-list{display:flex;gap:14px;flex-wrap:wrap}
.taskboard-beta-ready{color:#a5d6a7}
.paywall-buttons,.paywall-form{display:flex;gap:10px;flex-wrap:wrap}
.paywall-buy-btn,.paywall-submit-btn{background:linear-gradient(135deg,#00ffff,#00cccc);color:#000a14;border-color:transparent}
.paywall-cancel-btn,.paywall-login-btn{border:1px solid var(--rd-cyan);color:var(--rd-cyan)}
.paywall-close{color:var(--rd-muted)}
.password-reset-form{background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-cyan)}

/* ---- specificity reinforcement: legacy sheets scope some rules two classes or a
   page root deep; these later, equal-or-higher selectors keep the override in charge ---- */
body .menu-wrapper .menu-bar,.menu-bar.menu-bar,body .menu-bar,body #menuBar,body .btlg-menu{
 background:rgba(0,10,20,.92);border-bottom:1px solid var(--rd-line)}
.site-footer .footer-btn,.footer-btn.footer-btn,.site-footer .footer-info,.footer-info.footer-info{
 font-family:var(--rd-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--rd-muted);font-size:11px}
.about-page h1,.contact-page h1,.privacy-page h1,.refunds-page h1,.business-page h1,
.landing-page h1,.title-section h1,.portfolio-page h1,.pricing-page h1,.assessment-page h1,
.leaderboard-page h1,.webcomic-page h1,.account-page h1,.forum-page h1,.reader-page h1,
.book-page h1,.dinkel-page h1,.mealcalc-page h1,.attentionguard-page h1,.ticket2clip-page h1,
.maintenance-page h1,.password-reset-page h1,.memory-dive-landing-page h1,.taskboard-beta-page h1,
.taskboard-pricing-page h1,.not-found-page h1,.product-page h1{
 font-family:var(--rd-display);letter-spacing:.04em;color:var(--rd-cyan);
 text-shadow:0 0 14px rgba(0,255,255,.45)}

/* ---- element-scoped reinforcement: legacy inline sheets style page-scoped bare
   elements (e.g. .product-page section) at (0,1,1); these later element+class rules
   tie on specificity and win on order ---- */
section.config-section,section.config-item,section.installation-section,section.usage-section,
section.links-section,section.pricing-section,section.release-group,section.settings-section,
section.detail-section,section.features-section,section.how-it-works-section,
section.portfolio-section,section.topics-section{
 background:rgba(0,10,20,.6);border:1px solid var(--rd-line-soft);border-left:2px solid var(--rd-cyan);
 border-radius:2px;color:var(--rd-text)}

/* ---- form-control reinforcement: legacy sheets scope inputs by id or form-group and page
   root at (1,0,1)/(0,1,1)/(0,2,1); these later equal-specificity rules keep the terminal
   ground in charge of every visible form control ---- */
#loginForm input,.form-group input,.form-group select,.form-group textarea,
.product-page .alpha-access-entry input,.product-page .demo-cta-subscribe input,
.setting-row select{background:rgba(0,10,20,.7);border:1px solid var(--rd-line-soft);
 border-radius:2px;color:var(--rd-text)}
