/* Allisto brand foundation — v1.0.0-prelaunch */
:root{
  --allisto-navy:#04142d;
  --allisto-navy-soft:#0b2348;
  --allisto-blue:#174cff;
  --allisto-purple:#7a28ef;
  --allisto-pink:#f52778;
  --allisto-orange:#ff9e0b;
  --allisto-slate:#748197;
  --allisto-paper:#f8faff;
  --allisto-gradient:linear-gradient(135deg,#174cff 0%,#7028f1 38%,#f52778 70%,#ff9e0b 100%);
  --yellow:#ffad0a;
  --yellow-deep:#ff7a00;
  --gold:#ffad0a;
}

/* Shared product branding */
.account-brand,.home-logo,.guide-header>a,.admin-brand{
  background:#fff;
  border:1px solid rgba(23,76,255,.14);
  box-shadow:0 12px 34px rgba(4,20,45,.16),0 0 0 4px rgba(122,40,239,.05);
}
.account-brand-logo,.home-logo img,.guide-header img{
  filter:none!important;
  object-fit:contain;
}
.account-brand-logo{width:238px!important;max-width:min(66vw,238px)!important}
.home-logo{display:inline-flex;align-items:center;padding:8px 11px;border-radius:18px;line-height:0}
.home-logo img{width:min(250px,46vw);height:auto}
.guide-header>a{display:inline-flex;align-items:center;padding:7px 10px;border-radius:18px;line-height:0}

/* Product surfaces */
.account-card,.guide-section,.player-home-section,.final-cta{
  border-color:rgba(23,76,255,.18)!important;
  box-shadow:0 24px 70px rgba(4,20,45,.20),0 0 0 5px rgba(245,39,120,.025)!important;
}
.account-card:not(.support-card):not(.signup-hero){
  background:linear-gradient(145deg,#fff,#f4f7ff 58%,#fff5ec)!important;
}
.account-shell,.guide-shell{position:relative}
.account-shell:before,.guide-shell:before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(circle at 12% 6%,rgba(23,76,255,.18),transparent 30%),radial-gradient(circle at 87% 12%,rgba(245,39,120,.16),transparent 28%),radial-gradient(circle at 50% 100%,rgba(255,158,11,.11),transparent 34%);
}
.account-card:not(.support-card):not(.signup-hero) .account-kicker,.guide-section .guide-kicker,.eyebrow{color:#314b83!important}

/* Buttons keep the existing easy-to-read dark label while using Allisto orange. */
.button,.primary,.home-button,.btn.primary,.btn.save,.plan-button:not(:disabled){
  background:linear-gradient(135deg,#ffb30d,#ff7a00)!important;
  color:#09152b!important;
  border-color:transparent!important;
  box-shadow:0 10px 28px rgba(255,126,0,.22)!important;
}
.button.secondary,.secondary,.btn.secondary{
  background:#07172f!important;color:#fff!important;border-color:rgba(255,255,255,.14)!important;
}
.button.ghost,.btn.ghost{background:transparent!important;box-shadow:none!important}

/* Studio/admin accent migration without altering customer-selected sign themes. */
.app-header,.studio-header,.admin-header{
  border-color:rgba(255,158,11,.42)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.03)!important;
}
.brand-title,.page-title-accent,.studio-title-accent{color:#ffad0a!important}
.bottom-nav .active,.bottom-nav button.active,.nav-tab.active{color:#ffad0a!important}

/* Allisto logo cards always remain clear on dark screens. */
.allisto-login-brand,.allisto-default-logo,.branding-logo-placeholder{
  background:linear-gradient(145deg,#fff,#f4f7ff)!important;
  color:var(--allisto-navy)!important;
}
.allisto-login-brand{border-color:rgba(23,76,255,.28)!important}
.allisto-adaptive-logo{display:block;max-width:100%;max-height:100%;object-fit:contain;object-position:center}

/* Small brand-gradient details. */
.account-card:after,.guide-section:after,.sign-group:before{
  background:var(--allisto-gradient)!important;
}
::selection{background:rgba(122,40,239,.24)}

@media(max-width:720px){
  .account-brand-logo{width:205px!important;max-width:62vw!important}
  .home-logo img{width:min(210px,54vw)}
}

/* Marketing identity */
.hero h1{
  background:var(--allisto-gradient);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 20px 60px rgba(23,76,255,.14);
}
.hero-preview{border-color:rgba(255,158,11,.86)!important;box-shadow:0 34px 80px rgba(0,0,0,.46),0 0 54px rgba(122,40,239,.16)!important}
.story{border-color:rgba(122,40,239,.30)!important;background:radial-gradient(circle at 100% 0,rgba(245,39,120,.15),transparent 36%),linear-gradient(145deg,#102549,#07172f)!important}
.story-mark{overflow:hidden;padding:22px;background:#fff!important;box-shadow:0 22px 52px rgba(4,20,45,.32),0 0 0 5px rgba(255,255,255,.06)!important}
.story-mark img{display:block;width:100%;height:100%;object-fit:contain}
.final-cta{background:linear-gradient(145deg,#f8faff,#fff1e5)!important;border:1px solid rgba(23,76,255,.18)!important}
.player-home-section{border-color:rgba(245,39,120,.28)!important;background:radial-gradient(circle at 90% 0,rgba(245,39,120,.17),transparent 34%),radial-gradient(circle at 6% 100%,rgba(23,76,255,.15),transparent 35%),linear-gradient(145deg,#0d2448,#07152e)!important}
.player-device-visual{box-shadow:inset 0 0 0 1px rgba(255,158,11,.22),0 24px 50px rgba(0,0,0,.25)!important}
.player-device-visual span{color:#ffad0a!important}

/* Correct image geometry after replacing the legacy traced lockup. */
.allisto-login-brand .allisto-adaptive-logo{
  width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
  aspect-ratio:auto!important;object-fit:contain!important;transform:none!important;
}
#brandingLogoPreviewBox>.branding-default-logo-image.allisto-adaptive-logo{
  width:88%!important;height:88%!important;max-width:88%!important;max-height:88%!important;
  aspect-ratio:auto!important;object-fit:contain!important;transform:none!important;
}


/* Allisto v1.0.2 — launch contrast and responsive brand corrections. */
.signup-hero.account-card{
  background:radial-gradient(circle at 88% 5%,rgba(245,39,120,.20),transparent 31%),
             radial-gradient(circle at 10% 0%,rgba(23,76,255,.22),transparent 30%),
             linear-gradient(145deg,#111a32,#0b1020 62%,#17111d)!important;
  color:#fff!important;
}
.signup-hero .account-kicker,.support-card .account-kicker,.dashboard-welcome-panel .account-kicker,.guide-hero .guide-kicker{
  color:#ffad0a!important;
}
.signup-hero h1,.signup-hero .account-intro,.support-card h2,.support-card .account-intro,.support-card .support-item,
.guide-hero h1,.guide-hero p:not(.guide-kicker){color:#fff!important}
.support-card{
  background:radial-gradient(circle at 18% 4%,rgba(122,40,239,.18),transparent 32%),
             linear-gradient(145deg,#101a31,#0a1020)!important;
}
.support-card .support-item{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.16)!important}
.support-card .support-item strong{color:#ffad0a!important}
.guide-hero .button.ghost{color:#fff!important;border-color:rgba(255,255,255,.32)!important;background:rgba(255,255,255,.04)!important}

.account-brand{max-width:min(100%,310px);min-width:0;overflow:hidden}
.account-brand-logo{width:clamp(168px,22vw,238px)!important;max-width:100%!important;height:auto!important}
.guide-header>a{max-width:min(100%,310px);min-width:0;overflow:hidden}
.guide-header img{width:clamp(170px,22vw,240px)!important;max-width:100%!important;height:auto!important}
.admin-brand-logo{
  width:clamp(184px,24vw,246px)!important;max-width:100%!important;height:auto!important;
  padding:8px 10px!important;border-radius:16px!important;background:#fff!important;
  border:1px solid rgba(23,76,255,.16)!important;box-shadow:0 12px 30px rgba(0,0,0,.28)!important;
  filter:none!important;box-sizing:border-box!important;
}
.admin-brand-header .admin-brand-logo{width:clamp(152px,18vw,210px)!important}

@media(max-width:700px){
  .account-header,.guide-header{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:start!important}
  .account-header-links,.guide-nav{justify-content:flex-start!important;max-width:none!important}
  .account-brand,.guide-header>a{max-width:min(82vw,270px)}
  .account-brand-logo,.guide-header img{width:min(100%,220px)!important;max-width:100%!important}
  .signup-hero{grid-template-columns:1fr!important}
  .signup-hero>.account-lexie{justify-self:center!important}
}
@media(max-width:430px){
  .account-shell,.guide-shell{width:min(100% - 14px,100%)!important}
  .account-brand,.guide-header>a{max-width:min(88vw,230px)}
  .account-brand-logo,.guide-header img{width:min(100%,205px)!important}
  .admin-brand-logo{width:min(76vw,220px)!important}
}
