:root{--bg-canvas:#fafafa;--bg-surface:#fff;--bg-surface-raised:#f4f4f5;--bg-surface-sunken:#f4f4f5;--border-subtle:#e4e4e7;--border-default:#d4d4d8;--text-primary:#18181b;--text-secondary:#71717a;--text-tertiary:#a1a1aa;--text-disabled:#d4d4d8;--brand-teal:#14afbf;--brand-teal-subtle:#14afbf1a;--gradient-brand:radial-gradient(58% 52% at 10% 8%, #14afbf47, transparent 68%), radial-gradient(52% 52% at 94% 98%, #14afbf29, transparent 70%), var(--bg-canvas);--brand-red:#e8483d;--brand-red-subtle:#e8483d14;--accent-primary:#0c7f8a;--accent-primary-hover:#0a6f7b;--accent-primary-subtle:#14afbf1a;--on-accent:#fff;--positive:#16a34a;--negative:#dc2626;--neutral-metric:#a1a1aa;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-card:0 1px 2px #0000000a, 0 1px 8px #00000008}html,body{background:var(--bg-canvas);color:var(--text-primary);-webkit-font-smoothing:antialiased;margin:0;padding:0}*{box-sizing:border-box}a{color:var(--text-primary)}a:hover{color:var(--accent-primary-hover)}button,input,textarea{font-family:inherit}button{-webkit-tap-highlight-color:transparent}@keyframes rediqDot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes relay{0%,to{transform:translateY(calc(7px * var(--rk,1))) scale(.72);opacity:.18}26%{opacity:1;transform:translateY(0)scale(1.06)}62%{transform:translateY(calc(-5px * var(--rk,1))) scale(.86);opacity:.4}}.relay-loader svg{transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:reduce){.relay-loader:not(.relay-loader--rest) svg{opacity:.55;animation:none}.relay-loader:not(.relay-loader--rest) svg:first-child,.relay-loader:not(.relay-loader--rest) svg:last-child{display:none}*{transition:none!important;animation:none!important}}.hover-surface:hover{background:var(--bg-surface-raised)!important}.hover-accent-dark:hover{background:var(--accent-primary-hover)!important}.hover-danger:hover{background:var(--brand-red-subtle)!important}.hover-danger-solid:hover{background:#c42b26!important}.focus-ring-onwhite:focus-visible{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--accent-primary)}.focus-ring-oncanvas:focus-visible{box-shadow:0 0 0 2px var(--bg-canvas), 0 0 0 4px var(--accent-primary)}.focus-ring-solid:focus-visible{box-shadow:0 0 0 2px var(--accent-primary)}.input-focus-onwhite:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--accent-primary)}.input-focus-soft:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #fff,0 0 0 3px #18181b26}.composer-focus-within:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--bg-canvas), 0 0 0 4px var(--accent-primary)}textarea:focus,button:focus{outline:none}.chat-kebab{opacity:0;pointer-events:none;transition:opacity .1s}.chat-row:hover .chat-kebab,.chat-row:focus-within .chat-kebab,.chat-kebab.is-open{opacity:1;pointer-events:auto}@media (max-width:767px),(hover:none){.chat-kebab{opacity:1;pointer-events:auto}}.mobile-topbar,.mobile-only,.sidebar-backdrop,.history-panel-backdrop{display:none}.chat-sidebar{flex:none;width:240px}.desktop-only{display:flex}@media (max-width:767px){.mobile-topbar,.mobile-only{display:flex}.desktop-only{display:none}.chat-sidebar{z-index:50;width:min(85vw,300px);max-width:300px;transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.chat-sidebar.is-open{box-shadow:var(--shadow-card);transform:translate(0)}.history-panel{z-index:50;max-width:320px;transition:transform .22s;position:fixed;inset:0 0 0 auto;transform:translate(100%);width:min(85vw,320px)!important;padding:16px 12px 12px!important}.history-panel.is-open{box-shadow:var(--shadow-card);transform:translate(0)}.sidebar-backdrop.is-open,.history-panel-backdrop.is-open{z-index:40;background:#18181b66;animation:.15s overlayIn;display:block;position:fixed;inset:0}.suggestions-grid{grid-template-columns:1fr!important}.chat-thread-scroll{padding:20px 16px 16px!important}.composer-shell{padding:0 16px 16px!important}.empty-state-shell{padding:20px 16px!important}.empty-state-top-content{padding:20px 16px 0!important}.empty-state-greeting{font-size:22px!important;line-height:28px!important}.empty-state-heading{margin-bottom:20px!important;font-size:22px!important;line-height:28px!important}.auth-shell{padding:24px 16px!important}.user-bubble{max-width:85%!important}input,textarea{font-size:16px!important}}@keyframes rediqSpin{to{transform:rotate(360deg)}}@keyframes modalIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}@keyframes stepSlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes blinkCursor{0%,to{opacity:1}50%{opacity:.15}}
