/* made-by: Codex (DM1). One palette for the Kids story world.
   Light styling keeps its original literal fallbacks. The site preference is
   html[data-theme="dark"], saved by SVFF.theme as localStorage['svff-theme']. */
[data-theme="dark"] {
    --kids-canvas: #191b2c;
    --kids-surface: #292638;
    --kids-warm-surface: #382c3c;
    --kids-green-surface: #233c40;
    --kids-text: #fff3dc;
    --kids-muted: #d2c2cd;
    --kids-border: #ab8fa8;
    --kids-shadow: #100f20;
    --kids-accent-teal: #8dded5;
    --kids-accent-orange: #ffb779;
    --kids-accent-gold: #f9d278;
    --kids-on-accent: #191b2c;
    --kids-focus: #efb8e0;
}

/* Existing template styles and inline colors need explicit scoped ownership. */
[data-theme="dark"] body:has(.kl-page),
[data-theme="dark"] body.lov-kids,
[data-theme="dark"] body:has(.trial-kids-hero),
[data-theme="dark"] body:has(.kids-index),
[data-theme="dark"] body:has(.voice-review) {
    background: var(--kids-canvas);
    color: var(--kids-text);
    color-scheme: dark;
}
[data-theme="dark"] :is(.kland,.kl-page,.lov-kids,.kids-index,.voice-review,.kids-catalog-group) {
    color: var(--kids-text);
    color-scheme: dark;
}
[data-theme="dark"] .kland {
    background: radial-gradient(circle at 16% 3%,var(--kids-warm-surface),transparent 33%),
                radial-gradient(circle,var(--kids-border) .7px,transparent 1px) 0 0/24px 24px,var(--kids-canvas);
}
[data-theme="dark"] :is(.kland,.kl-page,.lov-kids,.kids-index,.voice-review,.kids-catalog-group) :is(a,button,summary,textarea):focus-visible {
    outline-color: var(--kids-focus);
}
[data-theme="dark"] :is(.kl-stop-soon,.kl-activity-locked,.lov-kids-unit-card.is-coming) { opacity: 1; }
[data-theme="dark"] .kl-world-hero::after {
    background: linear-gradient(90deg,#191b2cd9,#191b2c2e 55%,#191b2c10);
}
[data-theme="dark"] .kl-world-sign h1 { text-shadow: 2px 3px 0 var(--kids-shadow); }
[data-theme="dark"] :is(.kl-candy,.kl-action,.kl-stop-number,.lov-kids-unit-badge,.lov-kids-all-lessons,.lov-teacher-print,.co-kids .co-main-action,.kland-button-primary,.kland-map-step,.kland-lesson-card span,.trial-kids-button) {
    background: var(--kids-accent-orange);
    color: var(--kids-on-accent) !important;
    border-color: var(--kids-accent-orange);
}
[data-theme="dark"] :is(.kl-activity-icon,.kl-sun,.kids-index-number) {
    background: var(--kids-accent-gold);
    color: var(--kids-on-accent);
    border-color: var(--kids-accent-gold);
}
[data-theme="dark"] .kl-activity-icon svg { color: var(--kids-on-accent); }
[data-theme="dark"] .kland-lang a[aria-current],
[data-theme="dark"] .voice-options button[aria-pressed="true"] {
    background: var(--kids-accent-teal);
    color: var(--kids-on-accent);
    border-color: var(--kids-accent-teal);
}
[data-theme="dark"] .kland-button-secondary { background:var(--kids-surface);color:var(--kids-text)!important; }
[data-theme="dark"] .lov-kids .lov-topbar {
    background:radial-gradient(circle at 20px 16px,var(--kids-border) 0 3px,transparent 4px),var(--kids-warm-surface);
    background-size:72px 44px;
}
[data-theme="dark"] .lov-kids :is(.lov-more-dropdown,.lov-teacher-notes-panel,.lov-panel-title,.lov-teacher-guide-summary p) {
    background: var(--kids-surface) !important;
    border-color: var(--kids-border) !important;
    color: var(--kids-text) !important;
    box-shadow: 0 5px 0 var(--kids-shadow),0 12px 28px #100f2080;
}
[data-theme="dark"] .lov-kids .lov-more-dropdown :is(a,button,svg) { color:var(--kids-text); }
[data-theme="dark"] .lov-kids .lov-more-dropdown :is(a,button):hover { background:var(--kids-warm-surface); }
[data-theme="dark"] .lov-kids :is(.lov-panel-title svg,.lov-teacher-guide-summary,.lov-teacher-notes-panel>p) { color:var(--kids-accent-orange)!important; }
[data-theme="dark"] .lov-kids :is(.lov-textbook-frame,.lov-teacher-guide-frame) {
    background:var(--kids-shadow);
    border:3px solid var(--kids-border)!important;
    border-radius:15px;
    box-shadow:0 3px 0 var(--kids-shadow);
    overflow:hidden;
    padding:5px;
}
[data-theme="dark"] .lov-kids :is(.lov-textbook-frame,.lov-teacher-guide-frame) iframe { border-radius:9px; }
[data-theme="dark"] .lov-kids .lov-textbook-frame.fullscreen { padding:0;border:0!important;border-radius:0; }
[data-theme="dark"] :is(.kl-world-poster,.kl-module-scene,.kland-hero-art,.kland-download-preview,.trial-kids-art) {
    background:var(--kids-shadow);
    border-color:var(--kids-border);
    box-shadow:5px 6px 0 var(--kids-shadow);
}
[data-theme="dark"] .kland :is(.kland-featured-card img,.kland-unit-image,.kland-lesson-image,.kland-detail-card>img,.kland-sample-grid img),
[data-theme="dark"] .trial-kids-sample-grid img,
[data-theme="dark"] .kids-catalog-card .courses-card-thumb {
    border-bottom:2px solid var(--kids-border);
}
[data-theme="dark"] .kids-catalog-group { border-color:var(--kids-border); }
[data-theme="dark"] .kids-catalog-group :is(h2,h3,.courses-card-title a) { color:var(--kids-text); }
[data-theme="dark"] .kids-catalog-group .courses-card {
    background:var(--kids-surface);border:2px solid var(--kids-border);box-shadow:3px 4px 0 var(--kids-shadow);
}
[data-theme="dark"] .kids-catalog-group :is(.kids-catalog-status,.kids-catalog-subhead) { color:var(--kids-muted); }
[data-theme="dark"] .kids-catalog-group :is(.kids-catalog-price,.kids-catalog-preview,.courses-card-btn) { color:var(--kids-accent-orange); }
[data-theme="dark"] .kids-catalog-group .courses-card-btn { background:var(--kids-surface);border-color:var(--kids-border); }
[data-theme="dark"] .trial-kids-faq { background:var(--kids-canvas)!important; }
[data-theme="dark"] body:has(.trial-kids-hero) :is(.trial-kids-samples,.trial-kids-faq) { color:var(--kids-text); }
[data-theme="dark"] .voice-note { color:var(--kids-text);background:var(--kids-canvas);border-color:var(--kids-border); }
[data-theme="dark"] .voice-status[data-state="error"] { color:var(--kids-accent-orange); }
@media print {
    /* Paper guides always print with dark ink, irrespective of the screen theme. */
    [data-theme="dark"] .lov-kids #teacher-notes { --kids-surface:#fff;--kids-warm-surface:#fff;--kids-green-surface:#fff;--kids-text:#173b44;--kids-border:#173b44;--kids-accent-orange:#92400e;--kids-accent-teal:#086c72;--kids-shadow:transparent; }
}
[data-theme="dark"] .trial-kids-faq details p { color:var(--kids-muted); }
[data-theme="dark"] .kids-catalog-group>p { color:var(--kids-muted); }
[data-theme="dark"] .lov-kids .lov-kids-nav-arrow.is-disabled { opacity:.65; }
/* The child entry uses the shared booking form; scope its palette to this page. */
[data-theme="dark"] body:has(.trial-kids-hero) :is(.trial-gate,.trial-card,.tform-section,.tpick-card,.tform-progress) {
    background:var(--kids-surface);border-color:var(--kids-border);box-shadow:0 4px 0 var(--kids-shadow);
}
[data-theme="dark"] body:has(.trial-kids-hero) :is(.tform-section__head,.tform-section__icon,.tform-chip,.tform-chip__icon) {
    background:var(--kids-warm-surface);border-color:var(--kids-border);color:var(--kids-text);
}
[data-theme="dark"] body:has(.trial-kids-hero) :is(.tform-section__title,.tform-group label,.trial-gate h2,.trial-card h2,.trial-card h3,.tpick-name) { color:var(--kids-text); }
[data-theme="dark"] body:has(.trial-kids-hero) :is(.tform-vi,.tform-hint,.tform-progress__step,.tform-section__sub,.tform-chip__featsub,.trial-gate>p,.trial-gate__note,.trial-card p,.tpick-bio) { color:var(--kids-muted); }
[data-theme="dark"] body:has(.trial-kids-hero) :is(.tform-group input,.tform-group select,.tform-group textarea) {
    background:var(--kids-canvas);border-color:var(--kids-border);color:var(--kids-text);
}
[data-theme="dark"] body:has(.trial-kids-hero) :is(.tform-group input,.tform-group textarea)::placeholder { color:var(--kids-muted); }
[data-theme="dark"] body:has(.trial-kids-hero) :is(.tform-chip--selected,.tpick-card--selected) {
    background:var(--kids-green-surface);border-color:var(--kids-accent-teal);color:var(--kids-accent-teal);
}
[data-theme="dark"] body:has(.trial-kids-hero) :is(.tform-group,.tform-section)>[style*="background:#e6f4fb"],
[data-theme="dark"] body:has(.trial-kids-hero) [style*="background:#f0fdf4"] {
    background:var(--kids-green-surface)!important;border-color:var(--kids-border)!important;color:var(--kids-text)!important;
}
[data-theme="dark"] body:has(.trial-kids-hero) #tz-hint { color:var(--kids-muted)!important; }
[data-theme="dark"] .trial-kids-faq details p { color:var(--kids-muted)!important; }
[data-theme="dark"] body:has(.trial-kids-hero) :is(.trial-gate__step-num,.trial-gate .pub-btn-primary,.tform-submit__btn,.tform-chip__badge) {
    background:var(--kids-accent-orange);color:var(--kids-on-accent);border-color:var(--kids-accent-orange);
}
[data-theme="dark"] body:has(.trial-kids-hero) :is(.trial-gate__arrow,.tform-chip small) { color:var(--kids-muted); }
[data-theme="dark"] body:has(.trial-kids-hero) #trial-child-form small { color:var(--kids-muted); }
/* made-by: Codex (DM1): visible boundaries on the shared child account/form controls. */
[data-theme="dark"] body:has(.trial-kids-hero) .trial-gate .pub-btn-outline {
    background:var(--kids-surface);color:var(--kids-text);border-color:var(--kids-border);
}
[data-theme="dark"] body:has(.trial-kids-hero) #trial-child-form :is(input,select,textarea) {
    border-color:var(--kids-border)!important;
}
