/* Shared visual language. Scoped to existing shells; no gameplay geometry overrides. */
:root{--so-ink:#172b4d;--so-muted:#61748e;--so-line:#e2e9f3;--so-blue:#2463eb;--so-paper:#f7f9fd;--so-shadow:0 8px 30px #294d8010}
body.home-modern,body.portal-surface,body.ra-parent,body.ds-parent-shell,body.admin-body{color:var(--so-ink);background:#f7f9fd}
body :where(.button,.ds-btn,.dsl-btn){border-radius:12px;font-weight:650;letter-spacing:-.015em}
body :where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #91b5ff;outline-offset:3px}
/* Public storefront */
body.home-modern .hm-header{background:#ffffffed;border-bottom:1px solid var(--so-line);box-shadow:0 3px 20px #284d8006}
body.home-modern .hf-hero{background:radial-gradient(ellipse at 85% 20%,#e5eaff 0,transparent 50%),linear-gradient(135deg,#f8fbff,#fff 65%);padding-block:55px 45px}
body.home-modern .hf-hero .hero-grid{align-items:center;gap:44px}
body.home-modern .hf-hero h1{color:#172b4d;letter-spacing:-.045em;line-height:1.12;font-size:clamp(2rem,3.7vw,3.4rem)}
body.home-modern .hf-hero .actions .button:first-child,body.home-modern .hf-mobile-cta .button{background:var(--accent,var(--so-blue));color:#fff;box-shadow:0 7px 16px #2463eb22}
body.home-modern .hf-hero-note{font-size:.75rem;color:#50647c}
body.home-modern .hf-visual{position:relative;min-width:0}
body.home-modern .hf-ecosystem-art{display:block;width:100%;height:auto;max-height:340px;object-fit:contain;margin:0 auto 10px}
body.home-modern .hf-discovery{padding:20px;border-radius:22px;background:#ffffffc9;border:1px solid #dce7f6;transform:none;box-shadow:var(--so-shadow)}
body.home-modern .hf-discovery-top h2{font-size:1.4rem;margin:0;letter-spacing:-.035em}
body.home-modern .hf-discovery-top{gap:12px;margin-bottom:12px}
body.home-modern .hf-discovery>p{display:none}
body.home-modern .hf-app-preview{border-radius:13px;padding:11px 13px;background:#f7faff;box-shadow:none;margin-top:8px}
body.home-modern .hf-app-preview strong{font-size:.86rem}
body.home-modern .hf-app-symbol{background:#e9efff;color:#2463eb;width:38px;height:38px;border-radius:11px}
body.home-modern .hf-app-symbol img{width:25px;height:25px;object-fit:contain}
body.home-modern .hf-benefit{box-shadow:0 4px 20px #294d8005;border-color:var(--so-line);border-radius:18px}
body.home-modern .hf-benefit h3{color:var(--so-ink)}
body.home-modern .hf-heading h2,body.home-modern .section-heading h2{letter-spacing:-.035em;color:var(--so-ink)}
body.home-modern .hf-comparison,body.home-modern .hf-faq{background:#eff4fb}
body.home-modern .hf-closing-card{background:radial-gradient(ellipse at right top,#395dc1,transparent 70%),#172b4d}
body.home-modern .product-card,body .catalog-page .product-card{border-color:var(--so-line);border-radius:19px;box-shadow:var(--so-shadow)}
body.home-modern .hm-card-cta{color:var(--accent,var(--so-blue))}
body.home-modern .product-body h3,body .catalog-page .product-body h3{letter-spacing:-.025em}
body .catalog-page .catalog-hero{background:radial-gradient(ellipse at right top,#dce8ff,transparent 65%),#f3f7ff;border-radius:23px}
/* Landing modules retain dynamic prices, existing demo and all calls to action. */
body.dsl .dsl-header,body .rl-header{background:#ffffffed;border-bottom:1px solid var(--so-line);box-shadow:0 3px 20px #294d8007}
body.dsl .dsl-hero{background:radial-gradient(ellipse at 85% 15%,#e9e1ff,transparent 55%),#fafbff}
body.dsl .dsl-card,body.dsl .dsl-demo-card,body.dsl .dsl-parent-preview{border:1px solid var(--so-line);box-shadow:var(--so-shadow);border-radius:20px}
body.dsl .dsl-section h2{letter-spacing:-.035em}
body.dsl .dsl-sticky{box-shadow:0 -6px 30px #294d8012}
/* Adult portals: calm surfaces, aligned hierarchy and compact controls. */
body.portal-shell-active .portal-topbar{background:#ffffffed;border-color:var(--so-line);box-shadow:0 4px 18px #294d8008}
body.portal-shell-active .portal-sidebar{background:#fbfcff;border-right:1px solid var(--so-line)}
body.portal-shell-active .portal-sidebar nav a{border-radius:11px}
body.portal-shell-active .portal-menu-toggle{background:#edf3ff;border-color:#dce6f8;color:var(--accent,var(--so-blue))}
body.portal-shell-active .portal-brand strong{letter-spacing:-.025em;color:var(--so-ink)}
body.account-page .account-welcome,body.ra-parent .ra-portal-hero,body.ds-parent-shell .ds-parent-hero{padding:26px 28px;border:1px solid #dce7f6;border-radius:22px;background:radial-gradient(ellipse at right top,#e6edff,transparent 70%),#fff;box-shadow:0 5px 25px #294d8005}
body.account-page .account-welcome h1,body.ra-parent .ra-portal-hero h1,body.ds-parent-shell .ds-parent-hero h1{color:var(--so-ink);letter-spacing:-.04em;font-size:clamp(1.4rem,2.7vw,2rem)}
body.account-page .account-app,body.ra-parent .rp-item,body.ra-parent .rp-link-card,body.ds-parent-shell .ds-family-card{border:1px solid var(--so-line);border-radius:18px;background:#fff;box-shadow:0 4px 22px #294d8007}
body.ra-parent .rp-item-art{border-radius:12px;background:#edf3ff;color:var(--accent,var(--so-blue))}
body.ra-parent .rp-list-heading h3,body.ds-parent-shell .ds-family-toolbar h2{letter-spacing:-.025em}
body.ds-parent-shell .ds-family-summary article{background:#fff;border:1px solid var(--so-line);border-radius:18px;box-shadow:0 4px 22px #294d8007}
body.ds-parent-shell .ds-parent-settings{border-radius:13px;background:#f8faff}
body.ds-parent-shell .ds-header{background:#ffffffee;border-bottom:1px solid var(--so-line);box-shadow:0 3px 18px #294d8008}
/* Admin: same light workspace, grouped navigation and restrained density. */
body.admin-body .sidebar{background:#fff;color:var(--so-ink);border-right:1px solid var(--so-line)}
body.admin-body .sidebar .brand{color:var(--so-ink)}
body.admin-body .sidebar-label{color:#74869f}
body.admin-body .admin-nav-trigger{color:#526983;border-radius:11px}
body.admin-body .admin-nav-trigger:hover,body.admin-body .admin-nav-trigger[aria-expanded=true]{background:#eef4ff;color:#2459bb}
body.admin-body .admin-nav-icon{color:#6582ad}
body.admin-body .admin-nav-items{border-color:#dde7f6}
body.admin-body .admin-nav-items a{color:#647a95}
body.admin-body .admin-nav-items a.active{color:#2058be;background:#e9f0ff}
body.admin-body .admin-nav-items a:hover{color:#2058be;background:#f1f5fc}
body.admin-body .sidebar-footer{border-color:var(--so-line);color:#71839a}
body.admin-body .sidebar-footer a,body.admin-body .sidebar-footer p{color:#4f6683}
body.admin-body .sidebar-footer .button.secondary{background:#f1f5ff;color:#315da7;border-color:#dce5f5}
body.admin-body .workspace-header{background:#ffffffed;border-bottom-color:var(--so-line);box-shadow:0 3px 18px #294d8005}
body.admin-body .panel,body.admin-body .stat-card{border-color:var(--so-line);border-radius:17px;box-shadow:0 4px 22px #294d8007}
body.admin-body input:not([type=checkbox]):not([type=radio]):not([type=file]),body.admin-body select,body.admin-body textarea{border-radius:10px;background:#fbfcff}
/* Child portals: expressive worlds, simple actions, no changes to player or soroban. */
body.ds-child-shell{background:radial-gradient(ellipse at 95% 5%,#ede6ff,transparent 45%),#f4f8ff;color:var(--so-ink)}
body.ds-child-shell .ds-header{background:#ffffffed;border-bottom:1px solid #dfe8f8;box-shadow:0 4px 18px #294d8008}
body.ds-child-shell .ds-welcome{padding:24px;border:1px solid #dce7ff;border-radius:22px;background:radial-gradient(circle at right top,#d4e4ff,transparent 60%),#eaf2ff}
body.ds-child-shell .ds-welcome h1{color:#213e77;font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:-.04em}
body.ds-child-shell .ds-home-worlds .ds-world{position:relative;isolation:isolate;overflow:hidden;border-radius:20px;box-shadow:0 5px 20px #294d8008;border:1px solid #dce6f7;border-top:4px solid var(--world-color,#829ae8);background:linear-gradient(150deg,var(--world-soft,#eef3ff),#fff 70%)}
body.ds-child-shell .ds-world-bus{--world-color:#f3b64d;--world-soft:#fff4d4}
body.ds-child-shell .ds-world-kereta{--world-color:#58bc9d;--world-soft:#dcf6ec}
body.ds-child-shell .ds-world-kapal{--world-color:#4cb9df;--world-soft:#ddf5ff}
body.ds-child-shell .ds-world-pesawat{--world-color:#8298f0;--world-soft:#e8eeff}
body.ds-child-shell .ds-world-roket{--world-color:#cc87cf;--world-soft:#f9e9fa}
body.ds-child-shell .ds-world-multiverse{--world-color:#a98ae8;--world-soft:#eee5ff}
body.ds-child-shell .ds-world-cross{--world-color:#ec9b87;--world-soft:#ffebe4}
body.ds-child-shell .ds-home-worlds .ds-world-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:#ffffffb8;font-size:2.3rem;line-height:1;box-shadow:0 3px 10px #294d8007}
body.ds-child-shell .ds-home-worlds .ds-world h2{letter-spacing:-.025em;color:#243c62}
body.ds-child-shell .ds-home-worlds .ds-world progress{accent-color:var(--world-color)}
body.ds-child-shell .ds-home-shortcuts .ds-card,body.ds-child-shell .ds-home-ranking{border:1px solid #dce6f7;background:#fff;border-radius:18px;box-shadow:0 4px 18px #294d8007}
body.ra-child{background:radial-gradient(ellipse at 10% 5%,#f0eaff,transparent 45%),#fafbff}
body.ra-child .kid-topbar{background:#ffffffed;border-color:#e5e3f5;box-shadow:0 3px 18px #50308008}
body.ra-child .kid-discover{border-radius:22px;border:1px solid #e3e6f5;background:#fff;box-shadow:0 5px 24px #45308008}
body.ra-child .kid-greeting{color:#303e6b;letter-spacing:-.025em}
body.ra-child .kid-random{background:linear-gradient(110deg,var(--accent,#7654dc),#435ee7);border-radius:14px;box-shadow:0 5px 14px #5545c925}
body.ra-child .kid-card{border-radius:20px;border-color:#e1e6f4;box-shadow:0 5px 20px #45308008}
@media(max-width:600px){body.home-modern .hf-hero{padding-block:30px}body.home-modern .hf-hero .hero-grid{gap:24px}body.home-modern .hf-ecosystem-art{max-height:230px}body.home-modern .hf-discovery{padding:16px}body.account-page .account-welcome,body.ra-parent .ra-portal-hero,body.ds-parent-shell .ds-parent-hero{padding:20px 17px;border-radius:18px}body.ds-child-shell .ds-welcome{padding:19px 16px;border-radius:18px}body.ds-child-shell .ds-home-worlds .ds-world{padding:15px 13px;border-radius:17px}body.ds-child-shell .ds-home-worlds .ds-world-icon{width:48px;height:48px;font-size:1.9rem;border-radius:14px}body.ra-child .kid-discover{border-radius:18px}}
@media(prefers-reduced-motion:reduce){body .hf-app-preview,body .product-card,body .ds-card,body .kid-card{transition:none;animation:none}}

body .ra-landing .rl-hero{background:radial-gradient(ellipse at right top,#eee7ff,transparent 65%);border-radius:24px}body .ra-landing .rl-hero h1{letter-spacing:-.045em;color:#24355d}body .ra-landing .rl-hero h1 em{color:var(--accent,#7954d7)}body .ra-landing .rl-features article,body .ra-landing .rl-pricing article,body .ra-landing .rl-steps article{border:1px solid var(--so-line);border-radius:20px;box-shadow:var(--so-shadow)}
/* Small local vector worlds provide visual landmarks without remote fonts/assets. */
body.ds-child-shell .ds-home-worlds .ds-world .ds-world-icon{width:100%;height:96px;background-position:center;background-size:cover;border-radius:13px;font-size:0;box-shadow:none}
body.ds-child-shell .ds-home-worlds .ds-world-bus .ds-world-icon{background-image:url('../images/world-bus.svg')}
body.ds-child-shell .ds-home-worlds .ds-world-kereta .ds-world-icon{background-image:url('../images/world-kereta.svg')}
body.ds-child-shell .ds-home-worlds .ds-world-kapal .ds-world-icon{background-image:url('../images/world-kapal.svg')}
body.ds-child-shell .ds-home-worlds .ds-world-pesawat .ds-world-icon{background-image:url('../images/world-pesawat.svg')}
body.ds-child-shell .ds-home-worlds .ds-world-roket .ds-world-icon{background-image:url('../images/world-roket.svg')}
body.ds-child-shell .ds-home-worlds .ds-world-multiverse .ds-world-icon{background-image:url('../images/world-multiverse.svg')}
body.ds-child-shell .ds-home-worlds .ds-world-cross .ds-world-icon{background-image:url('../images/world-cross.svg')}
body .rl-public-header{background:#ffffffed;border-bottom:1px solid var(--so-line);box-shadow:0 3px 20px #294d8007}
@media(max-width:600px){body.ds-child-shell .ds-home-worlds .ds-world .ds-world-icon{height:77px}body.ds-child-shell .ds-home-worlds .ds-world-cross .ds-world-icon{width:80px;height:80px;background-size:auto 100%}body.ds-child-shell .ds-home-worlds .ds-world-progress{margin-top:8px}body.ds-child-shell .ds-home-worlds .ds-card-bottom{font-size:.75rem}}
/* Authentication, editorial pages and checkout follow the same family of surfaces. */
body.auth-body.portal-surface{background:radial-gradient(ellipse at 15% 0,#e8efff,transparent 55%),radial-gradient(ellipse at 100% 100%,#efe8ff,transparent 55%),#f8faff}
body.auth-body.portal-surface .auth-card{border:1px solid var(--so-line);border-radius:22px;box-shadow:0 14px 50px #294d8012;background:#fff}
body.auth-body.portal-surface .auth-card h1{letter-spacing:-.04em;color:var(--so-ink)}
body.site-surface .site-header{background:#ffffffed;border-bottom:1px solid var(--so-line);box-shadow:0 3px 20px #294d8006}
body.site-surface .article-card,body.site-surface .feature-card{border-color:var(--so-line);border-radius:19px;box-shadow:var(--so-shadow)}
body.portal-surface .ro-panel,body.portal-surface .ro-offer,body.ds-parent-shell .ds-panel{border-color:var(--so-line);border-radius:20px;box-shadow:0 5px 24px #294d8008}
/* Reference composition: illustration-led storefront and compact, expressive portals. */
body.home-modern .hf-hero{padding-block:38px 32px;background:linear-gradient(120deg,#f8fbff,#f0f5ff 60%,#f5f0ff)}
body.home-modern .hf-hero .hero-grid{grid-template-columns:1fr 1.12fr;gap:28px}
body.home-modern .hf-hero h1{font-size:clamp(2rem,3.6vw,3.4rem);max-width:16ch;color:#152951}
body.home-modern .hf-hero .hero-copy>p{font-size:.95rem;line-height:1.75;max-width:53ch}
body.home-modern .hf-visual{background:transparent;border:0;box-shadow:none}
body.home-modern .hf-ecosystem-art{width:100%;max-height:440px;border-radius:28px;object-fit:cover;aspect-ratio:3/2;margin:0}
.hf-hero-apps{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:12px}
.hf-hero-apps a{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border-radius:24px;background:#fff;border:1px solid #dfe7f7;color:#315cc0;font-size:.72rem;font-weight:700;text-decoration:none}
.hf-hero-apps a:nth-child(2){color:#7953cb;border-color:#e6def8}
body.home-modern .section:not(.hf-hero){padding-block:48px}
body.home-modern .hf-benefit-grid{gap:12px}
body.home-modern .hf-benefit{padding:18px}
body.home-modern .hf-benefit h3{margin-top:12px;font-size:.92rem}
body.home-modern .hf-benefit p{font-size:.8rem}
body.home-modern .hf-heading{margin-bottom:28px}
body.home-modern .hf-heading h2,body.home-modern .section-heading h2{font-size:clamp(1.35rem,2.4vw,2rem)}
body.home-modern .product-card .product-image,body .catalog-page .product-card .product-image{background:#edf0ff}
body.home-modern .product-card .product-body{padding:18px}
body.home-modern .product-card .product-body h3{font-size:1.08rem;margin-top:7px}
body.home-modern .hm-card-cta{background:var(--accent,#2463eb);color:#fff;border-radius:10px;padding:10px 12px;min-height:42px;margin-top:auto}
body.home-modern .hm-card-cta span{background:#ffffff24;color:#fff}
body.home-modern .product-body .clamp{font-size:.78rem;line-height:1.65}
/* A simple icon system and calmer, denser adult workspace. Drawers stay closed by default. */
body.portal-shell-active .portal-nav-icon{width:19px;height:19px;flex:none;color:#6f87ac}
body.portal-shell-active .portal-sidebar nav a[aria-current=page]{background:#eaf1ff;color:#245ac4;font-weight:700}
body.portal-shell-active .portal-sidebar nav a[aria-current=page] .portal-nav-icon{color:#2463eb}
body.portal-shell-active .portal-sidebar-heading{border-bottom:1px solid #e6edf7;margin-bottom:14px}
body.ds-parent-shell .ds-parent-hero,body.ra-parent .ra-portal-hero,body.account-page .account-welcome{background:#fff;border-color:#e4ebf5;box-shadow:none;padding:22px 24px}
body.ds-parent-shell .ds-parent-hero h1,body.ra-parent .ra-portal-hero h1,body.account-page .account-welcome h1{font-size:clamp(1.4rem,2.3vw,1.85rem)}
body.ds-parent-shell .ds-family-summary article{padding:19px 22px;background:linear-gradient(120deg,#f4f8ff,#fff)}
body.ds-parent-shell .ds-family-summary article:nth-child(2){background:linear-gradient(120deg,#effaf6,#fff)}
body.ds-parent-shell .ds-family-summary article:nth-child(3){background:linear-gradient(120deg,#f6f0ff,#fff)}
body.ds-parent-shell .ds-family-card{padding:22px}
body.ds-parent-shell .ds-family-card-heading h2{font-size:1.12rem}
body.ds-parent-shell .ds-family-worlds .ds-mini{padding:12px;border-radius:12px}
body.account-page .account-app{position:relative;padding:22px;background:linear-gradient(120deg,#f2f6ff,#fff 70%);box-shadow:0 4px 18px #294d8008}
body.account-page .account-app:nth-child(even){background:linear-gradient(120deg,#f5efff,#fff 70%)}
/* Child map cards use one cached 3D atlas, never remote assets. */
body.ds-child-shell .ds-main{max-width:1200px}
body.ds-child-shell .ds-welcome{background:radial-gradient(circle at 93% 20%,#a8d4ff77,transparent 40%),linear-gradient(120deg,#2464e8,#6255df);border:0;color:#fff;padding:23px 25px;position:relative;overflow:hidden}
body.ds-child-shell .ds-welcome h1{color:#fff;font-size:clamp(1.4rem,2.6vw,2rem);margin-block:6px}
body.ds-child-shell .ds-welcome p{color:#e5edff;font-size:.85rem;line-height:1.6;margin-block:5px}
body.ds-child-shell .ds-welcome .ds-eyebrow{color:#cbdfff;font-size:.61rem}
body.ds-child-shell .ds-home-worlds .ds-world{padding:10px;border:1px solid #dce5f5;border-top:3px solid var(--world-color);border-radius:18px;background:#fff;gap:0}
body.ds-child-shell .ds-home-worlds .ds-world .ds-world-icon{background-image:url('../images/worlds-3d.webp');background-size:400% 200%;height:auto;aspect-ratio:1.5;border-radius:12px;background-repeat:no-repeat;font-size:0}
body.ds-child-shell .ds-home-worlds .ds-world-bus .ds-world-icon{background-position:0 0}
body.ds-child-shell .ds-home-worlds .ds-world-kereta .ds-world-icon{background-position:33.333% 0}
body.ds-child-shell .ds-home-worlds .ds-world-kapal .ds-world-icon{background-position:66.667% 0}
body.ds-child-shell .ds-home-worlds .ds-world-pesawat .ds-world-icon{background-position:100% 0}
body.ds-child-shell .ds-home-worlds .ds-world-roket .ds-world-icon{background-position:0 100%}
body.ds-child-shell .ds-home-worlds .ds-world-multiverse .ds-world-icon{background-position:33.333% 100%}
body.ds-child-shell .ds-home-worlds .ds-world-cross .ds-world-icon{background-position:66.667% 100%}
body.ds-child-shell .ds-home-worlds .ds-world h2{font-size:1rem;margin:10px 3px 4px}
body.ds-child-shell .ds-home-worlds .ds-world>p{font-size:.75rem;line-height:1.45;margin:0 3px 8px;min-height:0}
body.ds-child-shell .ds-home-worlds .ds-world-progress{gap:5px;margin:5px 3px}
body.ds-child-shell .ds-home-worlds .ds-world-progress label,body.ds-child-shell .ds-home-worlds .ds-world-progress small{font-size:.66rem}
body.ds-child-shell .ds-home-worlds .ds-world-endless{font-size:.66rem}
body.ds-child-shell .ds-home-worlds .ds-card-bottom{margin:7px 3px 2px;flex-direction:row;justify-content:space-between;font-size:.73rem}
body.ds-child-shell .ds-home-worlds .ds-adventure{padding:20px;border:0;background:linear-gradient(130deg,#285fdf,#6656df);color:#fff}
body.ds-child-shell .ds-adventure .ds-adventure-label,body.ds-child-shell .ds-adventure .ds-adventure-action{color:#eef3ff}
body.ds-child-shell .ds-home-worlds .ds-adventure h2{color:#fff}
body.ds-child-shell .ds-home-worlds .ds-adventure p{color:#dce6ff}
body.ra-child .kid-logo,body.ra-child .kid-menu-button{background:#f1ebff;color:#6c45c4}
body.ra-child .kid-topbar-brand strong span{color:#7850ca}
body.ra-child .kid-card{border-radius:17px;box-shadow:0 4px 16px #45308007;border:1px solid #e2e7f3}
body.ra-child .kid-card strong{font-size:.94rem;line-height:1.45}
body.ra-child .kid-card .kid-play-icon{background:#2463eb}
@media(min-width:1001px){body.ds-child-shell .ds-home-worlds{grid-template-columns:repeat(4,minmax(0,1fr))}body.ds-parent-shell .ds-family-worlds{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){body.home-modern .hf-hero .hero-grid{grid-template-columns:1fr}body.home-modern .hf-hero h1{max-width:19ch}body.home-modern .hf-ecosystem-art{max-height:340px}body.home-modern .hf-visual{max-width:570px;width:100%;margin:auto}}
@media(max-width:600px){body.home-modern .hf-hero{padding-block:28px 24px}body.home-modern .hf-hero .hero-grid{gap:22px}body.home-modern .hf-ecosystem-art{max-height:250px;border-radius:20px}body.home-modern .hf-hero h1{font-size:2rem}body.home-modern .hf-hero .hero-copy>p{font-size:.86rem}body.home-modern .section:not(.hf-hero){padding-block:32px}body.home-modern .product-card .product-body{padding:12px}body.home-modern .product-card .product-body h3{font-size:.88rem}body.home-modern .hm-card-cta{font-size:.62rem;padding:9px 7px;gap:3px;min-height:40px}body.home-modern .product-body .clamp{font-size:.71rem}body.ds-child-shell .ds-welcome{padding:18px}body.ds-child-shell .ds-home-worlds .ds-world{padding:8px;border-radius:16px}body.ds-child-shell .ds-home-worlds .ds-world .ds-world-icon{height:auto;aspect-ratio:1.35}body.ds-child-shell .ds-home-worlds .ds-world h2{font-size:.94rem}body.ds-child-shell .ds-home-worlds .ds-world-cross .ds-world-icon{width:88px;aspect-ratio:1;height:88px}body.ds-child-shell .ds-home-worlds .ds-world-cross{column-gap:10px}body.ds-child-shell .ds-home-worlds .ds-world-cross h2{margin-top:2px}body.ds-child-shell .ds-home-worlds .ds-adventure{padding:16px}body.ds-parent-shell .ds-family-card{padding:17px}body.ra-child .kid-card strong{font-size:.83rem}}

body.home-modern .hf-hero h1{font-size:clamp(2rem,3vw,2.85rem);max-width:none;line-height:1.15}body.home-modern .hf-title-line{display:block}body.home-modern .hf-title-accent{color:var(--accent,#2463eb)}
@media(max-width:600px){body.ds-child-shell .ds-welcome{padding:15px 17px}body.ds-child-shell .ds-welcome h1{font-size:1.35rem}body.ds-child-shell .ds-welcome>p:last-child{font-size:.75rem}body.ds-child-shell .ds-home-worlds .ds-adventure{order:1}body.ds-child-shell .ds-home-worlds .ds-world .ds-world-icon{aspect-ratio:1.7}body.ds-child-shell .ds-home-worlds .ds-world>p{display:none}body.ds-child-shell .ds-home-worlds .ds-world h2{margin:7px 3px 3px}body.ds-child-shell .ds-home-worlds .ds-world-cross .ds-world-icon{height:78px;width:86px;aspect-ratio:1}body.ds-child-shell .ds-home-worlds .ds-world-cross{min-height:116px}body.ds-child-shell .ds-home-worlds .ds-world-cross .ds-world-progress{margin:3px}body.ds-child-shell .ds-home-worlds .ds-world-cross .ds-card-bottom{grid-column:2}}

/* Identity stays in document flow: never covers answers or video controls. */
.global-copyright{box-sizing:border-box;max-width:100%;padding:12px 16px;text-align:center;font:400 11px/1.5 system-ui,sans-serif;color:#50647c;overflow-wrap:anywhere;flex-shrink:0;clear:both}
body.admin-body>.global-copyright{padding-bottom:20px}
.ds-game-top>.global-copyright,.dl-game>.global-copyright,.da-arena>.global-copyright{padding:2px 10px;font-size:10px;line-height:1.2;background:#f8fafc;color:#475569}
.kid-player-controls>.global-copyright{color:inherit;padding:4px 10px}
.auth-body{flex-wrap:wrap}.auth-body>.global-copyright{flex-basis:100%}

.ds-game-top>.global-copyright{flex-basis:100%;padding:0;font-size:10px;line-height:1.2}.ds-game-top{row-gap:3px}


.dl-game-header>.global-copyright{position:absolute;right:8px;top:0;padding:0;font-size:8px;line-height:10px;max-width:60%}

/* Keep readable labels on the adventure action and pale menu surfaces. */
body.ds-child-shell .ds-home-worlds .ds-adventure :is(p,.ds-adventure-label,.ds-adventure-action){color:#fff}
body:is(.ds-parent-shell,.ds-login-shell) .ds-menu{color:var(--accent-dark,#3e329e)}
body.dl-body.ds-child-shell .ds-menu{background:#fff;color:#174f74;border-color:#dce5f0}
body.dl-body .dl-piece{color:#25695f}

/* Inactive form actions remain legible and do not look actionable on hover. */
body :is(button.button,button.ds-btn,button.dsl-btn,input[type=submit]):disabled{background:#e2e8f0!important;background-image:none!important;color:#475569!important;border-color:#cbd5e1!important;opacity:1!important;box-shadow:none!important;transform:none!important;cursor:not-allowed}

body.home-modern .hm-card-cta>span{background:var(--accent-dark,#2351b9);color:#fff}

/* Readable hints and placeholders on the light shared surfaces. */
input::placeholder,textarea::placeholder{color:#50647c;opacity:1}
