.service-info-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;display:flex;align-items:center;justify-content:center;padding:var(--space-4);padding-top:max(var(--space-4),env(safe-area-inset-top,0px));padding-bottom:max(var(--space-4),env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--text) 28%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:service-info-overlay-in .2s ease both}@keyframes service-info-overlay-in{0%{opacity:0}}.service-info-dialog{width:100%;max-width:22rem;max-height:min(85dvh,32rem);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:service-info-dialog-in .24s cubic-bezier(.22,1,.36,1) both}@keyframes service-info-dialog-in{0%{opacity:0;transform:translateY(.35rem) scale(.98)}}.service-info-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-2);border-bottom:1px solid var(--border-subtle)}.service-info-title{margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:1.0625rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.service-info-title-icon{font-size:1.15rem;line-height:1;color:var(--accent)}.service-info-close{width:2.25rem;height:2.25rem;padding:0;font-size:1.35rem;line-height:1;color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-md)}.service-info-close:hover{color:var(--text);background:var(--surface-muted)}.service-info-tabs{display:flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-3) var(--space-3) var(--space-2);border-bottom:1px solid var(--border-subtle);background:color-mix(in srgb,var(--surface-muted) 55%,var(--surface))}.service-info-tab{flex:1 1 auto;min-width:0;padding:.45rem .5rem;font-size:.75rem;font-weight:600;letter-spacing:.01em;color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);white-space:nowrap}.service-info-tab:hover{color:var(--text);background:var(--surface)}.service-info-tab--active{color:var(--accent);background:var(--surface);border-color:color-mix(in srgb,var(--accent) 28%,var(--border-subtle));box-shadow:var(--shadow-xs)}.service-info-links{flex:1;min-height:0;overflow-y:auto;padding:var(--space-3) var(--space-4)}.service-info-list{margin:0;padding:0;list-style:none}.service-info-list li{margin:0 0 var(--space-1)}.service-info-list li:last-child{margin-bottom:0}.service-info-link{display:block;padding:.55rem .65rem;font-size:.875rem;font-weight:500;color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:background var(--transition-fast),color var(--transition-fast)}.service-info-link:hover{background:var(--surface-muted);color:var(--accent)}.service-info-copy{margin:0;padding:var(--space-2) var(--space-4) var(--space-3);font-size:.6875rem;color:var(--text-muted);text-align:center;border-top:1px solid var(--border-subtle)}.service-info-trigger{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .65rem;font-size:.8125rem;font-weight:600;color:var(--text-secondary);background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.service-info-trigger:hover{color:var(--text);background:var(--surface);border-color:var(--border)}.service-info-trigger-icon{font-size:1rem;line-height:1;color:var(--accent)}.service-info-trigger-label{letter-spacing:.01em}@media(max-width:420px){.service-info-trigger-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.service-info-trigger{position:relative;padding:.45rem}}.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#161b2259;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);animation:login-overlay-in .22s ease both}@keyframes login-overlay-in{0%{opacity:0}}.login-modal{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--space-6);max-width:26rem;width:100%;box-shadow:var(--shadow-lg);position:relative;animation:login-modal-in .32s cubic-bezier(.22,1,.36,1) both}@keyframes login-modal-in{0%{opacity:0;transform:translateY(.45rem) scale(.98)}}.login-title{margin:0 0 var(--space-5);font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.login-label{display:block;font-size:.8125rem;font-weight:600;margin-bottom:var(--space-2);color:var(--text-secondary)}.login-input{width:100%;padding:.65rem .85rem;font-size:1rem;border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-3);box-sizing:border-box;background:var(--surface-muted);box-shadow:var(--shadow-inset-soft)}.login-input:focus{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--surface)}.login-input--code{letter-spacing:.5em;text-align:center}.login-error-inline{margin:-.25rem 0 var(--space-2);font-size:.875rem;color:var(--danger)}.login-submit{width:100%;padding:.7rem var(--space-4);font-size:1rem;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius-md);margin-top:var(--space-1);box-shadow:var(--shadow-sm)}.login-submit:hover:not(:disabled){background:var(--accent-hover);color:#fff}.login-submit:disabled{opacity:.55}.login-hint{margin:0 0 var(--space-4);font-size:.875rem;color:var(--text-muted);line-height:1.5}.login-hint-email{font-weight:600;color:var(--text-secondary);word-break:break-all}.login-consents{margin:var(--space-3) 0 var(--space-2);display:flex;flex-direction:column;gap:var(--space-2)}.login-consent-check{display:flex;align-items:flex-start;gap:var(--space-3);font-size:.8125rem;color:var(--text-secondary);cursor:pointer;line-height:1.45;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid transparent}.login-consent-check:hover{background:var(--surface-muted);border-color:var(--border-subtle)}.login-consent-check input{margin-top:.2rem;flex-shrink:0;accent-color:var(--accent)}.login-consent-check a{color:var(--accent);font-weight:500}.login-resend{display:block;width:100%;margin-top:var(--space-3);padding:var(--space-3);font-size:.875rem;font-weight:500;color:var(--text-muted);background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer}.login-resend:hover:not(:disabled){color:var(--accent);background:var(--accent-soft);border-color:transparent}.login-resend:disabled{cursor:not-allowed;opacity:.55}.login-close{position:absolute;top:var(--space-3);right:var(--space-3);width:2.25rem;height:2.25rem;padding:0;font-size:1.35rem;line-height:1;color:var(--text-muted);background:var(--surface-muted);border:1px solid var(--border-subtle);cursor:pointer;border-radius:999px;display:flex;align-items:center;justify-content:center}.login-close:hover{color:var(--text);background:var(--surface)}.consent-screen{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-8) var(--space-4);min-height:0;overflow-y:auto;overscroll-behavior:contain}.consent-screen-card{max-width:34rem;width:100%;background:var(--surface);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-6) var(--space-5);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);animation:consent-card-in .4s cubic-bezier(.22,1,.36,1) both}@keyframes consent-card-in{0%{opacity:0;transform:translateY(.35rem)}}.consent-screen-title{margin:0 0 var(--space-2);font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.consent-screen-intro{margin:0 0 var(--space-5);color:var(--text-muted);font-size:.9375rem;line-height:1.55}.consent-screen-form{display:flex;flex-direction:column;gap:var(--space-3)}.consent-screen-check{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;color:var(--text-secondary);font-size:.9375rem;line-height:1.45;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--surface-muted);transition:border-color var(--transition-fast),background var(--transition-fast)}.consent-screen-check:hover{border-color:var(--border);background:var(--surface)}.consent-screen-check input{margin-top:.2rem;flex-shrink:0;accent-color:var(--accent)}.consent-screen-link{color:var(--accent);font-weight:600;text-decoration:none}.consent-screen-link:hover{text-decoration:underline}.consent-screen-error{margin:0;color:var(--danger);font-size:.875rem;padding:var(--space-3);border-radius:var(--radius-md);background:var(--danger-bg)}.consent-screen-actions{margin-top:var(--space-2)}.consent-screen-submit{padding:.65rem var(--space-5);background:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;box-shadow:var(--shadow-sm)}.consent-screen-submit:hover:not(:disabled){background:var(--accent-hover);color:#fff}.consent-screen-submit:disabled{opacity:.55;cursor:not-allowed}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;color:var(--text-secondary);background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-shrink:0}.theme-toggle:hover{color:var(--accent);background:var(--surface);border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}.theme-toggle-svg{display:block}.home{--chat-thread-max: 1000px;--chat-avatar-size: 28px;--chat-avatar-gap: 1rem;--chat-avatar-shift: calc(var(--chat-avatar-size) + var(--chat-avatar-gap));min-height:0;height:100%;flex:1;display:flex;flex-direction:column;overflow:hidden;background:#f9fafb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}[data-theme=dark] .home{background:var(--chat-bg)}.home-menu-btn{display:none;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;color:var(--text-secondary);background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.home-menu-btn:hover{background:var(--surface);color:var(--text);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.home-menu-icon{display:inline-flex;align-items:center;justify-content:center;line-height:0;color:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.home-service-trigger,.home-theme-toggle{flex-shrink:0}.home-assistant-switch{display:inline-flex;flex-shrink:0;gap:0;padding:.125rem;border-radius:var(--radius-md);background:#f3f4f6;border:1px solid #e5e7eb}[data-theme=dark] .home-assistant-switch{background:color-mix(in srgb,var(--surface) 88%,#000);border-color:var(--border-subtle)}.home-assistant-switch-btn{position:relative;padding:.35rem .7rem;font-size:.8125rem;font-weight:600;font-family:inherit;line-height:1.2;border-radius:calc(var(--radius-md) - 2px);border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.home-assistant-switch-btn:hover{color:var(--text);background:color-mix(in srgb,var(--surface) 70%,transparent)}.home-assistant-switch-btn--active{background:#fff;border-color:#93c5fd;color:#1d4ed8;box-shadow:var(--shadow-xs)}[data-theme=dark] .home-assistant-switch-btn--active{background:var(--surface);border-color:#3b82f6;color:#93c5fd}.home-assistant-switch-label-short{display:none}.home-header-auth{margin-left:auto;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;max-width:min(100%,28rem)}.home-header-balance-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .65rem;font:inherit;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--surface-muted);color:var(--text);box-shadow:var(--shadow-xs);cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast)}.home-header-balance-btn:hover{background:var(--surface);border-color:var(--border)}.home-header-balance-label{font-size:.6875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.home-header-balance-value{font-size:.8125rem;font-weight:700;color:var(--accent);white-space:nowrap}.home-profile-wrap{position:relative}.home-profile-trigger{display:flex;align-items:center;gap:var(--space-2);padding:.35rem .65rem .35rem .35rem;border-radius:var(--radius-xl);border:1px solid var(--border-subtle);background:var(--surface-muted);color:var(--text);box-shadow:var(--shadow-xs);max-width:min(100%,14rem)}.home-profile-trigger:hover{background:var(--surface);border-color:var(--border)}.home-profile-avatar{width:2rem;height:2rem;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700;color:#fff;background:var(--accent);flex-shrink:0}.home-profile-name{font-size:.8125rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.home-profile-chevron{font-size:.65rem;color:var(--text-muted);flex-shrink:0;margin-left:.1rem}.home-profile-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:15.5rem;max-width:min(92vw,18rem);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);z-index:200;animation:home-modal-in .22s cubic-bezier(.22,1,.36,1) both}.home-profile-menu-head{padding-bottom:var(--space-3);margin-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}.home-profile-menu-name{margin:0 0 .15rem;font-size:.9375rem;font-weight:700;color:var(--text)}.home-profile-menu-email{margin:0;font-size:.75rem;color:var(--text-muted);word-break:break-all}.home-profile-menu-balance{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-muted);border:1px solid var(--border-subtle)}.home-profile-balance-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.home-profile-balance-value{font-size:.9375rem;font-weight:700;color:var(--text)}.home-profile-menu-item{display:block;width:100%;text-align:left;margin-top:var(--space-2);padding:.55rem .75rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--text);text-decoration:none;box-sizing:border-box}.home-profile-menu-item:hover{background:var(--surface-muted)}.home-profile-menu-item--accent{background:var(--accent);color:#fff;border-color:transparent}.home-profile-menu-item--accent:hover:not(:disabled){background:var(--accent-hover);color:#fff}.home-profile-menu-item--link{font-weight:500;color:var(--accent)}.home-profile-menu-item--danger{color:var(--danger);margin-top:var(--space-3);border-color:color-mix(in srgb,var(--danger) 22%,transparent);background:var(--danger-bg)}.home-profile-menu-item--danger:hover{border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.home-login,.home-logout{padding:.45rem .9rem;font-size:.8125rem;font-weight:600;border-radius:var(--radius-md)}.home-login{color:var(--accent);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs),var(--shadow-inset-soft)}.home-login:hover{background:var(--accent-ghost);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.home-logout{color:var(--text-muted);background:var(--surface-muted);border:1px solid var(--border-subtle)}.home-logout:hover{color:var(--text);background:var(--surface);border-color:var(--border)}.home-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#161b2259;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);animation:home-overlay-in .25s var(--transition-medium) both}@keyframes home-overlay-in{0%{opacity:0}}.home-modal{background:var(--surface);border-radius:var(--radius-xl);padding:var(--space-6);max-width:26rem;width:100%;border:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);animation:home-modal-in .32s cubic-bezier(.22,1,.36,1) both}@keyframes home-modal-in{0%{opacity:0;transform:translateY(.5rem) scale(.98)}}.home-modal-title{margin:0 0 var(--space-2);font-size:1.125rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.home-modal-hint{margin:0 0 var(--space-4);font-size:.875rem;line-height:1.55;color:var(--text-muted)}.home-modal-hint--tight{margin-top:calc(var(--space-2) * -1);margin-bottom:var(--space-3);font-size:.8125rem}.home-modal--move-folder{max-width:28rem}.home-modal-field-label{display:block;margin:0 0 var(--space-2);font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.home-modal-section-label{margin:0 0 var(--space-2);font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.home-modal-new-folder-block{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle)}.home-modal-input--no-mb{margin-bottom:var(--space-2)}.home-modal-link{color:var(--accent);text-decoration:none;font-weight:500}.home-modal-link:hover,.home-modal-link:focus-visible{text-decoration:underline}.home-modal-success{margin:0 0 var(--space-3);font-size:.875rem;color:var(--success);padding:var(--space-3);border-radius:var(--radius-md);background:var(--success-bg)}.home-topup-modal{max-width:28rem;max-height:min(90vh,42rem);overflow-y:auto}.home-topup-summary{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle)}.home-topup-balance-hero{margin:0 0 var(--space-2);font-size:1.75rem;font-weight:700;letter-spacing:-.03em;color:var(--text)}.home-topup-history-block{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle)}.home-topup-history-list{list-style:none;margin:0;padding:0;max-height:14rem;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-2)}.home-topup-history-item{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-muted);border:1px solid var(--border-subtle)}.home-topup-history-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.home-topup-history-desc{font-size:.875rem;color:var(--text-secondary);line-height:1.4}.home-topup-history-time{font-size:.75rem;color:var(--text-muted)}.home-topup-history-amount{flex-shrink:0;font-size:.875rem;font-weight:700;font-variant-numeric:tabular-nums}.home-topup-history-amount--plus{color:var(--success)}.home-topup-history-amount--minus{color:var(--danger)}.home-topup-input{display:block;width:100%;padding:.65rem .9rem;font-size:1rem;border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-3);background:var(--surface-muted);box-shadow:var(--shadow-inset-soft)}.home-topup-input:focus{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--surface)}.home-modal-error{margin:0 0 var(--space-3);font-size:.875rem;color:var(--danger);padding:var(--space-3);border-radius:var(--radius-md);background:var(--danger-bg)}.home-modal-consents{margin:var(--space-3) 0;display:flex;flex-direction:column;gap:var(--space-2)}.home-modal-consent-check{display:flex;align-items:flex-start;gap:var(--space-3);font-size:.8125rem;color:var(--text-secondary);cursor:pointer;line-height:1.45;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid transparent}.home-modal-consent-check:hover{background:var(--surface-muted);border-color:var(--border-subtle)}.home-modal-consent-check input{margin-top:.2rem;flex-shrink:0;accent-color:var(--accent)}.home-modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;flex-wrap:wrap;margin-top:var(--space-2)}.home-modal-btn{padding:.55rem 1.1rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-muted);color:var(--text);box-shadow:var(--shadow-xs)}.home-modal-btn:hover:not(:disabled){background:var(--surface);box-shadow:var(--shadow-sm)}.home-modal-btn--primary{background:var(--accent);color:#fff;border-color:transparent}.home-modal-btn--primary:hover:not(:disabled){background:var(--accent-hover);color:#fff}.home-modal-btn--danger{background:var(--danger);color:#fff;border-color:transparent}.home-modal-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 88%,#000);color:#fff;border-color:transparent;box-shadow:var(--shadow-sm)}.home-modal-btn:disabled{opacity:.55}.home-main{flex:1;display:flex;flex-direction:row;min-height:0;overflow:hidden;padding:0;background:#f9fafb}[data-theme=dark] .home-main{background:var(--chat-bg)}.home-sidebar{width:min(17.5rem,100%);flex-shrink:0;align-self:stretch;min-height:0;max-height:100%;overflow:hidden;border-right:1px solid #e5e7eb;padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:var(--space-3);background:#fff;box-shadow:1px 0 #00000008}[data-theme=dark] .home-sidebar{background:var(--surface);border-right-color:var(--border-subtle);box-shadow:none}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-shrink:0;padding:0 0 var(--space-2);margin-bottom:var(--space-1);border-bottom:none}.sidebar-header-end{display:flex;align-items:center;gap:var(--space-1)}.sidebar-title{font-size:.9375rem;font-weight:600;letter-spacing:-.01em;color:#111827}[data-theme=dark] .sidebar-title{color:var(--text)}.sidebar-icon-svg{display:block;flex-shrink:0;pointer-events:none}.sidebar-new-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;line-height:0;color:#4b5563;background:transparent;border:1px solid #e5e7eb;border-radius:var(--radius-md);transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.sidebar-new-icon-btn:hover:not(:disabled){color:#111827;background:#f3f4f6;border-color:#d1d5db}.sidebar-new-icon-btn:disabled{opacity:.45;cursor:wait}.sidebar-new-icon-btn-mark{display:flex;align-items:center;justify-content:center;line-height:0}[data-theme=dark] .sidebar-new-icon-btn{color:var(--text-secondary);border-color:var(--border-subtle)}[data-theme=dark] .sidebar-new-icon-btn:hover:not(:disabled){color:var(--text);background:var(--surface-muted)}.sidebar-close{display:none;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;line-height:0;color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-md)}.sidebar-close:hover{color:var(--text);background:var(--surface-muted)}.sidebar-search-label{display:block;margin:0}.sidebar-search{width:100%;padding:.55rem .75rem;font-size:.875rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface);color:var(--text);box-shadow:var(--shadow-inset-soft)}.sidebar-search:focus{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));outline:none}.sidebar-search::placeholder{color:var(--text-muted)}.sidebar-group{margin-bottom:1rem}.sidebar-group:last-child{margin-bottom:0}.sidebar-group-list{list-style:none;margin:0;padding:0}.sidebar-item-li{margin:0;padding:0}.sidebar-list{display:flex;flex-direction:column;gap:var(--space-1);overflow-y:auto;flex:1;min-height:0;padding-right:var(--space-1);margin-right:calc(-1 * var(--space-1))}.sidebar-muted{font-size:.875rem;color:var(--text-muted);padding:var(--space-4) var(--space-2)}.sidebar-item-wrap{position:relative;display:flex;align-items:flex-start;gap:var(--space-2);padding:.5rem 2.75rem .5rem .5rem;font-size:.875rem;font-weight:400;color:#4b5563;background:transparent;border-radius:.5rem;border:1px solid transparent;cursor:pointer;min-height:0;min-width:0;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.sidebar-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.sidebar-item-meta{display:flex;flex-direction:column;gap:.15rem;font-size:.75rem;color:var(--text-muted);line-height:1.35}.sidebar-item-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.sidebar-item-wrap:hover{background:#f3f4f6;border-color:transparent;box-shadow:none}.sidebar-item-wrap.sidebar-item--active{background:var(--surface-muted);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs)}.sidebar-item-wrap.sidebar-item--active .sidebar-item-label{color:#111827;font-weight:400}[data-theme=dark] .sidebar-item-wrap{color:var(--text-secondary)}[data-theme=dark] .sidebar-item-wrap:hover{background:var(--surface-muted)}[data-theme=dark] .sidebar-item-wrap.sidebar-item--active{background:var(--surface-muted);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs)}[data-theme=dark] .sidebar-item-wrap.sidebar-item--active .sidebar-item-label{color:var(--text)}.sidebar-item-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;font-weight:400;line-height:1.35;color:inherit}.sidebar-item-actions{position:absolute;top:50%;right:.25rem;transform:translateY(-50%);display:flex;flex-shrink:0;gap:.15rem;z-index:2;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility .15s ease}.chat-item:hover .sidebar-item-actions,.sidebar-item-wrap:hover .sidebar-item-actions,.sidebar-item-wrap:focus-within .sidebar-item-actions{opacity:1;visibility:visible;pointer-events:auto}.sidebar-session-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;line-height:0;color:#9ca3af;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.sidebar-session-menu-btn:hover{color:#6b7280;background:transparent}.session-sidebar-menu{position:fixed;z-index:450;min-width:11.5rem;padding:.35rem 0;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md);box-shadow:0 10px 40px #0f172a1f}[data-theme=dark] .session-sidebar-menu{background:var(--surface);border-color:var(--border-subtle);box-shadow:var(--shadow-lg)}.session-sidebar-menu-item{display:block;width:100%;text-align:left;padding:.5rem .9rem;font-size:.875rem;font-weight:400;color:#374151;background:transparent;border:none;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.session-sidebar-menu-item:hover{background:#f3f4f6}.session-sidebar-menu-item--danger{color:var(--danger)}.session-sidebar-menu-item--danger:hover{background:var(--danger-bg)}[data-theme=dark] .session-sidebar-menu-item{color:var(--text-secondary)}[data-theme=dark] .session-sidebar-menu-item:hover{background:var(--surface-muted)}.sidebar-group--folders{margin-bottom:.75rem}.sidebar-folder-root,.sidebar-folder-branch{list-style:none;margin:0;padding:0}.sidebar-folder-head{display:flex;align-items:center;gap:.2rem;min-height:2.25rem;margin-bottom:.15rem}.sidebar-folder-chevron{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.5rem;height:1.5rem;padding:0;line-height:0;color:#6b7280;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer}.sidebar-folder-chevron:hover{background:#f3f4f6;color:#111827}.sidebar-folder-title{flex:1;min-width:0;text-align:left;padding:.25rem .35rem;font-size:.875rem;font-weight:600;color:#374151;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer}.sidebar-folder-title:hover{background:#f3f4f6}.sidebar-folder-inline-new{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.65rem;height:1.65rem;padding:0;line-height:0;color:#4b5563;background:transparent;border:1px solid #e5e7eb;border-radius:var(--radius-sm);cursor:pointer}.sidebar-folder-inline-new:hover{background:#f9fafb;color:#111827}.sidebar-folder-actions{flex-shrink:0}.sidebar-folder-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;line-height:0;color:#9ca3af;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer}.sidebar-folder-menu-btn:hover{color:#6b7280;background:#f3f4f6}.sidebar-folder-nested{list-style:none;margin:0 0 .35rem;padding:0 0 0 .25rem;border-left:1px solid #e5e7eb}[data-theme=dark] .sidebar-folder-nested{border-left-color:var(--border-subtle)}[data-theme=dark] .sidebar-folder-title{color:var(--text-secondary)}[data-theme=dark] .sidebar-folder-title:hover{background:var(--surface-muted)}.sidebar-move-folder-list{display:flex;flex-direction:column;gap:.35rem;margin-bottom:var(--space-3);max-height:16rem;overflow-y:auto}.home-modal-btn--block{display:block;width:100%;text-align:left}.sidebar-group-heading-pinned{margin:0 0 .5rem;padding:0 .25rem;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#9ca3af}.sidebar-group--pinned{margin-bottom:1rem}.chat-composer-attach-svg{display:block;flex-shrink:0;color:#6b7280}.chat-composer-icon-btn:hover .chat-composer-attach-svg{color:#111827}[data-theme=dark] .chat-composer-attach-svg{color:var(--text-muted)}.home .chat-form .chat-input:focus,.home .chat-form .chat-input:focus-visible{outline:none;box-shadow:none}.home .chat-form .chat-composer-icon-btn:focus,.home .chat-form .chat-composer-icon-btn:focus-visible,.home .chat-form .chat-send:focus,.home .chat-form .chat-send:focus-visible{outline:none;box-shadow:none}.sidebar-item-input{flex:1;min-width:0;padding:.4rem .55rem;font-size:.875rem;background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));border-radius:var(--radius-sm);color:var(--text);box-shadow:var(--shadow-inset-soft)}.sidebar-item-input:focus{border-color:var(--accent)}.chat-panel{position:relative;flex:1;display:flex;flex-direction:column;min-width:0;width:100%;margin:0;padding:var(--space-2) var(--space-6) var(--space-4);min-height:0;overflow:hidden;background:#f9fafb;border-radius:0;border:none;box-shadow:none}[data-theme=dark] .chat-panel{background:var(--chat-bg)}.chat-panel-corner{position:absolute;top:var(--space-2);right:var(--space-4);z-index:25;display:flex;align-items:center;gap:.35rem;max-width:calc(100% - var(--space-6))}.chat-panel-corner-auth.home-header-auth{margin-left:0;max-width:none;flex-wrap:nowrap;gap:.35rem}.chat-panel-corner .home-header-balance-label{display:none}.chat-panel-corner .home-header-balance-btn{padding:.3rem .55rem;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.chat-panel-corner .home-profile-name,.chat-panel-corner .home-profile-chevron{display:none}.chat-panel-corner .home-profile-trigger{padding:.2rem;max-width:none;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.chat-panel-corner .home-profile-avatar{width:1.75rem;height:1.75rem;font-size:.8rem}.chat-panel-corner .home-profile-menu{top:calc(100% + 6px);bottom:auto;right:0;left:auto;animation:home-modal-in .22s cubic-bezier(.22,1,.36,1) both}.chat-panel-corner .home-login{padding:.35rem .65rem;font-size:.8125rem;font-weight:600;border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--border-subtle);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.chat-panel-inner{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-top:2.75rem}.sidebar-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);flex-shrink:0;padding:0 0 var(--space-3);margin-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}.sidebar-toolbar .home-assistant-switch{width:100%;display:flex;box-sizing:border-box}.sidebar-toolbar .home-assistant-switch-btn{flex:1 1 0;min-width:0;text-align:center}.sidebar-footer{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;padding-top:var(--space-3);margin-top:var(--space-1);border-top:1px solid var(--border-subtle)}.sidebar-footer-service,.sidebar-footer-theme{flex-shrink:0}.chat-error{max-width:var(--chat-thread-max);width:100%;margin:0 auto var(--space-3);padding:var(--space-3) var(--space-4);font-size:.875rem;line-height:1.45;color:var(--warning-ink);background:var(--warning-bg);border:1px solid color-mix(in srgb,var(--danger) 18%,transparent);border-radius:var(--radius-md);flex-shrink:0;box-sizing:border-box}.chat-composer-attachments{padding:10px 20px 8px;border-bottom:1px solid color-mix(in srgb,var(--border-subtle) 85%,transparent)}.chat-composer-attachments-list{display:flex;flex-wrap:wrap;gap:.5rem .65rem;margin:0;padding:0;list-style:none}.chat-composer-attach-chip{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:.2rem;max-width:4.75rem}.chat-composer-attach-thumb-box{position:relative;width:3.35rem;height:3.35rem;border-radius:10px;overflow:hidden;border:1px solid var(--border-subtle);background:var(--surface-muted);display:flex;align-items:center;justify-content:center}.chat-composer-attach-remove{position:absolute;top:2px;right:2px;z-index:2;width:1.125rem;height:1.125rem;padding:0;margin:0;display:flex;align-items:center;justify-content:center;font-size:.85rem;line-height:1;font-weight:700;color:#fff;background:color-mix(in srgb,#111827 82%,transparent);border:none;border-radius:999px;cursor:pointer;box-shadow:0 1px 2px #0003}.chat-composer-attach-remove:hover:not(:disabled){background:#b91c1c}.chat-composer-attach-remove:disabled{opacity:.4;cursor:not-allowed}.chat-composer-attach-thumb{width:100%;height:100%;object-fit:cover;display:block}.chat-composer-attach-pdf{font-size:.65rem;font-weight:800;color:#b91c1c;letter-spacing:.05em}[data-theme=dark] .chat-composer-attach-pdf{color:#fca5a5}.chat-composer-attach-fallback{font-size:.6rem;font-weight:600;color:var(--text-muted)}.chat-composer-attach-name{font-size:.6rem;line-height:1.2;color:var(--text-secondary);text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-composer-capsule:has(.chat-composer-attachments) .chat-input{padding-top:8px}.chat-messages{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:var(--space-4) var(--space-3);margin:0 auto;max-width:var(--chat-thread-max);width:100%;display:flex;flex-direction:column;gap:1.25rem;align-items:stretch;scroll-behavior:smooth;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.chat-messages:has(.home-welcome),.chat-messages:has(.chat-placeholder){flex:1 1 auto;min-height:0;justify-content:center;align-items:center;padding-top:var(--space-4);margin-top:0}.chat-message-row{display:flex;align-items:flex-start;gap:var(--chat-avatar-gap);max-width:100%}.chat-message-row--user{justify-content:flex-end;align-items:flex-start}.chat-message-row--assistant,.chat-message-row--typing{justify-content:flex-start;align-items:flex-start}.chat-message-row--urgent{align-items:stretch}.chat-avatar{flex-shrink:0;width:var(--chat-avatar-size);height:var(--chat-avatar-size);border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:800;letter-spacing:-.02em;margin-top:.15rem}.chat-avatar--assistant{color:#fff;background:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.chat-avatar--user{font-size:.875rem;font-weight:700;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border-subtle))}.home-welcome{max-width:var(--chat-thread-max);width:100%;margin:0 auto;padding:var(--space-6) var(--space-4);text-align:center;box-sizing:border-box;background:transparent;border:none;border-radius:0;box-shadow:none;animation:home-welcome-in .45s cubic-bezier(.22,1,.36,1) both}@keyframes home-welcome-in{0%{opacity:0;transform:translateY(.35rem)}}.home-welcome-title{margin:0 0 var(--space-2);font-size:clamp(1.35rem,2.5vw,1.75rem);font-weight:600;color:#111827;letter-spacing:-.03em;line-height:1.25}[data-theme=dark] .home-welcome-title{color:var(--text)}.home-welcome-title .brand{color:var(--accent)}.home-welcome-subtitle{margin:0 0 var(--space-2);font-size:1rem;font-weight:500;color:var(--text-secondary)}.home-welcome-link-wrap{margin:0 0 var(--space-4)}.home-welcome-link{font-size:.9375rem;font-weight:600;color:var(--accent);text-decoration:none;padding:.35rem .75rem;border-radius:999px;background:var(--accent-soft)}.home-welcome-link:hover{background:var(--accent-ghost)}.home-welcome-text{margin:0 0 var(--space-5);font-size:.9375rem;line-height:1.65;color:#4b5563;text-align:center}[data-theme=dark] .home-welcome-text{color:var(--text-muted)}.home-welcome-cta{margin:0;font-size:.875rem;font-weight:500;color:var(--text-muted)}.chat-placeholder{color:var(--text-muted);font-size:.9375rem;text-align:center;padding:var(--space-8) var(--space-4)}.chat-message{max-width:min(100%,var(--chat-thread-max));animation:chat-msg-in .35s cubic-bezier(.22,1,.36,1) both;border-radius:18px;flex:0 1 auto}@keyframes chat-msg-in{0%{opacity:0;transform:translateY(6px)}}.chat-message-role{display:block;font-size:.6875rem;font-weight:500;letter-spacing:.02em;color:var(--text-muted);margin-bottom:.25rem}.chat-message-row--assistant .chat-message-role{text-align:left;color:var(--text-muted)}.chat-message-row--user .chat-message--user .chat-message-role{color:color-mix(in srgb,var(--accent) 72%,var(--text-muted));text-align:right}.chat-message-row--user .chat-message--user:not(.chat-message--urgent){max-width:min(92%,var(--chat-thread-max));margin-left:auto;background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:18px;padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.chat-message-row--user .chat-message--user:not(.chat-message--urgent):hover{box-shadow:var(--shadow-sm);border-color:var(--border)}[data-theme=dark] .chat-message-row--user .chat-message--user:not(.chat-message--urgent):hover{box-shadow:var(--shadow-sm);border-color:color-mix(in srgb,var(--accent) 38%,var(--border))}.chat-message-row--assistant .chat-message--assistant:not(.chat-message--urgent):not(.chat-message--loading):not(.chat-message--login-prompt){position:relative;max-width:min(100%,var(--chat-thread-max));background:var(--assistant-bubble-bg);border:1px solid var(--assistant-bubble-border);border-radius:18px;padding:var(--space-3) 2.75rem var(--space-3) var(--space-4);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.chat-message-row--assistant .chat-message--assistant:not(.chat-message--urgent):not(.chat-message--loading):not(.chat-message--login-prompt):hover{box-shadow:var(--shadow-sm)}.chat-council-handoff{margin-bottom:var(--space-2);padding:.35rem .65rem;font-size:.8125rem;font-weight:600;color:color-mix(in srgb,var(--accent) 88%,var(--text));background:color-mix(in srgb,var(--accent) 12%,var(--surface-muted));border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border-subtle));border-radius:10px}.chat-avatar--doctor-therapist{background:color-mix(in srgb,#0d9488 35%,var(--surface-muted));color:var(--text)}.chat-avatar--doctor-specialist{background:color-mix(in srgb,var(--accent) 28%,var(--surface-muted));color:var(--text)}.chat-message--doctor-therapist:not(.chat-message--urgent):not(.chat-message--loading){border-color:color-mix(in srgb,#0d9488 22%,var(--assistant-bubble-border))}.chat-message--doctor-specialist:not(.chat-message--urgent):not(.chat-message--loading){border-color:color-mix(in srgb,var(--accent) 22%,var(--assistant-bubble-border))}.chat-message-row--typing .chat-message--loading{position:relative;max-width:min(100%,var(--chat-thread-max));background:var(--assistant-bubble-bg);border:1px solid var(--assistant-bubble-border);border-radius:18px;padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-xs)}.chat-ai-actions{position:absolute;top:.15rem;right:0;display:flex;flex-direction:column;align-items:center;gap:.15rem;opacity:0;transition:opacity .15s ease}.chat-message-row--assistant:hover .chat-ai-actions,.chat-message-row--assistant:focus-within .chat-ai-actions{opacity:1}.chat-ai-action-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;color:#9ca3af;background:transparent;border:none;border-radius:.375rem;cursor:pointer}.chat-ai-action-icon{display:block;flex-shrink:0;pointer-events:none}.chat-ai-action-btn:hover:not(:disabled){color:#4b5563;background:#f3f4f6}.chat-ai-action-btn--muted{opacity:.45;cursor:not-allowed}[data-theme=dark] .chat-ai-action-btn:hover:not(:disabled){color:var(--text);background:var(--surface-muted)}.chat-message-row--urgent .chat-message--urgent{flex:1;max-width:100%;background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger) 28%,transparent);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-bottom:0;box-shadow:var(--shadow-xs)}.chat-message--urgent .chat-message-role{color:var(--danger);font-weight:700}.chat-message--urgent .chat-message-content{color:var(--warning-ink)}.chat-message--loading .chat-message-content{color:var(--text-muted)}.chat-thinking{display:flex;flex-wrap:wrap;align-items:baseline;gap:0;margin:0}.chat-thinking-text{margin-right:.05em}.chat-thinking-dots span{display:inline-block;animation:chat-thinking-dot 1.05s ease-in-out infinite;min-width:.35em;text-align:center}.chat-thinking-dots span:nth-child(1){animation-delay:0s}.chat-thinking-dots span:nth-child(2){animation-delay:.18s}.chat-thinking-dots span:nth-child(3){animation-delay:.36s}@keyframes chat-thinking-dot{0%,55%,to{opacity:.2;transform:translateY(0)}28%{opacity:1;transform:translateY(-3px)}}.chat-message--login-prompt{white-space:pre-line}.chat-message-row--assistant .chat-message--assistant.chat-message--login-prompt{background:var(--assistant-bubble-bg);border:1px solid var(--assistant-bubble-border);border-radius:18px;box-shadow:var(--shadow-xs);padding:var(--space-3) var(--space-4)}.chat-login-prompt-btn{margin-top:var(--space-4);padding:.55rem 1.15rem;font-size:.875rem;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.chat-login-prompt-btn:hover{background:var(--accent-hover);color:#fff}.chat-input-hint{margin:0;font-size:.8125rem;color:var(--text-muted)}.chat-input-hint--error{color:var(--danger)}.chat-message-content{margin:0;font-size:.9375rem;line-height:1.6;color:var(--text);word-wrap:break-word;overflow-wrap:anywhere}.chat-message-content .chat-md{text-align:left}.chat-message--user .chat-message-content .chat-md{display:inline-block;max-width:100%;text-align:left}.chat-md :first-child{margin-top:0}.chat-md :last-child{margin-bottom:0}.chat-md p{margin:.5em 0}.chat-md p:first-child{margin-top:0}.chat-md h1,.chat-md h2,.chat-md h3,.chat-md h4,.chat-md h5,.chat-md h6{margin:.85em 0 .4em;font-weight:700;line-height:1.35;color:var(--text)}.chat-md h1:first-child,.chat-md h2:first-child,.chat-md h3:first-child,.chat-md h4:first-child,.chat-md h5:first-child,.chat-md h6:first-child{margin-top:0}.chat-md h1{font-size:1.2em}.chat-md h2{font-size:1.12em}.chat-md h3{font-size:1.06em}.chat-md h4{font-size:1em}.chat-md ul,.chat-md ol{margin:.45em 0;padding-left:1.35em}.chat-md li{margin:.25em 0}.chat-md li>p{margin:.2em 0}.chat-md strong{font-weight:700}.chat-md em{font-style:italic}.chat-md a{color:var(--accent);text-decoration:underline;text-underline-offset:.12em}.chat-md a:hover{color:var(--accent-hover)}.chat-md code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.88em;padding:.12em .35em;border-radius:var(--radius-sm, 4px);background:color-mix(in srgb,var(--text) 8%,transparent)}.chat-md pre{margin:.65em 0;padding:var(--space-3, .75rem);overflow-x:auto;font-size:.84em;line-height:1.45;border-radius:var(--radius-md, 8px);background:color-mix(in srgb,var(--text) 10%,transparent);border:1px solid color-mix(in srgb,var(--text) 12%,transparent)}.chat-md pre code{padding:0;background:none;font-size:inherit}.chat-md blockquote{margin:.55em 0;padding:.35em 0 .35em .85em;border-left:3px solid color-mix(in srgb,var(--accent) 55%,transparent);color:var(--text-muted)}.chat-md hr{margin:1em 0;border:none;border-top:1px solid color-mix(in srgb,var(--text) 14%,transparent)}.chat-md table{width:100%;margin:.65em 0;border-collapse:collapse;font-size:.9em}.chat-md th,.chat-md td{padding:.4em .55em;border:1px solid color-mix(in srgb,var(--text) 14%,transparent);text-align:left}.chat-md th{font-weight:600;background:color-mix(in srgb,var(--text) 6%,transparent)}.chat-message-row--assistant .chat-message-content{color:var(--text)}.chat-message--user .chat-message-content{color:var(--text);text-align:right}[data-theme=dark] .chat-message-content,[data-theme=dark] .chat-message-row--assistant .chat-message-content,[data-theme=dark] .chat-message--user .chat-message-content,[data-theme=dark] .chat-md h1,[data-theme=dark] .chat-md h2,[data-theme=dark] .chat-md h3,[data-theme=dark] .chat-md h4,[data-theme=dark] .chat-md h5,[data-theme=dark] .chat-md h6{color:var(--text-secondary)}.chat-message-time{display:block;margin-top:var(--space-2);font-size:.6875rem;font-weight:500;color:var(--text-muted);letter-spacing:.02em}.chat-message-row--user .chat-message-time{text-align:right}.chat-analysis-success{max-width:var(--chat-thread-max);width:100%;margin:0 auto var(--space-2);padding:var(--space-3) var(--space-4);font-size:.875rem;background:var(--success-bg);color:var(--success);border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--success) 22%,transparent);flex-shrink:0;box-sizing:border-box}.chat-file-input-hidden{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.chat-form{display:block;padding:var(--space-2) 0 var(--space-3);margin-top:auto;border-top:none;flex-shrink:0;background:transparent}.chat-form-inner{max-width:var(--chat-thread-max);width:100%;margin:0 auto;padding-left:calc(var(--space-3) + var(--chat-avatar-shift));padding-right:var(--space-3);box-sizing:border-box}.chat-composer{display:flex;flex-direction:column;gap:.5rem}.chat-composer-capsule{border-radius:30px;padding:0;border:1px solid #e5e7eb;background:#fff;box-shadow:0 1px 2px #0000000a;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.chat-composer-capsule:focus-within{border-color:#9ca3af;box-shadow:0 0 0 2px #9ca3af1a}[data-theme=dark] .chat-composer-capsule{background:var(--surface);border-color:var(--border-subtle)}[data-theme=dark] .chat-composer-capsule:focus-within{border-color:var(--border);box-shadow:var(--focus-ring)}.chat-composer-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:0 20px 10px;border-top:none}.chat-composer-icon-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .5rem;font-size:.8125rem;font-weight:500;color:#6b7280;background:transparent;border:none;border-radius:var(--radius-md)}.chat-composer-icon-btn:hover:not(:disabled){color:#111827;background:#f3f4f6}.chat-composer-icon-btn:disabled{opacity:.5}.chat-composer-icon-label{font-size:.75rem}.chat-input{flex:1;min-width:0;width:100%;padding:9px 20px;font-size:.9375rem;line-height:1.5;font-family:inherit;background:transparent;border:none;border-radius:30px 30px 0 0;color:#111827;resize:none;min-height:2.5rem;max-height:min(14rem,36vh);box-shadow:none;text-align:left}.chat-input:focus{outline:none}[data-theme=dark] .chat-input{color:var(--text)}.chat-input::placeholder{color:var(--text-muted)}.chat-input:disabled{opacity:.65;cursor:not-allowed}.chat-send--floating{margin-left:auto;padding:.45rem 1rem;font-size:.875rem;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:999px;box-shadow:none;min-height:2.25rem;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity var(--transition-fast),transform var(--transition-fast)}.chat-send--floating.chat-send--visible{opacity:1;transform:translateY(0);pointer-events:auto}.chat-send--floating:hover:not(:disabled){background:var(--accent-hover);color:#fff}.chat-send--floating:disabled{opacity:.35;transform:translateY(0);pointer-events:none}.chat-send--floating.chat-send--visible:disabled{opacity:.45}@media(max-width:768px){.home-menu-btn{display:flex}.sidebar-toolbar .home-assistant-switch-btn{padding:.3rem .45rem;font-size:.75rem}.sidebar-toolbar .home-assistant-switch-label-full{display:none}.sidebar-toolbar .home-assistant-switch-label-short{display:inline}.chat-panel-corner{right:var(--space-3);max-width:calc(100% - var(--space-4))}.home-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#161b2252;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:100;animation:home-overlay-in .2s ease both}.home-sidebar{position:fixed;top:0;left:0;bottom:0;width:min(30rem,92vw);z-index:101;transform:translate(-100%);transition:transform var(--transition-medium),box-shadow var(--transition-medium);box-shadow:none;background:var(--surface);border-right:1px solid var(--border-subtle);border-radius:0 var(--radius-xl) var(--radius-xl) 0}.home-sidebar--open{transform:translate(0);box-shadow:var(--shadow-lg)}.sidebar-header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:none;margin-bottom:var(--space-2)}.sidebar-title{font-size:1rem}.sidebar-close{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;line-height:0}.home-main{padding:0;flex:1;min-height:0}.chat-panel{max-width:none;padding:var(--space-4) var(--space-4);flex:1;min-height:0}.chat-form{padding:var(--space-3) 0 var(--space-4)}.chat-form-inner{max-width:100%;padding-left:calc(var(--space-3) + var(--chat-avatar-shift));padding-right:var(--space-3);box-sizing:border-box}.chat-composer-toolbar{flex-direction:column;align-items:stretch}.chat-send--floating.chat-send--visible{width:100%;margin-left:0;font-size:1rem;min-height:2.75rem}.chat-input{min-height:3.25em;font-size:1rem;max-height:50vh}.home-welcome{max-width:none;padding:var(--space-6) var(--space-4);border-radius:var(--radius-xl)}.home-welcome-subtitle{font-size:.9375rem}.home-welcome-text{font-size:.875rem}}@media(min-width:769px){.chat-panel{padding:var(--space-3) var(--space-8) var(--space-5)}.chat-panel-corner{right:var(--space-8)}}.home-toast-stack{position:fixed;bottom:1.25rem;right:1rem;z-index:200;display:flex;flex-direction:column;gap:.5rem;max-width:min(22rem,92vw);pointer-events:none}.home-toast{pointer-events:none;padding:.65rem 1rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--text) 88%,transparent);color:var(--surface);font-size:.8125rem;font-weight:500;box-shadow:var(--shadow-md);animation:home-toast-in .22s ease both}@keyframes home-toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .home-toast{background:color-mix(in srgb,var(--surface) 92%,var(--accent));color:var(--text)}.chat-readonly-banner{margin:0 var(--space-4) var(--space-2);padding:.6rem .85rem;font-size:.8125rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 12%,var(--surface-muted));border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border-subtle));color:var(--text-secondary)}.chat-safety-banner{margin:0 var(--space-4) var(--space-2);padding:.55rem .85rem;font-size:.78rem;line-height:1.45;border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-muted) 88%,var(--accent));border:1px solid var(--border-subtle);color:var(--text-secondary)}.chat-safety-banner--dismissible{display:flex;align-items:flex-start;gap:.35rem;padding-right:.35rem}.chat-safety-banner__text{flex:1;min-width:0}.chat-safety-banner-dismiss{flex-shrink:0;margin:-.15rem -.1rem 0 0;width:1.65rem;height:1.65rem;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-size:1.15rem;line-height:1;cursor:pointer}.chat-safety-banner-dismiss:hover{background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text-secondary)}.chat-safety-banner-dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.chat-safety-banner--emergency{background:color-mix(in srgb,#c0392b 14%,var(--surface-muted));border-color:color-mix(in srgb,#c0392b 35%,var(--border-subtle));color:var(--text)}.sidebar-search-block{flex-shrink:0;padding:0 var(--space-4) var(--space-2);display:flex;flex-direction:column;gap:.45rem}.sidebar-search-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.sidebar-inline-check{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.sidebar-scope-select{flex:1;min-width:8rem;max-width:100%;font-size:.8125rem;padding:.35rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--surface-muted);color:var(--text)}.sidebar-new-icon-btn--batch.sidebar-new-icon-btn--active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-muted))}.sidebar-root-drop{margin:0 var(--space-4) var(--space-3);padding:.5rem .65rem;font-size:.75rem;text-align:center;border-radius:var(--radius-md);border:1px dashed var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent)}.sidebar-batch-bar{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin:0 var(--space-4) var(--space-2);padding:.45rem .55rem;border-radius:var(--radius-md);background:var(--surface-muted);border:1px solid var(--border-subtle)}.sidebar-batch-count{font-size:.75rem;font-weight:600;color:var(--text-muted);margin-right:.25rem}.sidebar-batch-btn{font-size:.75rem;padding:.25rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.sidebar-batch-btn:disabled{cursor:default;opacity:.55}.sidebar-batch-btn:disabled:hover{border-color:var(--border);color:var(--text)}.sidebar-batch-btn--ghost{border-color:transparent;background:transparent;color:var(--text-muted)}.sidebar-batch-btn:hover{border-color:var(--accent);color:var(--accent)}.sidebar-batch-btn--danger{border-color:color-mix(in srgb,var(--danger) 35%,transparent);background:var(--danger-bg);color:var(--danger)}.sidebar-batch-btn--danger:hover{border-color:color-mix(in srgb,var(--danger) 50%,transparent);color:var(--danger)}.sidebar-item--dragging{opacity:.55}.sidebar-item-check{display:flex;align-items:flex-start;margin-right:.35rem;padding-top:.1rem}.sidebar-item-check input{width:1rem;height:1rem;cursor:pointer}.sidebar-folder-grip{display:inline-flex;align-items:center;justify-content:center;cursor:grab;color:var(--text-muted);line-height:0;padding:.1rem .15rem 0 0;-webkit-user-select:none;user-select:none;flex-shrink:0;opacity:.72}.sidebar-folder-grip:active{cursor:grabbing}.sidebar-folder-color-dot{display:inline-block;width:.45rem;height:.45rem;border-radius:999px;margin-right:.35rem;flex-shrink:0;vertical-align:middle}.sidebar-folder-icon{margin-right:.25rem;font-size:.85rem;line-height:1}.sidebar-folder-title{display:inline-flex;align-items:center}.sidebar-folder-title-text{min-width:0}.sidebar-folder-head--drop-session{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:1px;border-radius:var(--radius-sm)}.sidebar-folder-head--drop-folder{background:color-mix(in srgb,var(--accent) 8%,var(--surface-muted))}.sidebar-group--archive .sidebar-group-heading-pinned,.sidebar-group--trash .sidebar-group-heading-pinned{color:var(--text-muted)}.sidebar-archive-head{display:flex;align-items:center;gap:.2rem;min-height:2.25rem;margin:0 0 .35rem}.sidebar-archive-title-btn{flex:1;min-width:0;display:inline-flex;align-items:center;gap:.45rem;padding:.25rem .35rem;margin:0;font:inherit;text-align:left;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;color:inherit}.sidebar-archive-title-btn:hover{background:#f3f4f6}[data-theme=dark] .sidebar-archive-title-btn:hover{background:var(--surface-muted)}.sidebar-archive-title-text{margin:0;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#9ca3af}.sidebar-group--archive .sidebar-archive-title-text{color:var(--text-muted)}.sidebar-archive-count{flex-shrink:0;min-width:1.25rem;padding:.1rem .35rem;font-size:.65rem;font-weight:700;line-height:1.2;text-align:center;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);border:1px solid var(--border-subtle)}.sidebar-group--trash{opacity:.95}.home-modal-color-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.home-modal-color-swatch{width:1.75rem;height:1.75rem;border-radius:999px;border:2px solid transparent;cursor:pointer;padding:0}.home-modal-color-swatch--active{border-color:var(--text);box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--accent)}.chat-shell{min-height:0;height:100%;flex:1;display:flex;flex-direction:column;overflow:hidden}.chat-shell-workspaces,.chat-shell-pane{flex:1;min-height:0;display:flex;flex-direction:column}.chat-shell-pane[hidden]{display:none!important}.static-page{min-height:0;flex:1;display:flex;flex-direction:column}.static-page-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:saturate(160%) blur(var(--header-blur));-webkit-backdrop-filter:saturate(160%) blur(var(--header-blur));box-shadow:var(--shadow-xs)}.static-page-logo{font-size:1.25rem;font-weight:700;letter-spacing:-.03em;color:var(--accent);text-decoration:none}.static-page-logo:hover,.static-page-logo:focus-visible{color:var(--accent-hover);text-decoration:none}.static-page-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.static-page-main{flex:1;min-height:0;overflow-y:auto;padding:var(--space-8) var(--space-6);max-width:45rem;margin:0 auto;width:100%;box-sizing:border-box}.static-page-title{margin:0 0 var(--space-4);font-size:clamp(1.35rem,2.2vw,1.6rem);font-weight:700;letter-spacing:-.02em;color:var(--text)}.static-page-body{margin:0 0 var(--space-6)}.static-page-body p{margin:0 0 var(--space-4);font-size:.9375rem;line-height:1.65;color:var(--text-secondary)}.static-page-body p:last-child{margin-bottom:0}.static-page-body-h2{margin:var(--space-6) 0 var(--space-2);font-size:1.125rem;font-weight:700;letter-spacing:-.01em;color:var(--text)}.static-page-body-h2:first-child{margin-top:0}.static-page-body-h3{margin:var(--space-5) 0 var(--space-2);font-size:1rem;font-weight:600;color:var(--text)}.static-page-body-callout{margin:var(--space-6) 0;padding:var(--space-5) var(--space-5);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.static-page-body-callout-title{margin:0 0 var(--space-3);font-size:1.05rem;font-weight:700;color:var(--text)}.static-page-body-callout .static-page-body-h2{margin-top:0}.static-page-body-cta{margin:var(--space-8) 0 0}.static-page-body-cta-btn{display:inline-block;padding:.7rem var(--space-6);background:var(--accent);color:#fff;font-weight:600;text-decoration:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.static-page-body-cta-btn:hover{background:var(--accent-hover);color:#fff;transform:translateY(-1px)}.static-page-body-cta-btn:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-sm)}.static-page-body-ul{margin:0 0 var(--space-4);padding-left:var(--space-5);font-size:.9375rem;line-height:1.65;color:var(--text-secondary)}.static-page-body-ul li{margin-bottom:var(--space-2)}.static-page-body-ol{margin:0 0 var(--space-4);padding-left:var(--space-5);font-size:.9375rem;line-height:1.65;color:var(--text-secondary)}.static-page-body-ol li{margin-bottom:var(--space-2)}.static-page-body-dl{margin:0 0 var(--space-4);font-size:.9375rem;line-height:1.65;color:var(--text-secondary)}.static-page-body-dl-item{margin-bottom:var(--space-4)}.static-page-body-dl-item:last-child{margin-bottom:0}.static-page-body-dl dt{font-weight:600;margin:0 0 var(--space-1);color:var(--text)}.static-page-body-dl dd{margin:0;padding-left:0}.static-page-body-link{color:var(--accent);font-weight:600;text-decoration:none}.static-page-body-link:hover,.static-page-body-link:focus-visible{text-decoration:underline}.static-page-body-contact{margin:0 0 var(--space-4);font-size:.9375rem;line-height:1.65;color:var(--text-secondary)}.static-page-body-contact strong{display:inline-block;margin-top:var(--space-2);color:var(--text)}.static-page-placeholder{margin:0 0 var(--space-5);color:var(--text-muted);font-size:.9375rem}.static-page-back{color:var(--accent);text-decoration:none;font-size:.9375rem;font-weight:600}.static-page-back:hover,.static-page-back:focus-visible{text-decoration:underline}@media(min-width:769px){.static-page-main{max-width:min(62rem,calc(100vw - 3rem));padding-left:var(--space-8);padding-right:var(--space-8)}}@media(max-width:768px){.static-page-main{padding:var(--space-6) var(--space-4)}.static-page-title{font-size:1.25rem}.static-page-header{padding:var(--space-3) var(--space-4)}}.settings-page{flex:1;min-height:0;overflow-y:auto;padding:var(--space-6) var(--space-4);background:transparent}.settings-header{margin-bottom:var(--space-6);max-width:48rem;margin-left:auto;margin-right:auto}.settings-header--row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.settings-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.settings-logo{font-size:1.125rem;font-weight:700;letter-spacing:-.02em;color:var(--accent);text-decoration:none}.settings-logo:hover{color:var(--accent-hover);text-decoration:none}.settings-main{max-width:36rem;margin:0 auto}.settings-title{margin:0 0 var(--space-6);font-size:clamp(1.35rem,2vw,1.6rem);font-weight:700;letter-spacing:-.02em;color:var(--text)}.settings-section{margin-bottom:var(--space-8);padding:var(--space-5);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.settings-section-title{margin:0 0 var(--space-2);font-size:1.05rem;font-weight:700;color:var(--text)}.settings-section-intro{margin:0 0 var(--space-4);font-size:.9rem;color:var(--text-muted);line-height:1.55}.settings-consent-list{list-style:none;margin:0;padding:0}.settings-consent-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle)}.settings-consent-item:last-child{border-bottom:none;padding-bottom:0}.settings-consent-label{flex:1;min-width:0;font-size:.9375rem;color:var(--text-secondary)}.settings-consent-badge{font-size:.75rem;font-weight:600;color:var(--text-muted);flex-shrink:0}.settings-btn{padding:.45rem .85rem;font-size:.8125rem;font-weight:600;border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;background:var(--surface-muted);color:var(--text);box-shadow:var(--shadow-xs)}.settings-btn:hover:not(:disabled){background:var(--surface);box-shadow:var(--shadow-sm)}.settings-btn:disabled{opacity:.55;cursor:not-allowed}.settings-btn--danger{background:var(--danger-bg);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 22%,var(--border))}.settings-btn--danger:hover:not(:disabled){filter:brightness(.98)}.settings-btn--delete{background:var(--danger);color:#fff;padding:.65rem var(--space-4);font-size:.9375rem;border:none}.settings-btn--delete:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 88%,var(--text));color:#fff}.settings-section--danger{padding-top:var(--space-5);border-color:color-mix(in srgb,var(--danger) 15%,var(--border-subtle));background:color-mix(in srgb,var(--surface) 88%,var(--danger-bg))}.settings-delete-confirm{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);font-size:.9rem;color:var(--text-secondary);cursor:pointer}.settings-delete-confirm input{margin-top:.2rem;flex-shrink:0;accent-color:var(--accent)}.settings-error{margin:0 0 var(--space-4);color:var(--danger);font-size:.9rem;padding:var(--space-3);border-radius:var(--radius-md);background:var(--danger-bg)}.settings-muted{color:var(--text-muted);font-size:.9rem}.settings-appearance-options{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.settings-appearance-options:last-child{margin-bottom:0}.settings-appearance-label{display:block;width:100%;margin:0 0 var(--space-2);font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.settings-segment-btn{padding:.5rem .85rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-xs)}.settings-segment-btn:hover:not(:disabled){background:var(--surface);color:var(--text)}.settings-segment-btn--active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--accent-soft);color:var(--accent-hover)}[data-theme=dark] .settings-segment-btn--active{color:var(--accent)}.settings-link,.settings-back{color:var(--accent);font-size:.95rem;font-weight:600;text-decoration:none}.settings-back{display:inline-block;margin-top:var(--space-4)}.settings-link:hover,.settings-back:hover{text-decoration:underline}@media(min-width:769px){.settings-main{max-width:min(48rem,calc(100vw - 2rem))}}.disclaimer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#161b226b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);animation:disclaimer-overlay-in .28s ease both}@keyframes disclaimer-overlay-in{0%{opacity:0}}.disclaimer-modal{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);max-width:26rem;width:100%;padding:var(--space-6) var(--space-6) var(--space-5);box-shadow:var(--shadow-lg);animation:disclaimer-modal-in .38s cubic-bezier(.22,1,.36,1) both}@keyframes disclaimer-modal-in{0%{opacity:0;transform:translateY(.4rem) scale(.98)}}.disclaimer-title{margin:0 0 var(--space-4);font-size:1.2rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.disclaimer-body{color:var(--text-muted);font-size:.9375rem;line-height:1.6;margin-bottom:var(--space-5)}.disclaimer-body p{margin:0 0 var(--space-3)}.disclaimer-body p:last-child{margin-bottom:0}.disclaimer-link{color:var(--accent);font-weight:500;text-decoration:none}.disclaimer-link:hover{text-decoration:underline}.disclaimer-accept{width:100%;padding:.75rem var(--space-4);font-size:1rem;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.disclaimer-accept:hover{background:var(--accent-hover);color:#fff;transform:translateY(-1px)}.disclaimer-accept:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-sm)}.cookie-consent{position:fixed;bottom:0;left:0;right:0;z-index:900;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-4) var(--space-5);padding:var(--space-5) var(--space-6);background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-top:1px solid var(--border-subtle);box-shadow:0 -8px 32px #161b2214;animation:cookie-bar-in .4s cubic-bezier(.22,1,.36,1) both}@keyframes cookie-bar-in{0%{opacity:0;transform:translateY(.5rem)}}.cookie-consent-text{margin:0;font-size:.875rem;color:var(--text-muted);line-height:1.55;max-width:36rem}.cookie-consent-link{color:var(--accent);text-decoration:none;font-weight:600}.cookie-consent-link:hover,.cookie-consent-link:focus-visible{text-decoration:underline}.cookie-consent-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.cookie-consent-detail{font-size:.875rem;font-weight:500}.cookie-consent-accept{flex-shrink:0;padding:.55rem 1.15rem;font-size:.875rem;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.cookie-consent-accept:hover{background:var(--accent-hover);color:#fff}.cookie-consent-accept:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-sm)}@media(max-width:768px){.cookie-consent{padding:var(--space-4);gap:var(--space-3)}.cookie-consent-text{font-size:.8125rem;text-align:center;flex:1 1 100%}.cookie-consent-actions{width:100%;justify-content:center;flex-wrap:wrap}.cookie-consent-accept{flex:1 1 auto;min-width:10rem}}:root{--bg: #ffffff;--bg-subtle: #f1f2f2;--surface: #ffffff;--surface-muted: #f5f6f6;--surface-elevated: #fafafa;--border: #d5e3e1;--border-subtle: #e8f0ef;--text: #12221f;--text-secondary: #2c4542;--text-muted: #5c726e;--accent: #1f7a72;--accent-hover: #16645d;--accent-soft: rgba(31, 122, 114, .1);--accent-ghost: rgba(31, 122, 114, .06);--user-bubble-bg: linear-gradient(165deg, #e6f4f2 0%, #d8eeeb 100%);--assistant-bubble-bg: #ffffff;--assistant-bubble-border: #cfe8e4;--chat-bg: #ffffff;--success: #2d6a4f;--success-bg: rgba(45, 106, 79, .1);--danger: #b4534a;--danger-bg: rgba(180, 83, 74, .1);--warning-ink: #9a4b43;--warning-bg: rgba(180, 83, 74, .08);--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--radius-sm: .625rem;--radius-md: 1rem;--radius-lg: 1.25rem;--radius-xl: 1.5rem;--radius-2xl: 1.75rem;--shadow-xs: 0 1px 2px rgba(22, 27, 34, .04);--shadow-sm: 0 2px 8px rgba(22, 27, 34, .06), 0 1px 2px rgba(22, 27, 34, .04);--shadow-md: 0 8px 28px rgba(22, 27, 34, .08), 0 2px 10px rgba(22, 27, 34, .04);--shadow-lg: 0 24px 48px rgba(22, 27, 34, .12);--shadow-inset-soft: inset 0 1px 0 rgba(255, 255, 255, .65);--transition-fast: .18s cubic-bezier(.25, .46, .45, .94);--transition-medium: .28s cubic-bezier(.25, .46, .45, .94);--focus-ring: 0 0 0 3px rgba(31, 122, 114, .28);--header-blur: 14px;--content-max: 72rem;--font-root-px: clamp(15px, .28vw + 14px, 17px)}:root[data-font-scale=small]{--font-root-px: clamp(13px, .22vw + 12px, 15px)}:root[data-font-scale=large]{--font-root-px: clamp(17px, .35vw + 15px, 20px)}[data-theme=dark]{--bg: #141d1c;--bg-subtle: #121a19;--surface: #1a2422;--surface-muted: #141d1c;--surface-elevated: #1f2a28;--border: #2c3d39;--border-subtle: #22302d;--text: #e8f1ef;--text-secondary: #c0d1cd;--text-muted: #7d948f;--accent: #4ebdaa;--accent-hover: #6ed4c4;--accent-soft: rgba(78, 189, 170, .16);--accent-ghost: rgba(78, 189, 170, .09);--user-bubble-bg: linear-gradient(165deg, #1a2e2a 0%, #152522 100%);--assistant-bubble-bg: #1a2422;--assistant-bubble-border: #2a4540;--chat-bg: #141d1c;--success: #6bc9a0;--success-bg: rgba(107, 201, 160, .14);--danger: #e8887e;--danger-bg: rgba(232, 136, 126, .14);--warning-ink: #f0b4ae;--warning-bg: rgba(232, 136, 126, .12);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .28);--shadow-sm: 0 2px 10px rgba(0, 0, 0, .32), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 8px 28px rgba(0, 0, 0, .38), 0 2px 10px rgba(0, 0, 0, .22);--shadow-lg: 0 24px 48px rgba(0, 0, 0, .45);--shadow-inset-soft: inset 0 1px 0 rgba(255, 255, 255, .06);--focus-ring: 0 0 0 3px rgba(78, 189, 170, .35)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*{box-sizing:border-box}html{font-size:var(--font-root-px);height:100%;height:100dvh}body{margin:0;height:100%;max-height:100%;overflow:hidden;font-family:var(--font-sans);font-size:1rem;line-height:1.6;letter-spacing:-.01em;background:var(--chat-bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-size-adjust:100%}#root{height:100%;max-height:100%;min-height:0;font-size:1rem;display:flex;flex-direction:column;overflow:hidden}.app-layout{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.app-content{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column}button{font-family:inherit;font-size:inherit;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}button:disabled{cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}a{color:var(--accent);transition:color var(--transition-fast),opacity var(--transition-fast)}a:hover{color:var(--accent-hover)}:where(button,a,input,textarea,select):focus-visible{outline:none;box-shadow:var(--focus-ring)}
