/* VF-HOME-01: approved Creator palette extended to the two companion homes.
   Existing image assets, data rendering and action handlers remain authoritative. */
body:is([data-veilfall-page="shell"],[data-veilfall-page="connected-player"]){
  --bg:#080e17;--rail:#0e1724;--panel:#122237;--surface:#122237;--line:#344b60;--border:#344b60;
  --text:#ecf3f4;--muted:#a9bfce;--accent:#7fe7ed;--orange:#7fe7ed;--cyan:#7fe7ed;--mint:#b2eff3;
  background:radial-gradient(ellipse at 85% 0,#18364a66,transparent 50%),#080e17;
  color:var(--text);font-family:var(--vf-body-font,system-ui,sans-serif)
}
body[data-veilfall-page="shell"] .desktop-shell>main{background:transparent}
body[data-veilfall-page="connected-player"]>header{background:#0e1724;border-color:#344b60}
body[data-veilfall-page="connected-player"]>header .mark{border-color:#7fe7ed;color:#7fe7ed}
body[data-veilfall-page="shell"] #home{max-width:1500px;padding:28px 34px 48px}
body[data-veilfall-page="shell"] #home :is(h2,h3),body[data-veilfall-page="connected-player"] .companion-home :is(h1,h2,h3){font-family:var(--vf-body-font,system-ui,sans-serif)!important;letter-spacing:-.035em;text-transform:none;font-weight:600}
body[data-veilfall-page="shell"] #home .campaign-banner h2{font-size:clamp(28px,3.4vw,46px);line-height:1.15}
body[data-veilfall-page="shell"] #home :is(.campaign-banner,.home-empty),body[data-veilfall-page="connected-player"] .home-cinematic{border:1px solid #3b5b74;border-radius:18px;box-shadow:0 18px 60px #0005;min-height:330px}
body[data-veilfall-page="shell"] #home .campaign-banner:before{background:linear-gradient(90deg,#081322f5,#081322be 45%,#08132210 85%)}
body[data-veilfall-page="shell"] #home .banner-copy{padding:36px;max-width:670px}
body[data-veilfall-page="shell"] #home :is(.eyebrow,.launch-link,.home-save,.home-intro .eyebrow),body[data-veilfall-page="connected-player"] .companion-home :is(small,.home-feature>span){color:#a1e5ef}
body[data-veilfall-page="shell"] #home :is(p,.home-section-title>span),body[data-veilfall-page="connected-player"] .companion-home p{color:#bfd0df}
body[data-veilfall-page="shell"] #home .primary,body[data-veilfall-page="connected-player"] .companion-home :is(.primary,[data-create-character]){display:inline-flex;align-items:center;justify-content:center;gap:12px;background:#7fe7ed;color:#09232c;border:1px solid #7fe7ed;border-radius:9px;padding:12px 18px;min-height:44px;font-weight:650;text-decoration:none;box-shadow:0 4px 24px #7fe7ed16}
body[data-veilfall-page="shell"] #home .primary *,body[data-veilfall-page="connected-player"] .companion-home .primary *{color:inherit}
body[data-veilfall-page="shell"] #home .primary:hover,body[data-veilfall-page="connected-player"] .companion-home :is(.primary,[data-create-character]):not(:disabled):hover{background:#b1f0eb;box-shadow:0 6px 28px #7fe7ed30}
body[data-veilfall-page="shell"] #home .home-launch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body[data-veilfall-page="shell"] #home .home-launch{min-height:280px;padding:24px;border:1px solid #344f69;border-radius:14px;background-color:#122237;box-shadow:0 12px 35px #0003}
body[data-veilfall-page="shell"] #home .home-launch h3{font-size:23px;line-height:1.18}
body[data-veilfall-page="shell"] #home .home-launch .launch-symbol{background:#143149dd;color:#9aebf3;border:1px solid #3a647e}
body[data-veilfall-page="shell"] #home .home-launch:before{background:linear-gradient(0deg,#081422f5 8%,#081422b8 60%,#08142220)}
body[data-veilfall-page="shell"] #home .home-launch:hover,body[data-veilfall-page="connected-player"] .companion-home :is(.home-feature,.portrait-link):hover{border-color:#7fe7ed;box-shadow:0 14px 40px #0005,0 0 20px #7fe7ed10;transform:translateY(-3px)}
body[data-veilfall-page="shell"] #home .vm-reference{border:1px solid #344f69;border-radius:14px}
body[data-veilfall-page="shell"] #home .reference-tools :is(a,button){background:#112439e8;color:#dcebf6;border:1px solid #416079;border-radius:8px;min-height:40px}
body[data-veilfall-page="connected-player"] #app:has(.companion-home){max-width:1500px;padding:28px 34px 48px}
body[data-veilfall-page="connected-player"] .companion-home{grid-template-columns:minmax(0,1fr) 280px;gap:24px}
body[data-veilfall-page="connected-player"] .companion-home .home-cinematic{padding:26px 30px 38px}
body[data-veilfall-page="connected-player"] .companion-home h1{font-size:clamp(32px,4vw,52px);line-height:1.06;max-width:13ch}
body[data-veilfall-page="connected-player"] .companion-home .home-character-section{background:linear-gradient(145deg,#152333,#0c1725);border:1px solid #344f69;border-radius:14px;padding:18px}
body[data-veilfall-page="connected-player"] .companion-home .home-character-section h2{font-size:25px}
body[data-veilfall-page="connected-player"] .character-home-actions :is(button,a){width:100%}
body[data-veilfall-page="connected-player"] .character-home-actions a{background:#112439;color:#cbe8f3;border-color:#416079}
body[data-veilfall-page="connected-player"] .companion-home .home-destinations{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body[data-veilfall-page="connected-player"] .companion-home .home-feature{min-height:255px;border-radius:14px;border-color:#344f69;padding:24px;transition:transform .18s,border-color .18s,box-shadow .18s}
body[data-veilfall-page="connected-player"] .companion-home .home-feature h2{font-size:26px!important}
body[data-veilfall-page="connected-player"] .companion-home button.portrait-link{height:280px;border-color:#416079;background:#112439}
body[data-veilfall-page="connected-player"] .companion-home .portrait-caption strong{font:600 22px/1.2 var(--vf-body-font,system-ui,sans-serif);overflow-wrap:anywhere}
body[data-veilfall-page="connected-player"] .companion-home .portrait-fallback{background:radial-gradient(ellipse at top,#294c67,#0c1b2c);color:#a0dbe7;font-family:var(--vf-body-font,system-ui,sans-serif)}
body[data-veilfall-page="connected-player"] .companion-home .home-shortcuts{display:flex;gap:8px;flex-wrap:wrap}
body[data-veilfall-page="connected-player"] .companion-home .home-shortcuts a{background:#0e2037db;border-color:#45627b;color:#def4fa;border-radius:8px;min-height:40px;align-content:center}
body[data-veilfall-page="connected-player"] .companion-home .home-status{background:#0e2037df;color:#bfe9ee;border:1px solid #416079}
body[data-veilfall-page="connected-player"] .home-management{border-color:#344b60}
body[data-veilfall-page="connected-player"] .companion-home :is([data-campaign],[data-password-settings]){background:#142a40;color:#dcebf6;border-color:#416079;border-radius:8px}
body[data-veilfall-page="shell"] #home :is(a,button,summary):focus-visible,body[data-veilfall-page="connected-player"] .companion-home :is(a,button,summary):focus-visible{outline:2px solid #7fe7ed;outline-offset:4px}
@keyframes companion-arrive{from{opacity:.35;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){body[data-veilfall-page="shell"] #home :is(.campaign-banner,.home-launch-section),body[data-veilfall-page="connected-player"] .companion-home{animation:companion-arrive .4s ease-out both}}
@media(max-width:1150px){body[data-veilfall-page="shell"] #home .home-launch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-veilfall-page="shell"] #home .home-launch:last-child{grid-column:1/-1;min-height:200px}body[data-veilfall-page="connected-player"] .companion-home{grid-template-columns:minmax(0,1fr) 240px}body[data-veilfall-page="connected-player"] .companion-home .home-destinations{grid-template-columns:1fr}}
@media(max-width:950px){body[data-veilfall-page="connected-player"] .companion-home{grid-template-columns:minmax(0,1fr)}body[data-veilfall-page="connected-player"] .companion-home .home-character-section{grid-column:1;grid-row:2}body[data-veilfall-page="connected-player"] .companion-home .home-destinations{grid-column:1;grid-row:3}body[data-veilfall-page="connected-player"] .companion-home .home-management{grid-row:4}body[data-veilfall-page="connected-player"] .companion-home .companion-footer-actions{grid-row:5}}
@media(max-width:760px){body[data-veilfall-page="shell"] #home,body[data-veilfall-page="connected-player"] #app:has(.companion-home){padding:18px 16px 36px}body[data-veilfall-page="shell"] #home .home-launch-grid{grid-template-columns:minmax(0,1fr)}body[data-veilfall-page="shell"] #home .banner-copy{width:100%;padding:26px}body[data-veilfall-page="shell"] #home .home-launch{min-height:240px}body[data-veilfall-page="connected-player"] .companion-home .home-cinematic{padding:22px 22px 40px}body[data-veilfall-page="connected-player"] .companion-home .portrait-collection{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))}}
@media(prefers-reduced-motion:reduce){body[data-veilfall-page="shell"] #home *,body[data-veilfall-page="connected-player"] .companion-home *{animation:none!important;transition:none!important;transform:none!important}}
