.login-required{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem;padding:2rem 1.25rem;margin:1rem 0;border-radius:1rem;border:1px solid rgba(65,105,225,.25);background:linear-gradient(135deg,rgba(255,191,0,.12),rgba(65,105,225,.06));color:#1a1a1a}.dark .login-required{color:#f1f5f9;border-color:rgba(255,191,0,.3);background:linear-gradient(135deg,rgba(255,191,0,.08),rgba(65,105,225,.12))}.login-required--compact{padding:1.25rem 1rem;margin:.5rem 0}.login-required__icon{width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;border-radius:9999px;background-color:var(--color-cs-amber,#ffbf00);color:#1a1a1a;font-size:1.1rem;box-shadow:0 6px 16px rgba(255,191,0,.35);margin-bottom:.25rem}.login-required__title{margin:0;font-size:1.125rem;font-weight:700;color:inherit}.login-required__text{margin:0;font-size:.9rem;color:#4b5563;max-width:22rem;line-height:1.5}.dark .login-required__text{color:#d1d5db}.login-required__btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.65rem 1.5rem;border-radius:9999px;background-color:var(--color-cs-royal-blue,#4169e1);color:#ffffff;text-decoration:none;font-weight:600;font-size:.95rem;box-shadow:0 8px 18px rgba(65,105,225,.3);transition:transform .15s ease,background-color .15s ease}.login-required__btn:hover{background-color:#1e40af;transform:scale(1.03)}.dark .login-required__btn{background-color:var(--color-cs-amber,#ffbf00);color:#1a1a1a;box-shadow:0 8px 18px rgba(255,191,0,.25)}.dark .login-required__btn:hover{background-color:#e6ac00}.login-required__hint{margin:.25rem 0 0;font-size:.8rem;color:#6b7280}.dark .login-required__hint{color:#9ca3af}.login-required__link{color:var(--color-cs-royal-blue,#4169e1);text-decoration:underline;font-weight:600}.dark .login-required__link{color:var(--color-cs-amber,#ffbf00)}.agent-chat{--agent-text:#0f172a;--agent-text-muted:#475569;--agent-surface:#ffffff;--agent-surface-elevated:#f1f5f9;--agent-border:rgba(65,105,225,0.2);--agent-user-bg:linear-gradient(135deg,#4169e1,#6366f1);--agent-assistant-bg:#ffffff;--agent-assistant-text:#0f172a;--agent-input-bg:#ffffff;--agent-chip-bg:#ffffff;--agent-chip-text:#334155}.dark .agent-chat{--agent-text:#f1f5f9;--agent-text-muted:#94a3b8;--agent-surface:#1e293b;--agent-surface-elevated:#0f172a;--agent-border:rgba(148,163,184,0.25);--agent-user-bg:linear-gradient(135deg,#4169e1,#6366f1);--agent-assistant-bg:#334155;--agent-assistant-text:#f1f5f9;--agent-input-bg:#1e293b;--agent-chip-bg:#334155;--agent-chip-text:#e2e8f0}.agent-disclaimer{background:linear-gradient(90deg,#fef9c3,#fef3c7);border:1px solid rgba(245,158,11,.45);color:#78350f;padding:.625rem .875rem;border-radius:.75rem;font-size:.75rem;margin-bottom:.75rem;line-height:1.45}.dark .agent-disclaimer{background:linear-gradient(90deg,#422006,#451a03);border-color:#b45309;color:#fde68a}.agent-picker{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.agent-picker__chip{font-size:.75rem;padding:.4rem .85rem;border-radius:9999px;border:1px solid var(--agent-border);background:var(--agent-chip-bg);color:var(--agent-chip-text);cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.06);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.agent-picker__chip:hover:not(:disabled){transform:translateY(-1px);border-color:var(--color-cs-royal-blue);box-shadow:0 4px 10px rgba(65,105,225,.2)}.agent-picker__chip--active{background:linear-gradient(135deg,var(--color-cs-royal-blue),#6366f1);border-color:transparent;color:#ffffff;box-shadow:0 4px 12px rgba(65,105,225,.35)}.agent-picker__chip:disabled{opacity:.55;cursor:not-allowed}.agent-chat__messages{min-height:12rem;max-height:min(22rem,calc(100vh - 18rem));overflow-y:auto;padding:.875rem;margin-bottom:.75rem;border-radius:1rem;border:1px solid var(--agent-border);background:radial-gradient(ellipse at 0 0,rgba(65,105,225,.1) 0,transparent 55%),radial-gradient(ellipse at 100% 100%,rgba(255,191,0,.08) 0,transparent 55%),var(--agent-surface-elevated);color:var(--agent-text)}.dark .agent-chat__messages{background:radial-gradient(ellipse at 0 0,rgba(99,102,241,.18) 0,transparent 55%),radial-gradient(ellipse at 100% 100%,rgba(255,191,0,.06) 0,transparent 55%),var(--agent-surface-elevated)}.agent-chat__empty{text-align:center;padding:1.25rem .5rem}.agent-chat__empty-title{font-size:1rem;font-weight:800;margin-bottom:.5rem;color:var(--color-cs-royal-blue);letter-spacing:-.02em}.dark .agent-chat__empty-title{color:#e2e8f0}.agent-chat__empty-text{font-size:.8125rem;color:var(--agent-text-muted);margin-bottom:.875rem;line-height:1.5}.agent-chat__examples{display:flex;flex-direction:column;gap:.5rem}.agent-chat__example-chip{text-align:left;font-size:.8125rem;padding:.5rem .75rem;border-radius:.75rem;border:1px solid var(--agent-border);background:var(--agent-chip-bg);color:var(--agent-chip-text);cursor:pointer;transition:transform .15s ease,border-color .15s ease}.agent-chat__example-chip:hover:not(:disabled){transform:scale(1.01);border-color:var(--color-cs-royal-blue);color:var(--color-cs-royal-blue)}.dark .agent-chat__example-chip:hover:not(:disabled){color:#93c5fd}.agent-message{margin-bottom:.75rem;display:flex;flex-direction:column}.agent-message--user{align-items:flex-end}.agent-message--assistant{align-items:flex-start}.agent-message__badge{font-size:.6875rem;font-weight:700;color:var(--color-cs-amber);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.04em}.agent-message__bubble{max-width:92%;padding:.625rem .875rem;border-radius:1rem;font-size:.875rem;line-height:1.55}.agent-message--user .agent-message__bubble{background:var(--agent-user-bg);color:#ffffff;border-bottom-right-radius:.25rem;box-shadow:0 4px 12px rgba(65,105,225,.28)}.agent-message--assistant .agent-message__bubble{background:var(--agent-assistant-bg);color:var(--agent-assistant-text);border:1px solid var(--agent-border);border-bottom-left-radius:.25rem;box-shadow:0 2px 8px rgba(0,0,0,.06)}.agent-message__text{white-space:pre-wrap;margin:0;color:inherit}.agent-chat__loading{display:flex;justify-content:center;padding:.5rem;color:var(--agent-text-muted)}.agent-chat__error{color:#ef4444;font-size:.875rem;margin-bottom:.625rem;font-weight:500}.dark .agent-chat__error{color:#fca5a5}.agent-chat__listening{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#dc2626;margin-bottom:.5rem;font-weight:600;padding:.45rem .75rem;border-radius:.5rem;background:rgba(239,68,68,.1)}.dark .agent-chat__listening{color:#fca5a5;background:rgba(239,68,68,.15)}.agent-chat__listening-dot{width:.5rem;height:.5rem;border-radius:50%;background:#ef4444;animation:agentListeningBlink 1s ease-in-out infinite}.agent-chat__voice-hint{font-size:.75rem;color:var(--agent-text-muted);margin-bottom:.5rem;line-height:1.4}.agent-chat__form{display:flex;flex-direction:column;gap:.625rem}.agent-chat__input-row{display:flex;align-items:stretch;gap:.5rem}.agent-chat__input-row .agent-chat__input{flex:1;min-width:0}.agent-chat__input{width:100%;padding:.625rem .875rem;border-radius:.75rem;border:2px solid var(--agent-border);background:var(--agent-input-bg);color:var(--agent-text);font-size:.875rem;resize:vertical}.agent-chat__input::-moz-placeholder{color:var(--agent-text-muted);opacity:.85}.agent-chat__input::placeholder{color:var(--agent-text-muted);opacity:.85}.agent-chat__input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px rgba(139,92,246,.25)}.agent-chat__mic{flex-shrink:0;width:2.875rem;align-self:flex-end;border:2px solid var(--agent-border);border-radius:.75rem;background:var(--agent-chip-bg);color:var(--color-cs-royal-blue);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:background .2s ease,border-color .2s ease,color .2s ease}.dark .agent-chat__mic{color:#93c5fd}.agent-chat__mic:hover:not(:disabled){border-color:var(--color-cs-royal-blue);background:rgba(65,105,225,.12)}.agent-chat__mic--active{background:rgba(239,68,68,.15);border-color:#ef4444;color:#dc2626;animation:agentMicPulse 1.2s ease-in-out infinite}.dark .agent-chat__mic--active{color:#fca5a5;background:rgba(127,29,29,.4)}.agent-chat__mic:disabled{opacity:.5;cursor:not-allowed}.agent-chat__actions{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}.agent-chat__clear{padding:.5rem 1rem;border-radius:9999px;border:1px solid var(--agent-border);background:transparent;color:var(--agent-text-muted);font-size:.8125rem;cursor:pointer}.agent-chat__send{padding:.5rem 1.25rem;border-radius:9999px;background:linear-gradient(135deg,var(--color-cs-royal-blue),#8b5cf6);color:#ffffff;font-weight:700;font-size:.875rem;border:none;cursor:pointer;box-shadow:0 4px 14px rgba(99,102,241,.35)}.agent-chat__send:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06)}.agent-chat__clear:disabled,.agent-chat__send:disabled{opacity:.5;cursor:not-allowed;transform:none}.agent-chat__stop-speak{padding:.5rem 1rem;border-radius:9999px;border:1px solid #f59e0b;background:transparent;color:#b45309;font-size:.8125rem;cursor:pointer;margin-right:auto}.dark .agent-chat__stop-speak{color:#fbbf24;border-color:#fbbf24}.agent-message__speak{display:inline-flex;align-items:center;gap:.25rem;margin-top:.5rem;padding:.3rem .55rem;font-size:.75rem;border:none;border-radius:.375rem;background:rgba(65,105,225,.15);color:var(--color-cs-royal-blue);cursor:pointer}.dark .agent-message__speak{background:rgba(147,197,253,.2);color:#93c5fd}@keyframes agentMicPulse{0%,to{box-shadow:0 0 0 0 rgba(239,68,68,.35)}50%{box-shadow:0 0 0 6px rgba(239,68,68,0)}}@keyframes agentListeningBlink{0%,to{opacity:1}50%{opacity:.35}}.agent-chat:not(.agent-chat--widget) .agent-chat__messages{min-height:20rem;max-height:32rem;padding:1.125rem}.agent-chat:not(.agent-chat--widget) .agent-chat__empty-title{font-size:1.35rem}@media (min-width:481px){.agent-chat--widget .agent-chat__messages{min-height:14rem;max-height:min(26rem,calc(100vh - 14rem))}.agent-chat__empty-title{font-size:1.05rem}}@media (min-width:769px){.agent-chat--widget .agent-chat__messages{min-height:16rem;max-height:min(28rem,calc(100vh - 12rem));padding:1rem}.agent-chat:not(.agent-chat--widget) .agent-chat__messages{min-height:22rem;max-height:34rem}.agent-chat:not(.agent-chat--widget) .agent-chat__empty-title{font-size:1.5rem}}