/* The Dad System · assets/sunrise/overlay.css
   The overlays that dadsystem.js injects on every page (search, the site assistant, the email slide-up, the toast),
   copied from assets/dadsystem.css so rebuilt Sunrise Walk pages keep the assistant working without the old
   37KB sheet. Changes from the source: the Sunrise faces instead of the Google fonts, the toast stays hidden
   until it shows, and the "fabs stay off the hero" rule is folded in. Restyling waits for Phase 7.
   Never break: the assistant (CLAUDE.md). */
@media screen{
:root{
  /* the DS v4 tokens the injected overlays still read (Phase 7 retired the ones nothing used: --ds-navy-2, --ds-cream, --ds-maxw) */
  --ds-ink:#121E36; --ds-navy:#1B2A4A;
  --ds-gold:#D4A843; --ds-gold-bright:#E8C767; --ds-gold-deep:#B98E2E; --ds-gold-tint:#F6EAC4;
  --ds-paper:#FFFDF7;
  --ds-text:#2C2E35; --ds-muted:#5C6373; --ds-faint:#8A8F9C;
  --ds-border:#EAE5D8; --ds-border-strong:#DCD5C2;
  --ds-shadow-md:0 10px 30px rgba(18,30,54,.10),0 2px 8px rgba(18,30,54,.05);
  --ds-shadow-lg:0 28px 70px rgba(18,30,54,.18);
  --ds-r:18px; --ds-r-lg:26px; --ds-ease:cubic-bezier(.22,1,.36,1);
}
/* search + AI fab (paired bottom-right) */
#ds-fabs{position:fixed;right:22px;bottom:22px;z-index:9100;display:flex;flex-direction:column;gap:12px}
.ds-fab{width:58px;height:58px;border-radius:100px;border:none;cursor:pointer;display:grid;place-items:center;box-shadow:0 12px 30px rgba(18,30,54,.22);transition:transform .3s var(--ds-ease);position:relative}
.ds-fab svg{width:24px;height:24px}
.ds-fab-ai{background:linear-gradient(135deg,var(--ds-gold-bright),var(--ds-gold));color:var(--ds-ink)}
.ds-fab-ai::after{content:"";position:absolute;inset:0;border-radius:100px;border:2px solid var(--ds-gold);animation:ds-pulse 2.6s var(--ds-ease) infinite}
@keyframes ds-pulse{0%{transform:scale(1);opacity:.7}70%{transform:scale(1.5);opacity:0}100%{opacity:0}}
.ds-fab-search{background:#fff;color:var(--ds-navy);border:1px solid var(--ds-border-strong)}
.ds-fab:hover{transform:scale(1.08)}

/* search modal */
#ds-search{position:fixed;inset:0;z-index:9500;display:none;align-items:flex-start;justify-content:center;padding-top:12vh;background:rgba(18,30,54,.45);backdrop-filter:blur(6px)}
#ds-search.open{display:flex;animation:ds-fade .25s var(--ds-ease)}
@keyframes ds-fade{from{opacity:0}to{opacity:1}}
.ds-search-box{width:min(680px,92vw);background:var(--ds-paper);border-radius:var(--ds-r-lg);box-shadow:var(--ds-shadow-lg);overflow:hidden;animation:ds-pop .3s var(--ds-ease)}
@keyframes ds-pop{from{transform:translateY(-14px);opacity:.6}to{transform:none;opacity:1}}
.ds-search-top{display:flex;align-items:center;gap:12px;padding:20px 22px;border-bottom:1px solid var(--ds-border)}
.ds-search-top svg{width:22px;height:22px;color:var(--ds-gold-deep);flex:none}
#ds-search-input{flex:1;border:none;background:none;font-family:var(--body);font-size:1.15rem;font-weight:600;color:var(--ds-navy)}
#ds-search-input:focus{outline:none}
.ds-search-hint{font-size:.7rem;font-weight:800;color:var(--ds-faint);border:1px solid var(--ds-border-strong);border-radius:6px;padding:3px 7px}
.ds-search-results{max-height:54vh;overflow-y:auto;padding:10px}
.ds-result{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:14px;text-decoration:none;color:inherit;transition:background .2s}
.ds-result:hover,.ds-result.sel{background:#fff;box-shadow:var(--ds-shadow-md)}
.ds-result .ic{font-size:1.5rem;flex:none}
.ds-result h4{font-family:var(--display);color:var(--ds-navy);font-size:1.08rem}
.ds-result p{font-size:.85rem;color:var(--ds-muted)}
.ds-result .tag{margin-left:auto;font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.8px;color:var(--ds-gold-deep);background:var(--ds-gold-tint);padding:4px 9px;border-radius:100px;flex:none}
.ds-noresult{padding:30px 22px;text-align:center;color:var(--ds-muted)}
.ds-noresult a{color:var(--ds-gold-deep);font-weight:800}

/* AI assistant panel */
#ds-ai{position:fixed;right:22px;bottom:92px;z-index:9400;width:min(400px,92vw);height:min(620px,76vh);background:var(--ds-paper);border-radius:var(--ds-r-lg);box-shadow:var(--ds-shadow-lg);display:none;flex-direction:column;overflow:hidden;border:1px solid var(--ds-border)}
#ds-ai.open{display:flex;animation:ds-pop .3s var(--ds-ease)}
.ds-ai-head{background:linear-gradient(140deg,var(--ds-navy),var(--ds-ink));color:#fff;padding:16px 18px;display:flex;align-items:center;gap:11px}
.ds-ai-head .mark{width:32px;height:32px;border-radius:9px;background:rgba(212,168,67,.2);display:grid;place-items:center;color:var(--ds-gold-bright);font-weight:900}
.ds-ai-head b{font-family:var(--display);font-weight:400;font-size:1.1rem}
.ds-ai-head small{display:block;font-size:.72rem;color:rgba(255,255,255,.6);font-weight:600}
.ds-ai-close{margin-left:auto;background:none;border:none;color:rgba(255,255,255,.7);font-size:1.3rem;cursor:pointer}
.ds-ai-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px}
.ds-msg{max-width:85%;padding:12px 15px;border-radius:16px;font-size:.93rem;line-height:1.55}
.ds-msg.bot{background:#fff;border:1px solid var(--ds-border);color:var(--ds-text);align-self:flex-start;border-bottom-left-radius:5px}
.ds-msg.me{background:var(--ds-navy);color:#fff;align-self:flex-end;border-bottom-right-radius:5px}
.ds-msg a{color:var(--ds-gold-deep);font-weight:800}
.ds-msg.me a{color:var(--ds-gold-bright)}
.ds-typing{display:flex;gap:5px;padding:14px 16px}
.ds-typing span{width:7px;height:7px;border-radius:100px;background:var(--ds-faint);animation:ds-blink 1.2s infinite}
.ds-typing span:nth-child(2){animation-delay:.2s}.ds-typing span:nth-child(3){animation-delay:.4s}
@keyframes ds-blink{0%,60%,100%{opacity:.25}30%{opacity:1}}
.ds-ai-foot{padding:12px;border-top:1px solid var(--ds-border);display:flex;gap:8px}
.ds-ai-chips{display:flex;gap:8px;padding:0 12px 4px;flex-wrap:wrap}
.ds-ai-chip{font-family:var(--body);font-weight:800;font-size:.78rem;cursor:pointer;padding:8px 13px;border-radius:100px;border:1.5px solid var(--ds-border-strong);background:#fff;color:var(--ds-navy);transition:all .2s var(--ds-ease)}
.ds-ai-chip:hover{border-color:var(--ds-gold);background:var(--ds-gold-tint)}
.ds-ai-foot input{flex:1;border:1.5px solid var(--ds-border-strong);border-radius:100px;padding:11px 16px;font-family:var(--body);font-size:.92rem}
.ds-ai-foot input:focus{outline:none;border-color:var(--ds-gold)}
.ds-ai-foot button{width:44px;height:44px;border-radius:100px;border:none;background:var(--ds-gold);color:var(--ds-ink);cursor:pointer;display:grid;place-items:center}
.ds-ai-foot button svg{width:18px;height:18px}

/* email slide-up */
#ds-slideup{position:fixed;left:22px;bottom:22px;z-index:9050;max-width:340px;background:var(--card,#F7ECD8);border:1px solid rgba(20,48,44,.14);border-radius:var(--ds-r);box-shadow:var(--ds-shadow-lg);padding:22px 22px 20px;transform:translateY(170%);transition:transform .6s var(--ds-ease)}
#ds-slideup.show{transform:none}
#ds-slideup h2{font-family:var(--display);font-weight:400;color:var(--card-ink,#14302C);font-size:1.2rem;margin:0 0 6px;padding-right:20px}
#ds-slideup p{font-size:.95rem;color:var(--card-ink-2,#4A5C57);margin-bottom:14px}
#ds-slideup .ds-su-go{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:100px;background:var(--marigold,#F08A2E);color:var(--btn-ink,#1A0E05);text-decoration:none;font-family:var(--body);font-weight:800;font-size:.92rem;transition:transform var(--dur-press) var(--ease-out),background-color var(--dur-press) ease}
#ds-slideup .ds-su-go:hover{transform:translateY(-2px)}
#ds-slideup form{display:flex;gap:8px}
#ds-slideup input{flex:1;padding:11px 14px;border-radius:100px;border:1.5px solid var(--ds-border-strong);font-family:var(--body);font-size:.9rem}
#ds-slideup button{padding:11px 16px;border-radius:100px;border:none;background:var(--ds-gold);color:var(--ds-ink);font-weight:900;cursor:pointer;font-family:var(--body)}
#ds-slideup .x{position:absolute;top:12px;right:14px;border:none;background:none;font-size:1.1rem;color:var(--ds-faint);cursor:pointer}

/* share toast */
#ds-toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%) translateY(120%);z-index:9600;background:var(--ds-ink);color:#fff;padding:13px 22px;border-radius:100px;font-weight:700;font-size:.9rem;box-shadow:var(--ds-shadow-lg);transition:transform .4s var(--ds-ease)}
#ds-toast.show{transform:translateX(-50%) translateY(0)}
/* pages that carry their own newsletter card get no second ask from the slide-up */
body:has(#newsletter) #ds-slideup{display:none}
/* fabs: hidden until the reader is past the hero (dadsystem.js adds .show) */
#ds-fabs{opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .4s var(--ds-ease),transform .4s var(--ds-ease)}
#ds-fabs.show{opacity:1;pointer-events:auto;transform:none}
#ds-toast{visibility:hidden}
#ds-toast.show{visibility:visible}
@media(max-width:720px){
  #ds-ai{right:0;left:0;bottom:0;width:100%;height:88vh;border-radius:22px 22px 0 0}
  #ds-fabs{right:16px;bottom:16px}
  #ds-slideup{left:16px;right:16px;max-width:none}
}
@media(prefers-reduced-motion:reduce){.ds-fab-ai::after{animation:none}}
}
@media print{#ds-fabs,#ds-search,#ds-ai,#ds-slideup,#ds-toast{display:none!important}}
