.nina-modal[data-nina-ui="2"]{top:var(--nina-keyboard-top,0);height:var(--nina-viewport-height,100dvh);padding:20px}.nina-modal[data-nina-ui="2"] .nina-card{display:flex;flex-direction:column;width:min(720px,calc(100vw - 40px));height:min(650px,calc(var(--nina-viewport-height,100dvh) - 40px));max-height:none;min-height:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text)}.nina-modal[data-nina-ui="2"] .nina-card [hidden]{display:none!important}.nina-modal[data-nina-ui="2"] .nina-head{display:flex;align-items:center;justify-content:space-between;flex:none;padding:16px 22px;border-bottom:1px solid var(--line)}.nina-modal[data-nina-ui="2"] .nina-card .nina-head h3{margin:0;font-size:1.1rem;line-height:1.3}.nina-modal[data-nina-ui="2"] .nina-head>div>span{display:block;margin-top:3px;font-size:.75rem;color:var(--muted)}.nina-modal[data-nina-ui="2"] .nina-head-actions{display:flex;gap:6px}.nina-modal[data-nina-ui="2"] .nina-icon{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:1.5rem;cursor:pointer}.nina-modal[data-nina-ui="2"] .nina-icon:hover{background:var(--surface-2);color:var(--text)}.nina-modal[data-nina-ui="2"] .nina-icon:disabled{opacity:.5;cursor:wait}.nina-modal[data-nina-ui="2"] .nina-conversation{display:flex;flex:1;flex-direction:column;min-height:0}.nina-modal[data-nina-ui="2"] .nina-messages{display:flex;flex:1;min-height:0;flex-direction:column;gap:16px;overflow-y:auto;overscroll-behavior:contain;padding:22px}.nina-modal[data-nina-ui="2"] .nina-empty{max-width:350px;margin:auto;text-align:center;color:var(--muted);line-height:1.6}.nina-modal[data-nina-ui="2"] .nina-empty strong{display:block;margin-bottom:6px;font-size:1.1rem;color:var(--text);font-weight:500}.nina-modal[data-nina-ui="2"] .nina-message{display:flex;flex-direction:column;max-width:90%;margin:0;align-self:flex-start}.nina-modal[data-nina-ui="2"] .nina-user{align-self:flex-end}.nina-modal[data-nina-ui="2"] .nina-bubble{padding:12px 15px;border:1px solid var(--line);border-radius:17px;background:var(--surface-2);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.94rem}.nina-modal[data-nina-ui="2"] .nina-user .nina-bubble{background:var(--accent-dim);border-color:color-mix(in srgb,var(--accent) 25%,var(--line))}.nina-modal[data-nina-ui="2"] .nina-chat-footer{flex:none;padding:8px 18px 14px;background:var(--surface)}.nina-modal[data-nina-ui="2"] .nina-composer{display:flex;align-items:flex-end;gap:8px;padding:7px;border:1px solid var(--line-strong);border-radius:18px;background:var(--surface);box-shadow:0 8px 30px #0001}.nina-modal[data-nina-ui="2"] .nina-composer textarea{flex:1;min-width:0;min-height:38px;max-height:120px;resize:none;padding:9px 8px;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:1rem;line-height:1.4;overflow-y:auto}.nina-modal[data-nina-ui="2"] .nina-composer:focus-within{outline:2px solid var(--accent);outline-offset:2px}.nina-modal[data-nina-ui="2"] .nina-composer button{display:grid;place-items:center;flex:none;width:38px;height:38px;padding:8px;border:0;border-radius:11px;background:var(--accent);color:var(--accent-contrast);cursor:pointer}.nina-modal[data-nina-ui="2"] .nina-composer button svg{width:22px;height:22px;fill:currentColor}.nina-modal[data-nina-ui="2"] .nina-composer button:disabled{opacity:.45;cursor:wait}.nina-modal[data-nina-ui="2"] .nina-quick-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 3px}.nina-modal[data-nina-ui="2"] .nina-quick-actions button,.nina-modal[data-nina-ui="2"] .nina-review-head>button{padding:4px 0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.8rem;cursor:pointer}.nina-modal[data-nina-ui="2"] .nina-quick-actions #ninaReviewOpen{color:var(--accent)}.nina-modal[data-nina-ui="2"] .nina-quick-actions button:hover,.nina-modal[data-nina-ui="2"] .nina-review-head>button:hover{text-decoration:underline}.nina-modal[data-nina-ui="2"] .nina-privacy-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 3px;color:var(--muted);font-size:.7rem;line-height:1.4}.nina-modal[data-nina-ui="2"] .nina-about{position:relative;flex:none}.nina-modal[data-nina-ui="2"] .nina-about summary{cursor:pointer;list-style:none;text-decoration:underline;white-space:nowrap}.nina-modal[data-nina-ui="2"] .nina-about-content{position:absolute;right:0;bottom:24px;width:min(360px,calc(100vw - 70px));max-height:240px;overflow:auto;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow);font-size:.8rem;z-index:1}.nina-modal[data-nina-ui="2"] .nina-about-content p{margin:0;line-height:1.55}.nina-modal[data-nina-ui="2"] .nina-status{margin:0 3px 8px;font-size:.82rem;color:var(--muted);line-height:1.45;overflow-wrap:anywhere}.nina-modal[data-nina-ui="2"] .nina-status:empty{display:none}.nina-modal[data-nina-ui="2"] .nina-review{flex:1;min-height:0;overflow-y:auto;padding:18px 22px}.nina-modal[data-nina-ui="2"] .nina-review-head h4{margin:8px 0;font-size:1.15rem}.nina-modal[data-nina-ui="2"] .nina-review-head p,.nina-modal[data-nina-ui="2"] .nina-review-note{margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}.nina-modal[data-nina-ui="2"] .nina-enquiry-form{display:grid;gap:14px;margin-top:18px}.nina-modal[data-nina-ui="2"] .nina-enquiry-form label{display:grid;gap:6px;font-size:.85rem;color:var(--text)}.nina-modal[data-nina-ui="2"] .nina-enquiry-form textarea,.nina-modal[data-nina-ui="2"] .nina-enquiry-form input:not([type=checkbox]){width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-2);color:var(--text);font:inherit;min-height:42px}.nina-modal[data-nina-ui="2"] .nina-optional-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.nina-modal[data-nina-ui="2"] .nina-enquiry-form .nina-consent{display:flex;align-items:flex-start;gap:10px;font-size:.8rem;line-height:1.5}.nina-modal[data-nina-ui="2"] .nina-consent input{flex:none;margin-top:4px}.nina-modal[data-nina-ui="2"] .nina-card button:focus-visible,.nina-modal[data-nina-ui="2"] .nina-about summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.nina-modal[data-nina-ui="2"] .nina-enquiry-form textarea:focus-visible,.nina-modal[data-nina-ui="2"] .nina-enquiry-form input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:600px){.nina-modal[data-nina-ui="2"]{padding:10px}.nina-modal[data-nina-ui="2"] .nina-card{width:calc(100vw - 20px);height:calc(var(--nina-viewport-height,100dvh) - 20px);border-radius:17px}.nina-modal[data-nina-ui="2"] .nina-head{padding:13px 16px}.nina-modal[data-nina-ui="2"] .nina-messages{padding:16px;gap:14px}.nina-modal[data-nina-ui="2"] .nina-message{max-width:94%}.nina-modal[data-nina-ui="2"] .nina-chat-footer{padding:8px 11px 12px}.nina-modal[data-nina-ui="2"] .nina-privacy-row{font-size:.68rem;gap:8px}.nina-modal[data-nina-ui="2"] .nina-review{padding:16px}.nina-modal[data-nina-ui="2"] .nina-enquiry-form input,.nina-modal[data-nina-ui="2"] .nina-enquiry-form textarea{font-size:16px}.nina-modal[data-nina-ui="2"] .nina-optional-fields{grid-template-columns:1fr}.nina-modal[data-nina-ui="2"] .nina-bubble{font-size:.9rem}}@media(prefers-reduced-motion:reduce){.nina-modal[data-nina-ui="2"] .nina-card{animation:none}.nina-modal[data-nina-ui="2"] .nina-card *{scroll-behavior:auto!important}}

/* Contact form's optional chat entry uses the site's theme tokens. */
#contactModal .contact-nina-option { display:flex; align-items:center; gap:10px 14px; flex-wrap:wrap; margin:18px 0; }
#contactModal .contact-nina-button { display:inline-flex; align-items:center; justify-content:center; gap:9px; background:var(--accent-dim); color:var(--accent); border:1px solid var(--accent); }
#contactModal .contact-nina-button:hover { background:var(--accent); color:var(--accent-contrast); }
#contactModal .contact-nina-button:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
#contactModal #contactNinaHint { color:var(--muted); font-size:.82rem; }
@media(max-width:480px) { #contactModal .contact-nina-option { align-items:flex-start; gap:8px; } #contactModal #contactNinaHint { flex-basis:100%; } }
