/* Stellaria Field v2 / work45
   DSH-inspired continuous field + Harmony-style immersive liquid light.
   Effects are transform/opacity based; blur is limited to bounded surfaces. */
:root{--f2-bg:#f5f7fa;--f2-bg2:#edf2f7;--f2-ink:#0d1420;--f2-soft:rgba(13,20,32,.66);--f2-muted:rgba(13,20,32,.46);--f2-line:rgba(33,54,88,.10);--f2-line2:rgba(83,116,177,.22);--f2-glass:rgba(249,251,254,.58);--f2-glass2:rgba(250,252,255,.80);--f2-solid:#f7f9fc;--f2-accent:#5879d9;--f2-accent2:#786be0;--f2-glow:rgba(84,121,224,.18);--f2-shadow:0 24px 82px rgba(37,54,83,.11);--f2-ease:cubic-bezier(.16,1,.3,1)}
html[data-theme="dark"]{--f2-bg:#05080d;--f2-bg2:#08111b;--f2-ink:#f4f7fc;--f2-soft:rgba(232,239,249,.68);--f2-muted:rgba(220,229,243,.45);--f2-line:rgba(217,229,255,.085);--f2-line2:rgba(139,170,255,.22);--f2-glass:rgba(10,16,25,.48);--f2-glass2:rgba(10,17,27,.76);--f2-solid:#0d151f;--f2-accent:#91adff;--f2-accent2:#b1a2ff;--f2-glow:rgba(91,133,255,.23);--f2-shadow:0 28px 92px rgba(0,0,0,.34)}
html[data-theme="light"]{color-scheme:light}html[data-theme="dark"]{color-scheme:dark}
body.home-public-v3,body.compute-page,body.worlds-page-v3,body.compute-license-page,body.worlds-license-page,body.devlog-page-v3,body.video-page,body.stellaria-article-page{background:radial-gradient(960px 560px at 84% -10%,color-mix(in srgb,var(--f2-accent) 8%,transparent),transparent 70%),linear-gradient(180deg,var(--f2-bg),var(--f2-bg2))!important;color:var(--f2-ink)!important}
body.home-public-v3 main,body.compute-page main,body.worlds-page-v3 main,body.compute-license-page main,body.devlog-page-v3 main,body.video-page main{background:transparent!important}
body.stellaria-embedded-body{background:transparent!important}
/* immersive liquid surface */
.nf-glass,.f2-glass,.studio-direction,.studio-principle,.bilibili-feature,.home-video-feature{position:relative;overflow:hidden;border:1px solid var(--f2-line)!important;background:var(--f2-glass)!important;box-shadow:var(--f2-shadow),inset 0 1px rgba(255,255,255,.10)!important;backdrop-filter:blur(22px) saturate(155%)!important;-webkit-backdrop-filter:blur(22px) saturate(155%)!important;color:var(--f2-ink)!important}
.nf-glass:after,.f2-glass:after,.studio-direction:after,.studio-principle:after,.bilibili-feature:after{content:"";position:absolute;inset:-1px;pointer-events:none;border-radius:inherit;background:radial-gradient(240px circle at var(--glass-x,50%) var(--glass-y,0%),rgba(255,255,255,.18),transparent 68%);opacity:.66;mix-blend-mode:screen;transition:opacity .2s ease}
/* Homepage intro / principle: remove the old pale hero block. */
.home-public-v3 .home-studio-section{width:min(1260px,calc(100% - 48px))!important;margin:0 auto!important;padding:clamp(80px,9vw,132px) 0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.home-public-v3 .home-studio-section>.section-kicker{color:var(--f2-accent)!important;margin-bottom:20px}.home-public-v3 .studio-overview{display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr)!important;gap:clamp(42px,7vw,96px)!important;align-items:start!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.home-public-v3 .studio-overview__lead,.home-public-v3 .studio-overview__body{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.home-public-v3 .studio-overview__eyebrow{color:var(--f2-accent)!important}.home-public-v3 .strategy-title{color:var(--f2-ink)!important;max-width:7.8em!important;font-size:clamp(48px,6.4vw,88px)!important;line-height:.94!important;letter-spacing:-.07em!important}.home-public-v3 [data-studio-status]{color:var(--f2-soft)!important;max-width:42em!important;font-size:16px!important;line-height:1.85!important}.home-public-v3 .studio-directions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important}.home-public-v3 .studio-direction{min-height:340px!important;padding:28px!important;border-radius:30px!important;display:flex!important;flex-direction:column!important;transition:transform .42s var(--f2-ease),border-color .25s ease,background .25s ease!important}.home-public-v3 .studio-direction:hover{transform:translateY(-4px) scale(1.006);border-color:var(--f2-line2)!important}.home-public-v3 .studio-direction span,.home-public-v3 .studio-principle>span{color:var(--f2-accent)!important;font-size:11px!important;font-weight:850!important;letter-spacing:.12em!important;text-transform:uppercase!important}.home-public-v3 .studio-direction h3{color:var(--f2-ink)!important;font-size:clamp(27px,3vw,40px)!important;line-height:1!important;letter-spacing:-.055em!important}.home-public-v3 .studio-direction p,.home-public-v3 .studio-principle p{color:var(--f2-soft)!important}.home-public-v3 .studio-direction b{margin-top:auto;color:var(--f2-ink)!important}.home-public-v3 .studio-principle{margin-top:14px!important;padding:30px 32px!important;border-radius:30px!important;min-height:210px!important;display:grid!important;align-content:center!important;gap:18px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--f2-glass2) 84%,transparent),color-mix(in srgb,var(--f2-accent) 6%,var(--f2-glass)))!important}.home-public-v3 .studio-principle p{font-size:16px!important;line-height:1.85!important;margin:0!important}
/* Hero constellation v2: a large interaction field, not a card. */
.nf-hero{--hero-x:74%;--hero-y:39%;min-height:100svh!important;position:relative!important;isolation:isolate!important;overflow:hidden!important;background:radial-gradient(760px 560px at 76% 42%,color-mix(in srgb,var(--f2-accent) 13%,transparent),transparent 68%),radial-gradient(640px 480px at 92% 14%,color-mix(in srgb,var(--f2-accent2) 8%,transparent),transparent 70%),linear-gradient(180deg,var(--f2-bg),var(--f2-bg2))!important}
.nf-hero:after{content:"";position:absolute;inset:-20%;z-index:0;pointer-events:none;background:radial-gradient(380px circle at var(--hero-x) var(--hero-y),color-mix(in srgb,var(--f2-accent) 18%,transparent),transparent 72%);opacity:.78}.nf-hero-copy,.nf-constellation{z-index:2}.nf-constellation{--field-x:50%;--field-y:50%;border:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.nf-constellation:after{content:"";position:absolute;width:360px;height:360px;left:var(--field-x);top:var(--field-y);transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--f2-accent) 14%,transparent),color-mix(in srgb,var(--f2-accent2) 5%,transparent) 38%,transparent 70%);filter:blur(2px);opacity:var(--field-opacity,.66);transition:opacity .28s ease}.nf-constellation-lines path{stroke:color-mix(in srgb,var(--f2-accent) 28%,var(--f2-line))!important;opacity:.42!important;transition:opacity .28s ease,stroke .28s ease!important}.nf-constellation.is-snapped .nf-constellation-lines path{opacity:.72!important;stroke:color-mix(in srgb,var(--f2-accent) 52%,var(--f2-line))!important}.nf-star-node{transform:translate(calc(-50% + var(--magnet-x,0px)),calc(-50% + var(--magnet-y,0px))) scale(var(--magnet-scale,1))!important;transition:transform .34s var(--f2-ease),background .2s ease,border-color .2s ease,box-shadow .2s ease!important}.nf-star-node.is-nearest{--magnet-scale:1.07;z-index:8!important;background:var(--f2-glass2)!important;border-color:var(--f2-line2)!important;box-shadow:0 16px 54px var(--f2-glow),inset 0 1px rgba(255,255,255,.14)!important;backdrop-filter:blur(17px) saturate(150%)!important;-webkit-backdrop-filter:blur(17px) saturate(150%)!important}.nf-star-note{color:var(--f2-muted)!important}
/* Home Compute becomes a pinned, DSH-like narrative on desktop/tablet. */
.nf-production{position:relative!important;height:430svh!important;width:100%!important;padding:0!important;margin:0!important;background:transparent!important}.nf-production-stage{position:sticky!important;top:0!important;height:100svh!important;overflow:hidden!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;padding:clamp(92px,10vh,128px) max(4vw,28px) 42px!important}.nf-production .nf-section-head{width:min(1260px,100%)!important;margin:0 auto 20px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,470px)!important;gap:40px!important;align-items:end!important}.nf-production .nf-section-head h2{margin:0!important;color:var(--f2-ink)!important;font-size:clamp(38px,5vw,70px)!important;line-height:.96!important;letter-spacing:-.065em!important}.nf-production .nf-section-head>p{color:var(--f2-soft)!important;line-height:1.7!important;margin:0!important}.nf-production-progress{grid-column:1/-1;height:1px;background:var(--f2-line);overflow:hidden;margin-top:4px}.nf-production-progress i{display:block;width:var(--progress,0%);height:100%;background:var(--f2-accent);box-shadow:0 0 16px var(--f2-glow);transition:width .12s linear}.nf-story-stack{position:relative!important;width:min(1260px,100%)!important;height:100%!important;margin:0 auto!important;display:block!important}.nf-story{position:absolute!important;inset:0!important;display:grid!important;grid-template-columns:minmax(330px,.82fr) minmax(520px,1.18fr)!important;align-items:center!important;gap:clamp(46px,7vw,100px)!important;opacity:0!important;pointer-events:none!important;transform:translateY(28px) scale(.985)!important;transition:opacity .46s ease,transform .72s var(--f2-ease)!important;border:0!important;background:transparent!important}.nf-story.is-active{opacity:1!important;pointer-events:auto!important;transform:none!important}.nf-story-copy h3{font-size:clamp(52px,6.4vw,90px)!important;line-height:.91!important;letter-spacing:-.075em!important;color:var(--f2-ink)!important;margin:18px 0 22px!important}.nf-story-copy p{max-width:35em!important;color:var(--f2-soft)!important;font-size:17px!important;line-height:1.8!important}.nf-story-index{color:var(--f2-muted)!important}.nf-story-link{color:var(--f2-accent)!important}.nf-story-visual{height:min(58vh,560px)!important;border-radius:36px!important;display:grid!important;place-items:center!important;background:radial-gradient(460px 320px at 50% 48%,color-mix(in srgb,var(--f2-accent) 8%,transparent),transparent 70%),var(--f2-glass)!important}.f2-mono{width:min(76%,560px);height:auto;overflow:visible}.f2-mono *{vector-effect:non-scaling-stroke}.f2-mono .line{fill:none;stroke:color-mix(in srgb,var(--f2-accent) 48%,var(--f2-line));stroke-width:1.2}.f2-mono .soft{fill:none;stroke:var(--f2-line2);stroke-width:1}.f2-mono .node{fill:var(--f2-bg);stroke:var(--f2-accent);stroke-width:1.2}.f2-mono .fill{fill:color-mix(in srgb,var(--f2-accent) 12%,transparent);stroke:var(--f2-line2);stroke-width:1}.f2-mono text{fill:var(--f2-soft);font:600 10px Inter,system-ui;letter-spacing:.04em}.nf-production-step{position:absolute;right:0;bottom:2px;color:var(--f2-muted);font:700 11px Inter,system-ui;letter-spacing:.12em}.nf-production-step strong{color:var(--f2-ink);font-size:18px;margin-right:5px}
/* Video stage */
.home-public-v3 .home-section--video{width:min(1260px,calc(100% - 48px))!important;padding:clamp(88px,10vw,140px) 0!important;background:transparent!important;border:0!important;border-radius:0!important}.home-public-v3 .home-section--video .section-heading h2{color:var(--f2-ink)!important}.home-public-v3 .home-section-intro{color:var(--f2-soft)!important}.nf-video-stage{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr)!important;gap:0!important;border-radius:36px!important;overflow:hidden!important;min-height:560px!important;border:1px solid var(--f2-line)!important;background:var(--f2-glass)!important;box-shadow:var(--f2-shadow)!important;backdrop-filter:blur(18px) saturate(145%)!important;-webkit-backdrop-filter:blur(18px) saturate(145%)!important}.nf-video-screen{position:relative;min-height:560px;background:#03060a;display:grid;place-items:center}.nf-video-screen:before{content:"";position:absolute;inset:0;background:radial-gradient(460px 300px at 70% 25%,rgba(91,129,255,.12),transparent 72%);pointer-events:none}.nf-video-screen iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.nf-video-info{padding:36px;display:flex;flex-direction:column;justify-content:flex-end;border-left:1px solid var(--f2-line);background:linear-gradient(180deg,color-mix(in srgb,var(--f2-glass2) 84%,transparent),var(--f2-glass))}.nf-video-mark{width:54px;height:54px;border:1px solid var(--f2-line2);border-radius:50%;display:grid;place-items:center;margin-bottom:auto;color:var(--f2-accent)}.nf-video-mark svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.nf-video-info small{color:var(--f2-accent);font-weight:850;letter-spacing:.1em;text-transform:uppercase}.nf-video-info h3{font-size:clamp(34px,4vw,52px);line-height:.98;letter-spacing:-.06em;margin:15px 0;color:var(--f2-ink)}.nf-video-info p{color:var(--f2-soft);line-height:1.75}.nf-video-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.nf-video-links a{padding:10px 14px;border:1px solid var(--f2-line);border-radius:999px;background:color-mix(in srgb,var(--f2-glass2) 82%,transparent);color:var(--f2-ink);font-weight:800;font-size:12px}
/* Generic deep/light page compatibility. */
html[data-theme="dark"] body.compute-page{--compute-ink:#f4f7fc!important;--compute-muted:rgba(230,238,249,.63)!important;--compute-line:rgba(218,229,255,.085)!important;--compute-surface:rgba(10,16,25,.50)!important;--compute-surface-strong:rgba(11,18,28,.78)!important;--compute-violet:#9dafef!important;--compute-blue:#9bb5ed!important;--compute-rose:#b8a8da!important;background:transparent!important}
html[data-theme="dark"] .compute-hero p,html[data-theme="dark"] .compute-section__head p,html[data-theme="dark"] .compute-story p,html[data-theme="dark"] .compute-season p,html[data-theme="dark"] .compute-library-cta p{color:var(--f2-soft)!important}.compute-subnav{border-color:var(--f2-line)!important;background:var(--f2-glass)!important;color:var(--f2-ink)!important;box-shadow:var(--f2-shadow)!important}.compute-subnav a{color:var(--f2-soft)!important}.compute-button{background:var(--f2-glass2)!important;border-color:var(--f2-line)!important;color:var(--f2-ink)!important}.compute-button.primary{background:var(--f2-ink)!important;color:var(--f2-bg)!important;border-color:transparent!important}.compute-feature,.compute-story,.compute-story--blue,.compute-story--rose,.compute-season,.compute-library-cta,.library-card,.scvg-pillars article,.comparison-wrap{background:var(--f2-glass)!important;border-color:var(--f2-line)!important;color:var(--f2-ink)!important;box-shadow:var(--f2-shadow)!important}.compute-story--dark{background:color-mix(in srgb,var(--f2-ink) 92%,#111)!important;color:var(--f2-bg)!important}.compute-season__grid{background:var(--f2-line)!important;border-color:var(--f2-line)!important}.compute-season article{background:var(--f2-glass2)!important;color:var(--f2-ink)!important}.compute-proof span,.scvg-metrics div{background:color-mix(in srgb,var(--f2-glass2) 88%,transparent)!important;border-color:var(--f2-line)!important;color:var(--f2-ink)!important}.scvg-lede{color:var(--f2-ink)!important}
/* Worlds / secondary pages */
.worlds-experience-page{--wx-ink:var(--f2-ink)!important;--wx-muted:var(--f2-soft)!important;--wx-line:var(--f2-line)!important;--wx-paper:var(--f2-bg)!important;--wx-violet:var(--f2-accent)!important;background:transparent!important;color:var(--f2-ink)!important}.worlds-cinematic-hero,.worlds-secondary-hero,.worlds-project-stage,.world-project-panel,.worlds-project-index-card,.playground-feature,.playground-tile,.partnership-card,.partnership-cta,.license-rights-manifest,.license-boundary,.license-preview-note{border-color:var(--f2-line)!important;box-shadow:var(--f2-shadow)!important}.worlds-cinematic-hero{background:linear-gradient(110deg,color-mix(in srgb,var(--f2-bg) 86%,transparent),color-mix(in srgb,var(--f2-bg) 35%,transparent))!important}.worlds-cinematic-hero .worlds-hero-copy,.worlds-cinematic-hero .worlds-hero-copy h1,.worlds-cinematic-hero .worlds-hero-copy p{color:var(--f2-ink)!important;text-shadow:none!important}.worlds-hero-links a,.worlds-pill-link{background:var(--f2-glass2)!important;border-color:var(--f2-line)!important;color:var(--f2-ink)!important;backdrop-filter:blur(16px)!important}.world-project-panel,.worlds-project-index-card,.playground-feature,.partnership-card,.license-boundary,.license-preview-note{background:var(--f2-glass)!important;color:var(--f2-ink)!important}.world-project-search input,.worlds-search input{background:var(--f2-glass2)!important;color:var(--f2-ink)!important;border-color:var(--f2-line)!important}.world-project-item,.project-mini-card{background:color-mix(in srgb,var(--f2-glass2) 84%,transparent)!important;border-color:var(--f2-line)!important;color:var(--f2-ink)!important}.worlds-lane-card--play,.worlds-secondary-hero--play,.worlds-secondary-hero--project,.playground-tile{background:linear-gradient(145deg,color-mix(in srgb,var(--f2-accent2) 7%,var(--f2-glass2)),color-mix(in srgb,var(--f2-accent) 5%,var(--f2-glass)))!important;color:var(--f2-ink)!important}.worlds-lane-card--partner,.worlds-secondary-hero--partner,.worlds-field-manifesto,.worlds-principle-band{background:linear-gradient(145deg,#101722,#070c13)!important;color:#f4f7fc!important}.worlds-lane-card--play p,.playground-tile p,.worlds-secondary-hero p:not(.eyebrow),.partnership-card p,.license-boundary p{color:var(--f2-soft)!important}.worlds-lane-card--partner p,.worlds-field-manifesto>p:last-child,.worlds-principle-band>p:last-of-type{color:rgba(232,239,249,.62)!important}.playground-symbol span{background:var(--f2-glass2)!important;color:var(--f2-ink)!important;box-shadow:var(--f2-shadow)!important}
/* license, devlog, article, generic old cards */
.license-product-hero,.license-hero,.devlog-hero,.article-hero,.page-hero{background:transparent!important;color:var(--f2-ink)!important}.license-product-hero p,.license-hero p,.devlog-hero p,.article-hero p,.page-hero p{color:var(--f2-soft)!important}.license-principles article,.license-card,.devlog-item,.article-body,.detail-panels article,.product-card,.tech-grid article,.status-ribbon{background:var(--f2-glass)!important;color:var(--f2-ink)!important;border-color:var(--f2-line)!important;box-shadow:var(--f2-shadow)!important}.license-principles article p,.license-card p,.devlog-item p,.article-body p,.detail-panels p,.product-card p,.tech-grid p{color:var(--f2-soft)!important}
/* Footer */
.footer,.compact-footer{background:transparent!important;color:var(--f2-ink)!important;border-color:var(--f2-line)!important}.footer a,.footer p{color:var(--f2-soft)!important}
/* single-colour control icons */
.sf-theme-toggle svg,.header-notify-button svg,.floating-cart-button svg{fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
@media(max-width:980px){.home-public-v3 .studio-overview{grid-template-columns:1fr!important}.home-public-v3 .studio-overview__lead{max-width:760px}.nf-production{height:auto!important}.nf-production-stage{position:relative!important;top:auto!important;height:auto!important;overflow:visible!important;padding:84px 24px!important}.nf-production .nf-section-head{grid-template-columns:1fr!important}.nf-production-progress{display:none}.nf-story-stack{height:auto!important;display:grid!important;gap:78px!important}.nf-story{position:relative!important;inset:auto!important;opacity:1!important;pointer-events:auto!important;transform:none!important;grid-template-columns:1fr!important;gap:26px!important}.nf-story-visual{height:min(62vw,480px)!important}.nf-production-step{position:static;margin-top:20px}.nf-video-stage{grid-template-columns:1fr!important}.nf-video-info{border-left:0;border-top:1px solid var(--f2-line);min-height:320px}.nf-video-screen{min-height:min(56vw,520px)}}
@media(max-width:640px){.home-public-v3 .home-studio-section,.home-public-v3 .home-section--video{width:calc(100% - 28px)!important}.home-public-v3 .studio-directions{grid-template-columns:1fr!important}.home-public-v3 .studio-direction{min-height:260px!important}.home-public-v3 .studio-principle{padding:24px!important}.nf-story-copy h3{font-size:clamp(44px,14vw,66px)!important}.nf-video-stage{border-radius:28px!important}.nf-video-screen{min-height:58vw!important}.nf-video-info{padding:26px!important}}
@media(prefers-reduced-motion:reduce){.nf-star-node,.nf-story,.studio-direction,.nf-glass,.f2-glass{transition:none!important}.nf-production{height:auto!important}.nf-production-stage{position:relative!important;height:auto!important}.nf-story-stack{height:auto!important;display:grid!important;gap:60px!important}.nf-story{position:relative!important;opacity:1!important;transform:none!important;pointer-events:auto!important}.nf-constellation:after{display:none}}
