:root{--page-background:#f4f6f8;--text:#1f2937;color:var(--text);background:var(--page-background);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{background:var(--page-background);color:var(--text);margin:0}button,input,textarea{font:inherit}button{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:.65rem;padding:.65rem 1rem;font-weight:650}button:hover:not(:disabled){background:#1d4ed8}button:disabled{cursor:not-allowed;opacity:.5}button.secondary{color:#374151;background:#e5e7eb}button.secondary:hover:not(:disabled){background:#d1d5db}.shell{gap:1rem;max-width:920px;min-height:100vh;margin:0 auto;padding:2rem 1rem;display:grid}.app-content{gap:1rem;display:grid}.page-header,.composer-footer,.composer-actions{align-items:center;gap:.75rem;display:flex}.page-header{justify-content:space-between}.header-actions{align-items:center;gap:.65rem;display:flex}.eyebrow{color:#2563eb;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}h1{margin:.15rem 0 0;font-size:clamp(1.75rem,4vw,2.35rem)}.subtitle{color:#6b7280;margin:.25rem 0 0}.status{white-space:nowrap;border-radius:999px;padding:.35rem .7rem;font-size:.8rem;font-weight:700}.status-idle{color:#4b5563;background:#e5e7eb}.status-working{color:#92400e;background:#fef3c7}.status-ready{color:#166534;background:#dcfce7}.status-error{color:#991b1b;background:#fee2e2}.login-modal{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10;background:#0f172aad;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.login-modal[hidden]{display:none}.permission-modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:20;background:#0f172a94;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.permission-modal[hidden]{display:none}.permission-panel{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;width:100%;max-width:31rem;padding:1.5rem;box-shadow:0 24px 64px #00000047}.permission-panel h2{margin:.2rem 0 .5rem}.permission-description{color:#4b5563;margin:0 0 1rem}.permission-details{background:#f8fafc;border:1px solid #e5e7eb;border-radius:.65rem;grid-template-columns:max-content 1fr;gap:.25rem .75rem;margin:0 0 1rem;padding:.75rem;display:grid}.permission-details:empty{display:none}.permission-details dt{color:#6b7280;text-transform:capitalize;font-size:.8rem;font-weight:700}.permission-details dd{overflow-wrap:anywhere;margin:0}.permission-actions{justify-content:flex-end;gap:.65rem;display:flex}.login-panel{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;width:100%;max-width:30rem;padding:2rem;box-shadow:0 24px 64px #00000047}.login-panel h2{margin:.2rem 0 1.25rem}.login-form{gap:.5rem;display:grid}.login-form label{font-size:.85rem;font-weight:700}.login-form input{color:#111827;border:1px solid #d1d5db;border-radius:.65rem;padding:.7rem .8rem}.login-form input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1f}.login-error{color:#991b1b;margin:.35rem 0;font-size:.85rem}.login-form button[type=submit]{margin-top:.75rem}.composer{background:#fff;border:1px solid #e5e7eb;border-radius:.9rem;padding:1rem;box-shadow:0 8px 30px #0f172a0d}.composer textarea{color:#111827;border:1px solid #d1d5db;border-radius:.65rem;outline:none;width:100%;padding:.7rem .8rem}.composer textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.hint{color:#6b7280;margin:.55rem 0 0;font-size:.78rem}code{background:#f3f4f6;border-radius:.25rem;padding:.08rem .25rem}.messages{background:#fff;border:1px solid #e5e7eb;border-radius:.9rem;min-height:380px;padding:1rem;overflow-y:auto}.empty-state{color:#6b7280;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;min-height:340px;display:flex}.empty-state strong{color:#374151}.message{border-radius:.85rem;max-width:78ch;margin:0 auto 1rem;padding:.8rem 1rem}.message:last-child{margin-bottom:0}.message-user{background:#eff6ff;margin-left:auto}.message-assistant{background:#f9fafb;border:1px solid #eef0f3;margin-right:auto}.message-system{color:#9a3412;background:#fff7ed;font-size:.9rem}.message-label{color:#6b7280;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.3rem;font-size:.72rem;font-weight:800}.message-body>div+div{margin-top:.75rem}.message-body p:first-child{margin-top:0}.message-body p:last-child{margin-bottom:0}.message-body pre{color:#f9fafb;background:#111827;border-radius:.5rem;padding:.75rem;overflow-x:auto}.message-body img{border-radius:.65rem;max-width:100%}.image-gallery{overscroll-behavior:contain;grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));grid-auto-rows:10rem;gap:.5rem;max-height:22rem;padding-right:.35rem;display:grid;overflow-y:auto}.assistant-image,.user-image{object-fit:cover;background:#fff;border:1px solid #e5e7eb;width:100%;min-width:0;height:100%;padding:.25rem;display:block}.composer textarea{resize:vertical;min-height:5rem;display:block}.composer-footer{justify-content:space-between;min-height:2.75rem;margin-top:.85rem}.composer-actions{flex-shrink:0}.attachment{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.65rem;align-items:center;gap:.6rem;margin-top:.6rem;padding:.4rem .6rem;font-size:.8rem;font-weight:600;display:flex}.attachment button{color:#1d4ed8;background:0 0;padding:.15rem .5rem;font-size:.75rem}.attachment button:hover:not(:disabled){background:#dbeafe}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}@media (width<=620px){.shell{padding:1rem .65rem}.page-header{flex-direction:column;align-items:flex-start}.header-actions{justify-content:space-between;width:100%}.composer-footer{flex-direction:column;align-items:stretch}.composer-actions{grid-template-columns:repeat(3,1fr);display:grid}.image-gallery{grid-template-columns:repeat(auto-fill,minmax(min(100%,8.5rem),1fr));grid-auto-rows:8.5rem;max-height:18rem}}:root[data-theme=dark]{--page-background:#111827;--text:#e5e7eb;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] button.secondary{color:#f3f4f6;background:#374151}:root[data-theme=dark] button.secondary:hover:not(:disabled){background:#4b5563}:root[data-theme=dark] .subtitle,:root[data-theme=dark] .hint,:root[data-theme=dark] .message-label{color:#9ca3af}:root[data-theme=dark] .composer,:root[data-theme=dark] .messages{background:#1f2937;border-color:#374151;box-shadow:0 8px 30px #0003}:root[data-theme=dark] .composer textarea{color:#f3f4f6;background:#111827;border-color:#4b5563}:root[data-theme=dark] .login-panel,:root[data-theme=dark] .permission-panel{background:#1f2937;border-color:#374151;box-shadow:0 24px 64px #0000006b}:root[data-theme=dark] .permission-description{color:#d1d5db}:root[data-theme=dark] .permission-details{background:#111827;border-color:#4b5563}:root[data-theme=dark] .login-form input{color:#f3f4f6;background:#111827;border-color:#4b5563}:root[data-theme=dark] code{color:#e5e7eb;background:#374151}:root[data-theme=dark] .empty-state{color:#9ca3af}:root[data-theme=dark] .empty-state strong{color:#e5e7eb}:root[data-theme=dark] .message-user{background:#172554}:root[data-theme=dark] .message-assistant{background:#111827;border-color:#374151}:root[data-theme=dark] .message-system{color:#fed7aa;background:#431407}:root[data-theme=dark] .assistant-image,:root[data-theme=dark] .user-image{background:#111827;border-color:#4b5563}:root[data-theme=dark] .attachment{color:#93c5fd;background:#172554;border-color:#1e3a8a}:root[data-theme=dark] .attachment button{color:#93c5fd}:root[data-theme=dark] .attachment button:hover:not(:disabled){background:#1e3a8a}:root[data-theme=dark] .status-idle{color:#d1d5db;background:#374151}:root[data-theme=dark] .status-working{color:#fde68a;background:#451a03}:root[data-theme=dark] .status-ready{color:#bbf7d0;background:#052e16}:root[data-theme=dark] .status-error{color:#fecaca;background:#450a0a}
