/* Ally UI system — warm indigo palette, no changes to application behavior.
   Loaded last so prior experimental page styles can remain functional. */
:root{--ally-blue:#524FC3;--ally-blue-dark:#403DA5;--ally-ink:#292834;--ally-muted:#6C6B77;--ally-border:#E4E1E9;--ally-surface:#ffffff;--ally-bg:#FAF9F6}
html:has(body.allyDesign){color-scheme:light!important;background:var(--ally-bg)!important}
body.allyDesign{
  color-scheme:light!important;color:var(--ally-ink)!important;background:var(--ally-bg)!important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
}
body.allyDesign::before,body.allyDesign::after{display:none!important}
body.allyDesign [hidden]{display:none!important}
body.allyDesign :where(a,button,input,textarea,select,summary):focus-visible{
  outline:3px solid rgba(82,79,195,.55)!important;outline-offset:3px!important;
}
body.allyDesign button,body.allyDesign input,body.allyDesign textarea{font-family:inherit}
body.allyDesign ::selection{color:#413C84;background:#EBE7FA}

/* One-screen homepage. The ball remains usable, but the request takes priority. */
body.allyDesign .shell{
  width:min(1150px,calc(100% - 72px))!important;
  max-width:none!important;min-height:100dvh;
  grid-template-rows:74px minmax(0,1fr) auto!important;z-index:1
}
body.allyDesign .nav{
  height:74px!important;min-height:74px!important;
  border-bottom:1px solid var(--ally-border)!important;
  background:transparent!important;
}
body.allyDesign .logo{
  color:#292834!important;font-size:22px!important;font-weight:770!important;
  letter-spacing:-.055em!important;gap:10px!important
}
body.allyDesign .logoMark{
  display:grid!important;place-items:center!important;width:33px!important;height:33px!important;
  border-radius:10px!important;color:white!important;background:#524FC3!important;
  border:1px solid #524FC3!important;
  box-shadow:0 4px 12px rgba(82,79,195,.14)!important;
  font-weight:780!important;font-size:20px!important;
}
body.allyDesign .navLinks .aboutNav{
  color:#6B697B!important;font-size:13px!important;font-weight:590!important;
  text-decoration:none!important;padding:10px 4px!important;
}
body.allyDesign .navLinks .aboutNav:hover{color:#403DA5!important}
body.allyDesign .navLinks .signIn{
  background:white!important;color:#303044!important;border:1px solid #E2DEE8!important;
  border-radius:10px!important;font-weight:650!important;font-size:13px!important;
  padding:10px 18px!important;transition:background .16s,border-color .16s!important
}
body.allyDesign .navLinks .signIn:hover{background:#F5F3FB!important;border-color:#C9C1E7!important}
body.allyDesign .hero{
  padding:24px 0 35px!important;align-items:center!important;justify-content:center!important
}
body.allyDesign .heroInner{width:min(730px,100%)!important;position:relative}
body.allyDesign .allyPresence{
  width:104px!important;height:104px!important;margin:0 auto 23px!important;
  filter:hue-rotate(147deg) saturate(.72) drop-shadow(0 14px 20px rgba(90,71,166,.12))!important
}
body.allyDesign .allyPresenceCore{width:76%!important;height:76%!important}
body.allyDesign .allyPresenceHalo{opacity:.33!important}
body.allyDesign .hero h1{
  font-size:clamp(46px,6vw,68px)!important;line-height:1.055!important;
  color:#2B2A39!important;letter-spacing:-.065em!important;font-weight:730!important;
  text-shadow:none!important;margin:0 0 13px!important
}
body.allyDesign .heroDescription{
  color:#706F7E!important;font-size:clamp(16px,1.65vw,18px)!important;
  font-weight:430!important;line-height:1.55!important;margin:0 auto 31px!important
}
body.allyDesign .intentCard{max-width:710px;margin:0 auto!important}
body.allyDesign .promptShell{
  background:#fff!important;min-height:78px!important;border:1.5px solid #D3CEDF!important;
  border-radius:17px!important;box-shadow:0 9px 28px rgba(59,54,85,.07)!important;
  padding:10px 78px 10px 22px!important;
  transition:border-color .14s,box-shadow .14s!important
}
body.allyDesign .promptShell:hover{border-color:#AAA1CD!important;background:white!important}
body.allyDesign .promptShell:focus-within,body.allyDesign .promptShell.focused{
  background:white!important;border-color:#726AE0!important;
  box-shadow:0 0 0 4px rgba(82,79,195,.10),0 10px 32px rgba(59,54,85,.08)!important
}
body.allyDesign .intentInput{
  background:transparent!important;color:#292834!important;font-size:16px!important;
  line-height:1.48!important;min-height:52px!important;padding:13px 0 10px!important;
}
body.allyDesign .intentInput::placeholder{color:#837F8C!important;opacity:1!important}
body.allyDesign .submit{
  background:#524FC3!important;border:0!important;color:white!important;
  box-shadow:none!important;border-radius:11px!important;width:46px!important;
  height:46px!important;bottom:15px!important;right:14px!important
}
body.allyDesign .submit:hover{background:#403DA5!important;transform:none!important}
body.allyDesign .quickStarts{
  margin-top:23px!important;gap:9px!important;align-items:center!important;
  justify-content:center!important
}
body.allyDesign .quickStartsLabel{font-size:12px!important;font-weight:550!important;color:#817D8B!important}
body.allyDesign .quickStart{
  color:#565466!important;background:#fff!important;border:1px solid #E5E1EA!important;
  border-radius:10px!important;padding:10px 13px!important;font-size:12px!important;
  font-weight:550!important;line-height:1.35!important;
  box-shadow:0 2px 6px rgba(59,54,85,.025)!important
}
body.allyDesign .quickStart span{color:#524FC3!important}
body.allyDesign .quickStart:hover{
  color:#403DA5!important;background:#F1EFFB!important;border-color:#C9C1EC!important;
  transform:none!important
}
body.allyDesign .smsEntry{margin-top:25px!important;gap:6px!important}
body.allyDesign .orText{font-size:11px!important;color:#8C8794!important;opacity:1!important}
body.allyDesign .smsEntry a{
  font-weight:590!important;color:#524FC3!important;font-size:13px!important
}
body.allyDesign .smsEntry a:hover{color:#403DA5!important}
body.allyDesign .footer{
  border-top:1px solid var(--ally-border)!important;min-height:62px!important;padding:16px 0!important;
  color:#928D9A!important;font-size:12px!important;gap:12px!important
}
body.allyDesign .footer nav{gap:20px!important}
body.allyDesign .footer a{color:#696878!important;text-decoration:none!important}
body.allyDesign .footer a:hover{color:#4542B0!important}

/* Conversation — content hierarchy, legible messages, consistent controls. */
body.allyDesign .allyShell{
  background:#FAF9F6!important;color:#292834!important;
}
/* Legacy containers keep an opaque dark background unless reset explicitly. */
body.allyDesign .allyShell .mainColumn,
body.allyDesign .allyShell .app,
body.allyDesign .allyShell .boot,
body.allyDesign .allyShell .center{background:var(--ally-bg)!important}
body.allyDesign .allyShell .allyFirstWinFeedback,
body.allyDesign .allyShell .allyFirstWinFeedback small{color:#686778!important}
body.allyDesign .allyShell .allyFirstWinFeedback button,
body.allyDesign .allyShell .allyFirstWinSource{
  color:#4744AC!important;background:#fff!important;border-color:#DAD4EE!important
}
body.allyDesign .allyShell .ambient{display:none!important}
body.allyDesign .allyShell .topbar{
  height:66px!important;min-height:66px!important;background:#fff!important;
  border-bottom:1px solid #E6E3EB!important;box-shadow:none!important;
  padding:0 clamp(20px,4vw,52px)!important
}
body.allyDesign .allyShell .topbar .brand{
  background:transparent!important;gap:8px!important;padding:0!important
}
body.allyDesign .allyShell .topbar .brandMark{
  display:grid!important;place-items:center!important;width:29px!important;
  height:29px!important;border-radius:9px!important;background:#524FC3!important;
  border:1px solid #524FC3!important;color:white!important;font-size:18px!important
}
body.allyDesign .allyShell .topbar .brandWord{
  color:#2B2A39!important;font-size:21px!important;font-weight:750!important;letter-spacing:-.05em!important
}
body.allyDesign .allyShell .topbar .brand:hover{background:transparent!important}
body.allyDesign .allyShell .topActions{gap:8px!important}
body.allyDesign .allyShell .topActions .quiet,body.allyDesign .allyShell .topActions a.quiet{
  color:#686778!important;background:transparent!important;font-size:13px!important;
  font-weight:550!important;border-radius:9px!important;min-height:35px!important;
  padding:8px 11px!important;text-decoration:none!important
}
body.allyDesign .allyShell .topActions .quiet:hover{
  color:#403DA5!important;background:#F3F1FB!important;border-color:transparent!important
}
body.allyDesign .allyShell .app{height:calc(100dvh - 66px)!important}
body.allyDesign .allyShell .thread{
  width:min(740px,calc(100% - 48px))!important;padding-top:35px!important;
  padding-bottom:180px!important;scrollbar-color:#c3cfdf transparent!important
}
body.allyDesign .allyShell .messageRow{gap:12px!important;margin-bottom:24px!important}
body.allyDesign .allyShell .avatar{
  width:31px!important;height:31px!important;flex:0 0 31px!important;
  border-radius:10px!important;background:#524FC3!important;color:white!important;
  border:0!important;box-shadow:none!important;font-size:15px!important;
}
body.allyDesign .allyShell .messageStack{max-width:calc(100% - 48px)!important}
body.allyDesign .allyShell .role{
  color:#82808E!important;font-size:11px!important;font-weight:670!important;
  text-transform:none!important;letter-spacing:0!important;margin-bottom:5px!important
}
body.allyDesign .allyShell .messageRow.assistant .message,
body.allyDesign .allyShell .allyChatOnboardTurn .message{
  background:transparent!important;color:#303042!important;
  font-size:16px!important;line-height:1.63!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;padding:2px 0!important;
}
body.allyDesign .allyShell .messageRow.user .message{
  color:#303042!important;background:#EEEAF7!important;border:1px solid #E5E0EA!important;
  border-radius:17px 17px 5px 17px!important;
  padding:12px 16px!important;font-size:15px!important;line-height:1.55!important;
  box-shadow:none!important
}
body.allyDesign .allyShell .allyChatOnboardTurn .role{color:#71717F!important}
body.allyDesign .allyShell .allyChatSources .allySourceResult,
body.allyDesign .allyShell .allyChatSources a{
  color:#444363!important;background:#fff!important;border:1px solid #E4E1E9!important;
  border-radius:12px!important;box-shadow:0 3px 10px rgba(59,54,85,.04)!important;
}
body.allyDesign .allyShell .allyChatSources .allySourceResult:hover,
body.allyDesign .allyShell .allyChatSources a:hover{
  background:#F5F3FC!important;border-color:#D0C7E8!important
}
body.allyDesign .allyShell .allySourceTitle{color:#3E3C6C!important}
body.allyDesign .allyShell .allySourceMeta,body.allyDesign .allyShell .allySourceSite{color:#757384!important}
body.allyDesign .allyShell .allySourceDate,body.allyDesign .allyShell .allySourceOpen{color:#797787!important}
body.allyDesign .allyShell .allyChatQuickReply,
body.allyDesign .allyShell .allyExamples button{
  background:#fff!important;border:1px solid #DED9E8!important;color:#4D4C71!important;
  border-radius:11px!important;padding:10px 14px!important;
  font-size:13px!important;font-weight:570!important;
}
body.allyDesign .allyShell .allyChatQuickReply:hover,
body.allyDesign .allyShell .allyExamples button:hover{
  background:#F1EFFB!important;border-color:#BDB4E9!important;color:#403DA5!important
}
body.allyDesign .allyShell .allyWelcome{
  color:#292A3A!important;font-size:clamp(34px,4.1vw,46px)!important;
  font-weight:710!important;letter-spacing:-.058em!important;
}
body.allyDesign .allyShell .dock{
  background:linear-gradient(180deg,rgba(250,249,246,0),#FAF9F6 36%,#FAF9F6 100%)!important;
  padding:25px 16px max(24px,env(safe-area-inset-bottom))!important
}
body.allyDesign .allyShell .composerWrap{width:min(740px,100%)!important}
body.allyDesign .allyShell .composer{
  background:#fff!important;border:1px solid #D5D0E2!important;
  min-height:68px!important;border-radius:16px!important;padding:12px 57px 12px 17px!important;
  box-shadow:0 8px 27px rgba(59,54,85,.09)!important;backdrop-filter:none!important;
}
body.allyDesign .allyShell .composer:focus-within{
  border-color:#726AE0!important;box-shadow:0 0 0 4px rgba(82,79,195,.1)!important;
  transform:none!important
}
body.allyDesign .allyShell #input{
  color:#2B2C3B!important;font-size:15.5px!important;line-height:1.55!important;
  min-height:45px!important
}
body.allyDesign .allyShell #input::placeholder{color:#898491!important}
body.allyDesign .allyShell .send{
  background:#524FC3!important;color:#fff!important;border:0!important;
  border-radius:10px!important;width:42px!important;height:42px!important;
  box-shadow:none!important
}
body.allyDesign .allyShell .send:hover:not(:disabled){background:#403DA5!important;transform:none!important}
body.allyDesign .allyShell .send:disabled{opacity:.45!important}
body.allyDesign .allyShell .composerFoot{color:#918B98!important;font-size:10.5px!important}
body.allyDesign .allyShell .typingBubble{background:#fff!important;border-color:#E4E1E9!important}
body.allyDesign .allyShell .typingBubble span{background:#8C83CF!important}
body.allyDesign .allyShell .recoveryCard,body.allyDesign .allyShell .profileCard{
  background:#fff!important;color:#303043!important;
  border:1px solid #E4E1E9!important;box-shadow:0 18px 56px rgba(59,54,85,.09)!important
}
body.allyDesign .allyShell .profileCard h2,body.allyDesign .allyShell .recoveryCard h2{color:#292A3A!important}
body.allyDesign .allyShell .sub,body.allyDesign .allyShell .field label{color:#6C6B77!important}
body.allyDesign .allyShell .field input,body.allyDesign .allyShell .field textarea{
  color:#292A39!important;background:#fff!important;border:1px solid #E0DAEA!important
}
body.allyDesign .allyShell .primary{
  background:#524FC3!important;border:0!important;color:white!important
}
body.allyDesign .allyShell .secondary{
  background:#fff!important;color:#53526C!important;border:1px solid #E0DBE9!important
}
body.allyDesign .allyShell .allyPasswordAuthForm{
  background:#fff!important;color:#292A3A!important;border:1px solid #E4E1E9!important;
  box-shadow:0 12px 38px rgba(59,54,85,.07)!important
}
body.allyDesign .allyShell .allyPasswordTitle{color:#292A3A!important}
body.allyDesign .allyShell .allyPasswordAuthForm label{color:#6B677D!important}
body.allyDesign .allyShell .allyPasswordAuthForm input{
  color:#292A3A!important;background:#fff!important;border:1px solid #D7D1E2!important
}
body.allyDesign .allyShell .allyPasswordAuthForm button[type=submit]{
  background:#524FC3!important;color:#fff!important
}
body.allyDesign .allyShell .allyPasswordAuthForm .allyPasswordSwitch,
body.allyDesign .allyShell .allyPasswordAuthForm .allyPasswordRecover,
body.allyDesign .allyShell .allyPasswordFoot a{color:#524FC3!important}
body.allyDesign .allyShell .allyPasswordNote,body.allyDesign .allyShell .allyPasswordFoot{color:#7E7B8B!important}
body.allyDesign .allyShell .opportunity,body.allyDesign .allyShell .allyExecutionCard,
body.allyDesign .allyShell .allyAddressPanel{
  background:#fff!important;border-color:#E4E1E9!important;color:#343447!important
}
body.allyDesign .allyShell .opportunity h3,body.allyDesign .allyShell .allyExecutionCard h3{color:#343448!important}
body.allyDesign .allyShell .opportunity p{color:#727080!important}
body.allyDesign .allyShell .opportunity a,body.allyDesign .allyShell .opportunity .networkInterest{
  color:#4744AC!important;background:#F1EFFB!important;border-color:#DAD4EE!important
}
body.allyDesign .allyShell .memory{color:#6C6B77!important;border-left-color:#C9BEF1!important}
body.allyDesign .allyShell .bootInner{color:#6C6B77!important}
body.allyDesign .allyShell .bootOrb{background:#524FC3!important}

/* Account access; no surprise signup gates. */
body.allyDesign .loginPage{width:min(450px,calc(100% - 32px));min-height:100dvh}
body.allyDesign .loginCard{
  background:#fff!important;color:#292A3A!important;border:1px solid #E5E2EA!important;
  border-radius:20px!important;padding:34px!important;
  box-shadow:0 18px 56px rgba(59,54,85,.095)!important;backdrop-filter:none!important
}
body.allyDesign .loginCard .logo{color:#292834!important;margin-bottom:31px!important}
body.allyDesign .loginCard .logoMark{
  background:#524FC3!important;color:white!important;border-color:#524FC3!important;
  border-radius:10px!important
}
body.allyDesign .loginCard h1{
  color:#2B2A39!important;font-size:33px!important;font-weight:730!important;letter-spacing:-.052em!important
}
body.allyDesign .loginCard>p{color:#6C6B77!important;font-size:14px!important}
body.allyDesign .loginField label{color:#646173!important;font-size:13px!important}
body.allyDesign .loginField input,body.allyDesign .betaWaitlist select{
  color:#303043!important;background:#fff!important;
  border:1px solid #DAD5E6!important;border-radius:10px!important;
}
body.allyDesign .loginField input:focus{border-color:#524FC3!important;box-shadow:0 0 0 4px rgba(82,79,195,.10)!important}
body.allyDesign .loginSubmit{
  background:#524FC3!important;color:#fff!important;border-radius:10px!important;
  box-shadow:none!important;min-height:48px!important
}
body.allyDesign .loginSubmit:hover{background:#403DA5!important}
body.allyDesign .loginBack,body.allyDesign .loginLinks a,body.allyDesign .signupLegal a{color:#4D4AB8!important}
body.allyDesign .signupLegal{color:#827E8D!important}
body.allyDesign .loginError{color:#b4233d!important}
body.allyDesign .loginLinks{border-top:1px solid #E6E3EB!important}
body.allyDesign .betaWaitlist{display:none!important}

/* About and policy pages: typography rather than decoration. */
body.allyDesign .legalPage{
  width:min(1050px,calc(100% - 56px))!important;color:#2B2B3A!important;
  padding-bottom:44px!important
}
body.allyDesign .legalNav{
  border-bottom:1px solid #E5E2EA!important;height:74px!important
}
body.allyDesign .legalBrand{
  color:#292834!important;font-size:21px!important;letter-spacing:-.05em!important
}
body.allyDesign .legalMark{
  width:32px!important;height:32px!important;border-radius:10px!important;
  color:#fff!important;background:#524FC3!important;border:1px solid #524FC3!important;
  box-shadow:none!important
}
body.allyDesign .legalLinks a{color:#777584!important;font-size:13px!important}
body.allyDesign .legalLinks a:hover,body.allyDesign .legalLinks a.active{color:#403DA5!important}
body.allyDesign .legalHero{border-bottom:1px solid #E7E4EC!important}
body.allyDesign .legalHero h1{color:#292A3A!important}
body.allyDesign .legalHero>p,body.allyDesign .legalSection p,
body.allyDesign .legalSection li{color:#686677!important}
body.allyDesign .legalSection h2,body.allyDesign .legalSection h3{color:#303043!important}
body.allyDesign .legalSection strong{color:#292A3A!important}
body.allyDesign .legalEyebrow{color:#524FC3!important}
body.allyDesign .legalMeta{color:#8C8794!important}
body.allyDesign .legalToc a{color:#757183!important}
body.allyDesign .legalToc a:hover{color:#403DA5!important}
body.allyDesign .legalSection{border-bottom-color:#E7E4EC!important}
body.allyDesign .legalFooter{
  border-top:1px solid #E5E2EA!important;color:#928D9A!important;
  font-size:12px!important;margin-top:48px!important
}
body.allyDesign .legalFooter a{color:#6B697C!important}
body.allyDesign .legalFooter a:hover{color:#403DA5!important}
body.allyDesign .aboutMain{width:min(740px,100%)!important;padding:74px 0 104px!important}
body.allyDesign .aboutEyebrow{color:#7F78A1!important}
body.allyDesign .aboutMain h1{color:#292A3A!important;font-size:clamp(43px,6vw,61px)!important}
body.allyDesign .aboutIntro{color:#6C697B!important;max-width:640px!important}
body.allyDesign .aboutFounder{border-top:1px solid #E4E1E9!important}
body.allyDesign .aboutFounderLabel{color:#7C798A!important}
body.allyDesign .aboutFounder h2{color:#292A3A!important}
body.allyDesign .aboutFounder p{color:#686677!important}
body.allyDesign .aboutContactButton{
  background:#524FC3!important;border-color:#524FC3!important;color:#fff!important;border-radius:10px!important
}
body.allyDesign .aboutContactButton:hover{background:#403DA5!important}
body.allyDesign .aboutEmail{color:#4845A8!important;text-decoration-color:#BEB6E4!important}

/* Agreements remain an actual working form, not a dashboard redesign. */
body.allyDesign .bar{background:#fff;border-bottom:1px solid #E5E2EA;color:#333349}
body.allyDesign .bar .brand{color:#524FC3}
body.allyDesign .bar nav a{color:#757282}
body.allyDesign .bar nav a[aria-current=page]{color:#403DA5;font-weight:700}
body.allyDesign .wrap{color:#333348}
body.allyDesign .wrap .hero h1{color:#2B2B3A!important}
body.allyDesign .wrap .hero p{color:#706D7E!important}
body.allyDesign .wrap .eyebrow{color:#524FC3}
body.allyDesign .wrap .panel{
  background:#fff;border:1px solid #E4E1E9;color:#343348;
  box-shadow:0 7px 24px rgba(59,54,85,.035);border-radius:15px
}
body.allyDesign .wrap .panel h2{color:#292A3A}
body.allyDesign .wrap .muted,body.allyDesign .wrap .history,body.allyDesign .wrap .small{color:#757183}
body.allyDesign .wrap form label{color:#525067}
body.allyDesign .wrap :is(input,textarea,select){
  background:#fff;color:#2B2C3B;border:1px solid #DAD3E7;border-radius:10px
}
body.allyDesign .wrap :is(input,textarea,select):focus{outline:3px solid rgba(82,79,195,.25)}
body.allyDesign .wrap .primary,body.allyDesign .wrap .actions .mainAction{
  background:#524FC3;color:white;border:1px solid #524FC3
}
body.allyDesign .wrap .secondary{background:#F3F1FB;border:1px solid #CEC7E7;color:#4441AC}
body.allyDesign .wrap .notice{background:#fff;border:1px solid #E4E1E9;color:#696776}
body.allyDesign .wrap .dealCard{background:#FDFCFA;border:1px solid #E4E1E9;color:#343448}
body.allyDesign .wrap .tag{background:#EEEBFA;border:1px solid #D6D0EF;color:#4D4AA5}
body.allyDesign .wrap .actions button{border:1px solid #CDC6DD;color:#4C4A83}
body.allyDesign .wrap .inlineCounter{background:#F6F4FC}

/* Size discipline, including short viewports: scroll rather than clip content. */
@media(max-width:720px){
  body.allyDesign .shell{width:calc(100% - 32px)!important;grid-template-rows:60px minmax(0,1fr) auto!important}
  body.allyDesign .nav{height:60px!important;min-height:60px!important}
  body.allyDesign .hero{padding:24px 0 34px!important}
  body.allyDesign .allyPresence{width:82px!important;height:82px!important;margin-bottom:17px!important}
  body.allyDesign .hero h1{font-size:clamp(40px,10vw,51px)!important}
  body.allyDesign .heroDescription{font-size:15px!important;margin-bottom:23px!important}
  body.allyDesign .promptShell{min-height:68px!important;padding:7px 60px 7px 15px!important}
  body.allyDesign .intentInput{min-height:48px!important;font-size:15px!important}
  body.allyDesign .submit{width:41px!important;height:41px!important;right:10px!important;bottom:12px!important}
  body.allyDesign .quickStarts{margin-top:18px!important;gap:7px!important}
  body.allyDesign .quickStart{font-size:11px!important;padding:8px 10px!important}
  body.allyDesign .quickStartsLabel{width:100%;text-align:center;font-size:11px!important}
  body.allyDesign .smsEntry{margin-top:18px!important}
  body.allyDesign .footer{align-items:center!important;gap:11px!important}
  body.allyDesign .footer nav{gap:13px!important}
  body.allyDesign .allyShell .topbar{height:59px!important;min-height:59px!important;padding:0 16px!important}
  body.allyDesign .allyShell .app{height:calc(100dvh - 59px)!important}
  body.allyDesign .allyShell .thread{width:calc(100% - 28px)!important;padding-top:25px!important;padding-bottom:152px!important}
  body.allyDesign .allyShell .dock{padding:18px 12px max(15px,env(safe-area-inset-bottom))!important}
  body.allyDesign .allyShell .composer{min-height:60px!important;padding:10px 53px 10px 14px!important}
  body.allyDesign .allyShell .send{width:40px!important;height:40px!important}
  body.allyDesign .allyShell .allyWelcome{font-size:clamp(30px,8vw,39px)!important}
  body.allyDesign .allyShell .messageRow.user .message{max-width:min(84%,540px)!important}
  body.allyDesign .legalPage{width:calc(100% - 32px)!important}
  body.allyDesign .legalNav{height:60px!important}
  body.allyDesign .aboutMain{padding:54px 0 67px!important}
  body.allyDesign .loginCard{padding:26px!important}
}
@media(max-width:440px){
  body.allyDesign .allyShell .topActions{gap:0!important}
  body.allyDesign .allyShell .topActions .quiet{padding:7px 6px!important;font-size:12px!important}
  body.allyDesign .quickStarts{gap:6px!important}
  body.allyDesign .quickStart{font-size:10.5px!important}
  body.allyDesign .footer{flex-direction:column!important}
}
@media(max-height:720px) and (min-width:721px){
  body.allyDesign .hero{padding:8px 0 12px!important}
  body.allyDesign .allyPresence{width:76px!important;height:76px!important;margin-bottom:9px!important}
  body.allyDesign .hero h1{font-size:clamp(42px,7vh,58px)!important;margin-bottom:7px!important}
  body.allyDesign .heroDescription{margin-bottom:12px!important;font-size:15px!important}
  body.allyDesign .promptShell{min-height:64px!important}
  body.allyDesign .quickStarts{margin-top:10px!important}
  body.allyDesign .smsEntry{margin-top:11px!important}
  body.allyDesign .footer{min-height:48px!important;padding:8px 0!important}
}
@media(prefers-reduced-motion:reduce){
  body.allyDesign .allyPresence *,body.allyDesign .allyPresence,body.allyDesign .quickStart{animation:none!important;transition:none!important}
}

/* Space belongs to the request, not empty margins. Increase the usable
   content area and tap targets without adding another UI or another flow. */
body.allyDesign .shell{
  width:min(1280px,calc(100% - 64px))!important;
  grid-template-rows:72px minmax(min-content,1fr) auto!important;
}
body.allyDesign .nav{height:72px!important;min-height:72px!important}
body.allyDesign .logo{font-size:24px!important}
body.allyDesign .logoMark{width:36px!important;height:36px!important;font-size:21px!important}
body.allyDesign .navLinks{gap:24px!important}
body.allyDesign .navLinks .aboutNav{font-size:14px!important}
body.allyDesign .navLinks .signIn{font-size:14px!important;padding:12px 19px!important;min-height:44px!important}
body.allyDesign .hero{
  padding:20px 0 26px!important;
  align-items:center!important;justify-content:center!important
}
body.allyDesign .heroInner{width:min(910px,100%)!important}
body.allyDesign .allyPresence{
  width:122px!important;height:122px!important;margin-bottom:27px!important
}
body.allyDesign .hero h1{
  font-size:clamp(60px,6.25vw,91px)!important;
  line-height:1.025!important;letter-spacing:-.065em!important;
  margin-bottom:15px!important
}
body.allyDesign .heroDescription{
  max-width:710px!important;font-size:clamp(18px,1.65vw,22px)!important;
  line-height:1.48!important;margin-bottom:29px!important
}
body.allyDesign .intentCard{max-width:900px!important}
body.allyDesign .promptShell{
  min-height:101px!important;border-radius:18px!important;
  padding:12px 90px 12px 25px!important;
  box-shadow:0 10px 28px rgba(59,54,85,.075)!important
}
body.allyDesign .intentInput{
  min-height:75px!important;font-size:19px!important;
  line-height:1.45!important;padding:17px 0 10px!important
}
body.allyDesign .submit{
  width:56px!important;height:56px!important;right:18px!important;bottom:22px!important;
  font-size:27px!important
}
body.allyDesign .quickStarts{
  margin-top:23px!important;gap:10px!important
}
body.allyDesign .quickStartsLabel{font-size:13px!important;margin-right:3px!important}
body.allyDesign .quickStart{
  padding:12px 16px!important;font-size:13.5px!important;min-height:44px!important
}
body.allyDesign .smsEntry{margin-top:25px!important;gap:4px!important}
body.allyDesign .smsEntry a{font-size:15px!important;min-height:34px!important}
body.allyDesign .footer{
  min-height:62px!important;padding:15px 0!important;font-size:12.5px!important
}
body.allyDesign .footer a{font-size:12.5px!important}

/* Let the conversation use the available width, including after a request.
   The composer remains the only primary action. */
body.allyDesign .allyShell .topbar{
  height:64px!important;min-height:64px!important
}
body.allyDesign .allyShell .app{height:calc(100dvh - 64px)!important}
body.allyDesign .allyShell .thread{
  width:min(880px,calc(100% - 56px))!important;
  padding-top:30px!important;padding-bottom:174px!important
}
body.allyDesign .allyShell .messageRow{margin-bottom:23px!important}
body.allyDesign .allyShell .messageRow.assistant .message,
body.allyDesign .allyShell .allyChatOnboardTurn .message{
  font-size:17px!important;line-height:1.64!important
}
body.allyDesign .allyShell .messageRow.user .message{
  max-width:min(88%,680px)!important;font-size:16px!important;line-height:1.6!important
}
body.allyDesign .allyShell .allyWelcome{
  font-size:clamp(41px,5.2vw,58px)!important;line-height:1.1!important;
  margin-bottom:24px!important
}
body.allyDesign .allyShell .allyExamples{gap:11px!important;margin-top:19px!important}
body.allyDesign .allyShell .allyExamples button{
  font-size:14px!important;padding:12px 16px!important;min-height:44px!important
}
body.allyDesign .allyShell .dock{
  padding:20px 18px max(16px,env(safe-area-inset-bottom))!important
}
body.allyDesign .allyShell .composerWrap,
body.allyDesign .allyShell .app.allyEmptyChat .composerWrap{
  width:min(880px,100%)!important
}
body.allyDesign .allyShell .composer{
  min-height:82px!important;border-radius:17px!important;
  padding:16px 77px 15px 21px!important;
  box-shadow:0 8px 24px rgba(59,54,85,.075)!important
}
body.allyDesign .allyShell #input{
  font-size:17px!important;min-height:51px!important;line-height:1.5!important
}
body.allyDesign .allyShell .send{
  width:49px!important;height:49px!important;right:16px!important;bottom:16px!important;
  font-size:23px!important
}
body.allyDesign .allyShell .allyChatQuickReply{
  font-size:14px!important;min-height:42px!important;padding:11px 15px!important
}

/* Supporting screens get comparable scale instead of tiny centered boxes. */
body.allyDesign .loginPage{width:min(510px,calc(100% - 32px))!important}
body.allyDesign .loginCard{padding:38px 40px!important}
body.allyDesign .loginCard h1{font-size:38px!important}
body.allyDesign .loginCard>p{font-size:16px!important}
body.allyDesign .loginField input{min-height:49px!important;font-size:16px!important}
body.allyDesign .loginSubmit{min-height:52px!important;font-size:16px!important}
body.allyDesign .aboutMain{
  width:min(840px,100%)!important;padding:58px 0 72px!important
}
body.allyDesign .aboutMain h1{font-size:clamp(48px,6vw,70px)!important}
body.allyDesign .aboutIntro{font-size:20px!important;max-width:760px!important}
body.allyDesign .aboutFounder{margin-top:48px!important;padding-top:29px!important}
body.allyDesign .aboutFounder h2{font-size:34px!important}
body.allyDesign .aboutFounder p{font-size:17px!important;max-width:630px!important}
body.allyDesign .aboutContactButton{font-size:15px!important;min-height:47px!important}
body.allyDesign .legalHero{padding:56px 0 35px!important}
body.allyDesign .legalHero h1{font-size:clamp(45px,5vw,70px)!important}
body.allyDesign .legalSection p,body.allyDesign .legalSection li{font-size:16px!important}
body.allyDesign .wrap{max-width:1170px!important}
body.allyDesign .wrap .hero{padding:19px 0 25px!important}
body.allyDesign .wrap .panel{padding:27px!important}

/* Compact laptops: enlarge the useful content without vertical overflow. */
@media(min-width:721px) and (max-height:800px){
  body.allyDesign .shell{grid-template-rows:60px minmax(min-content,1fr) auto!important}
  body.allyDesign .nav{height:60px!important;min-height:60px!important}
  body.allyDesign .hero{padding:6px 0 13px!important}
  body.allyDesign .allyPresence{width:79px!important;height:79px!important;margin-bottom:11px!important}
  body.allyDesign .hero h1{
    font-size:clamp(55px,min(6vw,8.4vh),72px)!important;margin-bottom:8px!important
  }
  body.allyDesign .heroDescription{font-size:18px!important;margin-bottom:16px!important}
  body.allyDesign .promptShell{min-height:85px!important;padding:8px 76px 8px 21px!important}
  body.allyDesign .intentInput{min-height:64px!important;padding:12px 0 8px!important;font-size:17px!important}
  body.allyDesign .submit{width:49px!important;height:49px!important;right:14px!important;bottom:18px!important}
  body.allyDesign .quickStarts{margin-top:13px!important;gap:7px!important}
  body.allyDesign .quickStart{padding:9px 12px!important;min-height:38px!important;font-size:12.5px!important}
  body.allyDesign .smsEntry{margin-top:12px!important}
  body.allyDesign .footer{min-height:46px!important;padding:9px 0!important}
}

/* Mobile: fill the width and protect tap targets. On short devices, keep
   natural vertical scrolling rather than shrinking the input to illegibility. */
@media(max-width:720px){
  body.allyDesign .shell{
    width:calc(100% - 28px)!important;
    grid-template-rows:60px minmax(min-content,1fr) auto!important
  }
  body.allyDesign .nav{height:60px!important;min-height:60px!important}
  body.allyDesign .logo{font-size:21px!important}
  body.allyDesign .logoMark{width:32px!important;height:32px!important}
  body.allyDesign .navLinks{gap:13px!important}
  body.allyDesign .navLinks .aboutNav{font-size:13px!important}
  body.allyDesign .navLinks .signIn{font-size:13px!important;min-height:40px!important;padding:9px 13px!important}
  body.allyDesign .hero{padding:20px 0 24px!important}
  body.allyDesign .heroInner{width:100%!important}
  body.allyDesign .allyPresence{width:88px!important;height:88px!important;margin-bottom:19px!important}
  body.allyDesign .hero h1{
    font-size:clamp(45px,10vw,58px)!important;margin-bottom:12px!important
  }
  body.allyDesign .heroDescription{font-size:17px!important;margin-bottom:23px!important}
  body.allyDesign .promptShell{
    min-height:88px!important;padding:10px 69px 10px 17px!important;border-radius:15px!important
  }
  body.allyDesign .intentInput{min-height:65px!important;font-size:16px!important;padding:14px 0 10px!important}
  body.allyDesign .submit{width:46px!important;height:46px!important;right:12px!important;bottom:21px!important}
  body.allyDesign .quickStarts{margin-top:17px!important;gap:8px!important}
  body.allyDesign .quickStartsLabel{font-size:12px!important;width:100%;text-align:center}
  body.allyDesign .quickStart{min-height:38px!important;padding:9px 12px!important;font-size:12px!important}
  body.allyDesign .smsEntry{margin-top:18px!important}
  body.allyDesign .smsEntry a{font-size:14px!important}
  body.allyDesign .footer{gap:11px!important;padding:12px 0!important}
  body.allyDesign .allyShell .topbar{height:60px!important;min-height:60px!important}
  body.allyDesign .allyShell .app{height:calc(100dvh - 60px)!important}
  body.allyDesign .allyShell .thread{
    width:calc(100% - 26px)!important;padding-top:23px!important;padding-bottom:155px!important
  }
  body.allyDesign .allyShell .messageRow.assistant .message,
  body.allyDesign .allyShell .allyChatOnboardTurn .message{font-size:16px!important}
  body.allyDesign .allyShell .messageRow.user .message{font-size:15.5px!important}
  body.allyDesign .allyShell .allyWelcome{font-size:clamp(34px,8.7vw,43px)!important;margin-bottom:20px!important}
  body.allyDesign .allyShell .allyExamples button{font-size:13px!important;padding:10px 13px!important}
  body.allyDesign .allyShell .dock{padding:16px 11px max(12px,env(safe-area-inset-bottom))!important}
  body.allyDesign .allyShell .composer{min-height:73px!important;padding:13px 60px 12px 15px!important}
  body.allyDesign .allyShell #input{font-size:16px!important;min-height:47px!important}
  body.allyDesign .allyShell .send{width:43px!important;height:43px!important;right:11px!important;bottom:15px!important}
  body.allyDesign .loginCard{padding:29px 26px!important}
  body.allyDesign .loginCard h1{font-size:34px!important}
  body.allyDesign .aboutMain{padding:43px 0 55px!important}
  body.allyDesign .aboutMain h1{font-size:clamp(44px,11vw,56px)!important}
  body.allyDesign .aboutIntro{font-size:17.5px!important}
  body.allyDesign .aboutFounder h2{font-size:29px!important}
  body.allyDesign .aboutFounder p{font-size:16px!important}
  body.allyDesign .wrap .panel{padding:20px!important}
}
@media(max-width:720px) and (max-height:700px){
  body.allyDesign .hero{padding:8px 0 14px!important}
  body.allyDesign .allyPresence{width:70px!important;height:70px!important;margin-bottom:9px!important}
  body.allyDesign .hero h1{font-size:clamp(39px,9.1vw,49px)!important;margin-bottom:8px!important}
  body.allyDesign .heroDescription{font-size:15px!important;margin-bottom:14px!important}
  body.allyDesign .promptShell{min-height:78px!important}
  body.allyDesign .intentInput{min-height:56px!important}
  body.allyDesign .submit{bottom:16px!important}
  body.allyDesign .quickStarts{margin-top:10px!important;gap:6px!important}
  body.allyDesign .quickStart{padding:7px 10px!important;min-height:36px!important}
  body.allyDesign .smsEntry{margin-top:9px!important}
}

/* Restore the playful basketball element against the ivory page.
   Keep the existing interactive geometry, hitboxes and stacking untouched. */
body.allyDesign .allyPresence{
  width:178px!important;
  height:178px!important;
  margin:0 auto 28px!important;
  filter:saturate(1.38) contrast(1.06) drop-shadow(0 15px 26px rgba(82,79,195,.20))!important;
}
body.allyDesign .allyPresenceCore{
  width:77%!important;
  height:77%!important;
  box-shadow:inset -10px -12px 24px rgba(74,47,98,.18),
    inset 8px 10px 18px rgba(255,255,255,.24),
    0 0 0 1px rgba(103,83,171,.30),
    0 0 38px rgba(92,77,190,.19),
    0 21px 45px rgba(55,47,90,.17)!important;
}
body.allyDesign .allyPresenceHalo{
  opacity:.79!important;
  background:radial-gradient(circle,rgba(131,108,224,.17) 0%,rgba(244,155,120,.12) 36%,transparent 70%)!important;
}
body.allyDesign .allyPresenceOrbit{
  border-color:rgba(99,83,163,.26)!important;
}
body.allyDesign .allyPresenceOrbitOne{
  border-top-color:rgba(82,79,195,.63)!important;
  border-bottom-color:rgba(204,113,100,.53)!important;
}
body.allyDesign .allyPresenceOrbitTwo{
  border-left-color:rgba(82,79,195,.57)!important;
  border-right-color:rgba(210,118,105,.38)!important;
}
body.allyDesign .allyPresence.is-dragging{
  filter:saturate(1.4) drop-shadow(0 20px 34px rgba(82,79,195,.29))!important;
}
body.allyDesign .allyCourt{color:#302e43!important;}
body.allyDesign .courtCaption span{color:#695f7c!important;}
body.allyDesign .courtCaption strong{color:#29263c!important;font-weight:750!important;}
body.allyDesign .courtPole{
  background:linear-gradient(90deg,#3b374d 0%,#928ba5 50%,#494359 100%)!important;
  box-shadow:8px 11px 18px rgba(55,46,86,.24)!important;
}
body.allyDesign .courtBoard{
  background:linear-gradient(140deg,rgba(255,255,255,.89),rgba(223,217,246,.58))!important;
  border-color:#5c536f!important;
  box-shadow:inset 0 0 19px rgba(82,79,195,.10),
    0 0 0 2px rgba(50,46,70,.22),-7px 13px 22px rgba(55,45,82,.20)!important;
  backdrop-filter:none!important;
}
body.allyDesign .courtBoardTarget{border-color:#74698c!important;}
body.allyDesign .courtBracket{
  background:linear-gradient(180deg,#5e566d,#322d40)!important;
}
body.allyDesign .courtRimBack{
  border-top-color:#e17a49!important;
  border-left-color:#c65d38!important;
  border-right-color:#b94c32!important;
}
body.allyDesign .courtRimFront{
  border-bottom-color:#d76d42!important;
  border-left-color:#bb512f!important;
  border-right-color:#e7834e!important;
  box-shadow:0 7px 9px -6px rgba(133,68,44,.50),
    inset 0 -3px 3px rgba(107,40,32,.22)!important;
}
body.allyDesign .courtNet{
  opacity:1!important;
  filter:drop-shadow(0 5px 5px rgba(58,50,90,.14))!important;
}
body.allyDesign .netMesh{
  background:
    repeating-linear-gradient(60deg,transparent 0 17px,rgba(76,72,111,.78) 17px 19px,transparent 19px 35px),
    repeating-linear-gradient(-60deg,transparent 0 17px,rgba(113,87,128,.70) 17px 19px,transparent 19px 35px)!important;
}
body.allyDesign .netEdge{background:rgba(80,71,108,.87)!important;}
body.allyDesign .courtScore{color:#37304c!important;}
body.allyDesign .courtStatus{color:#554b69!important;}
body.allyDesign .courtReset,
body.allyDesign .courtSound,
body.allyDesign .courtClose{
  color:#343049!important;
  background:#fff!important;
  border-color:#c6bfd8!important;
  box-shadow:0 3px 9px rgba(65,57,92,.10)!important;
}
body.allyDesign .courtReset:hover,
body.allyDesign .courtSound:hover,
body.allyDesign .courtClose:hover{
  color:#332f8c!important;
  background:#f1effb!important;
  border-color:#8b80c7!important;
}
@media(min-width:721px) and (max-height:800px){
  body.allyDesign .allyPresence{width:133px!important;height:133px!important;margin-bottom:13px!important;}
}
@media(max-width:720px){
  body.allyDesign .allyPresence{width:128px!important;height:128px!important;margin-bottom:18px!important;}
}
@media(max-width:720px) and (max-height:700px){
  body.allyDesign .allyPresence{width:105px!important;height:105px!important;margin-bottom:10px!important;}
}
