:root{color-scheme:light;--bg:#eef3f8;--panel:hsla(0,0%,100%,.9);--panel-border:rgba(15,23,42,.1);--text:#0f172a;--muted:#64748b;--accent:#00b5e2;--accent-strong:#09c;--error:#b91c1c;--success:#15803d;--shadow:0 22px 55px rgba(15,23,42,.12);--radius-xl:28px;--radius-lg:22px;--radius-md:18px;--radius-sm:14px;--space-1:8px;--space-2:12px;--space-3:16px;--space-4:20px;--space-5:24px;--space-6:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;overflow:hidden;color:var(--text);font-family:Plus Jakarta Sans,Avenir Next,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(14,165,233,.1),transparent 28%),radial-gradient(circle at top right,rgba(0,181,226,.14),transparent 26%),linear-gradient(180deg,#f6f9fd 0,var(--bg) 100%)}button,textarea{font:inherit}.chat-shell{height:100dvh;min-height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr);justify-items:center;grid-gap:8px;gap:8px;padding:16px}.brand-bar{width:min(860px,100%);padding:2px 4px}.brand-inline{display:flex;align-items:center;gap:12px}.chat-frame{width:min(860px,100%);height:100%;min-height:0;position:relative;border:1px solid var(--panel-border);border-radius:var(--radius-xl);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden}.brand-inline h1{margin:0;font-size:clamp(1rem,2.3vw,1.2rem);letter-spacing:-.01em;font-weight:700}.brand-logo{height:26px;width:auto;display:block}.chat-progress,.message-meta{display:inline-flex;align-items:center;gap:10px}.messages-list{height:100%;overflow-y:auto;display:grid;align-content:start;grid-gap:14px;gap:14px;padding:18px 16px 220px;scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.42) transparent}.messages-list::-webkit-scrollbar{width:8px}.messages-list::-webkit-scrollbar-thumb{background:rgba(100,116,139,.42);border-radius:999px}.composer button:focus-visible,.composer textarea:focus-visible,.prompt-chip:focus-visible{outline:3px solid rgba(0,181,226,.26);outline-offset:2px}.prompt-chip:disabled{opacity:.6;cursor:not-allowed}.message{max-width:min(640px,92%);border-radius:var(--radius-lg);padding:14px 16px;border:1px solid transparent;animation:rise .22s ease}.message-user{justify-self:end;background:linear-gradient(180deg,#007a9e,#005f85);color:#fff;border-bottom-right-radius:var(--space-1)}.message-assistant{justify-self:start;background:hsla(0,0%,100%,.96);border-color:var(--panel-border);border-bottom-left-radius:var(--space-1)}.message-loading{opacity:.95}.tone-positive{border-color:rgba(21,128,61,.2)}.tone-warning{border-color:rgba(202,138,4,.18)}.tone-error{border-color:rgba(185,28,28,.22)}.message-meta{justify-content:space-between;font-size:.78rem;opacity:.86}.loading-inline{display:inline-flex;align-items:center;gap:6px}.message-content{margin-top:10px;line-height:1.6}.message-content p{margin:0}.message-content p+p{margin-top:10px}.message-content ol,.message-content ul{margin:8px 0 0 18px;padding:0}.message-content li+li{margin-top:4px}.message-content strong{font-weight:700}.message-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.92em;background:rgba(15,23,42,.08);padding:.1em .35em;border-radius:6px}.floating-composer-wrap{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);width:calc(100% - 24px);max-width:820px;display:grid;grid-gap:10px;gap:10px}.quick-prompts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.prompt-chip{border:1px solid rgba(0,181,226,.22);background:hsla(0,0%,100%,.94);color:var(--accent-strong);border-radius:999px;padding:8px 13px;cursor:pointer;font-weight:600;font-size:.88rem;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease}.prompt-chip:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(0,181,226,.38);box-shadow:0 8px 20px rgba(0,181,226,.18);background:#fff}.composer{display:grid;grid-gap:8px;gap:8px;border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:hsla(0,0%,100%,.96);box-shadow:0 16px 34px rgba(15,23,42,.12);padding:10px}.composer-label{font-size:.82rem;color:var(--muted);padding-left:4px}.composer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:stretch}.composer textarea{width:100%;resize:none;height:46px;min-height:46px;max-height:46px;padding:11px 14px;border-radius:var(--radius-md);border:1px solid rgba(15,23,42,.12);background:#fff;color:var(--text);outline:none;box-shadow:inset 0 1px 0 rgba(248,250,252,.9);line-height:1.3;overflow-y:auto}.composer textarea:focus{border-color:rgba(0,181,226,.48);box-shadow:0 0 0 4px rgba(0,181,226,.15)}.composer button{border:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;min-height:46px;padding:0 18px;border-radius:var(--radius-sm);background:linear-gradient(180deg,#007a9e,#005f85);color:#fff;cursor:pointer;font-weight:600;box-shadow:0 14px 28px rgba(0,181,226,.28);transition:transform .14s ease,box-shadow .14s ease}.composer button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 32px rgba(0,181,226,.32)}.composer button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.chat-progress{color:var(--muted);font-size:.82rem;justify-self:center;text-align:center}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:980px){.chat-shell{padding:12px}}@media (max-width:640px){.chat-shell{padding:8px;gap:6px}.chat-frame{border-radius:var(--radius-lg)}.messages-list{padding:12px 10px 226px}.brand-inline{gap:8px}.brand-logo{height:22px}.brand-inline h1{font-size:.95rem}.floating-composer-wrap{width:calc(100% - 14px);bottom:10px}.quick-prompts{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.prompt-chip{flex:0 0 auto}.composer-row{grid-template-columns:1fr}.composer button{width:100%}}