/* Isolated, nonmodal assistant: inherits the existing Asteroid identity. */
.ast-assistant{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:10000;color:#f4f2ec;font-family:var(--body);font-size:14px;line-height:1.6}
.ast-assistant [hidden]{display:none!important}
.ast-assistant button,.ast-assistant a{-webkit-tap-highlight-color:transparent}
.ast-assistant button{font:inherit;cursor:pointer}
.ast-assistant :is(button,a):focus-visible{outline:2px solid #ff9977;outline-offset:4px}
.ast-launcher{display:flex;align-items:center;gap:10px;min-height:48px;margin-left:auto;padding:10px 18px;background:#f4f2ec;color:#232422;border:0;border-radius:28px;box-shadow:0 6px 24px #0003}
.ast-launcher:hover{background:#ffb199}
.ast-launcher-mark{font-size:24px;line-height:1;color:#a33e20}
.ast-panel{display:flex;flex-direction:column;width:380px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 112px);margin-bottom:12px;background:#2c2d2a;border:1px solid #62635b;border-radius:14px;overflow:hidden}
.ast-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 16px 17px 24px;border-bottom:1px solid #f4f2ec26;flex-shrink:0}
.ast-title{font-weight:500;font-size:15px}
.ast-subtitle{font-size:12px;color:#b1b2aa;margin-top:2px}
.ast-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;background:transparent;border:0;color:#b1b2aa;font-size:28px!important;border-radius:6px}
.ast-close:hover{color:#f4f2ec;background:#f4f2ec0d}
.ast-body{padding:24px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#77786f #2c2d2a;min-height:0}
.ast-body h2{font-family:var(--disp);font-size:25px;font-weight:600;line-height:1.18;letter-spacing:-.025em;margin:0 0 12px;text-wrap:balance}
.ast-focus:focus{outline:none}
.ast-intro{color:#c4c5bd;font-size:14px;margin-bottom:22px}
.ast-questions{display:grid;border-top:1px solid #f4f2ec26}
.ast-question{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:56px;padding:12px 0;text-align:left;background:transparent;border:0;border-bottom:1px solid #f4f2ec26;color:#f4f2ec}
.ast-question::after{content:'↗';color:#ff9977;flex-shrink:0}
.ast-question:hover{color:#ffb199}
.ast-text-button{min-height:44px;padding:10px 0 0;background:transparent;border:0;color:#ff9977;text-align:left}
.ast-text-button:hover{text-decoration:underline;text-underline-offset:4px}
.ast-bottom{flex-shrink:0;padding:16px 24px;border-top:1px solid #f4f2ec26}
.ast-bottom:empty{display:none}
.ast-contact-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;border:1px solid #8a8b80;border-radius:6px;background:transparent;color:#f4f2ec}
.ast-contact-button:hover{border-color:#ff9977;color:#ffb199}
.ast-answer{margin-top:24px;margin-bottom:14px;line-height:1.8}
.ast-answer-source{color:#b1b2aa;font-size:12px;margin-bottom:8px}
.ast-contact-links{display:grid;gap:8px;margin:22px 0 16px}
.ast-contact-link{display:flex;flex-direction:column;justify-content:center;min-height:54px;padding:10px 12px;border-radius:6px;border:1px solid #8a8b80}
.ast-contact-link small{font-size:12px;color:#c4c5bd;overflow-wrap:anywhere}
.ast-contact-link:hover{border-color:#ff9977}
.ast-primary-link{background:#ff9977;border-color:#ff9977;color:#232422;text-align:center;font-weight:500}
.ast-primary-link:hover{background:#ffb199}
.ast-note{font-size:12px;color:#b1b2aa}
.ast-compose{margin-bottom:14px}
.ast-input-label{display:block;font-size:12px;color:#c4c5bd;margin-bottom:6px}
.ast-input-row{display:flex;gap:8px}
.ast-input{width:100%;min-width:0;min-height:46px;padding:10px 12px;background:#232422;border:1px solid #8a8b80;border-radius:6px;color:#f4f2ec;font:inherit;font-size:16px}
.ast-input::placeholder{color:#b1b2aa;font-size:12px}
.ast-send{width:46px;flex-shrink:0;border:0;border-radius:6px;background:#ff9977;color:#232422;font-size:22px!important}
.ast-send:hover{background:#ffb199}
.ast-assistant button:disabled{opacity:.5;cursor:wait}
.ast-compose .ast-note{margin-top:10px;font-size:11px;line-height:1.5}
.ast-note a{text-decoration:underline;text-underline-offset:3px}
.ast-log{display:grid;gap:20px;margin-top:20px}
.ast-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75}
.ast-message-user{padding:10px 14px;background:#3b3c37;border-radius:8px;margin-left:24px}
.ast-sources{display:grid;gap:5px;font-size:11px;color:#b1b2aa;margin-top:10px;white-space:normal}
.ast-sources a{color:#ffb199;text-decoration:underline;text-underline-offset:3px}
.ast-thinking{font-size:13px;color:#b1b2aa}
.ast-error{font-size:14px;color:#ffd2c3}
.ast-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:600px){.ast-assistant{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.ast-panel{width:calc(100vw - 32px);max-height:calc(100dvh - 96px)}.ast-body{padding:20px}.ast-top{padding-left:20px}.ast-bottom{padding:14px 20px}.ast-launcher{font-size:13px;padding:10px 16px}}
@media(prefers-reduced-motion:no-preference){.ast-panel{animation:ast-open .18s ease-out}@keyframes ast-open{from{transform:translateY(6px);clip-path:inset(5% 0 0)}to{transform:none;clip-path:inset(0)}}}
