/* Small usability refinements to the original Schreiber AI galaxy design. */
html{scroll-padding-top:90px}
.skip-link{position:fixed;left:16px;top:10px;z-index:1000;transform:translateY(-160%);padding:12px 18px;background:var(--cyan);color:var(--bg);border-radius:8px;font-weight:600}
.skip-link:focus{transform:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.nav-toggle,.chat-close{min-width:44px;min-height:44px}
.concierge-chips button,.chat-chips button{min-height:36px}
.chat-inputrow input{min-width:0}
@media(min-width:761px){li.has-dropdown.is-open .dropdown{opacity:1;visibility:visible;transform:translateX(-50%)}}
@media(max-width:760px){nav.menu{transform:none;opacity:0;visibility:hidden;pointer-events:none;overflow-y:auto;transition:opacity .2s,visibility .2s}nav.menu.is-open{opacity:1;visibility:visible;pointer-events:auto}.chat-panel{left:12px;right:12px;width:auto;bottom:84px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
/* Keep the original floating animation without popularity scaling overlapping cards. */
.grid a.tile{transform:none}
.grid a.tile:hover{transform:translateY(-4px)}

.price-starting{font-size:.8rem;color:var(--text-muted);margin-bottom:6px}.chat-list-price{white-space:normal;text-align:right}

/* Smart-site touches: chat "typing" dots and the concierge thinking state. */
.chat-msg.chat-typing{display:flex;gap:5px;align-items:center;padding:12px 14px}
.chat-typing span{width:7px;height:7px;border-radius:50%;background:var(--cyan);opacity:.35;animation:chat-dot 1s ease-in-out infinite}
.chat-typing span:nth-child(2){animation-delay:.15s}.chat-typing span:nth-child(3){animation-delay:.3s}
@keyframes chat-dot{40%{opacity:1;transform:translateY(-3px)}}
.concierge-hint.is-thinking{color:var(--cyan);animation:hint-pulse 1.2s ease-in-out infinite}
@keyframes hint-pulse{50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){.chat-typing span,.concierge-hint.is-thinking{animation:none}}
.chat-faq-a{margin:6px 0 0;color:var(--text-muted);line-height:1.55}
.price-amount small{font-size:.42em;font-weight:500;color:var(--text-muted);letter-spacing:0}
a.chat-list-link{text-decoration:none;color:inherit;border-radius:8px;transition:background .2s}
a.chat-list-link:hover{background:rgba(255,255,255,.05)}
a.chat-list-link .chat-list-price{color:var(--cyan)}
