/* UN PUIȘOR. Shared language; material belongs to the function of each surface. */
:root {
  --ink:var(--up-text-primary);--ink-2:var(--up-text-secondary);--ink-soft:var(--up-text-secondary);
  --muted:var(--up-text-muted);--faint:var(--up-text-subtle);--navy:var(--up-brand-night);
  --text-primary:var(--up-text-primary);--text-secondary:var(--up-text-secondary);--text-muted:var(--up-text-muted);
  --primary:var(--up-brand-primary);--primary-hover:var(--up-brand-primary-dark);--primary-dark:var(--up-brand-primary-dark);--primary-soft:var(--up-brand-primary-soft);--primary-pale:var(--up-background-secondary);--primary-bright:var(--up-brand-primary);
  --blue:var(--up-brand-primary);--blue-dark:var(--up-brand-primary-dark);--blue-soft:var(--up-brand-primary-soft);--blue-bright:var(--up-brand-primary);
  --gold:var(--up-brand-secondary);--gold-dark:var(--up-brand-secondary-dark);--gold-soft:var(--up-brand-secondary-soft);
  --coral:var(--up-accent-coral);--coral-dark:var(--up-accent-coral-dark);--coral-soft:var(--up-accent-coral-soft);
  --green:var(--up-success);--green-soft:var(--up-success-soft);--success:var(--up-success);--success-dark:var(--up-success);--success-soft:var(--up-success-soft);
  --danger:var(--up-error);--danger-soft:var(--up-error-soft);--warning:var(--up-warning);--warning-soft:var(--up-warning-soft);
  --bg:var(--up-background-primary);--page:var(--up-background-primary);--background-primary:var(--up-background-primary);--background-secondary:var(--up-background-secondary);
  --surface:var(--up-surface-raised);--surface-2:var(--up-surface);--surface-3:var(--up-surface-inset);--surface-soft:var(--up-surface);--soft:var(--up-surface);
  --surface-raised:var(--up-surface-raised);--surface-inset:var(--up-surface-inset);--surface-active:var(--up-surface-active);
  --line:var(--up-border-soft);--line-strong:var(--up-border-strong);--border-soft:var(--up-border-soft);--border-strong:var(--up-border-strong);
  --brand-primary:var(--up-brand-primary);--brand-primary-dark:var(--up-brand-primary-dark);--brand-primary-soft:var(--up-brand-primary-soft);
  --brand-secondary:var(--up-brand-secondary);--brand-secondary-dark:var(--up-brand-secondary-dark);--brand-secondary-soft:var(--up-brand-secondary-soft);
  --radius-xs:var(--up-radius-sm);--radius-sm:var(--up-radius-sm);--radius:var(--up-radius-lg);--radius-md:var(--up-radius-md);--radius-lg:var(--up-radius-card);--radius-xl:var(--up-radius-xl);
  --shadow-xs:var(--up-shadow-soft-xs);--shadow-sm:var(--up-shadow-soft-sm);--shadow-md:var(--up-shadow-soft-md);--shadow:var(--up-shadow-soft-md);--shadow-lg:var(--up-shadow-floating);
  --soft-sm:var(--up-shadow-soft-sm);--soft-md:var(--up-shadow-soft-md);--soft-lg:var(--up-shadow-floating);--inset-sm:var(--up-shadow-clay-pressed);--inset-md:var(--up-shadow-clay-pressed);
  --z-base:var(--up-z-base);--z-sticky:var(--up-z-sticky);--z-sidebar:var(--up-z-player);--z-overlay:var(--up-z-overlay);--z-toast:var(--up-z-toast);
}
html { background:var(--bg); scroll-padding-top:100px; }
body { background:var(--bg); color:var(--ink); }
:where(h1,h2,h3,h4,p,span,a,td,th,label) { overflow-wrap:anywhere; }
:where(button,[role=button],input,select,textarea,summary,a):focus-visible { outline:3px solid var(--up-focus)!important; outline-offset:3px; }
:where(button,.btn,[role=button],summary) { touch-action:manipulation; }
:where(button,.btn,[role=button]):disabled,:where([aria-disabled=true]) { cursor:not-allowed; opacity:.6; box-shadow:none; }
:where(input,textarea,select) { accent-color:var(--primary); }
:where(input,textarea,select)[aria-invalid=true] { border-color:var(--danger); }
input::placeholder,textarea::placeholder { color:var(--muted); opacity:1; }
:where(button,.btn,.store-button,.price-cta):active:not(:disabled) { box-shadow:var(--up-shadow-clay-pressed); }

/* Editorial website: open space, covers and characters provide the color. */
body:not(.admin-ui):not(.login-page) { background:var(--bg); }
.site-header { background:var(--up-surface-translucent); border-color:var(--line); box-shadow:var(--up-shadow-soft-sm); backdrop-filter:blur(12px); }
.site-nav a,.site-nav-toggle { color:var(--ink-soft); }
.site-nav a:hover,.site-nav a[aria-current=page] { color:var(--blue-dark); background:var(--blue-soft); }
.hero { background:var(--bg); box-shadow:none; }
.hero::before,.hero::after { opacity:.12; }
.hero h1,.hero h1 strong,.section-heading h2,.characters-copy h2,.parent-copy h2,.closing-cta h2 { color:var(--ink); text-shadow:none; }
.hero h1 span { color:var(--blue-dark); }
.hero-description,.hero-description strong,.hero-trust,.hero-trust span,.section-intro,.characters-copy>p,.parent-copy>p { color:var(--ink-soft); }
.hero-kicker,.eyebrow { color:var(--gold-dark); }
.hero-kicker { background:var(--up-clay-yellow);border-color:var(--line); }
.hero-lead,.hero-trust li,.store-availability>p,.trial-note {color:var(--ink-soft)}
.hero-trust .material-symbols-rounded,.trial-note .material-symbols-rounded {color:var(--gold-dark)}
.hero-action-primary {color:var(--up-brand-night);background:var(--gold);box-shadow:var(--up-shadow-clay-rest)}
.hero-action-secondary {color:var(--blue-dark);background:var(--surface);border-color:var(--line-strong)}
.store-actions-platform .store-button {box-shadow:var(--up-shadow-soft-xs)}
.app-preview {background:var(--up-brand-night)}
.hero::before,.hero>.cloud {display:none}
.nav-toggle {color:var(--ink);background:var(--surface);border-color:var(--line);box-shadow:none}
.section-heading>p:not(.eyebrow),.section-heading-inline>div>p:not(.eyebrow) {color:var(--ink-soft)}
.story-mode {background:var(--surface);border-color:var(--line);box-shadow:var(--up-shadow-soft-xs)}
.story-mode.is-primary {background:var(--up-clay-sky);border-color:var(--line)}
.story-mode h3 {color:var(--ink)}
.story-mode p,.story-mode small {color:var(--ink-soft)}
.story-mode>.material-symbols-rounded {color:var(--blue-dark);background:var(--blue-soft)}
.bedtime-routine-section .quiet-button {color:var(--gold-dark)}
.parent-copy>p:not(.eyebrow) {color:var(--ink-soft)}
.parent-panel .eyebrow {color:var(--gold-dark)}
.story-placeholder {color:var(--up-brand-night);background:var(--up-clay-sky)}
.testimonial-grid footer>span,.testimonial-grid footer em {background:var(--up-surface);color:var(--muted)}
.footer-brand>span,.site-footer .copyright {color:var(--ink-soft)}
.footer-column a {min-height:44px;display:flex;align-items:center}
.steps-grid .step-number {color:var(--gold-dark)}
.testimonial-grid footer span,.testimonial-grid footer em {color:var(--muted)}
.footer-column strong,.footer-contact strong {color:var(--ink)}
.brand-origin {color:var(--muted)}
.feature-card .feature-icon {box-shadow:none}
.header-cta,.store-button-web,.story-play-cta,.parent-cta,.price-cta-primary,.closing-cta-button { color:var(--up-brand-night); background:var(--gold); border:1px solid #BD962F; box-shadow:var(--up-shadow-clay-rest); border-radius:var(--up-radius-md); }
.quiet-button,.price-cta-secondary { color:var(--blue-dark); background:var(--surface); border:1px solid var(--line-strong); box-shadow:var(--up-shadow-soft-xs); }
.app-preview { border-color:var(--line); box-shadow:var(--up-shadow-floating); transform:none; }
.feature-card,.story-card,.story-featured { color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:var(--up-radius-card); box-shadow:var(--up-shadow-clay-rest); }
.feature-card-featured { background:var(--up-clay-sky); }
.feature-card h3,.feature-card-featured h3,.story-copy h3,.story-featured-copy h3 { color:var(--ink); }
.feature-card p,.story-copy p,.story-featured-summary { color:var(--ink-soft); font-size:14px; }
.feature-kicker,.feature-mini-flow { color:var(--blue-dark); }
.feature-icon { background:var(--up-clay-yellow); color:var(--gold-dark); box-shadow:none; }
.steps-section { background:var(--up-clay-yellow); border-color:var(--line); border-radius:var(--up-radius-xxl); box-shadow:none; }
.steps-grid li { background:var(--surface); border-color:var(--line); box-shadow:var(--up-shadow-soft-xs); }
.steps-section .section-heading h2,.steps-grid h3 { color:var(--ink); }
.steps-section .section-intro,.steps-grid p { color:var(--ink-soft); }
.step-icon { box-shadow:var(--up-shadow-clay-rest); }
.story-featured-copy .eyebrow { color:var(--gold-dark); }
.story-featured-meta span { color:var(--ink-soft); background:var(--surface); border-color:var(--line); }
.story-play-mark { opacity:1; transform:none; box-shadow:var(--up-shadow-soft-sm); }
.character-world { background:var(--up-clay-mint); border-color:var(--line); box-shadow:var(--up-shadow-clay-rest); border-radius:var(--up-radius-xxl); }
.character-world::before,.character-world::after { background:var(--surface); border-color:var(--line); }
.character-world-label,.character-values li,.character-world .character figcaption { color:var(--ink); }
.character-values span { color:var(--success); }
.character-world .character img { filter:drop-shadow(0 8px 10px #20253D1A); }
.character-orbit-card,.character-world .character-note { color:var(--ink); background:var(--surface); border-color:var(--line); box-shadow:var(--up-shadow-soft-sm); }
.character-orbit-card small,.character-world .character-note small { color:var(--muted); }
.character-world .character-note strong { color:var(--ink); }
.parent-panel { background:var(--surface); border-color:var(--line); border-radius:var(--up-radius-xxl); box-shadow:var(--up-shadow-soft-sm); }
.parent-dashboard { background:var(--up-surface); border-color:var(--line); box-shadow:none; }
.parent-dashboard-head,.parent-dashboard-head small,.parent-benefits li { color:var(--ink-soft); }
.parent-summary span,.parent-dashboard .parent-settings>div { background:var(--surface); border-color:var(--line); box-shadow:none; }
.parent-summary b,.parent-dashboard .parent-settings strong { color:var(--ink); }
.parent-summary small,.parent-dashboard .parent-settings small { color:var(--muted); }
.price-card,.price-card-featured,.testimonial-grid blockquote,.faq-help,.faq-list details { background:var(--surface); border-color:var(--line); box-shadow:var(--up-shadow-soft-xs); border-radius:var(--up-radius-card); }
.price-card-featured { border:2px solid var(--gold-dark); }
.price-card h3,.price-amount,.testimonial-grid blockquote>p,.testimonial-grid footer strong,.faq-help strong,.faq-list summary { color:var(--ink); }
.price-description,.price-card li,.price-amount span,.price-kicker,.price-microcopy,.faq-help p,.faq-list details p { color:var(--ink-soft); }
.price-card li .material-symbols-rounded,.faq-help a { color:var(--blue-dark); }
.trust-strip { background:var(--up-surface); border-color:var(--line); box-shadow:none; }
.trust-strip span { color:var(--ink-soft); }
.closing-cta { background:var(--up-clay-yellow); border-color:var(--line); box-shadow:var(--up-shadow-soft-sm); }
.closing-cta p,.closing-cta .eyebrow { color:var(--ink-soft); }
.site-footer { background:var(--up-surface); border-color:var(--line); }
.site-footer h3,.footer-brand strong { color:var(--ink); }
.site-footer p,.site-footer a,.footer-bottom,.site-footer small { color:var(--ink-soft); }

/* Administration: stable boundaries and useful density, without decorative clay. */
body.admin-ui { background:var(--up-background-secondary); font-size:14px; }
.admin-ui .btn {background:var(--primary);color:#fff;border-color:var(--primary)}
.admin-ui .btn.sec,.admin-ui .btn.secondary {background:var(--surface);color:var(--ink-soft);border-color:var(--line-strong)}
.admin-ui .btn.ghost {background:var(--up-surface);color:var(--ink-soft);border-color:var(--line)}
.admin-ui .btn.warn,.admin-ui .btn.danger {background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}
.admin-ui .btn.accent {background:var(--gold);color:var(--up-brand-night);border-color:var(--gold-dark)}
.admin-ui .item.on {background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:none}
.admin-ui .item.on .ic {color:#fff;background:#FFFFFF1A;box-shadow:none}
.admin-ui .side-create a {background:var(--primary);box-shadow:none}
.admin-ui .story-editor-workspace .story-editor-tabs button[aria-selected=true],.admin-ui .workflow-tabs button[aria-selected=true] {background:var(--primary);color:#fff;box-shadow:none;border-color:var(--primary)}
.admin-ui .story-editor-workspace .story-editor-tabs button[aria-selected=true] small,.admin-ui .story-editor-workspace .story-editor-tabs button[aria-selected=true]>.material-symbols-rounded {color:#fff}
.admin-ui .story-editor-workspace .story-editor-tabs button>.material-symbols-rounded,.admin-ui .icon-btn {color:var(--blue-dark);background:var(--blue-soft)}
.admin-ui :is(.side-caption,.group,.topbar-eyebrow,.page-kicker,.section-kicker,.reader-section-title>div>span,.media-card-body>small,.admin-footer,.side-footer .out,th) {color:var(--muted)}
.admin-ui .topbar-search kbd {font-size:12px;color:var(--ink-soft);background:var(--up-surface)}
.admin-ui .badge.b-off {color:var(--muted);background:var(--up-surface)}
.admin-ui .chapter-label {color:var(--blue-dark)}
.admin-ui .preview-device-switch button {min-height:44px}
.admin-ui h1,.admin-ui h2,.admin-ui h3 { font-family:var(--font-ui); }
.admin-ui :is(.side,.workspace,.panel,.card,.rail-card,.dashboard-module,.stat,.metric-card,.operations-stats>a,.pipeline-card) { background:var(--surface); border-color:var(--line); box-shadow:none; }
.admin-ui .topbar { background:var(--surface); border-color:var(--line); backdrop-filter:none; box-shadow:var(--up-shadow-soft-xs); }
.admin-ui :is(.page-head,.page-header) { background:transparent; box-shadow:none; }
.admin-ui :is(.btn,.icon-btn,.topbar-icon,.table-actions button,.table-actions a) { min-height:44px; border-radius:var(--up-radius-sm); box-shadow:none; }
.admin-ui :is(.icon-btn,.topbar-icon,.table-actions button,.table-actions a) { min-width:44px; }
.admin-ui .btn.primary,.admin-ui .btn-primary { background:var(--primary); color:#fff; border-color:var(--primary); }
.admin-ui :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) { min-height:44px; color:var(--ink); background:var(--surface); border-color:var(--line-strong); border-radius:var(--up-radius-sm); box-shadow:none; }
.admin-ui :is(th,td) { line-height:1.5; }
.admin-ui :is(.story-data-table,.table-wrap,.table-container) { scrollbar-width:thin; scrollbar-color:var(--line-strong) var(--surface); }
.admin-ui :is(.tabs,.editor-tabs,.toolbar,.page-actions,.filters,.form-actions) { max-width:100%; }
.admin-ui :is(.status-pill,.badge,.access-pill) { box-shadow:none; }
.admin-ui :is(.quick-edit-dialog,.search-modal,.modal-dialog,dialog) { background:var(--surface); color:var(--ink); border-color:var(--line); border-radius:var(--up-radius-lg); box-shadow:var(--up-shadow-modal); }
.admin-ui :is(.side-link,.nav-link)[aria-current=page] { border-color:var(--primary); }
.admin-ui :is(.empty-state,.empty) { background:var(--up-surface); color:var(--muted); }
/* Authentication stays calm and legible, while the illustration retains its night atmosphere. */
body.login-page { background:var(--bg); color:var(--ink); }
.login-shell { border-color:var(--line); box-shadow:var(--up-shadow-floating); }
.login-panel,.login { background:var(--surface); color:var(--ink); border-color:var(--line); backdrop-filter:none; box-shadow:none; }
.login-panel::after,.login-stars { display:none; }
.login h1,.login-field label { color:var(--ink); }
.login-intro,.login-security { color:var(--muted); }
.login-eyebrow,.login-lock,.login-password-toggle { color:var(--blue-dark); }
.login-lock { background:var(--blue-soft); border-color:var(--line); box-shadow:none; }
.login-input input:not([type=checkbox]):not([type=radio]),.login-input input:focus { background:var(--up-background-primary); color:var(--ink); border-color:var(--line-strong); box-shadow:none; }
.login-input input::placeholder { color:var(--muted); }
.login-submit { background:var(--primary); border-color:var(--primary); color:#fff; box-shadow:var(--up-shadow-soft-sm); }
.login-error { color:var(--danger); background:var(--danger-soft); border-color:var(--danger); }
.login-field-error { color:var(--danger); font-size:12px; }
.login-caps-lock { color:var(--warning); font-size:12px; }

/* Long documents use opaque paper and readable lines. */
.legal-topbar,.legal-aside,.legal-article,.deletion-card { background:var(--surface); border-color:var(--line); box-shadow:var(--up-shadow-soft-xs); backdrop-filter:none; }
.legal-article { line-height:1.75; }
.legal-topbar nav a:focus-visible { outline:3px solid var(--up-focus); }
.legal-aside h1,.legal-article h2,.legal-article h3,.deletion-card h1 { color:var(--ink); }
.version,.company-card,.deletion-form input[type=email],.deletion-form input[type=text] { background:var(--surface); color:var(--ink); border-color:var(--line-strong); }
.version b,.company-card b,.deletion-form label,.deletion-facts h2 { color:var(--ink); }
@media (hover:hover) {
  .story-card:hover,.story-featured:hover { box-shadow:var(--up-shadow-clay-hover); border-color:var(--line-strong); }
  .admin-ui tbody tr:hover { background:var(--up-surface-hover); }
}
@media (max-width:767px) {
  .site-nav { background:var(--surface); border-color:var(--line); }
  .admin-ui :is(.grid2,.grid-2,.form-grid) { grid-template-columns:minmax(0,1fr); }
  .admin-ui :is(.page-head,.page-header,.form-actions) { flex-wrap:wrap; }
  .admin-ui :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { font-size:16px; }
}
@media (max-width:1100px) { .site-nav {background:var(--surface)} .site-nav a.is-active {background:var(--blue-soft);color:var(--blue-dark)} }
@media (prefers-reduced-transparency:reduce) { .site-header { backdrop-filter:none; background:var(--surface); } }
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .has-js .content-section.reveal-ready { opacity:1; transform:none; }
}
@media (forced-colors:active) {
  :where(button,input,select,textarea,.btn,.card,.story-card) { border:1px solid ButtonText; box-shadow:none; }
  :focus-visible { outline-color:Highlight!important; }
}
