.grubby-flow{max-width:960px;color:var(--pine);margin:0 auto;padding:52px 28px 20px}.grubby-intro{align-items:center;gap:36px;margin:8px 0 36px;display:flex}.grubby-intro h1{letter-spacing:-.045em;margin:8px 0 14px;font-size:clamp(32px,4.3vw,52px);font-weight:800;line-height:1.06}.grubby-intro p:not(.grubby-eyebrow){max-width:550px;color:var(--muted);font-size:16px;line-height:1.6}.grubby-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700}.grubby-avatar{flex:none;width:48px;height:48px;display:inline-block;position:relative}.grubby-avatar.is-large{width:132px;height:132px}.grubby-avatar svg{width:100%;height:100%;display:block;overflow:visible}.grubby-steam{opacity:0}.grubby-avatar.is-thinking{animation:1.6s ease-in-out infinite grubby-bob}.grubby-avatar.is-thinking .grubby-steam{animation:2s ease-in-out infinite grubby-steam}.grubby-avatar.is-thinking .grubby-eyes{animation:2.4s ease-in-out infinite grubby-look}.grubby-toolbar{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;font-size:13px;display:flex}.grubby-toolbar button{text-underline-offset:4px;color:var(--pine);padding:8px 0;font-weight:700;text-decoration:underline}.grubby-chat{border:1px solid var(--rule);background:#fffdf9;border-radius:24px;overflow:hidden;box-shadow:0 18px 50px -34px #153c3245}.grubby-chat-heading{border-bottom:1px solid var(--rule);background:var(--sage);align-items:center;gap:12px;padding:20px 26px;display:flex}.grubby-chat-heading h2{font-size:18px;font-weight:750}.grubby-chat-heading p{color:var(--muted);font-size:12px}.grubby-status{color:var(--muted);margin-left:auto;font-size:12px}.grubby-transcript{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;gap:18px;min-height:180px;max-height:420px;padding:26px;display:flex;overflow:auto}.grubby-message{white-space:pre-wrap;overflow-wrap:anywhere;max-width:86%;padding:15px 19px;font-size:16px;line-height:1.65}.grubby-message.is-assistant{background:#f1f2e9;border-radius:4px 18px 18px;align-self:flex-start}.grubby-message.is-user{background:var(--pine);color:var(--cream);border-radius:18px 4px 18px 18px;align-self:flex-end}.grubby-thinking{gap:5px;padding:12px 18px;display:flex}.grubby-thinking>span:not(.grubby-sr-only){background:var(--pine);border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite grubby-bob}.grubby-thinking>span:nth-child(2){animation-delay:.15s}.grubby-thinking>span:nth-child(3){animation-delay:.3s}.grubby-controls{padding:0 26px 20px}.grubby-answer{border-top:1px solid var(--rule);padding:18px 0 8px}.grubby-label{color:var(--muted);margin-bottom:10px;font-size:12px;font-weight:700}.grubby-choices{flex-wrap:wrap;gap:8px;display:flex}.grubby-choices button{background:#fffdf9;border:1px solid #9bac9d;border-radius:999px;min-height:44px;padding:10px 16px;font-size:14px;transition:background .15s}.grubby-choices button:hover,.grubby-choices button[aria-pressed=true]{background:var(--pine);color:var(--cream);border-color:var(--pine)}.grubby-choices.is-multi{max-height:190px;padding:4px;overflow:auto}.grubby-multi-actions{margin-top:14px}.grubby-specific{gap:10px;margin-top:12px;display:flex}.grubby-specific input{border:1px solid var(--rule-strong);background:#fff;border-radius:10px;flex:1;min-width:0;max-width:100%;padding:10px 14px}.grubby-primary{background:var(--hot);color:var(--action-ink);border-radius:10px;justify-content:center;align-items:center;gap:22px;min-height:44px;padding:12px 18px;font-size:14px;font-weight:700;display:inline-flex}.grubby-primary:hover{background:var(--hot-hover)}.grubby-composer{border:1px solid var(--rule-strong);background:#fff;border-radius:16px;align-items:flex-end;gap:10px;margin-top:18px;padding:10px;display:flex}.grubby-composer:focus-within{outline:2px solid var(--pine);outline-offset:2px}.grubby-composer textarea{resize:vertical;background:0 0;outline:none;flex:1;min-width:0;max-height:180px;padding:5px;font-size:15px;line-height:1.5}.grubby-send{background:var(--pine);width:44px;height:44px;color:var(--cream);border-radius:50%;flex:none;font-size:26px;font-weight:500}.grubby-flow button:disabled{opacity:.45;cursor:not-allowed}.grubby-disclosure{color:var(--muted);margin-top:12px;font-size:11px;line-height:1.6}.grubby-disclosure a{text-decoration:underline}.grubby-error{background:var(--warn-soft);border-radius:12px;padding:16px;font-size:14px;line-height:1.5}.grubby-error button{margin:12px 20px 0 0;font-weight:700;text-decoration:underline}.grubby-review>h2{margin-top:32px;font-size:30px;font-weight:750;line-height:1.1}.grubby-review>p{color:var(--muted);margin:14px 0 26px;line-height:1.6}.grubby-collected{border-top:1px solid var(--rule);margin-top:24px;padding-top:16px;font-size:14px}.grubby-collected summary{cursor:pointer;justify-content:space-between;padding:8px 0;font-weight:700;display:flex}.grubby-collected summary span{color:var(--muted);font-weight:400}.grubby-collected dl{grid-template-columns:1fr 1fr;gap:16px;padding:22px 0;display:grid}.grubby-collected dt{color:var(--muted);font-size:12px}.grubby-collected dd{overflow-wrap:anywhere}.grubby-collected button{font-weight:700;text-decoration:underline}.grubby-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes grubby-steam{0%,to{opacity:0;translate:0 4px}50%{opacity:.65;translate:0 -2px}}@keyframes grubby-bob{0%,to{translate:0}50%{translate:0 -4px}}@keyframes grubby-look{0%,to{translate:0}50%{translate:-3px 1px}}@media (max-width:600px){.grubby-flow{padding:28px 16px 12px}.grubby-intro{align-items:flex-start;gap:18px;margin-bottom:24px}.grubby-avatar.is-large{width:64px;height:64px;margin-top:24px}.grubby-intro h1{font-size:32px}.grubby-intro p:not(.grubby-eyebrow){font-size:14px}.grubby-eyebrow{font-size:9px}.grubby-chat{border-radius:18px}.grubby-chat-heading{padding:16px}.grubby-status{display:none}.grubby-transcript{min-height:160px;max-height:360px;padding:16px}.grubby-message{max-width:94%;padding:12px 15px;font-size:15px}.grubby-controls{padding:0 16px 16px}.grubby-choices button{padding:9px 12px;font-size:13px}.grubby-specific{flex-wrap:wrap}.grubby-specific input{flex-basis:160px}.grubby-specific button{flex:1}.grubby-toolbar{font-size:12px}.grubby-collected dl{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.grubby-avatar,.grubby-avatar .grubby-eyes,.grubby-avatar .grubby-steam,.grubby-thinking>span{animation:none!important}.grubby-flow *{transition:none!important}}
