@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=DM+Sans:wght@400;500;600&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap);:root{--text-primary:#1a365d;--text-secondary:#4a5568;--bg-white:#fff;--highlight-gradient-start:#f8fbff;--highlight-gradient-end:#e3edf7;--main-bg-gradient:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);--highlight-gradient:linear-gradient(135deg,var(--highlight-gradient-start) 0%,var(--highlight-gradient-end) 100%);--bg-page:#e3edf7;--pale-blue:#eaf4fd;--pale-green:#eafbe7;--accent-green:#6edc7d;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:2.5rem;--space-7:3rem;--space-8:4rem;--container-max:1200px;--container-wide:900px;--container-medium:700px;--container-narrow:520px;--container-xs:400px;--font-size-h1:2.5rem;--font-size-h2:2rem;--font-size-h3:1.5rem;--font-size-h4:1.25rem;--font-size-h5:1.125rem;--font-size-h6:1rem;--font-size-base:1rem;--font-size-sm:0.875rem;--font-size-xs:0.75rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--border-radius-small:4px;--border-width:1px;--border-width-thick:2px;--transition-slow:0.5s ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--spacing-4xl:5rem;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--soft-blue:#e3edf7;--calm-lavender:#f0f4ff;--warm-gray:#f7f7f7;--muted-blue:#a0b4d0;--accent-blue:#4a90e2;--success-light:#e8f5e8;--error-light:#ffebee;--warning-light:#fff3e0}.h1,h1{font-size:2.5rem;font-size:var(--font-size-h1);line-height:1.2}.h1,.h2,h1,h2{color:#3a5a8c;color:var(--primary-blue);font-weight:700;letter-spacing:.01em;margin-bottom:.5em;text-transform:none}.h2,h2{font-size:2rem;font-size:var(--font-size-h2);line-height:1.25}.h3,h3{font-size:1.5rem;font-size:var(--font-size-h3);line-height:1.3}.h3,.h4,h3,h4{color:#3a5a8c;color:var(--primary-blue);font-weight:600;letter-spacing:.01em;margin-bottom:.5em;text-transform:none}.h4,h4{font-size:1.25rem;font-size:var(--font-size-h4);line-height:1.35}.body,body{color:#1a365d;color:var(--text-primary);font-size:var(--font-size-body);font-weight:400;line-height:1.5}.app-card{background:var(--bg-white);border:3.5px solid var(--border-light);border-radius:var(--border-radius-large);box-shadow:0 8px 40px var(--shadow-medium),0 3px 12px #3c5a8214;margin:0 auto var(--space-4) auto;max-width:var(--container-narrow);padding:var(--space-6) var(--space-5);transition:all var(--transition-fast)}.app-card--danger{border-left:6px solid;border-color:#e57373;border-color:var(--error-red)}.error-card,.error-card--account,.error-card--auth,.error-card--info,.error-card--network,.error-card--rate-limit,.error-card--server,.error-card--success,.error-card--validation,.error-card--warning{margin:0 auto 1.2rem;max-width:340px;padding:2.5rem 2rem;padding:var(--space-6) var(--space-5);width:100%}@media (max-width:600px){.error-card,.error-card--account,.error-card--auth,.error-card--info,.error-card--network,.error-card--rate-limit,.error-card--server,.error-card--success,.error-card--validation,.error-card--warning{word-wrap:break-word;max-width:95vw;overflow:hidden;overflow-wrap:break-word;padding:2rem 1rem;padding:var(--space-5) var(--space-3)}}.error-card{word-wrap:break-word;animation:errorSlideIn .6s cubic-bezier(.16,1,.3,1);background:linear-gradient(90deg,#fff6f6 80%,#f7fafd);border:2.5px solid #e57373;border:2.5px solid var(--error-red);border-radius:18px;border-radius:var(--border-radius-large);box-shadow:0 8px 32px #e573731a;color:#e57373;color:var(--error-red);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:.95rem;gap:.75rem;-webkit-hyphens:auto;hyphens:auto;margin-bottom:1.2rem;overflow:hidden;overflow-wrap:break-word;padding:2.5rem 2rem;padding:var(--space-6) var(--space-5);position:relative}.error-card--success{background:linear-gradient(90deg,#f0fbf1 80%,#f7fafd);border-color:#4caf50;border-color:var(--success-green);box-shadow:0 8px 32px #4caf501a;color:#4caf50;color:var(--success-green)}.error-card--warning{background:linear-gradient(90deg,#fff8e1 80%,#f7fafd);border-color:#ef6c00;border-color:var(--warning-orange);box-shadow:0 8px 32px #fb923c1a;color:#ef6c00;color:var(--warning-orange)}.error-card--info{box-shadow:0 8px 32px #3a5a8c1a}.error-card--info,.error-card--network{background:linear-gradient(90deg,#e3f2fd 80%,#f7fafd);border-color:#3a5a8c;border-color:var(--primary-blue);color:#3a5a8c;color:var(--primary-blue)}.error-card--network{box-shadow:0 8px 32px #3b82f614}.error-card--rate-limit{background:linear-gradient(90deg,#fff8e1 80%,#f7fafd);border-color:#ef6c00;border-color:var(--warning-orange);box-shadow:0 8px 32px #f59e0b14;color:#ef6c00;color:var(--warning-orange)}.error-card--auth{background:#fff6f6f2;border-color:#e57373;border-color:var(--error-red);color:#e57373;color:var(--error-red)}.error-card--account,.error-card--server{background:#f9fafbf2;border-color:#dbe6f3;border-color:var(--border-light);box-shadow:0 8px 32px #6b728014;color:#1a365d;color:var(--text-primary)}.error-card--validation{background:#fff3e0f2;border-color:#ef6c00;border-color:var(--warning-orange);box-shadow:0 8px 32px #fb923c14;color:#ef6c00;color:var(--warning-orange)}.error-card--session-expired{background:linear-gradient(90deg,#e3f2fd 80%,#f7fafd);border-color:#3a5a8c;border-color:var(--primary-blue);box-shadow:0 8px 32px #3b82f614;color:#3a5a8c;color:var(--primary-blue)}.error-card{align-items:center;display:flex;flex-direction:column;gap:1.5rem;justify-content:center;text-align:center;width:100%}.error-card__icon{align-self:center;background:#ffeaea;border-radius:50%;box-shadow:0 2px 8px #e5737314;box-sizing:border-box;color:#e57373;color:var(--error-red);flex-shrink:0;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Android Emoji,EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,sans-serif;font-size:1.3rem;height:2.2rem;margin:0 auto;padding:0;width:2.2rem}.error-card__icon,.error-card__icon-emoji{align-items:center;display:flex;justify-content:center;line-height:1;text-align:center}.error-card__icon-emoji{font-family:inherit;font-size:inherit;height:100%;width:100%}.error-card__text{align-items:center;display:flex;flex-direction:column;gap:.5rem;text-align:center;width:100%}.error-card__title{font-size:1.08rem;font-weight:700;letter-spacing:.2px;text-transform:lowercase}.error-card__message,.error-card__title{color:inherit;margin:0;text-align:center;width:100%}.error-card__message{word-wrap:break-word;font-size:.95rem;line-height:1.4;max-width:100%;opacity:.9;overflow:hidden;overflow-wrap:break-word}.error-card__actions{display:flex;gap:.75rem;margin-top:.5rem;width:100%}.error-card__actions,.error-card__retry{align-items:center;justify-content:center}.error-card__retry{background:#5a8fd6;background:var(--medium-blue);border:none;border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #5a8fd626;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.8rem;font-weight:600;gap:.25rem;letter-spacing:.3px;padding:.5rem 1rem;text-align:center;text-transform:lowercase;transition:all .2s ease;transition:all var(--transition-fast)}.error-card__retry:hover{background:#4a7bc8;box-shadow:0 4px 8px #5a8fd633;transform:translateY(-1px)}.error-card__retry:active{transform:translateY(0)}.error-card__retry:focus{box-shadow:0 0 0 2px #b3d4fc;box-shadow:0 0 0 2px var(--focus-blue);outline:none}.error-card__secondary{align-items:center;background:#0000;border:1px solid #dbe6f3;border:1px solid var(--border-light);border-radius:8px;border-radius:var(--border-radius);color:#4a5568;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.8rem;font-weight:600;gap:.25rem;justify-content:center;letter-spacing:.3px;padding:.5rem 1rem;text-align:center;text-transform:lowercase;transition:all .2s ease;transition:all var(--transition-fast)}.error-card__secondary:hover{background:var(--bg-secondary);border-color:var(--border-medium);transform:translateY(-1px)}.error-card__secondary:active{transform:translateY(0)}.error-card__secondary:focus{box-shadow:0 0 0 2px #b3d4fc;box-shadow:0 0 0 2px var(--focus-blue);outline:none}.error-card--success .error-card__retry{background:#4caf50;background:var(--success-green);border:1px solid #4caf50;border:1px solid var(--success-green);color:#fff}.error-card--success .error-card__retry:hover{background:#388e3c;border-color:#388e3c;transform:translateY(-1px)}.error-card--warning .error-card__retry{background:#ef6c00;background:var(--warning-orange);border:1px solid #ef6c00;border:1px solid var(--warning-orange);color:#fff}.error-card--warning .error-card__retry:hover{background:#e65100;border-color:#e65100;transform:translateY(-1px)}.error-message{border:2.5px solid #e57373;border-radius:18px;color:#e57373}.error-icon{color:#e57373;flex-shrink:0}.error-title{color:#e57373;width:100%}.error-text{line-height:1.4;opacity:.9;text-align:center;width:100%}.success-message{align-items:center;animation:errorSlideIn .6s cubic-bezier(.16,1,.3,1);background:linear-gradient(90deg,#f0fbf1 80%,#f7fafd);border:2.5px solid #4caf50;border:2.5px solid var(--success-green);border-radius:18px;border-radius:var(--border-radius-large);box-shadow:0 8px 32px #4caf501a;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:.95rem;gap:.75rem;margin-bottom:1.2rem;overflow:hidden;padding:1.25rem 1.5rem;text-align:center}.success-content{gap:1rem;justify-content:center;width:100%}.success-icon{box-shadow:0 2px 8px #4caf5014;font-size:1.3rem;height:2.2rem;width:2.2rem}.success-title{font-size:1.08rem;letter-spacing:.2px;margin-bottom:.2rem;text-align:center;width:100%}.success-text{font-size:.95rem;line-height:1.4;opacity:.9;text-align:center;width:100%}.invalid-feedback{animation:slideDown .3s ease-out;display:block;letter-spacing:.01em;line-height:1.4;margin-top:.25rem;text-transform:lowercase}.feedback-container{align-items:flex-start;margin-top:.25rem;min-height:1.5rem}.offline-indicator{flex-direction:column}.offline-indicator>*{text-align:center}@media (max-width:768px){.error-card{font-size:.9rem;gap:1.25rem;padding:1rem}.error-card__icon{align-self:center;box-sizing:border-box;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Android Emoji,EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,sans-serif;font-size:1.2rem;height:2rem;margin:0 auto;padding:0;width:2rem}.error-card__icon,.error-card__icon-emoji{align-items:center;display:flex;justify-content:center;line-height:1;text-align:center}.error-card__icon-emoji{font-family:inherit;font-size:inherit;height:100%;width:100%}.error-card__title{font-size:1rem}}.app-banner{align-items:center;animation:bannerSlideIn .3s cubic-bezier(.16,1,.3,1);border:1px solid;border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 8px #0000000a;flex-direction:column;font-family:var(--font-family);font-size:.9rem;gap:.75rem;justify-content:center;line-height:1.5;margin-bottom:1rem;padding:1rem 1.5rem;text-align:center}.app-banner__icon{border-radius:50%;font-size:1.25rem;height:2rem;margin-bottom:.25rem;width:2rem}.app-banner__content{align-items:center;gap:.5rem;text-align:center;width:100%}.app-banner__title{font-size:.95rem;letter-spacing:.01em;margin:0;text-align:center;text-transform:lowercase}.app-banner__text{font-size:.85rem;margin:0;opacity:.9;text-align:center}.app-banner__actions{flex-shrink:0;gap:.75rem;justify-content:center;width:100%}.app-banner__button{border:1px solid #0000;font-size:.8rem;letter-spacing:.01em;padding:.5rem 1rem;text-transform:lowercase}.app-banner__button,.app-banner__dismiss{transition:all .2s ease;transition:all var(--transition-fast)}.app-banner__dismiss{align-items:center;border-radius:50%;display:flex;font-size:.9rem;height:1.5rem;justify-content:center;opacity:.6;width:1.5rem}.app-banner__dismiss:hover{background:#0000001a}.app-banner,.app-banner--info{background:linear-gradient(90deg,#e3f2fd,#f0f9ff);border-color:#2196f34d;color:#3a5a8c;color:var(--primary-blue)}.app-banner--info .app-banner__icon{background:#2196f31a;color:#1565c0}.app-banner--info .app-banner__button{background:#2196f31a;border-color:#2196f34d;color:#1565c0}.app-banner--info .app-banner__button:hover{background:#2196f333;border-color:#2196f380}.app-banner--success{background:linear-gradient(90deg,#f0fbf1,#f6ffed);border-color:#4caf504d;color:#4caf50;color:var(--success-green)}.app-banner--success .app-banner__icon{background:#4caf501a;color:#2e7d32}.app-banner--success .app-banner__button{background:#4caf501a;border-color:#4caf504d;color:#2e7d32}.app-banner--success .app-banner__button:hover{background:#4caf5033;border-color:#4caf5080}.app-banner--warning{background:linear-gradient(90deg,#fff8e1,#fffde7);border-color:#ff98004d;color:#ef6c00;color:var(--warning-orange)}.app-banner--warning .app-banner__icon{background:#ff98001a;color:#ef6c00}.app-banner--warning .app-banner__button{background:#ff98001a;border-color:#ff98004d;color:#ef6c00}.app-banner--warning .app-banner__button:hover{background:#ff980033;border-color:#ff980080}.app-banner--error{background:linear-gradient(90deg,#fff6f6,#ffebee);border-color:#f443364d;color:#e57373;color:var(--error-red)}.app-banner--error .app-banner__icon{background:#f443361a;color:#c62828}.app-banner--error .app-banner__button{background:#f443361a;border-color:#f443364d;color:#c62828}.app-banner--error .app-banner__button:hover{background:#f4433633;border-color:#f4433680}.app-banner--loading{background:linear-gradient(90deg,#f5f5f5,#fafafa);border-color:#9e9e9e4d;color:#1a365d;color:var(--text-primary)}.app-banner--loading .app-banner__icon{animation:spin 1s linear infinite;background:#9e9e9e1a;color:#424242}.app-banner--loading .app-banner__button{background:#9e9e9e1a;border-color:#9e9e9e4d;color:#424242}.app-banner--trial{background:linear-gradient(90deg,#fffbe6,#fff8dc);border-color:#ffc10766;color:#ef6c00;color:var(--warning-orange)}.app-banner--trial .app-banner__icon{background:#ffc10726;color:#f57f17}.app-banner--trial .app-banner__button{background:#3a5a8c;background:var(--primary-blue);border-color:#3a5a8c;border-color:var(--primary-blue);color:#fff}.app-banner--trial .app-banner__button:hover{background:#5a8fd6;background:var(--medium-blue);border-color:#5a8fd6;border-color:var(--medium-blue)}.app-banner--subscription{background:linear-gradient(90deg,#f8fbff,#e3edf7);background:linear-gradient(90deg,var(--highlight-gradient-start) 0,var(--highlight-gradient-end) 100%);border-color:#b3d4fc;border-color:var(--focus-blue);color:#3a5a8c;color:var(--primary-blue)}.app-banner--subscription .app-banner__icon{background:#3a5a8c1a}.app-banner--subscription .app-banner__button{background:#3a5a8c;background:var(--primary-blue);border-color:#3a5a8c;border-color:var(--primary-blue);color:#fff}.app-banner--subscription .app-banner__button:hover{background:#5a8fd6;background:var(--medium-blue);border-color:#5a8fd6;border-color:var(--medium-blue)}.app-banner--page-level{border-radius:18px;border-radius:var(--border-radius-large);box-shadow:0 4px 16px #0000000f;font-size:1rem;margin:0 0 2rem;padding:1.5rem 2rem}.app-banner--page-level .app-banner__icon{font-size:1.2rem;height:2rem;width:2rem}.app-banner--page-level .app-banner__title{font-size:1.1rem}.app-banner--page-level .app-banner__text{font-size:.95rem}.chat-history-container .app-banner,.chat-history-container .app-banner--page-level{animation:none!important}.app-banner--inline{font-size:.875rem;margin:.5rem 0;padding:.875rem 1.25rem}.app-banner--floating,.app-banner--inline{border-radius:8px;border-radius:var(--border-radius)}.app-banner--floating{animation:bannerFloatIn .4s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000001f;margin:0;max-width:400px;position:fixed;right:1rem;top:1rem;z-index:1000}@keyframes bannerFloatIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.app-banner--sticky{-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border-left:none;border-radius:0;border-right:none;margin:0;position:sticky;top:0;z-index:100}.app-banner--compact{font-size:.8rem;gap:.5rem;padding:.75rem 1rem}.app-banner--compact .app-banner__icon{font-size:1.1rem;height:1.5rem;margin-bottom:.125rem;width:1.5rem}.app-banner--compact .app-banner__title{font-size:.85rem}.app-banner--compact .app-banner__text{font-size:.75rem}.app-banner--large{align-items:center;border-radius:18px;border-radius:var(--border-radius-large);flex-direction:column;font-size:1.1rem;gap:1.5rem;padding:2rem 2.5rem;text-align:center}.app-banner--large .app-banner__icon{font-size:1.5rem;height:3rem;width:3rem}.app-banner--large .app-banner__content{align-items:center;text-align:center}.app-banner--large .app-banner__title{font-size:1.3rem}.app-banner--large .app-banner__text{font-size:1rem}.app-banner--dismissible{padding-right:3rem}.app-banner--dismissible .app-banner__dismiss{position:absolute;right:.75rem;top:.75rem}.app-banner--centered{justify-content:center!important;text-align:center!important}.app-banner--centered .app-banner__content{align-items:center!important;text-align:center!important}.app-banner--no-icon .app-banner__icon{display:none}@media (max-width:768px){.app-banner{flex-direction:column;font-size:.85rem;gap:.75rem;padding:1rem;text-align:center}.app-banner__content{align-items:center;text-align:center}.app-banner__actions{justify-content:center}.error-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start;margin-top:.75rem}.app-banner--page-level{padding:1.25rem}.app-banner--floating{bottom:1rem;left:1rem;max-width:none;position:fixed;right:1rem;top:auto}.app-banner--large{padding:1.5rem}}@media (max-width:480px){.app-banner{font-size:.8rem;padding:.875rem}.app-banner__button{font-size:.75rem;padding:.5rem .75rem}.error-actions{align-items:stretch;flex-direction:column;gap:.5rem}.error-actions .app-button{justify-content:center;margin-left:0;min-width:auto}}.app-banner{role:banner}.app-banner--error,.app-banner--warning{role:alert}.app-banner--info,.app-banner--success{role:status}.app-banner__dismiss:focus{outline:2px solid #3a5a8c;outline:2px solid var(--primary-blue);outline-offset:2px}@media (prefers-contrast:high){.app-banner,.app-banner__button{border-width:2px}}@media (prefers-reduced-motion:reduce){.app-banner,.app-banner--floating,.app-banner--loading .app-banner__icon{animation:none}.app-banner__button,.app-banner__dismiss{transition:none}}.app-button{align-items:center;appearance:none;background:none;background:linear-gradient(135deg,#7bb6fa,#5a8fd6);background:linear-gradient(135deg,var(--light-blue) 0,var(--medium-blue) 100%);border:1px solid #fff3;border-radius:var(--border-radius);box-shadow:0 2px 8px #3c5a8214;box-shadow:0 2px 8px var(--shadow-light);color:#fff;color:var(--bg-white);cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;letter-spacing:.01em;line-height:1.2;min-height:48px;min-width:48px;outline:none;overflow:hidden;padding:.75rem 1.5rem;position:relative;text-align:center;text-decoration:none;transform:translateY(0);transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-medium)}.app-button--primary:before,.app-button:not(.app-button--secondary):not(.app-button--tertiary):before{background:linear-gradient(135deg,#fff3,#0000 50%);content:"";inset:0;opacity:0;position:absolute;transition:opacity .2s ease;transition:opacity var(--transition-fast)}.app-button--primary:hover:before,.app-button:not(.app-button--secondary):not(.app-button--tertiary):hover:before{opacity:1}.app-button:hover:not(:disabled){background:linear-gradient(135deg,#5a8fd6,#3a5a8c);background:linear-gradient(135deg,var(--medium-blue) 0,var(--primary-blue) 100%);box-shadow:0 6px 20px #5a8fd666;transform:translateY(-2px)}.app-button:active:not(:disabled){background:linear-gradient(135deg,#4a7bc8,#5a8fd6);background:linear-gradient(135deg,#4a7bc8 0,var(--medium-blue) 100%);box-shadow:0 2px 8px #3c5a8214;box-shadow:0 2px 8px var(--shadow-light);transform:translateY(0)}.app-button:focus-visible{outline:3px solid #b3d4fc;outline:3px solid var(--focus-blue);outline-offset:2px}.app-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.app-button--primary:disabled{opacity:.6}.app-button--primary,.app-button--primary:disabled{background:linear-gradient(135deg,#7bb6fa,#5a8fd6);background:linear-gradient(135deg,var(--light-blue) 0,var(--medium-blue) 100%);border:1px solid #fff3;color:#fff;color:var(--bg-white)}.app-button--primary:hover:not(:disabled){background:linear-gradient(135deg,#5a8fd6,#3a5a8c);background:linear-gradient(135deg,var(--medium-blue) 0,var(--primary-blue) 100%);box-shadow:0 6px 20px #5a8fd666;transform:translateY(-2px)}.app-button--primary:active:not(:disabled){background:linear-gradient(135deg,#4a7bc8,#5a8fd6);background:linear-gradient(135deg,#4a7bc8 0,var(--medium-blue) 100%);transform:translateY(0)}.app-button--secondary{background:#f7fafd;background:var(--bg-light);border:2px solid #3a5a8c;border:2px solid var(--primary-blue);box-shadow:none;color:#3a5a8c;color:var(--primary-blue)}.app-button--secondary:focus-visible,.app-button--secondary:hover:not(:disabled){background:#dbe6f3;background:var(--border-light);border-color:#5a8fd6;border-color:var(--medium-blue);color:#5a8fd6;color:var(--medium-blue)}.app-button--secondary:active:not(:disabled){background:#dbe6f3;background:var(--border-light)}.app-button--tertiary{background:#0000;border:1px solid #0000;color:#3a5a8c;color:var(--primary-blue)}.app-button--tertiary:focus-visible,.app-button--tertiary:hover:not(:disabled){background:#f7fafd;background:var(--bg-light);color:#5a8fd6;color:var(--medium-blue)}.app-button--tertiary:active:not(:disabled){background:#dbe6f3;background:var(--border-light)}.app-button--success{background:#4caf50;background:var(--success-green);color:#fff;color:var(--bg-white)}.app-button--success:hover:not(:disabled){background:#43a047}.app-button--warning{background:#ef6c00;background:var(--warning-orange);color:#fff;color:var(--bg-white)}.app-button--warning:hover:not(:disabled){background:#f57c00}.app-button--danger{background:#e57373;background:var(--error-red);color:#fff;color:var(--bg-white)}.app-button--danger:hover:not(:disabled){background:#d32f2f}.app-button--small{font-size:.875rem;min-height:36px;padding:.5rem 1rem}.app-button--large{font-size:1.125rem;min-height:56px;padding:1rem 2rem}.app-button--full-width{justify-content:center;width:100%}.app-button--icon-only{aspect-ratio:1;min-width:48px;padding:.75rem}.app-button--icon-only.app-button--small{min-width:36px;padding:.5rem}.app-button--icon-only.app-button--large{min-width:56px;padding:1rem}.app-button--gentle{background:#7bb6fa;background:var(--light-blue);box-shadow:0 2px 12px #7bb6fa4d;color:#fff;color:var(--bg-white)}.app-button--gentle:hover:not(:disabled){background:#5a8fd6;background:var(--medium-blue);box-shadow:0 4px 20px #7bb6fa66}.app-button--supportive{background:linear-gradient(135deg,#4caf50,#66bb6a);background:linear-gradient(135deg,var(--success-green) 0,#66bb6a 100%);box-shadow:0 2px 12px #4caf504d;color:#fff;color:var(--bg-white)}.app-button--supportive:hover:not(:disabled){background:linear-gradient(135deg,#43a047,#4caf50);background:linear-gradient(135deg,#43a047 0,var(--success-green) 100%);box-shadow:0 4px 20px #4caf5066}.app-button--calming{background:linear-gradient(135deg,#e3edf7,#f7fafd);border:2px solid #dbe6f3;border:2px solid var(--border-light);box-shadow:0 2px 8px #3c5a8214;color:#3a5a8c;color:var(--primary-blue)}.app-button--calming:hover:not(:disabled){background:#fff;background:var(--bg-white);border-color:#7bb6fa;border-color:var(--light-blue);box-shadow:0 4px 16px #3c5a821f}.app-button--loading{color:#0000;pointer-events:none}.app-button--loading:after{animation:button-spinner .8s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;content:"";height:1.25rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:1.25rem}@keyframes button-spinner{to{transform:translate(-50%,-50%) rotate(1turn)}}.app-button-group{display:flex;flex-wrap:wrap;gap:.75rem}.app-button-group--centered{justify-content:center}.app-button-group--end{justify-content:flex-end}.app-button-group--vertical{align-items:stretch;flex-direction:column}.app-button-group--vertical .app-button{width:100%}@media (max-width:768px){.app-button{font-size:.95rem;min-height:44px;padding:.75rem 1.25rem}.app-button--small{font-size:.875rem;min-height:40px;padding:.625rem 1rem}.app-button--large{font-size:1.1rem;min-height:52px;padding:1rem 1.75rem}.app-button-group{gap:.5rem}.app-button-group--vertical.app-button-group--mobile{flex-direction:column}}@media (max-width:480px){.app-button{font-size:.9rem;min-height:48px;padding:.875rem 1rem}.app-button--full-width-mobile{width:100%}}.app-form-control{appearance:none;background:#fff;background:var(--bg-white);border:2px solid #dbe6f3;border:2px solid var(--border-light);border-radius:8px;border-radius:var(--border-radius);box-sizing:border-box;color:#1a365d;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);font-size:1rem;font-weight:400;line-height:1.5;min-height:48px;outline:none;padding:.75rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-medium);width:100%}.app-form-control::placeholder{color:#8ca0b8;color:var(--light-gray);font-weight:400;transition:color .2s ease;transition:color var(--transition-fast)}.app-form-control:focus{background:#fff;background:var(--bg-white);border-color:#7bb6fa;border-color:var(--light-blue);box-shadow:0 0 0 3px #7bb6fa1a}.app-form-control:focus::placeholder{color:#6b7a90;color:var(--text-gray);opacity:.7}.app-form-control:hover:not(:disabled):not(:focus){background:#f7fafd;background:var(--bg-light);border-color:#7bb6fa80}.app-form-control:disabled{background:#f7fafd;background:var(--bg-light);border-color:#dbe6f3;border-color:var(--border-light);color:#8ca0b8;color:var(--light-gray);cursor:not-allowed;opacity:.7}.app-form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;position:relative}.app-form-label{color:#1a365d;color:var(--text-primary);font-size:var(--font-size-label);font-weight:var(--font-weight-label);line-height:1.4;margin-bottom:.25rem}.app-form-label--required:after{color:#e57373;color:var(--error-red);content:" *";font-weight:600}.app-form-help{color:#6b7a90;color:var(--text-gray);font-size:var(--font-size-caption);font-weight:var(--font-weight-caption);line-height:1.4;margin-top:.25rem}.app-form-control--valid{background:#4caf5005;border-color:#4caf50;border-color:var(--success-green)}.app-form-control--valid:focus{border-color:#4caf50;border-color:var(--success-green);box-shadow:0 0 0 3px #4caf501a}.app-form-control--invalid{background:#e5737305;border-color:#e57373;border-color:var(--error-red)}.app-form-control--invalid:focus{border-color:#e57373;border-color:var(--error-red);box-shadow:0 0 0 3px #e573731a}.app-form-control--warning{background:#ef6c0005;border-color:#ef6c00;border-color:var(--warning-orange)}.app-form-control--warning:focus{border-color:#ef6c00;border-color:var(--warning-orange);box-shadow:0 0 0 3px #ef6c001a}.app-form-feedback{align-items:center;display:flex;font-size:var(--font-size-caption);font-weight:500;gap:.5rem;line-height:1.4;margin-top:.25rem}.app-form-feedback--valid{color:#4caf50;color:var(--success-green)}.app-form-feedback--invalid{color:#e57373;color:var(--error-red)}.app-form-feedback--warning{color:#ef6c00;color:var(--warning-orange)}.app-form-control--textarea{line-height:1.6;min-height:120px;padding:1rem;resize:vertical}.app-form-control--journal{background:#fff;background:var(--bg-white);border:2px solid #dbe6f3;border:2px solid var(--border-light);border-radius:12px;font-size:1.05rem;line-height:1.7;min-height:200px;padding:1.25rem}.app-form-control--journal:focus{border-color:#7bb6fa;border-color:var(--light-blue);box-shadow:0 0 0 4px #7bb6fa14}.app-form-control--select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7a90' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.25rem 1.25rem;cursor:pointer;padding-right:3rem}.app-form-control--select:focus{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%237bb6fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E")}.app-form-control--gentle{background:linear-gradient(135deg,#fff,#f7fafd);background:linear-gradient(135deg,var(--bg-white) 0,var(--bg-light) 100%);border:2px solid #dbe6f3;border:2px solid var(--border-light);border-radius:12px}.app-form-control--gentle:focus{background:#fff;background:var(--bg-white);border-color:#7bb6fa;border-color:var(--light-blue);box-shadow:0 0 0 4px #7bb6fa14}.app-form-control--comfortable{border-radius:12px;font-size:1.05rem;min-height:56px;padding:1rem 1.25rem}.app-form-check{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:1rem;position:relative}.app-form-check-input{appearance:none;background:#fff;background:var(--bg-white);border:2px solid #dbe6f3;border:2px solid var(--border-light);border-radius:4px;cursor:pointer;flex-shrink:0;height:1.25rem;margin:0;position:relative;transition:all .2s ease;transition:all var(--transition-fast);width:1.25rem}.app-form-check-input:checked{background:#3a5a8c;background:var(--primary-blue);border-color:#3a5a8c;border-color:var(--primary-blue)}.app-form-check-input:checked:after{border:2px solid #fff;border:2px solid var(--bg-white);border-left:none;border-top:none;content:"";height:.625rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transform:translate(-50%,-65%) rotate(45deg);width:.375rem}.app-form-check-input:focus{outline:2px solid #b3d4fc;outline:2px solid var(--focus-blue);outline-offset:2px}.app-form-check-input:hover:not(:disabled){border-color:#7bb6fa;border-color:var(--light-blue)}.app-form-check-input:disabled{background:#f7fafd;background:var(--bg-light);border-color:#8ca0b8;border-color:var(--light-gray);cursor:not-allowed;opacity:.6}.app-form-check-label{color:#1a365d;color:var(--text-primary);cursor:pointer;font-size:1rem;font-weight:400;line-height:1.5;-webkit-user-select:none;user-select:none}.app-form-check-input--radio{border-radius:50%}.app-form-check-input--radio:checked:after{background:#fff;background:var(--bg-white);border:none;border-radius:50%;content:"";height:.5rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:.5rem}.app-form-row{display:flex;flex-wrap:wrap;gap:1rem}.app-form-col{flex:1 1;min-width:0}.app-form-col--half{flex-basis:calc(50% - 0.5rem);flex-grow:0;flex-shrink:0}.app-form-col--third{flex-basis:calc(33.333% - 0.667rem);flex-grow:0;flex-shrink:0}.app-form-col--quarter{flex-basis:calc(25% - 0.75rem);flex-grow:0;flex-shrink:0}.app-form-control--mindful{background:linear-gradient(135deg,#fafbfc,#fff);background:linear-gradient(135deg,#fafbfc 0,var(--bg-white) 100%);border:2px solid #7bb6fa33;border-radius:16px;font-size:1.05rem;line-height:1.8;min-height:160px;padding:1.25rem}.app-form-control--mindful:focus{background:#fff;background:var(--bg-white);border-color:#7bb6fa;border-color:var(--light-blue);box-shadow:0 0 0 6px #7bb6fa0f}.app-form-control--safe{background:linear-gradient(135deg,#fff,#f8fbff);background:linear-gradient(135deg,var(--bg-white) 0,#f8fbff 100%);border:2px solid #4caf5033;border-radius:12px}.app-form-control--safe:focus{border-color:#4caf50;border-color:var(--success-green);box-shadow:0 0 0 4px #4caf500f}@media (max-width:768px){.app-form-control{font-size:1rem;min-height:44px;padding:.75rem}.app-form-control--comfortable{min-height:52px;padding:1rem}.app-form-row{flex-direction:column;gap:0}.app-form-col,.app-form-col--half,.app-form-col--quarter,.app-form-col--third{flex:1 1 100%}.app-form-check{gap:.5rem}.app-form-check-input{height:1.125rem;width:1.125rem}}@media (max-width:480px){.app-form-control{font-size:1rem;min-height:48px;padding:.875rem}.app-form-control--journal,.app-form-control--mindful{font-size:1rem;padding:1rem}.app-form-group{margin-bottom:1rem}}@media (prefers-reduced-motion:reduce){.app-button,.app-form-check-input,.app-form-control{transition:none}}@media (prefers-contrast:high){.app-form-control,.app-form-control:focus{border-width:3px}.app-button{border:2px solid}}.app-modal-overlay{align-items:center;animation:modalOverlayFadeIn .3s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#2a3a4d99;display:flex;inset:0;justify-content:center;padding:1.5rem;padding:var(--space-4);position:fixed;z-index:1000}@keyframes modalOverlayFadeIn{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:1}}.app-modal{animation:modalSlideIn .3s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fff;background:var(--bg-white);border:1px solid #dbe6f3;border:1px solid var(--border-light);border-radius:18px;border-radius:var(--border-radius-large);box-shadow:0 8px 32px #3c5a8226,0 4px 16px #3c5a821a;max-height:90vh;max-width:500px;overflow:hidden;position:relative;transform-origin:center;width:100%}.app-modal__header{border-bottom:1px solid #dbe6f3;border-bottom:1px solid var(--border-light);padding:2rem 2.5rem 1rem;position:relative}.app-modal__title{color:#3a5a8c;color:var(--primary-blue);font-size:1.5rem;font-weight:700;letter-spacing:-.01em;line-height:1.2;margin:0;text-transform:lowercase}.app-modal__close{align-items:center;background:#0000;border:none;border-radius:50%;color:#6b7a90;color:var(--text-gray);cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;position:absolute;right:2rem;top:1.5rem;transition:all .2s ease;transition:all var(--transition-fast);width:32px}.app-modal__close:hover{background:#7bb6fa1a;color:#3a5a8c;color:var(--primary-blue)}.app-modal__close:focus{outline:2px solid #b3d4fc;outline:2px solid var(--focus-blue);outline-offset:2px}.app-modal__body{max-height:calc(90vh - 200px);overflow-y:auto;padding:1.5rem 2.5rem}.app-modal__text{color:#4a5568;color:var(--text-secondary);font-size:1.0625rem;line-height:1.6;margin:0}.app-modal__footer{border-top:1px solid #dbe6f3;border-top:1px solid var(--border-light);display:flex;gap:1rem;justify-content:flex-end;padding:1rem 2.5rem 2rem}.app-modal--small{max-width:400px}.app-modal--medium{max-width:600px}.app-modal--large{max-width:800px}.app-modal--fullscreen{border-radius:8px;border-radius:var(--border-radius);max-height:95vh;max-width:95vw}.app-modal--dialog .app-modal__footer{gap:1.5rem;justify-content:center}.app-modal--drawer{animation:modalDrawerSlideIn .3s cubic-bezier(.16,1,.3,1);border-radius:0;height:100vh;max-height:100vh;position:fixed;right:0;top:0}@keyframes modalDrawerSlideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.app-modal--gentle{border:2px solid #7bb6fa33;box-shadow:0 8px 32px #7bb6fa26}.app-modal--gentle .app-modal__title{color:#5a8fd6;color:var(--medium-blue)}.app-tooltip{display:inline-block;position:relative}.app-tooltip__content{animation:tooltipFadeIn .2s ease-out;background:#1a365d;background:var(--text-primary);border-radius:8px;border-radius:var(--border-radius);bottom:calc(100% + 8px);box-shadow:0 4px 12px #00000026;color:#fff;color:var(--bg-white);font-size:.8rem;font-weight:500;left:50%;opacity:0;padding:.5rem .75rem;pointer-events:none;position:absolute;transform:translateX(-50%);transition:all .2s ease;transition:all var(--transition-fast);white-space:nowrap;z-index:1100}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateX(-50%) translateY(-4px) scale(.9)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}.app-tooltip__content:after{border-color:#1a365d #0000 #0000;border-color:var(--text-primary) #0000 #0000 #0000;border-style:solid;border-width:6px 6px 0;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.app-tooltip:focus .app-tooltip__content,.app-tooltip:hover .app-tooltip__content{opacity:1;pointer-events:auto}.app-tooltip--top .app-tooltip__content{bottom:calc(100% + 8px);left:50%;transform:translateX(-50%)}.app-tooltip--bottom .app-tooltip__content{bottom:auto;left:50%;top:calc(100% + 8px);transform:translateX(-50%)}.app-tooltip--bottom .app-tooltip__content:after{border-color:#0000 #0000 #1a365d;border-color:#0000 #0000 var(--text-primary) #0000;border-width:0 6px 6px;top:-6px}.app-tooltip--left .app-tooltip__content{bottom:auto;left:auto;right:calc(100% + 8px);top:50%;transform:translateY(-50%)}.app-tooltip--left .app-tooltip__content:after{border-color:#0000 #0000 #0000 #1a365d;border-color:#0000 #0000 #0000 var(--text-primary);border-width:6px 0 6px 6px;left:100%;top:50%;transform:translateY(-50%)}.app-tooltip--right .app-tooltip__content{bottom:auto;left:calc(100% + 8px);top:50%;transform:translateY(-50%)}.app-tooltip--right .app-tooltip__content:after{border-color:#0000 #1a365d #0000 #0000;border-color:#0000 var(--text-primary) #0000 #0000;border-width:6px 6px 6px 0;left:auto;right:100%;top:50%;transform:translateY(-50%)}.app-tooltip--light .app-tooltip__content{background:#fff;background:var(--bg-white);border:1px solid #dbe6f3;border:1px solid var(--border-light);color:#1a365d;color:var(--text-primary)}.app-tooltip--light .app-tooltip__content:after{border-top-color:#fff;border-top-color:var(--bg-white)}.app-tooltip--error .app-tooltip__content{background:#e57373;background:var(--error-red);color:#fff;color:var(--bg-white)}.app-tooltip--error .app-tooltip__content:after{border-top-color:#e57373;border-top-color:var(--error-red)}.app-tooltip--success .app-tooltip__content{background:#4caf50;background:var(--success-green);color:#fff;color:var(--bg-white)}.app-tooltip--success .app-tooltip__content:after{border-top-color:#4caf50;border-top-color:var(--success-green)}.app-link{background:#0000!important;border:none!important;border-radius:4px;color:#5a8fd6;color:var(--medium-blue);cursor:pointer;font-weight:500;font:inherit;padding:2px 4px;text-decoration:none;text-transform:lowercase;transition:color .2s ease;transition:color var(--transition-fast)}.app-link:focus,.app-link:hover{color:#3a5a8c;color:var(--primary-blue);outline:none;text-decoration:underline}.app-link:active{color:#3a5a8c;color:var(--primary-blue);transform:translateY(1px)}.app-link:visited{color:#3a5a8ccc}.app-link--primary{color:#3a5a8c;color:var(--primary-blue);font-weight:600}.app-link--primary:hover{background:#7bb6fa1a;color:#5a8fd6;color:var(--medium-blue)}.app-link--secondary{color:#4a5568;color:var(--text-secondary);font-weight:500}.app-link--secondary:hover{color:#3a5a8c;color:var(--primary-blue)}.app-link--subtle{color:#6b7a90;color:var(--text-gray);font-weight:400;text-decoration:none}.app-link--subtle:hover{color:#1a365d;color:var(--text-primary);text-decoration:underline}.app-link--danger{color:#e57373;color:var(--error-red);font-weight:500}.app-link--danger:hover{background:#e573731a;color:#d32f2f}.app-link--external:after{content:"↗";font-size:.8em;margin-left:.25em;opacity:.7}.app-link--inline{background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;margin:0;padding:0;transform:none}.app-link--inline:hover{background-size:100% 2px;transform:none}.app-link--button{align-items:center;background:linear-gradient(135deg,#3a5a8c,#5a8fd6);background:linear-gradient(135deg,var(--primary-blue) 0,var(--medium-blue) 100%);background-image:none;background-size:0;border:1px solid #0000;border-radius:8px;border-radius:var(--border-radius);box-shadow:var(--shadow-soft);color:#fff;display:inline-flex;font-weight:600;font-weight:var(--font-weight-semibold);gap:.5rem;gap:var(--space-2);justify-content:center;padding:1rem 1.5rem;padding:var(--space-3) var(--space-4);text-transform:lowercase}.app-link--button:hover{background:linear-gradient(135deg,#5a8fd6,#3a5a8c);background:linear-gradient(135deg,var(--medium-blue) 0,var(--primary-blue) 100%);background-size:0;box-shadow:#3c5a821f;box-shadow:var(--shadow-medium);color:#fff;transform:translateY(-2px)}.app-link--button:focus{background-color:initial;box-shadow:0 0 0 3px #2c5aa04d,#3c5a821f;box-shadow:0 0 0 3px rgba(var(--primary-blue-rgb,44,90,160),.3),var(--shadow-medium)}.app-link--button:active{box-shadow:var(--shadow-soft);transform:translateY(0)}.app-link--nav{background-image:none;background-size:0;border-radius:8px;border-radius:var(--border-radius);color:#4a5568;color:var(--text-secondary);font-weight:500;font-weight:var(--font-weight-medium);padding:.5rem 1rem;padding:var(--space-2) var(--space-3)}.app-link--nav:hover{background-color:#2c5aa00d;background-color:rgba(var(--primary-blue-rgb,44,90,160),.05);background-size:0;color:#3a5a8c;color:var(--primary-blue);transform:none}.app-link--nav.active{background-color:#2c5aa01a;background-color:rgba(var(--primary-blue-rgb,44,90,160),.1);color:#3a5a8c;color:var(--primary-blue);font-weight:600;font-weight:var(--font-weight-semibold)}.app-link--underline{background-size:100% 1px!important}.app-link--no-underline{background-image:none!important;background-size:0!important}.app-link--muted{color:var(--text-muted);font-weight:400;font-weight:var(--font-weight-normal)}.app-link--muted:hover{color:#4a5568;color:var(--text-secondary)}.app-link-group{display:flex;flex-direction:column;gap:.5rem;gap:var(--space-2)}.app-link-group--horizontal{align-items:center;flex-direction:row;flex-wrap:wrap;gap:1.5rem;gap:var(--space-4)}.app-link-group--horizontal .app-link{white-space:nowrap}.app-breadcrumb{align-items:center;color:var(--text-muted);display:flex;font-size:.875rem;font-size:var(--font-size-sm);gap:.5rem;gap:var(--space-2)}.app-breadcrumb .app-link{color:var(--text-muted);font-weight:400;font-weight:var(--font-weight-normal);padding:.25rem .5rem;padding:var(--space-1) var(--space-2)}.app-breadcrumb .app-link:hover{color:#3a5a8c;color:var(--primary-blue)}.app-breadcrumb .app-link:last-child{color:#1a365d;color:var(--text-primary);font-weight:500;font-weight:var(--font-weight-medium);pointer-events:none}.app-breadcrumb:after{color:var(--text-muted);content:"/";margin:0 .25rem;margin:0 var(--space-1)}.app-breadcrumb:last-child:after{display:none}.app-loading{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;font-size:.9rem;gap:.75rem;justify-content:center;padding:2.5rem;padding:var(--space-6)}.app-spinner{animation:spin 1s linear infinite;border:2px solid #7bb6fa4d;border-radius:50%;border-top:2px solid var(--primary-blue);flex-shrink:0;height:20px;width:20px}.app-spinner--large{border-width:3px;height:32px;width:32px}.app-spinner--small{border-width:2px;height:16px;width:16px}.app-skeleton{animation:skeletonShimmer 1.5s infinite;background:linear-gradient(90deg,#f7fafd 25%,#7bb6fa1a 50%,#f7fafd 75%);background:linear-gradient(90deg,var(--bg-light) 25%,#7bb6fa1a 50%,var(--bg-light) 75%);background-size:200% 100%;border-radius:8px;border-radius:var(--border-radius)}@keyframes skeletonShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.app-skeleton--text{height:1em;margin:.5em 0}.app-skeleton--title{height:1.5em;margin-bottom:1em;width:60%}.app-skeleton--card{height:120px;margin-bottom:1rem}.app-empty-state{align-items:center;color:#4a5568;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:4rem 1.5rem;padding:var(--space-8) var(--space-4);text-align:center}.app-empty-state__icon{color:#7bb6fa;color:var(--light-blue);height:64px;margin-bottom:1.5rem;margin-bottom:var(--space-4);opacity:.6;width:64px}.app-empty-state__title{color:#1a365d;color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 .5rem;margin:0 0 var(--space-2) 0;text-transform:lowercase}.app-empty-state__text{font-size:.95rem;line-height:1.5;margin:0 0 1.5rem;margin:0 0 var(--space-4) 0;max-width:400px;text-transform:lowercase}.app-empty-state__action{margin-top:.5rem;margin-top:var(--space-2)}:root{--shadow-xs:0 1px 2px #3c5a820d;--shadow-sm:0 1px 3px #3c5a821a,0 1px 2px #3c5a820f;--shadow-md:0 4px 6px #3c5a8212,0 2px 4px #3c5a820f;--shadow-lg:0 10px 15px #3c5a821a,0 4px 6px #3c5a820d;--shadow-xl:0 20px 25px #3c5a821a,0 10px 10px #3c5a820a;--shadow-2xl:0 25px 50px #3c5a8240;--border-radius-xs:4px;--border-radius-sm:6px;--border-radius-full:9999px;--transition-xs:0.1s ease;--transition-sm:0.15s ease;--transition-lg:0.4s cubic-bezier(0.4,0,0.2,1);--transition-xl:0.5s cubic-bezier(0.4,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--ease-out:cubic-bezier(0.0,0,0.2,1);--ease-in:cubic-bezier(0.4,0,1,1);--ease-bounce:cubic-bezier(0.68,-0.55,0.265,1.55)}.shadow-xs{box-shadow:0 1px 2px #3c5a820d;box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:0 1px 3px #3c5a821a,0 1px 2px #3c5a820f;box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:0 4px 6px #3c5a8212,0 2px 4px #3c5a820f;box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 10px 15px #3c5a821a,0 4px 6px #3c5a820d;box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:0 20px 25px #3c5a821a,0 10px 10px #3c5a820a;box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:0 25px 50px #3c5a8240;box-shadow:var(--shadow-2xl)}.shadow-none{box-shadow:none}.rounded-xs{border-radius:4px;border-radius:var(--border-radius-xs)}.rounded-sm{border-radius:6px;border-radius:var(--border-radius-sm)}.rounded{border-radius:8px;border-radius:var(--border-radius)}.rounded-md{border-radius:12px;border-radius:var(--border-radius-md)}.rounded-lg{border-radius:18px;border-radius:var(--border-radius-large)}.rounded-xl{border-radius:20px;border-radius:var(--border-radius-xl)}.rounded-2xl{border-radius:24px;border-radius:var(--border-radius-2xl)}.rounded-full{border-radius:9999px;border-radius:var(--border-radius-full)}.app-icon{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;transition:all .2s ease;transition:all var(--transition-fast);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.app-icon svg{display:block;height:100%;width:100%}.app-icon--xs{height:12px;width:12px}.app-icon--sm{height:16px;width:16px}.app-icon--md{height:20px;width:20px}.app-icon--lg{height:24px;width:24px}.app-icon--xl{height:32px;width:32px}.app-icon--2xl{height:48px;width:48px}.app-icon--interactive,a .app-icon,button .app-icon{cursor:pointer}.app-icon--interactive:hover,a:hover .app-icon,button:hover .app-icon{transform:scale(1.05)}.app-icon--interactive:active,a:active .app-icon,button:active .app-icon{transform:scale(.95)}.app-icon--primary{color:#3a5a8c;color:var(--primary-blue)}.app-icon--secondary{color:#4a5568;color:var(--text-secondary)}.app-icon--muted{color:#6b7a90;color:var(--text-gray)}.app-icon--success{color:#4caf50;color:var(--success-green)}.app-icon--warning{color:#ef6c00;color:var(--warning-orange)}.app-icon--error{color:#e57373;color:var(--error-red)}@media (max-width:768px){.app-modal{margin:1.5rem;margin:var(--space-4);max-width:calc(100vw - 2rem)}.app-modal__body,.app-modal__footer,.app-modal__header{padding-left:1.5rem;padding-right:1.5rem}.app-modal__footer{flex-direction:column;gap:.75rem}.app-modal--drawer{max-width:100vw;width:100vw}.app-tooltip__content{max-width:200px;white-space:normal}.app-empty-state{padding:2.5rem 1.5rem;padding:var(--space-6) var(--space-4)}.app-empty-state__icon{height:48px;width:48px}}@media (max-width:480px){.app-modal{border-radius:8px;border-radius:var(--border-radius);margin:.5rem;margin:var(--space-2);max-width:calc(100vw - 1rem)}.app-modal__header{padding:1.5rem 1rem 1rem}.app-modal__body,.app-modal__footer{padding:1rem}.app-modal__title{font-size:1.25rem}.app-modal__close{right:1rem;top:1rem}}@media (prefers-reduced-motion:reduce){.app-modal,.app-modal-overlay,.app-skeleton,.app-spinner,.app-tooltip__content{animation:none!important;transition:none!important}.app-link:active{transform:none}}@media (prefers-contrast:high){.app-modal{border:2px solid #dbe6f3;border:2px solid var(--border-light)}.app-tooltip__content{border:1px solid}.app-link{text-decoration:underline}}a{border-radius:2px;color:#3a5a8c;color:var(--primary-blue);font-weight:500;padding:0 2px;text-decoration:none;transition:all .2s ease;transition:all var(--transition-fast)}a:hover{color:#5a8fd6;color:var(--medium-blue);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}a:focus{outline:2px solid #b3d4fc;outline:2px solid var(--focus-blue);outline-offset:2px;text-decoration:none}a:active{color:#3a5a8c;color:var(--primary-blue);transform:translateY(1px)}a:visited{color:#3a5a8ccc}.action-button,.action-button:focus,.action-button:hover,.app-banner__button,.app-banner__button:focus,.app-banner__button:hover,.app-button,.app-button:focus,.app-button:hover,.confirm-button,.confirm-button:focus,.confirm-button:hover,.danger,.danger:focus,.danger:hover,.delete-button,.delete-button:focus,.delete-button:hover,.error-card__retry,.error-card__retry:focus,.error-card__retry:hover,.modal-button,.modal-button:focus,.modal-button:hover,.next-affirmation-button,.next-affirmation-button:focus,.next-affirmation-button:hover,.practice-affirmations-button,.practice-affirmations-button:focus,.practice-affirmations-button:hover,.primary,.primary:focus,.primary:hover,.refresh-button,.refresh-button:focus,.refresh-button:hover,.return-login-button,.return-login-button:focus,.return-login-button:hover,.secondary,.secondary:focus,.secondary:hover,.start-conversation-button,.start-conversation-button:focus,.start-conversation-button:hover,.submit-button,.submit-button:focus,.submit-button:hover,.success,.success:focus,.success:hover,.warning,.warning:focus,.warning:hover{text-decoration:none!important}.action-button:active:not(:disabled),.action-button:focus:not(:disabled),.action-button:hover:not(:disabled),.action-button:not(:disabled),.app-banner__button:active:not(:disabled),.app-banner__button:focus:not(:disabled),.app-banner__button:hover:not(:disabled),.app-banner__button:not(:disabled),.app-button:active:not(:disabled),.app-button:focus:not(:disabled),.app-button:hover:not(:disabled),.app-button:not(:disabled),.confirm-button:active:not(:disabled),.confirm-button:focus:not(:disabled),.confirm-button:hover:not(:disabled),.confirm-button:not(:disabled),.danger:active:not(:disabled),.danger:focus:not(:disabled),.danger:hover:not(:disabled),.danger:not(:disabled),.delete-button:active:not(:disabled),.delete-button:focus:not(:disabled),.delete-button:hover:not(:disabled),.delete-button:not(:disabled),.error-card__retry:active:not(:disabled),.error-card__retry:focus:not(:disabled),.error-card__retry:hover:not(:disabled),.error-card__retry:not(:disabled),.modal-button:active:not(:disabled),.modal-button:focus:not(:disabled),.modal-button:hover:not(:disabled),.modal-button:not(:disabled),.next-affirmation-button:active:not(:disabled),.next-affirmation-button:focus:not(:disabled),.next-affirmation-button:hover:not(:disabled),.next-affirmation-button:not(:disabled),.practice-affirmations-button:active:not(:disabled),.practice-affirmations-button:focus:not(:disabled),.practice-affirmations-button:hover:not(:disabled),.practice-affirmations-button:not(:disabled),.primary:active:not(:disabled),.primary:focus:not(:disabled),.primary:hover:not(:disabled),.primary:not(:disabled),.refresh-button:active:not(:disabled),.refresh-button:focus:not(:disabled),.refresh-button:hover:not(:disabled),.refresh-button:not(:disabled),.return-login-button:active:not(:disabled),.return-login-button:focus:not(:disabled),.return-login-button:hover:not(:disabled),.return-login-button:not(:disabled),.secondary:active:not(:disabled),.secondary:focus:not(:disabled),.secondary:hover:not(:disabled),.secondary:not(:disabled),.start-conversation-button:active:not(:disabled),.start-conversation-button:focus:not(:disabled),.start-conversation-button:hover:not(:disabled),.start-conversation-button:not(:disabled),.submit-button:active:not(:disabled),.submit-button:focus:not(:disabled),.submit-button:hover:not(:disabled),.submit-button:not(:disabled),.success:active:not(:disabled),.success:focus:not(:disabled),.success:hover:not(:disabled),.success:not(:disabled),.warning:active:not(:disabled),.warning:focus:not(:disabled),.warning:hover:not(:disabled),.warning:not(:disabled){color:#fff!important;color:var(--bg-white)!important}.app-banner--info .app-banner__button,.app-banner--info .app-banner__icon{color:#3a5a8c;color:var(--primary-blue)}.app-banner--success .app-banner__button,.app-banner--success .app-banner__icon{color:#4caf50;color:var(--success-green)}.app-banner--warning .app-banner__button,.app-banner--warning .app-banner__icon{color:#ef6c00;color:var(--warning-orange)}.app-banner--error .app-banner__button,.app-banner--error .app-banner__icon{color:#e57373;color:var(--error-red)}.app-banner--trial .app-banner__icon{color:#ef6c00;color:var(--warning-orange)}.app-banner--subscription .app-banner__icon{color:#3a5a8c;color:var(--primary-blue)}.app-banner--subscription .app-banner__button,.app-banner--trial .app-banner__button{color:#fff;color:var(--bg-white)}.app-banner--loading .app-banner__button,.app-banner--loading .app-banner__icon{color:#1a365d;color:var(--text-primary)}.error-card--account .error-card__icon,.error-card--auth .error-card__icon,.error-card--info .error-card__icon,.error-card--network .error-card__icon,.error-card--rate-limit .error-card__icon,.error-card--server .error-card__icon,.error-card--success .error-card__icon,.error-card--validation .error-card__icon,.error-card--warning .error-card__icon,.error-card__icon{color:inherit}.app-card-icon{align-items:center;background:linear-gradient(135deg,#7bb6fa1a,#5a8fd61a);border-radius:50%;color:#3a5a8c;color:var(--primary-blue);display:flex;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;margin-right:1rem;transition:background .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transition:background var(--transition-medium),transform var(--transition-medium);width:48px}.app-card:focus .app-card-icon,.app-card:hover .app-card-icon{background:linear-gradient(135deg,#7bb6fa26,#5a8fd626);background:var(--card-gradient,linear-gradient(135deg,#7bb6fa26 0,#5a8fd626 100%));transform:scale(1.05)}.app-card-icon--error{background:#ffeaea;color:#e57373;color:var(--error-red)}.app-card-icon--success{background:#d1fae5;color:#4caf50;color:var(--success-green)}.app-card-icon--warning{background:#fff8e1;color:#ef6c00;color:var(--warning-orange)}.app-card-icon--info{background:#dbeafe;color:#3a5a8c;color:var(--primary-blue)}.app-card-action{align-items:center;background:#7bb6fa1a;border:none;border-radius:50%;color:#7bb6fa;color:var(--light-blue);cursor:pointer;display:flex;font-size:1.1rem;height:32px;justify-content:center;transition:background .3s cubic-bezier(.4,0,.2,1),color .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transition:background var(--transition-medium),color var(--transition-medium),transform var(--transition-medium);width:32px}.app-card:focus .app-card-action,.app-card:hover .app-card-action{background:#7bb6fa;background:var(--light-blue);color:#fff;transform:translateX(3px)}.app-card-action:active{background:#4a7bc8;color:#fff;transform:translateX(1px)}.app-card-action:focus{box-shadow:0 0 0 2px #b3d4fc;box-shadow:0 0 0 2px var(--focus-blue);outline:none}.app-button-group--pill{display:flex;gap:0;justify-content:center}.app-button-group--pill .app-button{border-radius:0;border-right:1px solid #5a8fd6;border-right:1px solid var(--medium-blue);box-shadow:none;margin:0}.app-button-group--pill .app-button:first-child{border-radius:999px 0 0 999px}.app-button-group--pill .app-button:last-child{border-radius:0 999px 999px 0;border-right:none}.app-button{border-radius:8px}.app-header{align-items:flex-end;background:none;border:none;box-shadow:none;display:flex;justify-content:space-between;margin:0 auto 2rem;max-width:1200px;max-width:var(--container-max);padding:0;width:100%}.app-header-center{flex:1 1;flex-direction:column;text-align:center}.app-header-center,.app-header-title{align-items:center;display:flex;justify-content:center}.app-header-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3a5a8c,#5a8fd6);background:linear-gradient(135deg,var(--primary-blue) 0,var(--medium-blue) 100%);-webkit-background-clip:text;background-clip:text;color:#3a5a8c;color:var(--primary-blue);font-size:2.5rem;font-size:var(--font-size-h1);font-weight:700;gap:1.5rem;letter-spacing:-.01em;margin:0 0 .5rem;text-transform:lowercase}.app-header-subtitle{color:#6b7a90;color:var(--text-gray);font-size:var(--font-size-subtitle);font-weight:400;margin-bottom:.2rem}:root{--primary-blue:#3a5a8c!important;--light-blue:#7bb6fa!important;--medium-blue:#5a8fd6!important;--text-primary:#1a365d!important;--text-secondary:#4a5568!important;--text-gray:#6b7a90!important;--light-gray:#8ca0b8!important;--bg-light:#f7fafd!important;--bg-white:#fff!important;--border-light:#dbe6f3!important;--error-red:#e57373!important;--success-green:#4caf50!important;--warning-orange:#ef6c00!important;--bg-page:#eaf2fa!important}#root,.dashboard-container,.dashboard-layout,.insights-page,.main-content,.options-main,.register-container,.settings-page,.voice-bg,body,html{background:#f7fafd!important;color:#1a365d!important}@media (prefers-color-scheme:dark){#root,.admin-dashboard,.analytics-charts,.chat-interface,.conversation-card,.dashboard-container,.dashboard-layout,.insights-coming-soon,.insights-page,.login-page,.main-content,.metric-card,.navbar,.options-main,.register-container,.register-page,.settings-page,.subscription-page,.voice-bg,.voice-page,:root,body,html{background:#f7fafd!important;color:#1a365d!important}.app-banner,.app-button,.app-card,.app-form-control,.app-modal{background:#fff!important;background:var(--bg-white)!important;border-color:#dbe6f3!important;border-color:var(--border-light)!important;color:#1a365d!important;color:var(--text-primary)!important}a,button,div,h1,h2,h3,h4,h5,h6,input,label,p,select,span,textarea{color:#1a365d!important;color:var(--text-primary)!important}[class*=card],[class*=container],[class*=page],[class*=section]{background:#f7fafd!important;background:var(--bg-light)!important;color:#1a365d!important;color:var(--text-primary)!important}}body,html{height:100vh!important;min-height:100vh!important}body{background:#e3edf7}.login-container{align-items:center;background:var(--bg-page);box-sizing:border-box;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);justify-content:center;margin:0;min-height:100vh;padding:0;position:relative;width:100%}.login-card,.login-content{max-width:520px;width:100%}.login-card{animation:slideInUp .6s cubic-bezier(.16,1,.3,1);background:#fff;background:var(--bg-white,#fff);border:3.5px solid #dbe6f3;border:3.5px solid var(--border-light);border-radius:18px;border-radius:var(--border-radius-large);box-shadow:0 8px 40px #3c5a821f,0 3px 12px #3c5a8214;box-shadow:0 8px 40px var(--shadow-medium),0 3px 12px #3c5a8214;margin:0 auto;outline:none;padding:2.5rem 2rem;position:relative;transition:box-shadow .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);transition:box-shadow var(--transition-medium),transform var(--transition-medium),border-color var(--transition-medium)}.login-card:focus{box-shadow:0 0 0 3px #b3d4fc;box-shadow:0 0 0 3px var(--focus-blue)}.login-card.is-loading{box-shadow:0 8px 30px #3c5a821f;box-shadow:0 8px 30px var(--shadow-medium)}.login-card.success{animation:success-pulse 1.2s ease;box-shadow:0 8px 30px #2b9b7326}.login-header{margin-bottom:1.5rem;text-align:center}.login-title{color:#3a5a8c;color:var(--primary-blue);font-size:2rem;font-weight:700;margin-bottom:.25rem;text-align:center;text-transform:lowercase}.login-subtitle{word-wrap:break-word;color:#a0a0a0;font-size:1rem;line-height:1.5;margin-left:auto;margin-right:auto;margin-top:.5rem;max-width:90%;text-transform:lowercase;white-space:normal}.login-form{animation:fadeIn .7s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:1rem}.error-container{margin-bottom:0;transition:min-height .2s ease,margin-bottom .2s ease;transition:min-height var(--transition-fast),margin-bottom var(--transition-fast)}.error-container:has(.error-card){margin-bottom:1rem;min-height:120px}.error-container.has-error{margin-bottom:1rem;min-height:120px}.form-group{margin-bottom:0}.form-label{margin-left:0}.login-form .form-control{text-transform:none}.invalid-feedback{font-size:.875rem}.error-message{background:linear-gradient(90deg,#fff6f6 80%,#f7fafd)!important;border:2.5px solid #e57373!important;border:2.5px solid var(--error-red)!important;border-radius:18px!important;border-radius:var(--border-radius-large)!important;box-shadow:0 8px 32px #e573731a!important;color:#e57373!important;color:var(--error-red)!important;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;padding:1.25rem 1.5rem!important}.error-content{justify-content:center}.error-icon{background:#ffeaea!important}.error-icon,.error-title{color:#e57373!important;color:var(--error-red)!important}.error-title{text-align:center}.error-message.auth{background:#fff6f6f2;border-color:#f3bcbccc;color:#e57373;color:var(--error-red)}.error-message.auth .error-icon{background:#fecaca;color:#b91c1c}.error-message.account{background:#f9fafbf2;border-color:#9ca3afcc;box-shadow:0 4px 12px #6b728014;color:#374151}.error-message.account .error-icon{background:#e5e7eb;color:#374151}.error-message.network{background:#e3f2fdf2;border-color:#90caf9cc;box-shadow:0 4px 12px #3b82f614;color:#1976d2}.error-message.network .error-icon{background:#fecaca;color:#b91c1c}.error-message.rateLimit{background:#fffde7f2;border-color:#ffcc02cc;box-shadow:0 4px 12px #f59e0b14;color:#f57f17}.error-message.rateLimit .error-icon{background:#fef3c7;color:#92400e}.error-message.server{background:#f9fafbf2;border-color:#9ca3afcc;box-shadow:0 4px 12px #6b728014;color:#374151}.error-message.server .error-icon{background:#e5e7eb;color:#374151}.error-message.validation{background:#fff3e0f2;border-color:#ffab91cc;box-shadow:0 4px 12px #fb923c14;color:#ef6c00;color:var(--warning-orange)}.error-message.validation .error-icon{background:#fed7aa;color:#c2410c}.retry-button{align-self:flex-start;background:#5a8fd6;background:var(--medium-blue);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #5a8fd626;font-family:inherit;font-size:.8rem;font-weight:600;letter-spacing:.3px;padding:.5rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-medium)}.retry-button:hover{background:#4a7bc8;box-shadow:0 4px 8px #5a8fd633}.retry-button:active{transform:translateY(0)}.retry-button:focus{box-shadow:0 0 0 2px #b3d4fc;box-shadow:0 0 0 2px var(--focus-blue);outline:none}.form-options{justify-content:space-between;margin-bottom:1rem;margin-top:-.2rem}.form-options,.remember-me{align-items:center;display:flex}.checkbox-label{align-items:center;color:var(--text-gray);font-size:.92rem}.checkbox-label input[type=checkbox]{accent-color:var(--light-blue);margin-right:.5em}.checkbox-label:hover .checkbox-text{color:var(--primary-blue)}.mfa-checkbox input[type=checkbox]{margin-top:2px}.login-form .checkbox-text{text-transform:lowercase;transition:color .2s ease;transition:color var(--transition-fast);-webkit-user-select:none;user-select:none}.forgot-password a{border-radius:4px;color:#7bb6fa;color:var(--light-blue);font-size:.92rem;padding:2px 4px;text-decoration:none;text-transform:lowercase;transition:all .2s ease;transition:all var(--transition-fast)}.forgot-password a:focus,.forgot-password a:hover{background:#f0f6fd;color:#3a5a8c;color:var(--primary-blue);outline:none;text-decoration:underline}.login-button .button-text{color:#fff}.login-button.success .button-text{color:#3a5a8c}.login-footer{color:#6b7a90;color:var(--text-gray);font-size:.92rem;margin-top:1.5rem;text-align:center}.login-footer p{margin:.4rem 0}.login-footer a{border-radius:4px;color:#5a8fd6;color:var(--medium-blue);font-weight:500;padding:2px 4px;text-decoration:none;text-transform:lowercase;text-underline-offset:3px;transition:color .2s ease;transition:color var(--transition-fast)}.login-footer a:focus,.login-footer a:hover{color:#3a5a8c;color:var(--primary-blue);text-decoration:underline;text-underline-offset:3px}.login-footer .support-text{color:#6b7a90;color:var(--text-gray);font-size:.9rem;margin-top:.2rem}.login-card:after{border-radius:0 0 18px 18px;border-radius:0 0 var(--border-radius-large) var(--border-radius-large);content:"";height:3px;left:0;position:absolute;top:0;transition:width .5s ease;width:0}.login-card.is-loading:after,.login-card:after{background:linear-gradient(90deg,#7bb6fa,#5a8fd6);background:linear-gradient(90deg,var(--light-blue) 0,var(--medium-blue) 100%)}.login-card.is-loading:after{animation:progress 2s ease-out forwards;width:70%}.login-card.success:after{background:linear-gradient(90deg,#7bb6fa,#5a8fd6);background:linear-gradient(90deg,var(--light-blue) 0,var(--medium-blue) 100%);width:100%}@media (max-width:600px){.login-container{padding:1rem .5rem}.login-card{max-width:350px;overflow:hidden;padding:1.8rem 1.3rem 1.5rem}.login-title{font-size:1.6rem}.login-subtitle{font-size:.92rem}.login-header{margin-bottom:1.2rem}.form-options{align-items:flex-start;flex-direction:column;gap:.6rem}.forgot-password{align-self:flex-end}.error-message{font-size:.85rem;padding:.875rem 1rem}}@media (max-width:400px){.login-card{overflow:hidden;padding:1.5rem 1rem}.login-title{font-size:1.4rem}.login-subtitle{font-size:.88rem}.error-content{gap:.5rem}.error-icon{font-size:.9rem;height:1.5rem;width:1.5rem}}@media (prefers-contrast:high){.login-card{border:2px solid #3a5a8c;border:2px solid var(--primary-blue);overflow:hidden}.form-control:focus{border-width:3px}.error-message{border-width:2px}}@media (prefers-reduced-motion:reduce){.error-message,.form-control,.login-button,.login-card{animation:none;transition:none}.login-button.loading:after{animation:none}}.error-message:after,.error-message:before{border-radius:inherit}.login-card{overflow:hidden}.success-message:before{background:#10b981;border-radius:8px 8px 0 0;content:"";height:5px;left:.75rem;position:absolute;top:.5rem;width:calc(100% - 1.5rem)}@media print{.login-card{overflow:hidden}}.retry-button.network{background:#e3f2fdf2;border:1px solid #90caf9;box-shadow:none;color:#1976d2;font-weight:600;text-transform:lowercase;transition:background .2s,color .2s}.retry-button.network:focus,.retry-button.network:hover{background:#dbeafe;color:#1565c0;outline:none}input[type=password]::-ms-clear,input[type=password]::-ms-reveal{display:none}input[type=password]::-webkit-credentials-auto-fill-button{display:none!important;pointer-events:none;position:absolute;right:0;visibility:hidden}input[type=password]{appearance:none;-webkit-appearance:none}.qr-code-container{align-items:center;background-color:#f7fafd;background-color:var(--bg-light);border:1px solid #dbe6f3;border:1px solid var(--border-light);border-radius:18px;border-radius:var(--border-radius-large);box-shadow:var(--shadow-soft);display:flex;justify-content:center;margin:1.5rem auto;padding:24px;padding:var(--spacing-xl,24px)}.qr-code-container img{border:4px solid var(--bg-white);border-radius:8px;border-radius:var(--border-radius);box-shadow:#3c5a821f;box-shadow:var(--shadow-medium)}.backup-codes-container{background-color:var(--soft-blue);background-color:var(--calm-lavender,var(--soft-blue));border:1px solid #dbe6f3;border:1px solid var(--border-light);border-radius:18px;border-radius:var(--border-radius-large);margin:1.5rem 0;padding:24px;padding:var(--spacing-xl,24px)}.backup-codes-grid{grid-gap:16px;grid-gap:var(--spacing-lg,16px);color:var(--text-primary);display:grid;font-family:Courier New,Courier,monospace;font-size:1.1rem;font-weight:600;gap:16px;gap:var(--spacing-lg,16px);grid-template-columns:1fr 1fr;text-align:center}.backup-code-item{background:var(--bg-white);border:1px solid #dbe6f3;border:1px solid var(--border-light);border-radius:8px;border-radius:var(--border-radius);box-shadow:var(--shadow-soft);letter-spacing:2px;padding:12px;padding:var(--spacing-md,12px)}.backup-codes-info{color:#6b7a90;color:var(--text-secondary,var(--text-gray));font-size:.9rem;margin:1rem 0 1.5rem;text-align:center;text-transform:lowercase}.link-button{background:none;border:none;color:#5a8fd6;color:var(--medium-blue);cursor:pointer;font-family:inherit;font-size:inherit;margin:0;padding:0;text-decoration:none;transition:color .2s ease;transition:color var(--transition-fast)}.link-button:focus,.link-button:hover{color:#3a5a8c;color:var(--primary-blue);outline:none;text-decoration:underline;text-underline-offset:3px}.login-app-recommendation{color:#6b7a90;color:var(--text-gray);font-size:.9rem;line-height:1.4;margin-left:auto;margin-right:auto;margin-top:.75rem;max-width:90%;text-align:center;text-transform:none}input.form-control.is-invalid{background:#fff6f6e6!important;border-color:#e57373!important;border-color:var(--error-red)!important}.app-card{background:#fff;border:3.5px solid #dbe6f3;border:3.5px solid var(--border-light,#dbe6f3);border-radius:18px;border-radius:var(--border-radius-large,18px);box-shadow:0 8px 40px #3c5a821f,0 3px 12px #3c5a8214;box-shadow:0 8px 40px var(--shadow-medium,#3c5a821f),0 3px 12px #3c5a8214;margin:0 auto 1.5rem;max-width:520px;overflow:hidden;padding:2.5rem 2rem;position:relative;text-align:center;transition:all .2s ease;transition:all var(--transition-fast,.2s ease);width:100%}.mfa-toggle-link{background:none;border:none;border-radius:4px;color:#5a8fd6;color:var(--medium-blue);cursor:pointer;font-weight:500;font:inherit;padding:2px 4px;text-decoration:none;text-transform:lowercase;transition:color .2s ease;transition:color var(--transition-fast)}.mfa-toggle-link:focus,.mfa-toggle-link:hover{color:#3a5a8c;color:var(--primary-blue);outline:none;text-decoration:underline}.register-container{align-items:center;background:var(--bg-page)!important;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;justify-content:center;min-height:100vh;overflow-y:auto!important;padding:3.5rem 1rem 2rem;position:relative;width:100%}.register-content{margin-top:1.5rem;max-width:520px;width:100%}.register-card{animation:slideInUp .6s cubic-bezier(.16,1,.3,1);background:#fff;background:var(--bg-white,#fff);border:1px solid #ffffff4d;border-radius:var(--border-radius-large);box-shadow:0 8px 32px #3c5a821f,0 2px 8px #3c5a8214;margin-bottom:2rem;max-width:520px;outline:none;overflow:hidden;padding:2.5rem 2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.register-card:focus{box-shadow:0 0 0 3px #7bb6fa26}.register-card.is-loading{box-shadow:0 12px 40px #3c5a8226}.register-card.success{animation:success-pulse 1.2s ease;box-shadow:0 12px 40px #2b9b732e}.register-header{margin-bottom:1.5rem;text-align:center}.register-title{color:#3a5a8c;font-size:2.2rem;font-weight:700;line-height:1.2;margin:0 0 .25rem}.register-subtitle,.register-title{text-align:center;text-transform:lowercase}.register-subtitle{color:#6b7a90;font-size:1rem;line-height:1.5;margin-bottom:0;white-space:nowrap}.register-form{animation:fadeIn .7s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:1rem}.register-form .form-group{margin-bottom:.5rem;padding-bottom:0}.form-group{gap:.35rem}.form-label{font-weight:600}.form-control{border-radius:12px;max-width:none}.form-control::placeholder{transition:color .2s}.toggle-password{font-family:inherit;transition:all .2s}.password-strength{gap:.5rem;margin-top:.1rem;padding:0 .1rem;transition:opacity .2s}.strength-bar{transition:all .4s ease}.strength-bar-fill{border-radius:3px;height:100%;transition:all .4s cubic-bezier(.4,0,.2,1)}.strength-label{font-weight:600;white-space:nowrap}.age-verification-group,.terms-group{margin-bottom:1.5rem}.age-disclaimer{margin-top:.5rem;padding-left:1.5rem}.age-disclaimer small{color:#6b7a90;font-size:.875rem;font-style:italic;line-height:1.4}.checkbox-label{align-items:flex-start;color:#6b7a90;cursor:pointer;display:flex;font-size:.9rem;text-align:left}.checkbox-label input[type=checkbox]{accent-color:#7bb6fa;cursor:pointer;flex-shrink:0;height:1.1em;margin-right:.75em;margin-top:3px;width:1.1em}.checkbox-label:hover .checkbox-text{color:#3a5a8c}.checkbox-text{text-transform:lowercase}.register-form .checkbox-text:first-letter{text-transform:uppercase}.checkbox-text a{border-radius:4px;color:#5a8fd6;font-weight:600;padding:1px 3px;text-decoration:none;transition:all .2s}.checkbox-text a:focus,.checkbox-text a:hover{background:#7bb6fa14;color:#3a5a8c;text-decoration:underline}.register-button{margin-top:.5rem}.register-button.loading{background:linear-gradient(135deg,#5a8fd6,#7bb6fa)}.register-button.loading .button-text{opacity:.8}.register-button.loading:after{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:20px;left:50%;margin-left:-40px;margin-top:-10px;position:absolute;top:50%;width:20px}.register-button.success{background:linear-gradient(135deg,#4caf50,#66bb6a);box-shadow:0 4px 16px #4caf504d}.error-message{color:var(--error-red);font-family:var(--font-family);font-size:.95rem;gap:.75rem;margin-bottom:1.2rem;overflow:hidden;position:relative;text-align:left}.error-content{gap:1rem}.error-icon{align-items:center;background:#ffeaea;border-radius:50%;box-shadow:0 2px 8px #e5737314;display:flex;font-size:1.3rem;height:2.2rem;justify-content:center;width:2.2rem}.error-title{color:var(--error-red);font-size:1.08rem;font-weight:700;letter-spacing:.2px;margin-bottom:.2rem;text-transform:lowercase}.success-message{animation:successSlideIn .5s ease;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#f0fbe7f2;border:1px solid #b6e6a0cc;color:#388e3c;font-size:.9rem;margin-bottom:1.25rem}.success-content{align-items:center}.success-title{color:#2e7d32;margin-bottom:.25rem}.register-footer{animation:fadeIn .7s cubic-bezier(.4,0,.2,1) .4s both;background:#0000!important;color:#6b7a90;font-size:.9rem;margin-top:2rem;text-align:center}.register-footer p{margin:.8rem 0;text-transform:lowercase}.register-footer p a{background:#0000!important}.register-footer a{border-radius:6px;color:#5a8fd6;font-weight:600;padding:2px 6px;text-decoration:none;transition:all .2s}.register-footer a:focus,.register-footer a:hover{background:#7bb6fa14;color:#3a5a8c;text-decoration:underline;transform:translateY(-1px)}.register-footer .support-text{color:#6b7a90;display:block;font-size:1rem;font-style:normal;font-weight:500;letter-spacing:.01em;margin:1.2rem 0 .5rem;text-align:center;width:100%}.register-card:after{background:linear-gradient(90deg,#7bb6fa,#5a8fd6);border-radius:0 0 20px 20px;bottom:0;content:"";height:3px;left:0;position:absolute;transition:width .5s ease;width:0}.register-card.is-loading:after{animation:progress 2s ease-out forwards;width:70%}.register-card.success:after{background:linear-gradient(90deg,#4caf50,#66bb6a);width:100%}@media (max-width:600px){.register-container{padding:1rem .5rem}.register-card{border-radius:16px;padding:2rem 1.5rem}.register-content{max-width:380px}.register-title{font-size:1.8rem}.register-subtitle{font-size:.9rem}.form-control{font-size:.95rem;padding:.9rem 1rem}.register-button{font-size:1rem;padding:.9rem 0}.register-form{gap:1.25rem}.checkbox-label{font-size:.85rem}}@media (max-width:400px){.register-card{margin:.5rem;padding:1.5rem 1rem}.register-title{font-size:1.6rem}.register-subtitle{font-size:.85rem;line-height:1.4}.error-message,.success-message{font-size:.85rem;padding:.8rem 1rem}.checkbox-label{font-size:.8rem}}@media (prefers-contrast:high){.register-card{background:#fff;border:2px solid #3a5a8c}.form-control:focus,.register-button:focus{outline:3px solid currentColor;outline-offset:2px}.register-button:not(:disabled){background:#3a5a8c;color:#fff}}@media (prefers-reduced-motion:reduce){.error-message,.register-card,.register-footer,.register-form,.success-message{animation:none}.form-control:focus,.register-button:hover,.register-footer a:hover{transform:none}*{transition:none!important}}@media print{.register-container{background:#fff;color:#000}.register-card{border:1px solid #ccc;box-shadow:none}.password-strength,.register-button{display:none}}.register-card #confirmPassword,.register-card #email,.register-card #name{margin-left:0;margin-right:0;max-width:none;width:100%}.error-container{height:80px;max-height:80px;min-height:80px}.feedback-container{margin-bottom:0;min-height:0;transition:min-height .2s}.register-footer,.register-footer p{--bg-page:#0000!important;background:#0000!important}body.register-page,html.register-page{overflow-y:auto!important}.forgot-password-container{background:linear-gradient(135deg,#e3edf7,#f7fafd);background:linear-gradient(135deg,var(--bg-gradient-start) 0,var(--bg-gradient-end) 100%);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;padding:2rem 1rem;position:relative}.forgot-password-container,.forgot-password-content{align-items:center;display:flex;justify-content:center;width:100%}.forgot-password-content{flex-direction:column;max-width:520px}.forgot-password-card{animation:slideInUp .6s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:18px;border-radius:var(--border-radius-large);box-shadow:0 4px 24px #3c5a8214,0 1.5px 6px #3c5a820a;box-shadow:0 4px 24px var(--shadow-light),0 1.5px 6px #3c5a820a;margin:0 auto;max-width:520px;outline:none;overflow:hidden;padding:2.5rem 2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-medium);width:100%}.forgot-password-card:focus{box-shadow:0 0 0 3px #b3d4fc;box-shadow:0 0 0 3px var(--focus-blue)}.forgot-password-card.is-loading{box-shadow:0 8px 30px #3c5a821f;box-shadow:0 8px 30px var(--shadow-medium)}.forgot-password-card.success{animation:success-pulse 1.2s ease;box-shadow:0 8px 30px #2b9b7326}.forgot-password-header{margin-bottom:1.5rem;text-align:center}.forgot-password-title{color:#3a5a8c;color:var(--primary-blue);font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 .25rem;text-align:center}.forgot-password-subtitle{color:#6b7a90;color:var(--text-gray);font-size:1rem;line-height:1.5;margin:0 auto;max-width:300px;text-align:center}.forgot-password-form{animation:fadeIn .7s cubic-bezier(.4,0,.2,1) .2s both;display:flex;flex-direction:column;gap:1.1rem}.form-group{padding:0}.input-shaker.shake{transform:translateX(-5px)}.invalid-feedback{animation:slideDown .3s ease forwards}.error-icon-lock{margin-bottom:.75rem}.error-title-text{font-size:1.15rem}.error-message-text{line-height:1.5;margin-bottom:1rem}.success-message{color:#4caf50;color:var(--success-green)}.success-content{margin-bottom:1rem}.success-title{color:#4caf50;color:var(--success-green)}.success-actions{display:flex;justify-content:center}.return-login-button{background:#4caf50;background:var(--success-green);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 2px 4px #10b98126;color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.3px;padding:.6rem 1.25rem;text-decoration:none;text-transform:lowercase;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-medium)}.return-login-button:hover{background:#059669;box-shadow:0 4px 8px #10b98133;color:#fff;text-decoration:none;transform:translateY(-1px)}.return-login-button:active{transform:translateY(0)}.return-login-button:focus{box-shadow:0 0 0 2px #b3d4fc;box-shadow:0 0 0 2px var(--focus-blue);outline:none}.forgot-password-footer{color:#6b7a90;color:var(--text-gray);font-size:.92rem;margin-top:1.5rem;text-align:center}.forgot-password-footer p,.support-text{display:block;margin:.3rem 0;text-align:center}.forgot-password-footer a{border-radius:4px;color:#5a8fd6;color:var(--medium-blue);font-weight:500;padding:2px 4px;text-decoration:none;transition:color .2s ease;transition:color var(--transition-fast)}.forgot-password-footer a:focus,.forgot-password-footer a:hover{background:#f0f6fd;color:#3a5a8c;color:var(--primary-blue);outline:none;text-decoration:underline}.support-link{display:inline;text-align:center}.forgot-password-card:after{background:linear-gradient(90deg,#7bb6fa,#5a8fd6);background:linear-gradient(90deg,var(--light-blue) 0,var(--medium-blue) 100%);border-radius:0 0 18px 18px;border-radius:0 0 var(--border-radius-large) var(--border-radius-large);bottom:0;content:"";height:3px;left:0;position:absolute;transition:width .5s ease;width:0}.forgot-password-card.is-loading:after{animation:progress 2s ease-out forwards;width:70%}.forgot-password-card.success:after{background:linear-gradient(90deg,#4caf50,#66bb6a);background:linear-gradient(90deg,var(--success-green) 0,#66bb6a 100%);width:100%}@media (max-width:600px){.forgot-password-container{padding:1rem .5rem}.forgot-password-card{max-width:350px;padding:1.8rem 1.3rem 1.5rem}.forgot-password-title{font-size:1.6rem}.forgot-password-subtitle{font-size:.92rem}.forgot-password-header{margin-bottom:1.2rem}.error-message,.success-message{font-size:.85rem;padding:.875rem 1rem}.back-navigation{margin-bottom:1.2rem}}@media (max-width:400px){.forgot-password-card{padding:1.5rem 1rem}.forgot-password-title{font-size:1.4rem}.forgot-password-subtitle{font-size:.88rem}.error-content,.success-content{gap:.5rem}.error-icon,.success-icon{font-size:.9rem;height:1.5rem;width:1.5rem}}@media (prefers-contrast:high){.forgot-password-card{border:2px solid #3a5a8c;border:2px solid var(--primary-blue)}.form-control:focus{border-width:3px}.error-message,.success-message{border-width:2px}}@media (prefers-reduced-motion:reduce){.back-link,.error-message,.forgot-password-card,.form-control,.reset-button,.success-message{animation:none;transition:none}.header-icon,.reset-button.loading:after{animation:none}}.support-text{display:inline-block;text-align:center}.back-link,.back-link:focus,.back-link:hover{text-decoration:none!important}.feedback-container{height:1.2em;max-height:1.2em;min-height:1.2em;position:relative;transition:all .2s ease-in-out}.return-login-button,.return-login-button:active,.return-login-button:focus,.return-login-button:hover{color:var(--bg-white)!important}:root{--bg-light:#f7fafd;--error-red:#e57373;--warning-orange:#ef6c00;--focus-blue:#b3d4fc;--border-radius-large:18px;--transition-medium:0.3s cubic-bezier(.4,0,.2,1)}.reset-password-container{align-items:center;background:linear-gradient(135deg,#e3edf7,#f7fafd);background:linear-gradient(135deg,var(--bg-gradient-start) 0,var(--bg-gradient-end) 100%);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);justify-content:center;min-height:100vh;padding:2rem 1rem;position:relative;width:100%}.reset-password-content{max-width:520px;padding:0;width:100%}.reset-password-card{animation:slideInUp .6s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:18px;border-radius:var(--border-radius-large);box-shadow:0 4px 24px #3c5a8214,0 1.5px 6px #3c5a820a;box-shadow:0 4px 24px var(--shadow-light),0 1.5px 6px #3c5a820a;margin:0 auto;max-width:520px;min-height:480px;outline:none;overflow:hidden;padding:2.5rem 2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-medium);width:100%}.reset-password-card:focus{box-shadow:0 0 0 3px #b3d4fc;box-shadow:0 0 0 3px var(--focus-blue)}.reset-password-card.is-loading{box-shadow:0 8px 30px #3c5a821f;box-shadow:0 8px 30px var(--shadow-medium)}.reset-password-card.success{animation:success-pulse 1.2s ease;box-shadow:0 8px 30px #2b9b7326}@keyframes success-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.back-navigation{margin-bottom:1.5rem}.back-link{border-radius:var(--border-radius);color:var(--text-gray);transition:all var(--transition-fast)}.back-link:focus,.back-link:hover{color:var(--primary-blue)}.back-icon{transition:transform var(--transition-fast)}.reset-password-header{margin-bottom:1.5rem;text-align:center}.header-icon{align-items:center;animation:float 3s ease-in-out infinite;display:flex;font-size:3rem;justify-content:center;line-height:1;margin-bottom:1rem;opacity:.8}.reset-password-title{color:#3a5a8c;color:var(--primary-blue);font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 .25rem;text-align:center;text-transform:lowercase}.reset-password-subtitle{color:#6b7a90;color:var(--text-gray);font-size:1rem;line-height:1.5;margin:0 auto;max-width:320px;text-align:center;text-transform:lowercase}.reset-password-form{animation:fadeIn .7s cubic-bezier(.4,0,.2,1) .2s both;gap:1.1rem}.form-group,.reset-password-form{display:flex;flex-direction:column}.form-group{gap:.5rem;margin-bottom:1.2rem;position:relative}.form-label{color:#3a5a8c;color:var(--primary-blue);font-size:.9rem;font-weight:500;margin-bottom:0;text-align:left;text-transform:lowercase}.input-shaker,.input-wrapper{background:#0000;border:none;height:auto;overflow:visible;padding:0}.form-control{background:#f7fafd;background:var(--bg-light);border:1.5px solid #dbe6f3;border:1.5px solid var(--border-light);border-radius:8px;border-radius:var(--border-radius);box-sizing:border-box;color:#2a3a4d;font-family:inherit;font-size:1rem;font-weight:500;line-height:1.2;margin:0;padding:1rem 1.2rem;transition:all .25s ease;width:100%}.form-control:focus{border-color:#7bb6fa;border-color:var(--light-blue);outline:none}.form-control::placeholder{color:#8ca0b8;color:var(--light-gray);text-transform:lowercase;transition:color .2s ease;transition:color var(--transition-fast)}.form-control:focus::placeholder{color:#a8bcd3}.form-control:hover:not(:disabled):not(:focus){background:#f7fafd;background:var(--bg-light);border-color:#7bb6fa80}.toggle-password{border-radius:4px;color:var(--text-gray);font-size:.85rem;padding:4px 8px;right:12px;text-transform:lowercase;transition:all .2s ease;transition:all var(--transition-fast)}.toggle-password:hover{background:#f0f6fd;color:#3a5a8c}.toggle-password:focus{box-shadow:0 0 0 2px #b3d4fc;box-shadow:0 0 0 2px var(--focus-blue);outline:none}.toggle-password:disabled{cursor:not-allowed;opacity:.5}.is-invalid{background:#fff6f6e6;border-color:#e57373;border-color:var(--error-red)}.is-valid{background:#f9fff9e6;border-color:#4caf50;border-color:var(--success-green)}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-1px)}20%,40%,60%,80%{transform:translateX(1px)}}.invalid-feedback{animation:slideDown .3s ease;color:#e57373;color:var(--error-red);font-size:.85rem;font-weight:500;line-height:1;margin:0;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.password-strength{align-items:center;display:flex;gap:.75rem;margin-top:.5rem;padding:.5rem 0}.strength-bar{background:#e57373;border-radius:3px;height:6px;max-width:120px;min-width:60px;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.strength-bar:before{animation:strength-shimmer 2s linear infinite;background:linear-gradient(45deg,#fff3 25%,#0000 0,#0000 50%,#fff3 0,#fff3 75%,#0000 0,#0000);background-size:20px 20px;bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes strength-shimmer{0%{transform:translateX(-20px)}to{transform:translateX(20px)}}.strength-label{color:#6b7a90;color:var(--text-gray);font-size:.8rem;font-weight:500;min-width:50px;text-align:right;text-transform:lowercase;transition:color .3s ease}.error-container{min-height:0;overflow:auto;padding:0;transition:height .2s}.error-icon-lock{margin-bottom:.25rem}.error-title-text{color:var(--error-red);font-size:1.05rem;margin-bottom:.15rem}.error-message-text{color:var(--text-gray);line-height:1.3;margin-bottom:.15rem}.error-actions{margin:0;padding:0}.refresh-button-centered{font-size:.9rem;padding:.65rem 1.25rem}.success-message{animation:successSlideIn .6s cubic-bezier(.16,1,.3,1);background:#f0fdf4f2;border:1px solid #86efaccc;border-radius:12px;box-shadow:0 4px 12px #10b98114;color:#166534;font-size:.88rem;margin-bottom:1rem;padding:1.25rem;position:relative}@keyframes successSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.success-content{align-items:flex-start;display:flex;gap:.75rem}.success-icon{align-items:center;background:#d1fae5;border-radius:50%;box-shadow:0 2px 4px #10b98126;color:#065f46;display:flex;flex-shrink:0;font-size:1.1rem;font-weight:700;height:2rem;justify-content:center;width:2rem}.success-text{flex:1 1}.success-title{color:#065f46;font-size:1rem;font-weight:700;margin-bottom:.4rem;text-transform:lowercase}.offline-indicator{align-items:center;animation:fadeIn .3s ease;background:#fff3e0f2;border:1px solid #fbbf24cc;border-radius:8px;border-radius:var(--border-radius);color:#ef6c00;color:var(--warning-orange);display:flex;font-size:.85rem;gap:.5rem;justify-content:center;margin-bottom:1rem;padding:.75rem 1rem;text-align:center}.offline-icon{font-size:1rem}.reset-button{margin-top:.5rem}.reset-button .button-text{color:#fff;font-weight:600}.reset-button.loading .button-text,.reset-button.success .button-text,.retry-count{color:#3a5a8c}.retry-count{align-items:center;background:#ffffffe6;border:1px solid #7bb6fa;border:1px solid var(--light-blue);border-radius:50%;color:var(--primary-blue);display:flex;font-size:.7rem;font-weight:700;height:1.5rem;justify-content:center;min-width:1.5rem;padding:.2rem .4rem;position:absolute;right:-.5rem;top:-.5rem}.reset-password-footer{color:#6b7a90;color:var(--text-gray);font-size:.92rem;margin-top:1.5rem;text-align:center}.reset-password-footer p{margin:.6rem 0}.reset-password-footer a{border-radius:4px;color:#5a8fd6;color:var(--medium-blue);font-weight:500;padding:2px 4px;text-decoration:none;text-transform:lowercase;transition:color .2s ease;transition:color var(--transition-fast)}.reset-password-footer a:focus,.reset-password-footer a:hover{background:#f0f6fd;color:#3a5a8c;color:var(--primary-blue);outline:none;text-decoration:underline}.support-text{color:#8ca0b8;font-size:.85rem;margin-top:.5rem}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.reset-password-card:after{background:linear-gradient(90deg,#7bb6fa,#5a8fd6);background:linear-gradient(90deg,var(--light-blue) 0,var(--medium-blue) 100%);border-radius:0 0 18px 18px;border-radius:0 0 var(--border-radius-large) var(--border-radius-large);bottom:0;content:"";height:3px;left:0;position:absolute;transition:width .5s ease;width:0}.reset-password-card.is-loading:after{animation:progress 2s ease-out forwards;width:70%}.reset-password-card.success:after{background:linear-gradient(90deg,#4caf50,#66bb6a);background:linear-gradient(90deg,var(--success-green) 0,#66bb6a 100%);width:100%}@keyframes progress{0%{width:0}20%{width:40%}50%{width:60%}80%{width:70%}}@media (max-width:600px){.reset-password-container{padding:1rem .5rem}.reset-password-card{max-width:350px;padding:1.8rem 1.3rem 1.5rem}.reset-password-title{font-size:1.6rem}.reset-password-subtitle{font-size:.92rem}.reset-password-header{margin-bottom:1.2rem}.error-message,.success-message{font-size:.85rem;padding:.875rem 1rem}.back-navigation{margin-bottom:1.2rem}.password-strength{align-items:flex-start;flex-direction:column;gap:.5rem}.strength-bar{max-width:100%;width:100%}}@media (max-width:400px){.reset-password-card{padding:1.5rem 1rem}.reset-password-title{font-size:1.4rem}.reset-password-subtitle{font-size:.88rem}.error-content,.success-content{gap:.5rem}.error-icon,.success-icon{font-size:.9rem;height:1.5rem;width:1.5rem}}@media (prefers-contrast:high){.reset-password-card{border:2px solid #3a5a8c;border:2px solid var(--primary-blue)}.form-control:focus{border-width:3px}.error-message,.success-message{border-width:2px}.strength-bar{border:1px solid}}@media (prefers-reduced-motion:reduce){.back-link,.error-message,.form-control,.reset-button,.reset-password-card,.strength-bar,.success-message{animation:none;transition:none}.header-icon,.reset-button.loading:after,.strength-bar:before{animation:none}}.input-shaker{align-items:center;display:flex;overflow:hidden;width:100%}.input-shaker>.form-control{width:100%;z-index:1}.input-shaker.shake{animation:shake .2s ease-in-out;transform:translateX(-1px);transition:transform .3s cubic-bezier(.36,.07,.19,.97)}.input-shaker:not(.shake){transform:none}.feedback-container{align-items:center;display:flex;margin:0;min-height:1.4em;padding:0}:root{--banner-radius:14px;--banner-padding:1.25rem 1.5rem;--banner-margin:0 0 1.25rem 0;--banner-font:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--banner-success:#e6f9ed;--banner-success-border:#4caf50;--banner-info:#e3edf7;--banner-info-border:#2196f3;--banner-warning:#fffbe6;--banner-warning-border:#ff9800;--banner-error:#fff0f0;--banner-error-border:#f44336;--banner-trial:#fff8dc;--banner-trial-border:#ffe58f;--banner-subscription:#f0f7ff;--banner-subscription-border:#7bb6fa;--banner-shadow:0 2px 12px #3c5a8214}.app-banner{align-items:flex-start;animation:bannerSlideIn .4s cubic-bezier(.4,0,.2,1);background:#e3edf7;background:var(--banner-info);border:2.5px solid #2196f3;border:2.5px solid var(--banner-info-border);border-radius:14px;border-radius:var(--banner-radius);box-shadow:0 2px 12px #3c5a8214;box-shadow:var(--banner-shadow);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--banner-font);gap:1.25rem;margin:0 0 1.25rem;margin:var(--banner-margin);min-height:64px;padding:1.25rem 1.5rem;padding:var(--banner-padding);position:relative;transition:background .2s,border .2s,box-shadow .2s,padding .2s,min-height .2s;width:100%}@keyframes bannerSlideIn{0%{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:none}}.app-banner__icon{align-items:center;display:flex;flex-shrink:0;font-size:2.1rem;justify-content:center;line-height:1;margin-right:.5rem;opacity:.92}.app-banner__content{display:flex;flex:1 1 auto;flex-direction:column;gap:.15em;min-width:0}.app-banner__title{color:#2a3a4d;font-size:1.1rem;font-weight:600;line-height:1.2;margin-bottom:.1em}.app-banner__text{color:#3a5a8c;font-size:1rem;line-height:1.5;word-break:break-word}.app-banner__actions{align-items:center;display:flex;gap:.5rem;margin-left:1rem}.app-banner__button{background:#2196f3;background:var(--banner-info-border);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.5rem 1.1rem;transition:background .2s}.app-banner__button:hover{background:#1769aa}.app-banner__dismiss{background:none;border:none;color:#888;cursor:pointer;font-size:1.5rem;margin-left:.5rem;opacity:.7;transition:opacity .2s}.app-banner__dismiss:hover{opacity:1}.app-banner--success{background:#e6f9ed;background:var(--banner-success);border-color:#4caf50;border-color:var(--banner-success-border)}.app-banner--info{background:#e3edf7;background:var(--banner-info);border-color:#2196f3;border-color:var(--banner-info-border)}.app-banner--warning{background:#fffbe6;background:var(--banner-warning);border-color:#ff9800;border-color:var(--banner-warning-border)}.app-banner--error{background:#fff0f0;background:var(--banner-error);border-color:#f44336;border-color:var(--banner-error-border)}.app-banner--trial{background:#fff8dc;background:var(--banner-trial);border-color:#ffe58f;border-color:var(--banner-trial-border)}.app-banner--subscription{background:#f0f7ff;background:var(--banner-subscription);border-color:#7bb6fa;border-color:var(--banner-subscription-border)}.app-banner--loading{background:#e3edf7;background:var(--banner-info);border-color:#2196f3;border-color:var(--banner-info-border);opacity:.8}@media (max-width:600px){.app-banner{align-items:stretch;flex-direction:column;min-height:48px;padding:1rem .7rem}.app-banner__icon{font-size:1.5rem;margin-bottom:.5rem;margin-right:0}.app-banner__actions{justify-content:flex-end;margin-left:0;margin-top:.7rem}}.support-main{align-items:center;background:#eaf2fa;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;justify-content:flex-start;min-height:100vh;overflow-x:hidden;padding-bottom:3rem;padding-top:3rem;position:relative;width:100vw}.support-card{margin:0 auto;max-width:800px;padding:0 1rem;width:100%}.support-container{margin:0 auto;max-width:var(--container-narrow);padding:var(--space-5)}.support-header{margin:0 auto 2rem;max-width:600px;padding:0 1rem;text-align:center;width:100%}@media (max-width:600px){.support-card{margin:0 auto;max-width:98vw}.support-card,.support-header{padding:0 .5rem}}.support-title{color:var(--primary-blue);font-size:2rem;font-weight:700;margin-bottom:var(--space-4);text-transform:lowercase}.support-intro{color:var(--text-gray);font-size:1.1rem;margin-bottom:1.5rem}.support-list{list-style:none;margin:0 0 2rem;padding:0}.support-resource{background:var(--bg-light);text-align:left}.support-resource-name{color:var(--primary-blue);font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.support-resource-desc{color:var(--text-gray);font-size:.95rem;margin-bottom:.5rem}.support-resource-contact{color:var(--medium-blue);font-size:.95rem}.support-link{color:var(--primary-blue);font-weight:500;margin-left:.25rem;text-decoration:underline}.support-link:hover{color:#7bb6fa}body{background:#eaf2fa;border:none}.navbar{background:var(--bg-primary)!important;border:none!important;box-shadow:none!important;display:flex;flex-direction:column;font-family:var(--font-family);height:100vh;left:0;overflow-x:hidden;position:fixed;top:0;transition:width var(--transition-medium),padding var(--transition-medium);width:280px;z-index:100}.navbar.collapsed{box-shadow:2px 0 8px #0000001a;width:100px}.navbar-header{align-items:center;border-bottom:1px solid #dbe6f366;display:flex;gap:.75rem;padding:1.5rem}.navbar.collapsed .navbar-header{justify-content:center;padding:1.25rem .75rem}.navbar-logo{align-items:center;background:linear-gradient(135deg,var(--light-blue) 0,var(--medium-blue) 100%);border-radius:10px;box-shadow:var(--shadow-sm);display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s ease;width:36px}.navbar-logo:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.navbar-logo:focus{box-shadow:0 0 0 3px #7bb6fa4d;outline:none}.navbar-brand{opacity:1;overflow:hidden;transform:translateX(0);transition:opacity .2s ease,transform .2s ease}.navbar.collapsed .navbar-brand{opacity:0;pointer-events:none;transform:translateX(-10px);width:0}.navbar-title{color:var(--primary-blue);font-size:1.25rem;font-weight:700;letter-spacing:-.01em}.navbar-subtitle,.navbar-title{margin:0;text-transform:lowercase;white-space:nowrap}.navbar-subtitle{color:var(--light-gray);font-size:.8rem}.navbar-items{display:flex;flex:1 1;flex-direction:column;padding:1rem 0}.navbar-user-menu{border-top:1px solid #dbe6f366;display:flex;justify-content:center;padding:1rem}.navbar.collapsed .navbar-user-menu{gap:.25rem;overflow-x:hidden;overflow-y:auto;padding:.5rem}.navbar-item{align-items:center;background:#0000;border:none;border-radius:12px;color:var(--text-gray);cursor:pointer;display:flex;font-family:inherit;font-size:.9rem;font-weight:500;gap:.75rem;margin:0 .75rem;outline:none;padding:.875rem 1.5rem;position:relative;text-decoration:none;text-transform:lowercase;transition:all .2s ease;width:calc(100% - 1.5rem)}.navbar.collapsed .navbar-item{background:#0000;border-radius:0}.navbar-item:hover{background:#7bb6fa0a;color:var(--primary-blue);transform:translateX(2px)}.navbar.collapsed .navbar-item:hover{background:#7bb6fa0a;transform:none}.navbar-item:focus{background:#7bb6fa0f;box-shadow:0 0 0 2px #7bb6fa33;color:var(--primary-blue)}.navbar-item.active{background:linear-gradient(135deg,#7bb6fa14,#5a8fd614);box-shadow:var(--shadow-sm);color:var(--primary-blue);font-weight:600}.navbar.collapsed .navbar-item.active{background:#7bb6fa14;box-shadow:none}.navbar-item.active:hover{background:linear-gradient(135deg,#7bb6fa1f,#5a8fd61f)}.navbar-item.premium-required{opacity:.7;position:relative}.navbar-item.premium-required:hover{background:#ffc1070a;color:var(--warning-orange)}.navbar-item.premium-required:focus{background:#ffc1070f;color:var(--warning-orange)}.navbar-item-indicator{animation:slideIn .3s ease;background:linear-gradient(180deg,var(--light-blue) 0,var(--medium-blue) 100%);border-radius:0 2px 2px 0;bottom:0;left:-.75rem;position:absolute;top:0;width:3px}.navbar.collapsed .navbar-item-indicator{left:-.5rem}.navbar-item-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center;position:relative;transition:transform var(--transition-fast)}.navbar-item:hover .navbar-item-icon{transform:scale(1.05)}.navbar-item-label{opacity:1;overflow:hidden;transform:translateX(0);transition:opacity .2s ease,transform .2s ease;white-space:nowrap}.navbar.collapsed .navbar-item-label{opacity:0;pointer-events:none;transform:translateX(-10px);width:0}.navbar-footer{border-top:1px solid #dbe6f366;padding:1rem .75rem}.navbar-toggle{align-items:center;background:#0000;border:1.5px solid var(--border-light);border-radius:10px;box-sizing:border-box;color:var(--text-gray);cursor:pointer;display:flex;height:36px;justify-content:center;margin-right:0;padding:0 0 0 2px;transition:box-shadow var(--transition-fast);width:36px}.navbar-toggle:focus,.navbar-toggle:hover{box-shadow:0 2px 8px #7bb6fa33;color:var(--primary-blue);outline:none}.toggle-icon{transition:transform var(--transition-medium)}.toggle-icon.rotated{transform:rotate(180deg)}.navbar.collapsed .navbar-item{position:relative}.navbar.collapsed .navbar-item:after{background:#000c;border-radius:6px;color:#fff;content:attr(title);font-size:.8rem;font-weight:500;left:calc(100% + 12px);opacity:0;padding:.5rem .75rem;pointer-events:none;position:absolute;text-transform:lowercase;top:50%;transform:translateY(-50%);transition:opacity var(--transition-fast);white-space:nowrap;z-index:1000}.navbar.collapsed .navbar-item:hover:after{opacity:1}.navbar-item[data-premium=true] .navbar-item-icon:after{align-items:center;background:var(--premium-gold);border-radius:50%;box-shadow:0 1px 3px #0003;color:var(--primary-blue);content:"★";display:flex;font-size:12px;font-weight:700;height:16px;justify-content:center;line-height:1;padding:0;position:absolute;right:-4px;text-align:center;top:-4px;transform:translateX(-1px);width:16px}@media (max-width:768px){.navbar{width:64px}.navbar-header{justify-content:center;padding:1.5rem .75rem}.navbar-brand{display:none}.navbar-item{justify-content:center;margin:0 .5rem;padding:.875rem}.navbar-footer,.navbar-item-label{display:none}.navbar-item-indicator{left:-.5rem}.navbar-toggle{display:none}}@media (max-width:480px){.navbar{width:56px}.navbar-header{padding:1rem .5rem}.navbar-logo{height:32px;width:32px}.navbar-item{border-radius:8px;margin:0 .25rem;padding:.75rem}.navbar-items{gap:.125rem;padding:.75rem 0}}@media (prefers-contrast:high){.navbar{border-right:2px solid var(--primary-blue)}.navbar-item.active{border:2px solid var(--primary-blue)}.navbar-logo{border:2px solid var(--medium-blue)}.navbar-item.premium-required{border:1px dashed var(--warning-orange)}}@media (prefers-reduced-motion:reduce){.navbar,.navbar-brand,.navbar-item,.navbar-item-indicator,.navbar-item-label,.navbar-logo,.toggle-icon{animation:none;transition:none}.navbar-item:hover,.navbar-item:hover .navbar-item-icon{transform:none}}@media print{.navbar{display:none}}.navbar-hamburger{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:none;border-radius:8px;box-shadow:var(--shadow-md);cursor:pointer;display:none;display:flex;height:48px;justify-content:center;left:1rem;position:fixed;top:1rem;transition:all var(--transition-fast);width:48px;z-index:1000}.navbar-hamburger:hover{background:#fff;transform:scale(1.05)}@media (max-width:768px){.navbar-hamburger{display:flex}.navbar{display:none}.navbar.mobile.open{-webkit-overflow-scrolling:touch;animation:slideInLeft .3s ease-out;background:#fff;border-bottom-left-radius:0;border-bottom-right-radius:var(--border-radius-2xl);border-top-left-radius:0;border-top-right-radius:var(--border-radius-2xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;height:100vh;left:0;max-height:100vh;max-width:85vw;overflow-x:hidden;overflow-y:auto;pointer-events:auto;position:fixed;top:0;width:280px;z-index:1000}.navbar-items{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:.75rem 0;position:relative;width:100%;z-index:1001}@media (max-width:480px){.navbar.mobile.open{border-bottom-left-radius:0;border-bottom-right-radius:var(--border-radius-2xl);border-top-left-radius:0;border-top-right-radius:var(--border-radius-2xl);max-width:85vw;width:280px}}@media (max-width:360px){.navbar.mobile.open{border-bottom-left-radius:0;border-bottom-right-radius:var(--border-radius-2xl);border-top-left-radius:0;border-top-right-radius:var(--border-radius-2xl);max-width:90vw;width:260px}}.navbar-overlay{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0000004d;display:block;height:100vh;left:0;pointer-events:none;position:fixed;top:0;width:100vw;z-index:999}.navbar-overlay-bg{background:#3c5a8214;height:100vh;left:280px;pointer-events:auto;position:fixed;top:0;width:calc(100vw - 280px);z-index:998}@media (max-width:480px){.navbar-overlay-bg{left:280px;width:calc(100vw - 280px)}}@media (max-width:360px){.navbar-overlay-bg{left:260px;width:calc(100vw - 260px)}}.navbar-close{align-items:center;background:#ffffffe6;border:1px solid #0000001a;border-radius:8px;cursor:pointer;display:flex;height:36px;justify-content:center;padding:.5rem;position:absolute;right:1rem;top:1rem;transition:all var(--transition-fast);width:36px;z-index:1001}.navbar-close:hover{background-color:#fff;transform:scale(1.05)}.navbar-header{border-bottom:1px solid #e5e7eb;box-sizing:border-box;gap:.75rem;padding:1.5rem 1.25rem 1rem;width:100%}.navbar-header,.navbar-logo{align-items:center;display:flex;flex-shrink:0}.navbar-logo{height:32px;justify-content:center;width:32px}.navbar-brand{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.navbar-title{color:#111827;font-size:1.125rem;font-weight:600}.navbar-subtitle,.navbar-title{line-height:1.2;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navbar-subtitle{color:#6b7280;font-size:.8125rem}@media (max-width:480px){.navbar-header{gap:.625rem;padding:1.25rem 1rem .875rem}.navbar-title{font-size:1rem}.navbar-subtitle{font-size:.75rem}}@media (max-width:360px){.navbar-header{gap:.5rem;padding:1rem .875rem .75rem}.navbar-title{font-size:.9375rem}.navbar-subtitle{font-size:.6875rem}}.navbar-item{word-wrap:break-word;align-items:center;background:none;border:none;border-radius:0;box-sizing:border-box;color:#374151;cursor:pointer;display:flex;font-size:.9375rem;gap:.875rem;min-height:48px;overflow-wrap:break-word;padding:.875rem 1.25rem;pointer-events:auto;position:relative;text-align:left;transition:all var(--transition-fast);width:100%;z-index:1003}.navbar-item:hover{background-color:#f9fafb}.navbar-item.active{background-color:#f0f9ff;border-right:3px solid #0369a1;color:#0369a1}.navbar-item-icon{align-items:center;color:inherit;display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.navbar-item-label{flex:1 1;font-size:.9375rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navbar.mobile.open .navbar-item-label{display:block!important}@media (max-width:480px){.navbar-item{gap:.75rem;padding:.875rem 1rem}.navbar-item-label{font-size:.875rem}}@media (max-width:360px){.navbar-item{gap:.625rem;padding:.75rem .875rem}.navbar-item-label{font-size:.8125rem}}.navbar-mobile-profile{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:none;border-radius:50%;box-shadow:var(--shadow-md);cursor:pointer;display:flex;height:48px;justify-content:center;position:fixed;right:1rem;top:1rem;transition:all var(--transition-fast);width:48px;z-index:1000}.navbar-mobile-profile:hover{background:#fff;transform:scale(1.05)}.navbar-mobile-user-dropdown{align-items:flex-start;display:flex;height:100vh;justify-content:flex-end;left:0;padding-right:1rem;padding-top:80px;position:fixed;top:0;width:100vw;z-index:1500}.navbar-mobile-user-dropdown-content{animation:dropdownSlideIn .2s ease-out;background:#fff;border-radius:var(--border-radius-2xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;overflow:hidden;position:relative;width:240px;z-index:1501}.navbar-mobile-user-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:.75rem;padding:1.25rem 1.25rem 1rem}.navbar-mobile-user-avatar{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;height:40px;justify-content:center;width:40px}.navbar-mobile-user-info{display:flex;flex-direction:column}.navbar-mobile-user-name{color:#111827;font-size:.95rem;font-weight:600;margin:0}.navbar-mobile-user-subtitle{color:#6b7280;font-size:.8rem;margin:0}.navbar-mobile-user-items{padding:.5rem 0}.navbar-mobile-user-item{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:.95rem;gap:.75rem;padding:.875rem 1.25rem;text-align:left;transition:background-color var(--transition-fast);width:100%}.navbar-mobile-user-item:hover{background-color:#f9fafb}.navbar-mobile-user-item.logout-button{color:#dc2626}.navbar-mobile-user-item.logout-button:hover{background-color:#fef2f2}.navbar-mobile-user-item-icon{align-items:center;display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.navbar-mobile-user-item-label{font-size:.95rem;font-weight:500}.navbar-mobile-logout-spinner{animation:spin 1s linear infinite;border:2px solid #dc2626;border-radius:50%;border-top-color:#0000;height:18px;width:18px}.navbar-mobile-user-dropdown-bg{background:#3c5a8214;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:149}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}}.navbar.collapsed .navbar-item{align-items:center;justify-content:center;margin:0;padding:.75rem;width:100%}.navbar.collapsed .navbar-item-icon{align-items:center;display:flex;justify-content:center;margin:0 auto}.navbar.collapsed .navbar-toggle{background:#7bb6fa1a;border-color:var(--light-blue);border-width:2px;height:40px;margin:0;width:40px}.navbar.collapsed .navbar-toggle:hover{background:#7bb6fa33;border-color:var(--medium-blue);transform:scale(1.05)}.improved-chat-interface{background:#e6f3ff;box-sizing:border-box;color:var(--text-primary);display:flex;flex-direction:column;font-family:var(--font-family);height:100vh;margin-left:280px;margin-left:var(--navbar-width,280px);position:relative;width:calc(100vw - 280px);width:calc(100vw - var(--navbar-width, 280px));z-index:1}.improved-chat-interface.navbar-minimized{margin-left:100px;width:calc(100vw - 100px)}@media (max-width:768px){.improved-chat-interface{bottom:0;left:0;position:fixed;right:0;top:0}.improved-chat-interface,.improved-chat-interface.navbar-minimized{margin-left:0;width:100vw}}@media (max-width:480px){.improved-chat-interface,.improved-chat-interface.navbar-minimized{margin-left:0;width:100vw}}.navbar{z-index:100!important}.connection-banner{align-items:center;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border-bottom:1px solid var(--border-light);display:flex;justify-content:center;padding:var(--spacing-lg) var(--spacing-xl);position:relative;text-align:center;z-index:10}.connection-banner.loading{animation:gentle-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,var(--warning-orange) 0,#ffa726 100%);color:#fff}.connection-banner.error{background:linear-gradient(135deg,var(--error-red) 0,#ef5350 100%);color:#fff}.retry-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;font-size:12px;letter-spacing:.01em;margin-left:10px;padding:6px 12px;text-transform:lowercase;transition:all .2s ease}.retry-button:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.chat-header-enhanced{-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);background:#fffffff2;border-bottom:1px solid #e2e8f099;margin:0;padding:0;position:sticky;top:0;width:100%;z-index:15}.header-main{align-items:flex-start;display:flex;gap:var(--spacing-xl);justify-content:space-between;padding:var(--spacing-2xl) var(--spacing-2xl) var(--spacing-xl)}.header-content h1.chat-title-enhanced{color:var(--primary-blue);font-size:var(--text-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.02em;line-height:1.2;margin:0 0 var(--spacing-sm) 0;text-shadow:0 1px 2px #0000001a;text-transform:lowercase}.header-content p.chat-subtitle-enhanced{color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-weight-normal);line-height:1.5;margin:0;opacity:.9;text-shadow:0 1px 1px #0000000d;text-transform:lowercase}.header-status{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffc;border:1px solid #e2e8f0cc;border-radius:var(--radius-pill);box-shadow:var(--shadow-soft);display:flex;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)}.header-status,.status-dot{transition:all var(--transition-medium)}.status-dot{background:var(--text-muted);border-radius:50%;height:10px;position:relative;width:10px}.status-dot.connected{animation:connected-pulse 3s ease-in-out infinite;background:var(--success-green);box-shadow:0 0 12px #38a16966}@keyframes connected-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.9)}}.status-label{color:var(--text-secondary);font-weight:var(--font-weight-medium);letter-spacing:.02em}.message-count,.status-label{font-size:var(--text-xs);text-transform:lowercase}.message-count{border-left:1px solid #e2e8f066;color:var(--text-muted);font-weight:var(--font-weight-normal);letter-spacing:.01em;margin-left:var(--spacing-sm);opacity:.7;padding-left:var(--spacing-sm)}.header-divider{background:linear-gradient(90deg,#0000,#e2e8f066 20%,#e2e8f0cc 50%,#e2e8f066 80%,#0000);height:1px;margin:0 var(--spacing-2xl);position:relative}.chat-messages-enhanced{-webkit-overflow-scrolling:touch;box-sizing:border-box;flex:1 1;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:var(--spacing-2xl);position:relative;scroll-behavior:smooth;scrollbar-color:#6b9bd74d #0000;scrollbar-width:thin;transform:translateZ(0);will-change:scroll-position;z-index:5}.chat-messages-enhanced,.welcome-state{display:flex;flex-direction:column;margin:0;width:100%}.welcome-state{align-items:center;color:var(--text-muted);height:100%;justify-content:center;padding:var(--spacing-4xl);text-align:center}.welcome-icon{animation:gentle-float 4s ease-in-out infinite;color:var(--light-blue);filter:drop-shadow(0 4px 8px rgba(107,155,215,.2));margin-bottom:var(--spacing-2xl);opacity:.7}@keyframes gentle-float{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-4px) rotate(1deg)}50%{transform:translateY(-8px) rotate(0deg)}75%{transform:translateY(-4px) rotate(-1deg)}}.welcome-state h3{color:var(--primary-blue);font-size:var(--text-xl);font-weight:var(--font-weight-semibold);letter-spacing:-.01em;line-height:1.3;margin:0 0 var(--spacing-lg) 0;text-transform:lowercase}.welcome-state p{color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-weight-normal);line-height:1.6;margin:0;text-transform:lowercase}.conversation-starters{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff9;border:1px solid #e2e8f099;border-radius:var(--radius-lg);margin-top:var(--spacing-2xl);padding:var(--spacing-xl)}.conversation-starters h4{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);letter-spacing:.02em;margin:0 0 var(--spacing-lg) 0;text-align:center;text-transform:lowercase}.starter-buttons{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.starter-button{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;border:1px solid #e2e8f0cc;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-weight-medium);letter-spacing:.01em;line-height:1.4;padding:var(--spacing-md) var(--spacing-lg);text-align:left;text-transform:none;transition:all var(--transition-medium)}.starter-button:hover{background:#fffffff2;border-color:var(--light-blue);box-shadow:var(--shadow-soft);color:var(--primary-blue);transform:translateY(-1px)}.starter-button:active{box-shadow:var(--shadow-subtle);transform:translateY(0)}.starter-note{color:var(--text-muted);font-size:var(--text-sm);font-style:italic;letter-spacing:.01em;margin:0;text-align:center;text-transform:lowercase}.help-section{margin-bottom:var(--spacing-lg);position:relative}.help-backdrop{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}.help-button{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff9;border:1px solid #e2e8f099;border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);letter-spacing:.01em;padding:var(--spacing-sm) var(--spacing-md);text-transform:lowercase;transition:all var(--transition-medium)}.help-button:hover{background:#fffc;border-color:var(--light-blue);box-shadow:var(--shadow-soft);color:var(--primary-blue);transform:translateY(-1px)}.help-content{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border:1px solid #e2e8f0cc;border-radius:var(--radius-lg);bottom:100%;box-shadow:var(--shadow-soft);left:0;margin-bottom:var(--spacing-md);max-height:60vh;max-width:500px;overflow-x:hidden;overflow-y:auto;padding:var(--spacing-xl);position:absolute;right:0;z-index:1000}@media (max-width:768px){.help-backdrop{display:block}.help-content{-webkit-overflow-scrolling:touch;bottom:auto;left:50%;margin:0;max-height:60vh;max-width:400px;overflow-x:hidden;overflow-y:auto;position:fixed;right:auto;top:50%;transform:translate(-50%,-50%);width:calc(100vw - 32px)}.help-section{margin-bottom:var(--spacing-md)}.help-button{justify-content:center;padding:var(--spacing-md);width:100%}.conversation-starters{margin-top:var(--spacing-lg);padding:var(--spacing-lg)}.starter-buttons{gap:var(--spacing-sm)}.starter-button{font-size:var(--text-base);min-height:48px;padding:var(--spacing-lg)}.starter-note{font-size:var(--text-xs);margin-top:var(--spacing-md)}}.help-content::-webkit-scrollbar{width:6px}.help-content::-webkit-scrollbar-track{background:#e2e8f04d;border-radius:3px}.help-content::-webkit-scrollbar-thumb{background:#6b9bd780;border-radius:3px}.help-content::-webkit-scrollbar-thumb:hover{background:#6b9bd7b3}.help-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg)}.help-header h4{color:var(--primary-blue);font-size:var(--text-base);font-weight:var(--font-weight-semibold);letter-spacing:.01em;margin:0;text-transform:lowercase}.help-close{align-items:center;background:#e2e8f099;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;height:24px;justify-content:center;transition:all var(--transition-fast);width:24px}.help-close:hover{background:#e2e8f0cc;color:var(--text-primary)}.help-body{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6;max-height:calc(60vh - 120px);overflow-x:hidden;overflow-y:auto}.help-body p{margin:0 0 var(--spacing-md) 0}.help-step{align-items:flex-start;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.step-number{align-items:center;background:var(--primary-blue);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:var(--text-xs);font-weight:var(--font-weight-bold);height:24px;justify-content:center;width:24px}.help-note{background:#fff8dc99;border-left:3px solid #fbbf24;border-radius:var(--radius-sm);font-style:italic;margin-top:var(--spacing-lg)!important;padding:var(--spacing-md)}.messages-list{display:flex;flex-direction:column;gap:var(--spacing-2xl);width:100%}.load-more-indicator{display:flex;justify-content:center;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg) 0}.pagination-loading{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-md);justify-content:center;letter-spacing:.01em;padding:var(--spacing-xl) 0;text-transform:lowercase}.pagination-loading .loading-spinner{animation:spin 1s linear infinite;border:2px solid #6b9bd733;border-radius:50%;border-top:2px solid var(--light-blue);height:20px;margin:0;width:20px}.load-more-button{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffc;border:1px solid #e2e8f0cc;border-radius:var(--radius-pill);color:var(--text-secondary);display:flex;font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);letter-spacing:.01em;padding:var(--spacing-md) var(--spacing-lg);text-transform:lowercase;transition:all var(--transition-medium)}.load-more-button:hover{background:#fffffff2;border-color:var(--light-blue);box-shadow:var(--shadow-soft);color:var(--primary-blue)}.message-enhanced{animation:slide-in-message .6s cubic-bezier(.4,0,.2,1) forwards;display:flex;opacity:0;will-change:transform,opacity}@keyframes slide-in-message{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.message-enhanced.user{justify-content:flex-end}.message-enhanced.bot{justify-content:flex-start}.message-enhanced.system{justify-content:center}.message-wrapper{align-items:flex-end;display:flex;gap:var(--spacing-lg);max-width:100%;position:relative;width:100%}.message-enhanced.user .message-wrapper{flex-direction:row-reverse}.message-avatar{align-items:center;background:linear-gradient(135deg,var(--light-blue) 0,var(--medium-blue) 100%);border:2px solid #fffc;border-radius:50%;box-shadow:var(--shadow-medium);color:#fff;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.message-avatar,.message-bubble-enhanced{position:relative;transition:all var(--transition-medium)}.message-bubble-enhanced{word-wrap:break-word;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:var(--font-weight-normal);line-height:1.6;overflow:hidden}.message-enhanced.user .message-bubble-enhanced{background:linear-gradient(135deg,var(--light-blue) 0,var(--medium-blue) 100%);border-bottom-right-radius:var(--spacing-sm);box-shadow:var(--shadow-medium);color:#fff;padding:var(--spacing-lg) var(--spacing-xl);position:relative}.message-enhanced.bot .message-bubble-enhanced{background:#fffffff2;border:1px solid #e2e8f0cc;border-bottom-left-radius:var(--spacing-sm);box-shadow:var(--shadow-soft);color:var(--text-primary);padding:var(--spacing-lg) var(--spacing-xl);position:relative}.message-enhanced.system .message-bubble-enhanced{background:linear-gradient(135deg,var(--warning-orange) 0,#ffb74d 100%);border-radius:var(--radius-md);box-shadow:var(--shadow-medium);color:#fff;font-weight:var(--font-weight-medium);padding:var(--spacing-lg) var(--spacing-xl);text-align:center}.message-enhanced.error .message-bubble-enhanced{background:linear-gradient(135deg,var(--error-red) 0,#ef5350 100%);color:#fff}.message-content-enhanced{font-weight:inherit;line-height:1.6;margin-bottom:var(--spacing-sm)}.message-meta{align-items:center;display:flex;justify-content:flex-end;margin-top:var(--spacing-xs)}.message-enhanced.bot .message-meta{justify-content:flex-start}.message-time-enhanced{font-size:var(--text-xs);font-weight:var(--font-weight-medium);letter-spacing:.02em;opacity:.6}.typing-message{animation:slide-in-message .4s cubic-bezier(.4,0,.2,1) forwards}.typing-bubble{align-items:center;display:flex;gap:var(--spacing-lg);min-height:60px;padding:var(--spacing-lg) var(--spacing-xl)!important;transition:all var(--transition-medium)}.typing-indicator-enhanced{align-items:center;gap:var(--spacing-sm)}.typing-indicator-enhanced span{animation:typing-dot 1.6s ease-in-out infinite;box-shadow:0 2px 4px #6b9bd74d;height:8px;transition:all var(--transition-fast);width:8px}.typing-indicator-enhanced span:nth-child(2){animation-delay:.3s}.typing-indicator-enhanced span:nth-child(3){animation-delay:.6s}@keyframes typing-dot{0%,60%,to{background:var(--light-blue);opacity:.5;transform:translateY(0) scale(1)}30%{background:var(--medium-blue);opacity:1;transform:translateY(-12px) scale(1.2)}}.typing-text{animation:gentle-pulse 2s ease-in-out infinite;color:var(--text-muted);font-size:var(--text-sm);font-style:italic;font-weight:var(--font-weight-normal);line-height:1.4;max-width:300px;text-align:center;text-transform:lowercase;transition:all var(--transition-medium)}.typing-bubble{background:#6b9bd71a;border:1px solid #6b9bd733;border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);padding:var(--spacing-lg)}.typing-indicator-enhanced{display:flex;gap:var(--spacing-xs);justify-content:center;margin-bottom:var(--spacing-sm)}.typing-indicator-enhanced span{animation:typing-dot 1.4s ease-in-out infinite;background:var(--light-blue);border-radius:50%;box-shadow:0 1px 3px #6b9bd74d;height:6px;width:6px}.typing-indicator-enhanced span:first-child{animation-delay:0s}.typing-indicator-enhanced span:nth-child(2){animation-delay:.2s}.typing-indicator-enhanced span:nth-child(3){animation-delay:.4s}.draft-message-indicator{animation:slideInUp .3s ease-out;background:#3b82f61a;border:1px solid #3b82f633;border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg)}.draft-content{align-items:center;color:var(--primary-blue);display:flex;gap:var(--spacing-md)}.draft-text{flex:1 1;font-size:var(--text-sm);font-weight:var(--font-weight-medium);text-transform:lowercase}.draft-actions{align-items:center;display:flex;gap:var(--spacing-sm)}.draft-restore-button{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:var(--radius-md);color:var(--primary-blue);cursor:pointer;font-size:var(--text-xs);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);text-transform:lowercase;transition:all var(--transition-fast)}.draft-restore-button:hover{background:#3b82f633;border-color:#3b82f680;transform:translateY(-1px)}.draft-clear-button{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:var(--radius-md);color:var(--error-red);cursor:pointer;display:flex;justify-content:center;padding:var(--spacing-xs);transition:all var(--transition-fast)}.draft-clear-button:hover{background:#ef444433;border-color:#ef444480;transform:translateY(-1px)}.timeout-error-handler{animation:slideInUp .3s ease-out;background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.timeout-error-content{align-items:flex-start;display:flex;gap:var(--spacing-lg)}.timeout-error-icon{color:var(--warning-orange);flex-shrink:0}.timeout-error-text{flex:1 1}.timeout-error-title{color:var(--warning-orange);font-size:var(--text-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-xs) 0;text-transform:lowercase}.timeout-error-message{color:var(--text-primary);font-size:var(--text-sm);line-height:1.5;margin:0 0 var(--spacing-xs) 0}.timeout-error-suggestion{color:var(--text-secondary);font-size:var(--text-xs);font-style:italic;line-height:1.4;margin:0}.timeout-error-actions{align-items:center;display:flex;flex-shrink:0;gap:var(--spacing-sm)}.timeout-retry-button{align-items:center;background:var(--warning-orange);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);text-transform:lowercase;transition:all var(--transition-fast)}.timeout-retry-button:hover:not(:disabled){background:var(--warning-orange-dark);transform:translateY(-1px)}.timeout-retry-button:disabled{cursor:not-allowed;opacity:.6}.timeout-dismiss-button{align-items:center;background:#9ca3af1a;border:1px solid #9ca3af4d;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;padding:var(--spacing-sm);transition:all var(--transition-fast)}.timeout-dismiss-button:hover{background:#9ca3af33;border-color:#9ca3af80;transform:translateY(-1px)}.chat-input-enhanced{-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);background:#fffffff2;border-top:1px solid #e2e8f099;padding:var(--spacing-xl) var(--spacing-2xl);padding-bottom:calc(var(--spacing-xl) + 10px);position:relative;width:100%;z-index:10}.input-form-enhanced{margin-bottom:var(--spacing-lg)}.input-wrapper-enhanced{align-items:flex-end;background:#fff;border:2px solid #e2e8f0cc;border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);display:flex;gap:var(--spacing-lg);overflow:hidden;padding:var(--spacing-lg);position:relative;transition:all var(--transition-medium);width:100%}.input-wrapper-enhanced:focus-within{border-color:var(--light-blue);box-shadow:0 0 0 4px #6b9bd71a,var(--shadow-medium);transform:translateY(-2px)}.message-input-enhanced{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:var(--text-base);font-weight:var(--font-weight-normal);line-height:1.5;max-height:120px;min-height:52px;outline:none;padding:var(--spacing-lg) var(--spacing-md);position:relative;resize:none;z-index:1}.message-input-enhanced::placeholder{color:var(--text-muted);font-weight:var(--font-weight-normal);opacity:.7;text-transform:lowercase}.message-input-enhanced:disabled{cursor:not-allowed;opacity:.6}.input-actions{align-items:center;display:flex;flex-shrink:0;gap:var(--spacing-lg);position:relative;z-index:1}.char-counter{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-weight-medium);letter-spacing:.01em;min-width:65px;text-align:right}.char-counter .warning{color:var(--warning-orange);font-weight:var(--font-weight-semibold)}.send-button-enhanced{align-items:center;background:linear-gradient(135deg,var(--light-blue) 0,var(--medium-blue) 100%);border:1px solid #fff3;border-radius:var(--radius-lg);box-shadow:var(--shadow-medium);color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:var(--text-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);justify-content:center;letter-spacing:.01em;min-width:110px;overflow:hidden;padding:var(--spacing-lg) var(--spacing-xl);position:relative;text-transform:lowercase;transition:all var(--transition-fast)}.send-button-enhanced:not(:disabled):hover{background:linear-gradient(135deg,var(--medium-blue) 0,var(--primary-blue) 100%);box-shadow:var(--shadow-strong);transform:translateY(-2px) scale(1.02)}.send-button-enhanced:not(:disabled):active{box-shadow:var(--shadow-medium);transform:translateY(0) scale(.98)}.send-button-enhanced:focus-visible{outline:2px solid var(--light-blue);outline-offset:2px}.send-button-enhanced:disabled{background:linear-gradient(135deg,var(--text-muted) 0,#718096cc 100%);cursor:not-allowed;opacity:.5;transform:none}.send-button-enhanced.loading .send-label{opacity:.8}.spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:18px;width:18px}.input-footer{align-items:center;display:flex;justify-content:center}.input-hint-enhanced{align-items:center;color:var(--text-muted);display:flex;font-size:var(--text-xs);font-weight:var(--font-weight-normal);gap:var(--spacing-sm);letter-spacing:.01em;opacity:.8;text-transform:lowercase}.input-hint-enhanced svg{opacity:.6}.chat-messages-enhanced::-webkit-scrollbar{width:8px}.chat-messages-enhanced::-webkit-scrollbar-track{background:#e2e8f04d;border-radius:var(--radius-xs)}.chat-messages-enhanced::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--light-blue) 0,var(--medium-blue) 100%);border:1px solid #ffffff80;border-radius:var(--radius-xs)}.chat-messages-enhanced::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--medium-blue) 0,var(--primary-blue) 100%)}@media (max-width:768px){.header-main{padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg)}.chat-messages-enhanced{padding:var(--spacing-xl)}.chat-input-enhanced{padding:var(--spacing-lg) var(--spacing-xl)}.header-content h1.chat-title-enhanced{font-size:var(--text-xl)}.header-content p.chat-subtitle-enhanced{font-size:var(--text-sm)}.input-wrapper-enhanced{border-radius:var(--radius-lg);padding:var(--spacing-md)}.message-input-enhanced{font-size:var(--text-sm);min-height:48px}.send-button-enhanced{font-size:var(--text-xs);min-width:80px;padding:var(--spacing-md) var(--spacing-lg)}}@media (max-width:480px){.header-main{align-items:flex-start;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-lg)}.header-status{align-self:flex-end}.chat-input-enhanced,.chat-messages-enhanced{padding:var(--spacing-lg)}.message-bubble-enhanced{font-size:var(--text-sm);padding:var(--spacing-md) var(--spacing-lg)}.input-wrapper-enhanced{align-items:stretch;flex-direction:column;gap:var(--spacing-md)}.input-actions{justify-content:space-between}.send-button-enhanced{align-self:flex-end;min-width:70px}.welcome-state{padding:var(--spacing-lg)}.welcome-state h3{font-size:var(--text-lg)}.welcome-state p{font-size:var(--text-sm)}.conversation-starters h4{font-size:var(--text-xs)}.starter-button{font-size:var(--text-sm);line-height:1.3;padding:var(--spacing-md) var(--spacing-lg)}.chat-input-enhanced,.message-input-enhanced{padding:var(--spacing-md)}.message-input-enhanced{font-size:var(--text-base)}.input-actions{gap:var(--spacing-sm)}.send-button-enhanced{min-height:44px;padding:var(--spacing-md) var(--spacing-lg)}}.performance-indicator{background:#3c5a820d;border:1px solid #3c5a821a;border-radius:8px;margin:8px 0;padding:8px 16px;text-align:center}.messages-end-ref{flex-shrink:0;height:1px;margin-top:auto;width:100%}.performance-indicator--medium{background:#3c5a8208;border-color:#3c5a8214}.performance-text{color:var(--text-secondary);font-size:12px;font-style:italic}.messages-list{-webkit-overflow-scrolling:touch;transform:translateZ(0);will-change:scroll-position}.messages-list.large-message-count{contain:layout style paint;content-visibility:auto}.dashboard-layout{display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family)}.main-content{align-items:center;flex:1 1;justify-content:center;margin-left:280px;position:relative}.dashboard-container{background:#0000;flex:1 1;padding:1.5rem}.dashboard-tabs{border-bottom:1px solid #dbe6f3;border-bottom:1px solid var(--border-light);display:flex;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem}.dashboard-tab{background:#0000;border:none;border-radius:8px;color:#6b7a90;color:var(--text-gray);cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;position:relative;transition:.2s ease;transition:var(--transition-fast)}.dashboard-tab:hover{background:#7bb6fa1a;color:#3a5a8c;color:var(--primary-blue)}.dashboard-tab.active{background:#3a5a8c;background:var(--primary-blue);box-shadow:#3c5a8214;box-shadow:var(--shadow-light);color:#fff}.dashboard-tab.active:after{background:#3a5a8c;background:var(--primary-blue);border-radius:1px;bottom:-.5rem;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:20px}.dashboard-content{display:flex;flex:1 1;flex-direction:column}.dashboard-loading{align-items:center;color:#6b7a90;color:var(--text-gray);display:flex;flex-direction:column;height:200px;justify-content:center}.loading-spinner{animation:spin .8s linear infinite;border:2px solid #7bb6fa4d;border-top:2px solid var(--light-blue);margin-bottom:1rem}.chat-container{animation:slideInUp .6s cubic-bezier(.16,1,.3,1);position:relative}.dashboard-container:before{background:linear-gradient(90deg,#0000,#7bb6fa33 50%,#0000);content:"";height:1px;left:0;pointer-events:none;position:absolute;right:0;top:0}@media (max-width:1024px){.dashboard-container{padding:1.25rem}.dashboard-tabs{gap:.25rem}.dashboard-tab{font-size:.8rem;padding:.5rem 1rem}}@media (max-width:768px){.dashboard-layout{flex-direction:column}.dashboard-container{margin-left:0!important;padding:1rem}.main-content{margin-left:0}.dashboard-tabs{flex-wrap:wrap;gap:.25rem}.dashboard-tab{flex:1 1;min-width:120px;text-align:center}}@media (max-width:480px){.dashboard-container{margin-left:0!important;padding:.75rem}.dashboard-tabs{margin-bottom:1rem}.dashboard-tab{font-size:.75rem;padding:.5rem .75rem}}.dashboard-container.loading{opacity:.7;pointer-events:none}.dashboard-container.loading:after{animation:spin .8s linear infinite;border:2px solid #7bb6fa4d;border-radius:50%;border-top:2px solid var(--light-blue);content:"";height:32px;left:50%;margin:-16px 0 0 -16px;position:absolute;top:50%;width:32px}.dashboard-container:focus-within{outline:none}@media (prefers-contrast:high){.dashboard-layout{background:#fff}.dashboard-container:before{background:linear-gradient(90deg,#0000,#3a5a8c 50%,#0000);background:linear-gradient(90deg,#0000 0,var(--primary-blue) 50%,#0000 100%)}.dashboard-tab.active{background:#000;color:#fff}}@media (prefers-reduced-motion:reduce){.chat-container,.dashboard-container.loading:after,.loading-spinner{animation:none}}@media print{.dashboard-layout{background:#fff;height:auto}.dashboard-container{background:#fff;padding:0}.dashboard-container:before,.dashboard-tabs{display:none}}.dashboard-container,.dashboard-layout,.main-content{background:#f7fafd!important;color:#1a365d!important}.dashboard-layout{background:#eaf2fa;min-height:100vh}.main-content{background:#eaf2fa;display:flex;flex-direction:column;flex-grow:1;padding:0;transition:margin-left var(--transition-medium)}.main-content.no-transition{transition:none}.main-content.sidebar-open{margin-left:280px}.main-content.sidebar-closed{margin-left:72px}.content-header{border-bottom:1px solid var(--border-color);justify-content:flex-end;min-height:64px;padding:1rem 2rem;position:relative}.content-header,.page-content{align-items:center;background:#eaf2fa;display:flex}.page-content{flex:1 1;flex-direction:column;justify-content:center;min-height:0;padding:0}.page-content.no-transition{transition:none}@media (max-width:900px){.main-content.sidebar-closed,.main-content.sidebar-open{margin-left:0}.page-content.sidebar-offset{margin-left:0;width:100vw}.page-content{min-height:100vh;padding:0}.dashboard-container,.main-content,.page-content{margin-left:0!important;width:100vw!important}}.user-menu-container{display:inline-block;position:fixed;top:1.5rem;z-index:2000}.user-menu-trigger{background:none;border:none;padding:.5rem;transition:background-color var(--transition-fast)}.user-menu-trigger:hover{background-color:#f0f0f0}.user-menu{border:1px solid #e5e7eb;border-radius:8px;top:100%;width:220px;z-index:1000}.user-menu-header{border-bottom:1px solid #f3f4f6}.user-name{color:#374151}.user-menu-item{border-radius:6px;color:#4b5563;font-size:.95rem;transition:background-color var(--transition-fast),color var(--transition-fast)}.user-menu-item:hover{background-color:#f9fafb}.logout-button{color:var(--error-red)}.logout-button:hover{background-color:#fee2e2;color:#b91c1c}.logout-spinner{animation:spin 1s linear infinite;border:2px solid;border-right:2px solid #0000;height:16px;width:16px}.conversation-card{align-items:flex-start;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;gap:1rem}.conversation-card:hover{background:#fff;border-color:#7bb6fa;box-shadow:0 6px 20px #7bb6fa26;transform:translateY(-3px)}.conversation-card:focus{border-color:#7bb6fa;box-shadow:0 0 0 3px #7bb6fa26;outline:none}.conversation-card.selected{box-shadow:0 4px 16px #7bb6fa33;transform:translateY(-1px)}.selection-checkbox{align-items:flex-start;flex-shrink:0;margin-right:.5rem;padding-top:.3rem}.selection-checkbox input[type=checkbox]{accent-color:#7bb6fa;border-radius:3px;cursor:pointer;height:1.2em;transition:transform .1s;width:1.2em}.selection-checkbox input[type=checkbox]:focus{outline:2px solid #7bb6fa66;outline-offset:2px}.selection-checkbox input[type=checkbox]:hover{transform:scale(1.1)}.conversation-content{flex:1 1;min-width:0}.conversation-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.conversation-type{flex-shrink:0}.type-badge{align-items:center;border-radius:8px;display:inline-flex;font-size:.8rem;font-weight:600;gap:.3rem;letter-spacing:.01em;padding:.3rem .7rem;text-align:center;text-transform:lowercase}.type-badge.voice{background:#7bb6fa1f;border:1px solid #7bb6fa40;color:#3a5a8c}.type-badge.text{background:#6ba3f51f;border:1px solid #6ba3f540;color:#2a3a4d}.conversation-date{color:#6b7a90;font-size:.85rem;font-weight:500;white-space:nowrap}.conversation-title{-webkit-line-clamp:1;color:#3a5a8c;font-size:1.15rem;font-weight:600;line-height:1.3;margin:0 0 .5rem}.conversation-preview,.conversation-title{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.conversation-preview{-webkit-line-clamp:2;color:#2a3a4d;font-size:.95rem;line-height:1.4;margin:0 0 1rem;opacity:.9}.conversation-meta{align-items:center;color:#8ca0b8;display:flex;flex-wrap:wrap;font-size:.8rem;font-weight:500;gap:1rem;text-align:center}.conversation-duration,.conversation-mood,.message-count{align-items:center;display:flex;gap:.25rem}.conversation-mood{background:#7bb6fa14;border-radius:4px;color:#3a5a8c;font-size:.75rem;padding:.15rem .4rem}.conversation-card:hover .conversation-title{color:#2a3a4d}.conversation-card:hover .conversation-preview{opacity:1}.conversation-card:hover .type-badge.voice{background:#7bb6fa26;border-color:#7bb6fa4d}.conversation-card:hover .type-badge.text{background:#6ba3f526;border-color:#6ba3f54d}.conversation-themes{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.theme-tag{background:#7bb6fa1a;border:1px solid #7bb6fa33;border-radius:4px;color:#3a5a8c}.theme-more,.theme-tag{font-size:.7rem;font-weight:500;padding:.2rem .5rem}.theme-more{background:#6ba3f51a;border:1px solid #6ba3f533;border-radius:4px;color:#6b7a90}.mood-indicator{align-items:center;border:1px solid #0000;border-radius:6px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.3rem;padding:.2rem .6rem;text-align:center}.mood-emoji{font-feature-settings:"tnum"!important;align-items:center!important;display:flex!important;font-variant-numeric:tabular-nums!important;height:1.2em!important;justify-content:center!important;line-height:1!important;text-align:center!important;transform:translateZ(0)!important;vertical-align:middle!important;width:1.2em!important}.breakthrough-icon,.meta-icon,.type-icon{font-feature-settings:"tnum"!important;align-items:center!important;display:flex!important;font-variant-numeric:tabular-nums!important;height:1.2em!important;justify-content:center!important;line-height:1!important;margin-right:.25rem;text-align:center!important;transform:translateZ(0)!important;vertical-align:middle!important;width:1.2em!important}.mood-indicator.anxious{background:#ffb6c133;border-color:#ffb6c14d;color:#8b5a5a}.mood-indicator.peaceful{background:#7bb6fa26;border-color:#7bb6fa40;color:#3a5a8c}.mood-indicator.excited{background:#f0e68c33;border-color:#f0e68c4d;color:#8b7a3d}.mood-indicator.reflective{background:#add8e633;border-color:#add8e64d;color:#4a6b7c}.mood-indicator.grateful{background:#98fb9833;border-color:#98fb984d;color:#4a7c4a}.breakthrough-indicator{align-items:center;background:linear-gradient(135deg,#7bb6facc,#6ba3f5cc);border-radius:6px;box-shadow:0 2px 6px #7bb6fa33;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;gap:.3rem;padding:.2rem .6rem}.breakthrough-icon,.meta-icon,.mood-emoji,.type-icon{align-items:center!important;display:inline-flex!important;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Android Emoji,EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,sans-serif!important;height:1.2em!important;justify-content:center!important;line-height:1!important;text-align:center!important;width:1.2em!important}.mood-emoji{font-size:.75rem}.mood-text{align-items:center!important;display:flex!important;line-height:1!important}@media (max-width:768px){.conversation-card{gap:.8rem;padding:1.2rem 1rem}.conversation-header{align-items:flex-start;flex-direction:column;gap:.5rem;margin-bottom:.5rem}.conversation-date{align-self:flex-end;margin-top:-.25rem}.conversation-title{font-size:1.05rem}.conversation-preview{-webkit-line-clamp:3;font-size:.9rem}.conversation-meta{flex-wrap:wrap;gap:.75rem}.type-badge{font-size:.75rem;padding:.25rem .6rem}}@media (max-width:480px){.conversation-card{padding:1rem .8rem}.conversation-title{font-size:1rem}.conversation-preview{font-size:.85rem;line-height:1.3}.conversation-meta{font-size:.75rem}.type-badge{font-size:.7rem;padding:.2rem .5rem}.selection-checkbox input[type=checkbox]{height:1.1em;width:1.1em}}@media (prefers-contrast:high){.conversation-card{background:#fff;border:2px solid #3a5a8c}.conversation-card.selected,.conversation-card:hover{background:#f8fbff;border-color:#2a3a4d}.type-badge{background:#0000;border:2px solid}.conversation-title{color:#000}.conversation-preview{color:#333}}@media (prefers-reduced-motion:reduce){.conversation-card{transition:none}.conversation-card:hover,.selection-checkbox input[type=checkbox]:hover{transform:none}}@media print{.conversation-card{background:#fff;border:1px solid #ccc;box-shadow:none;break-inside:avoid;page-break-inside:avoid}.selection-checkbox{display:none}.conversation-card:hover{box-shadow:none;transform:none}}.chat-history-container #filter-help,.chat-history-container #search-help,.chat-history-container #sort-help,.sr-only{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.chat-history-container .search-input-wrapper{align-items:center!important;background:#fffffff2!important;background:var(--bg-overlay)!important;border:1px solid #7bb6fa26!important;border:1px solid var(--border-light)!important;border-radius:999px!important;border-radius:var(--radius-full)!important;box-shadow:0 2px 12px #7bb6fa14!important;box-shadow:var(--shadow-light)!important;display:flex!important;max-width:450px!important;overflow:hidden!important;position:relative!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;transition:all var(--transition-normal)!important;width:100%!important}.export-details{background:#7bb6fa0d;border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);margin:1rem 0;padding:1rem 1.25rem}.export-details ul{list-style:none;margin:0;padding:0}.export-details li{color:#6b7a90;color:var(--text-secondary);font-size:.9375rem;padding:.25rem 0}.export-details li:before{color:#7bb6fa;color:var(--primary-blue);content:"✓ ";font-weight:700;margin-right:.5rem}.chat-history-container{--primary-blue:#7bb6fa!important;--primary-blue-dark:#5a8fd6!important;--primary-blue-light:#a8cdff!important;--primary-blue-pale:#e8f2ff!important;--bg-primary:#eaf2fa!important;--bg-secondary:#e3edf7!important;--bg-card:#ffffffd9!important;--bg-glass:#ffffffb3!important;--bg-overlay:#fffffff2!important;--text-primary:#2a3a4d!important;--text-secondary:#6b7a90!important;--text-muted:#8ca0b8!important;--text-light:#a8b5c7!important;--border-light:#7bb6fa26!important;--border-medium:#7bb6fa40!important;--border-strong:#7bb6fa66!important;--shadow-light:0 2px 12px #7bb6fa14!important;--shadow-medium:0 4px 20px #3c5a821f!important;--shadow-strong:0 8px 32px #3c5a8226!important;--shadow-glow:0 0 0 4px #7bb6fa26!important;--radius-xs:4px!important;--radius-sm:8px!important;--radius-md:12px!important;--radius-lg:16px!important;--radius-xl:20px!important;--radius-2xl:24px!important;--radius-full:999px!important;--transition-fast:0.15s cubic-bezier(0.4,0,0.2,1)!important;--transition-normal:0.25s cubic-bezier(0.4,0,0.2,1)!important;--transition-slow:0.35s cubic-bezier(0.4,0,0.2,1)!important;--space-xs:0.25rem!important;--space-sm:0.5rem!important;--space-md:1rem!important;--space-lg:1.5rem!important;--space-xl:2rem!important;--space-2xl:3rem!important}:root{--sidebar-width:280px;--primary-blue:#7bb6fa;--primary-blue-dark:#5a8fd6;--primary-blue-light:#a8cdff;--primary-blue-pale:#e8f2ff;--bg-primary:#eaf2fa;--bg-secondary:#e3edf7;--bg-card:#ffffffd9;--bg-glass:#ffffffb3;--bg-overlay:#fffffff2;--text-primary:#2a3a4d;--text-secondary:#6b7a90;--text-muted:#8ca0b8;--text-light:#a8b5c7;--border-light:#7bb6fa26;--border-medium:#7bb6fa40;--border-strong:#7bb6fa66;--shadow-light:0 2px 12px #7bb6fa14;--shadow-medium:0 4px 20px #3c5a821f;--shadow-strong:0 8px 32px #3c5a8226;--shadow-glow:0 0 0 4px #7bb6fa26;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:999px;--transition-fast:0.15s cubic-bezier(0.4,0,0.2,1);--transition-normal:0.25s cubic-bezier(0.4,0,0.2,1);--transition-slow:0.35s cubic-bezier(0.4,0,0.2,1);--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--transition-speed:200ms;--transition-easing:cubic-bezier(0.4,0,0.2,1);--hover-transform:translateY(-2px);--active-transform:translateY(0);--hover-shadow:0 4px 12px #7bb6fa26;--danger-hover-shadow:0 4px 12px #ff6b6b26}#root,.chat-history-container,.chat-history-inner,.error-bg,.main-content-wrapper,body,html{background:#eaf2fa!important;background:var(--bg-primary)!important}body,html{height:100%;margin:0;min-height:100vh;overflow:auto;padding:0}body{color:#2a3a4d;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}#root{min-height:100vh}#root,.main-content-wrapper,body{overflow-x:hidden!important}.chat-history-inner{padding-left:16px;padding-right:16px}.chat-history-page .main-content-wrapper,.main-content-wrapper{align-items:flex-start!important;background:#eaf2fa!important;background:var(--bg-primary)!important;display:flex;justify-content:center;margin-left:0!important;min-height:100vh;overflow-x:hidden!important;padding:0 12px!important;position:relative!important;transition:margin-left .25s cubic-bezier(.4,0,.2,1);transition:margin-left var(--transition-normal);width:100%!important}.main-content-wrapper{background:#eaf2fa!important;background:var(--bg-primary)!important;border:none!important;box-shadow:none!important;padding-left:0!important}@media (min-width:901px){.chat-history-page .main-content-wrapper,.main-content-wrapper{margin-left:0!important;width:100%!important}}@media (max-width:900px){.chat-history-page .main-content-wrapper,.main-content-wrapper{margin-left:0!important;width:100%!important}}.chat-history-container{box-sizing:border-box!important;box-sizing:border-box;display:block!important;margin:0;min-height:100%!important;min-height:100vh;overflow-y:auto;padding:32px 0!important;position:relative;width:100%!important}.chat-history-inner{margin:0 auto;max-width:1200px;padding:0;width:100%}.chat-history-header{backdrop-filter:blur(20px) saturate(180%)!important;-webkit-backdrop-filter:blur(20px) saturate(180%)!important;background:#ffffffb3!important;border:1px solid #fff6!important;border-radius:24px;border-radius:var(--radius-2xl);box-shadow:0 4px 20px #3c5a821a,inset 0 1px 0 #fff9!important;display:flex!important;justify-content:space-between!important;margin-bottom:.5rem!important;min-height:0!important;min-height:auto!important;padding:2rem 2rem 1.25rem!important;position:sticky!important;top:0!important;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal);z-index:100!important}.chat-history-header:before{background:linear-gradient(135deg,#fff6,#ffffff1a,#fff6);border-radius:24px;border-radius:var(--radius-2xl);content:"";inset:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;pointer-events:none;position:absolute}.chat-history-header{align-items:center!important;display:grid!important;grid-template-columns:1fr auto 1fr!important;position:relative!important}.header-center{align-items:center!important;grid-column:2!important;justify-self:center!important;text-align:center!important}.header-actions{grid-column:3!important;justify-self:end!important}.header-center{flex:1 1}.header-actions{gap:1rem;gap:var(--space-md);margin-left:auto}.chat-history-header:hover{border-bottom-color:#7bb6fa40;border-bottom-color:var(--border-medium)}@media (max-width:768px){.chat-history-header{align-items:stretch;flex-direction:column;gap:1rem;padding:1.25rem}.header-center{align-items:center;text-align:center}.header-actions{justify-content:center;margin-left:0}}.header-center{flex-direction:column;justify-content:center;text-align:center;width:100%}.header-center,.page-title{align-items:center;display:flex}.page-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#7bb6fa 0,var(--medium-blue) 100%);background:linear-gradient(135deg,var(--primary-blue) 0,var(--medium-blue) 100%);-webkit-background-clip:text;background-clip:text;color:#7bb6fa;color:var(--primary-blue);font-size:2rem;font-weight:700;gap:1.5rem;justify-content:space-between;letter-spacing:-.01em;margin:0 0 .5rem;text-transform:lowercase}.page-subtitle,.page-title{margin-left:auto;margin-right:auto;text-align:center}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.page-subtitle{color:#8ca0b8;color:var(--text-muted);font-size:1.0625rem;font-weight:500;margin:0;opacity:.85;text-transform:lowercase;transition:opacity .25s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-normal)}.chat-history-header:hover .page-subtitle{opacity:1}.header-actions{align-items:center;display:flex;flex-shrink:0;gap:.875rem}.action-button,.action-button.danger,.action-button.secondary,.action-button.select-all,.modal-button,.retry-button{align-items:center;background:#ffffffb3;background:var(--bg-glass);border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:999px;border-radius:var(--radius-full);color:#6b7a90;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.9375rem;font-weight:500;height:42px;justify-content:center;overflow:hidden;padding:.75rem 1.5rem;position:relative;text-transform:lowercase;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-speed) var(--transition-easing);white-space:nowrap}.action-button.select-all:hover,.action-button:hover:not(:disabled):not(.secondary):not(.danger){background:#e8f2ff;background:var(--primary-blue-pale);box-shadow:0 4px 12px #7bb6fa26;box-shadow:var(--hover-shadow);color:#5a8fd6;color:var(--primary-blue-dark);transform:translateY(-2px);transform:var(--hover-transform)}.action-button.danger:hover:not(:disabled){background-color:#fff2f2;border-color:#ffb8b8;box-shadow:0 4px 12px #ff6b6b26;box-shadow:var(--danger-hover-shadow);color:#c53030}.action-button.select-all:active,.action-button:active:not(:disabled):not(.secondary):not(.danger){background:#dbeaf6;transform:translateY(0);transform:var(--active-transform)}.action-button.danger:active:not(:disabled){background-color:#ffe5e5;box-shadow:none;color:#a32929;transform:translateY(0);transform:var(--active-transform)}.action-button.active,.action-button.select-all.active{background:linear-gradient(135deg,#7bb6fa,#5a8fd6);background:linear-gradient(135deg,var(--primary-blue) 0,var(--primary-blue-dark) 100%);border-color:#7bb6fa;border-color:var(--primary-blue);box-shadow:0 4px 12px #7bb6fa26;box-shadow:var(--hover-shadow);color:#fff}.action-button:disabled,.modal-button:disabled,.retry-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none;transition:none}.selection-controls{animation:slideDown .2s cubic-bezier(.4,0,.2,1);animation:slideDown var(--transition-speed) var(--transition-easing)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.selection-actions{align-items:center;display:flex;gap:.75rem}.selection-count-badge{align-items:center;animation:pulse .3s ease-out;background:#fff;border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:999px;border-radius:var(--radius-full);box-shadow:0 2px 8px #0000001f;color:#5a8fd6;color:var(--primary-blue-dark);display:inline-flex;font-size:.8125rem;font-weight:700;height:1.5rem;justify-content:center;margin-left:.625rem;min-width:1.5rem;padding:.3125rem .875rem}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.action-button.danger{background:var(--error-red);border-color:var(--error-red);color:#fff}.action-button.danger:hover{background:#ff5252;border-color:#ff5252;box-shadow:0 4px 12px #ff6b6b33;transform:translateY(-1px)}.action-button.danger:active{transform:translateY(0)}.action-button.danger:before{background:radial-gradient(circle,#fff3 0,#0000 70%)}.selection-info{color:#8ca0b8;color:var(--text-muted);font-size:.9rem;font-weight:500;margin-right:1rem}.conversation-card.selectable{border:1px solid #0000;cursor:pointer;position:relative;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.conversation-card.selectable:hover{border-color:#7bb6fa40;border-color:var(--border-medium)}.conversation-card.selected{border:1px solid #7bb6fa;border:1px solid var(--primary-blue)}.conversation-card.selected:after{background:#7bb6fa;background:var(--primary-blue);border-radius:50%;box-shadow:0 2px 8px #7bb6fa4d;color:#fff;content:"✓";font-size:.75rem;font-weight:700;z-index:2}.conversation-card.selected:after,.selection-checkbox{align-items:center;display:flex;height:1.25rem;justify-content:center;position:absolute;right:.75rem;top:.75rem;width:1.25rem}.selection-checkbox{background:#fff;border:2px solid #7bb6fa40;border:2px solid var(--border-medium);border-radius:4px;border-radius:var(--radius-xs);cursor:pointer;opacity:0;transform:scale(.8);transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal);z-index:1}.conversation-content{padding-right:2rem;position:relative;z-index:1}.loading-container{background:#0000!important;flex-direction:column;left:50%!important;padding:var(--spacing-3xl);position:fixed!important;text-align:center;top:50%!important;transform:translate(-50%,-50%)!important;z-index:1000}.loading-text{color:#8ca0b8;color:var(--text-muted);font-size:var(--text-base);margin:0;text-transform:lowercase}@media (max-width:600px){.retry-button{font-size:.85rem;min-width:140px;padding:.6rem 1.25rem}}.empty-state{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#fffffff2;background:var(--bg-overlay);border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:24px;border-radius:var(--radius-2xl);box-shadow:0 4px 20px #3c5a821f;box-shadow:var(--shadow-medium);margin:0 auto;max-width:500px;padding:4.5rem 2.5rem;text-align:center}.empty-icon{align-items:center!important;animation:float 3s ease-in-out infinite;display:flex!important;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Android Emoji,EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,sans-serif!important;font-size:4rem;height:4rem!important;justify-content:center!important;line-height:1!important;margin-bottom:1.5rem;margin-left:auto!important;margin-right:auto!important;opacity:.7;text-align:center!important;vertical-align:middle!important;width:4rem!important}.empty-title{color:#5a8fd6;color:var(--primary-blue-dark);font-size:1.625rem;font-weight:700;letter-spacing:-.01em;margin-bottom:1rem;text-transform:lowercase}.empty-message{color:#6b7a90;color:var(--text-secondary);font-size:1.125rem;line-height:1.6;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;max-width:360px}.pill-button{align-items:center;background:linear-gradient(135deg,#7bb6fa,#5a8fd6);background:linear-gradient(135deg,var(--primary-blue) 0,var(--primary-blue-dark) 100%);border:none;border-radius:999px;border-radius:var(--radius-full);box-shadow:0 2px 12px #7bb6fa14;box-shadow:var(--shadow-light);color:#fff;cursor:pointer;display:inline-flex;font-size:1.0625rem;font-weight:600;letter-spacing:.01em;margin:.625rem;overflow:hidden;padding:.875rem 1.75rem;position:relative;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.pill-button:before{background:linear-gradient(90deg,#0000,#ffffff40,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .35s cubic-bezier(.4,0,.2,1);transition:left var(--transition-slow);width:100%}.pill-button:hover:before{left:100%}.pill-button:hover{background-color:#5a8fd6;background-color:var(--primary-blue-dark);box-shadow:0 4px 20px #3c5a821f;box-shadow:var(--shadow-medium);color:#fff;transform:translateY(-2px)}.pill-button:active{box-shadow:0 2px 12px #7bb6fa14;box-shadow:var(--shadow-light);transform:translateY(0)}.pill-button:focus{box-shadow:0 0 0 4px #e8f2ff;box-shadow:0 0 0 4px var(--primary-blue-pale);outline:none}.conversations-list{display:flex;flex-direction:column;gap:3rem!important;padding-bottom:3rem!important;padding-top:2rem!important;width:100%}.conversation-card{background:#ffffffd9!important;background:var(--bg-card)!important;border:1px solid #7bb6fa26!important;border:1px solid var(--border-light)!important;border-radius:16px!important;border-radius:var(--radius-lg)!important;box-shadow:0 2px 12px #7bb6fa14!important;box-shadow:var(--shadow-light)!important;margin-bottom:1rem!important;padding:1.5rem 2rem!important;position:relative!important;transform-origin:center!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;transition:all var(--transition-normal)!important;will-change:transform,box-shadow!important}.conversation-card.no-transition,.conversations-grid.no-transition .conversation-card{transition:none!important}.conversation-card .delete-icon-button{background:none;border:none;border-radius:50%;color:#8ca0b8;color:var(--text-muted);cursor:pointer;padding:.25rem;position:absolute;right:.75rem;top:.75rem;transition:background .15s;z-index:2}.conversation-card .delete-icon-button:hover{background:#e8f2ff;background:var(--primary-blue-pale);color:var(--error-red)}.conversation-card.selected,.conversation-card:hover{background:#ffffffd9!important;background:var(--bg-card)!important;border-radius:16px!important;border-radius:var(--radius-lg)!important}@media (max-width:768px){.conversations-list{gap:2rem!important;padding-bottom:2rem!important;padding-top:1.5rem!important}.conversation-card{margin-bottom:.75rem!important}.conversation-card:hover{transform:scale(1.005)!important}}.modal-overlay{align-items:center;animation:modalFadeIn .3s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#2a3a4d99;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;padding:var(--space-xl);position:fixed;right:0;top:0;z-index:10000}@keyframes modalFadeIn{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:1}}.modal-content{animation:modalSlideIn .3s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffffff2;background:var(--bg-overlay);border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:24px;border-radius:var(--radius-2xl);box-shadow:0 8px 32px #3c5a8226;box-shadow:var(--shadow-strong);max-width:500px;overflow:hidden;transform-origin:center;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{border-bottom:1px solid #7bb6fa26;border-bottom:1px solid var(--border-light);padding:2rem 2.5rem 1rem}.modal-title{color:#5a8fd6;color:var(--primary-blue-dark);font-size:1.5rem;font-weight:700;letter-spacing:-.01em;margin:0;text-transform:lowercase}.modal-body{padding:1.5rem 2.5rem}.modal-message{color:#6b7a90;color:var(--text-secondary);font-size:1.0625rem;line-height:1.6;margin:0}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding:1rem 2.5rem 2rem}.modal-button{border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:999px;border-radius:var(--radius-full);cursor:pointer;font-family:inherit;font-size:.9375rem;font-weight:600;padding:.875rem 1.75rem;text-transform:lowercase;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.modal-button.primary{background-color:#5a8fd6;background-color:var(--primary-blue-dark);color:#fff}.modal-button.primary:hover{background-color:#7bb6fa;background-color:var(--primary-blue)}.modal-button.primary:active{background-color:#4a7bbf;transform:scale(.98)}.modal-button.secondary{background-color:#e3edf7;background-color:var(--bg-secondary);border:1px solid #7bb6fa26;border:1px solid var(--border-light);color:#6b7a90;color:var(--text-secondary)}.modal-button.secondary:hover{background-color:#dbe6f3;border-color:#7bb6fa40;border-color:var(--border-medium)}.modal-button.secondary:active{background-color:#d1dde9;transform:scale(.98)}@media (max-width:768px){.chat-history-container{padding:1.5rem 1rem}.chat-history-header{gap:1.5rem;margin-bottom:2rem;padding:1.25rem 1.5rem}.page-title{font-size:1.5rem}.search-and-controls{align-items:stretch;flex-direction:column;gap:1.5rem;padding:1rem;top:calc(120px + 1rem)!important}.search-section{min-width:auto}.filter-controls{gap:1rem;justify-content:space-between}.control-group{flex:1 1;min-width:140px}.control-select{min-width:auto;width:100%}.selection-controls{padding:1rem 0}.selection-actions{flex-wrap:wrap;gap:.75rem}.action-button{font-size:.875rem;padding:.75rem 1.25rem}.modal-overlay{padding:1.5rem;padding:var(--space-lg)}.modal-actions,.modal-body,.modal-header{padding-left:1.5rem;padding-right:1.5rem}.modal-actions{flex-direction:column}.modal-button{justify-content:center;width:100%}}@media (max-width:480px){.chat-history-container{padding:1rem;padding:var(--space-md)}.chat-history-header{gap:1rem;padding:1rem 1.25rem}.back-link{font-size:.875rem;padding:.75rem 1rem}.page-title{font-size:1.375rem}.page-subtitle{font-size:.9375rem}.search-input-wrapper{padding:0 1.25rem}.search-input{font-size:1rem;padding:1rem .75rem 1rem 2.25rem}.search-icon{font-size:1.125rem;left:1.25rem}.filter-controls{flex-direction:column;gap:.75rem}.control-group{align-items:flex-start;flex-direction:column;gap:.5rem}.empty-state{padding:3rem 1.5rem}.empty-icon{font-size:3rem;height:3rem!important;margin-left:auto!important;margin-right:auto!important;width:3rem!important}.empty-title{font-size:1.375rem}.empty-message{font-size:1rem}.error-content,.loading-content{padding:2.5rem 1.5rem}.search-and-controls{padding:.75rem;top:calc(140px + 1rem)!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.action-button:focus-visible,.back-link:focus-visible,.control-select:focus-visible,.pill-button:focus-visible,.search-input:focus-visible{outline:2px solid #7bb6fa;outline:2px solid var(--primary-blue);outline-offset:2px}@media (prefers-contrast:high){:root{--border-light:#7bb6fa66;--border-medium:#7bb6fa99;--shadow-light:0 2px 12px #00000026;--shadow-medium:0 4px 20px #0003}}@media print{.chat-history-header,.search-and-controls,.selection-controls{background:#fff!important;border:1px solid #ccc!important;box-shadow:none!important}.action-button,.pill-button{background:#fff!important;border:1px solid #ccc!important;color:#000!important}}.main-content-wrapper .chat-history-container,.main-content-wrapper .chat-history-container *{--primary-blue:#7bb6fa!important;--primary-blue-dark:#5a8fd6!important;--primary-blue-light:#a8cdff!important;--bg-primary:#eaf2fa!important;--bg-secondary:#e3edf7!important;--bg-card:#ffffffd9!important;--bg-glass:#ffffffb3!important;--bg-overlay:#fffffff2!important;--text-primary:#2a3a4d!important;--text-secondary:#6b7a90!important;--text-muted:#8ca0b8!important;--border-light:#7bb6fa26!important;--border-medium:#7bb6fa40!important;--shadow-light:0 2px 12px #7bb6fa14!important;--shadow-medium:0 4px 20px #3c5a821f!important;--shadow-strong:0 8px 32px #3c5a8226!important;--radius-lg:16px!important;--radius-xl:20px!important;--radius-2xl:24px!important;--radius-full:999px!important;--transition-normal:0.25s cubic-bezier(0.4,0,0.2,1)!important}.main-content-wrapper .chat-history-header{border:1px solid #7bb6fa26!important;border:1px solid var(--border-light)!important;border-radius:24px!important;border-radius:var(--radius-2xl)!important;box-shadow:0 4px 20px #3c5a821f,inset 0 1px 0 #fff3!important;box-shadow:var(--shadow-medium),inset 0 1px 0 #fff3!important;margin-bottom:2.5rem!important;padding:1.5rem 2.25rem!important}.main-content-wrapper .chat-history-header,.main-content-wrapper .search-input-wrapper{backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;background:#fffffff2!important;background:var(--bg-overlay)!important}.main-content-wrapper .search-input-wrapper{border:2px solid #7bb6fa26!important;border:2px solid var(--border-light)!important;border-radius:999px!important;border-radius:var(--radius-full)!important;box-shadow:0 4px 20px #3c5a821f!important;box-shadow:var(--shadow-medium)!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;transition:all var(--transition-normal)!important}.main-content-wrapper .search-input-wrapper:focus-within{border-color:#7bb6fa!important;border-color:var(--primary-blue)!important;box-shadow:0 0 0 3px #7bb6fa26,0 4px 20px #3c5a821f!important;box-shadow:0 0 0 3px #7bb6fa26,var(--shadow-medium)!important;transform:translateY(-1px)!important}.main-content-wrapper .action-button{backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;background:#ffffffb3!important;background:var(--bg-glass)!important;border:1px solid #7bb6fa26!important;border:1px solid var(--border-light)!important;border-radius:999px!important;border-radius:var(--radius-full)!important;box-shadow:0 2px 12px #7bb6fa14!important;box-shadow:var(--shadow-light)!important;color:#5a8fd6!important;color:var(--primary-blue-dark)!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;transition:all var(--transition-normal)!important}.main-content-wrapper .action-button:hover{background:#7bb6fa1f!important;border-color:#7bb6fa40!important;border-color:var(--border-medium)!important;box-shadow:0 10px 28px #7bb6fa38!important;transform:translateY(-2px)!important}.main-content-wrapper .action-button.active{background:linear-gradient(135deg,#7bb6fa,#5a8fd6)!important;background:linear-gradient(135deg,var(--primary-blue) 0,var(--primary-blue-dark) 100%)!important;border-color:#7bb6fa!important;border-color:var(--primary-blue)!important;color:#fff!important}.selection-controls{align-items:center;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 0}.delete{align-items:center!important;background:linear-gradient(135deg,#ff6b6b,#ee5a52)!important;border:none!important;border-radius:999px!important;border-radius:var(--radius-full)!important;color:#fff!important;cursor:pointer!important;display:inline-flex!important;font-size:.9375rem!important;font-weight:600!important;gap:.5rem!important;height:2.5rem!important;justify-content:center!important;padding:0 1.25rem!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;transition:all var(--transition-normal)!important;white-space:nowrap!important}.delete:hover{background:linear-gradient(135deg,#ff5252,#d32f2f)!important;box-shadow:0 4px 12px #ff6b6b4d!important;transform:translateY(-1px)!important}.delete:active{transform:translateY(0)!important}.delete-icon{align-items:center!important;display:flex!important;font-size:1.125rem!important;height:1.25rem!important;justify-content:center!important;width:1.25rem!important}.action-button.select-all{background:#ffffffb3;background:var(--bg-glass);border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:999px;border-radius:var(--radius-full);color:#6b7a90;color:var(--text-secondary);cursor:pointer;font-size:.9375rem;font-weight:500;padding:.75rem 1.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.action-button.select-all:hover{background:#7bb6fa14;border-color:#7bb6fa40;border-color:var(--border-medium);box-shadow:0 4px 20px #3c5a821f;box-shadow:var(--shadow-medium);color:#5a8fd6;color:var(--primary-blue-dark);transform:translateY(-1px)}.action-button.select-all.active{background:linear-gradient(135deg,#7bb6fa,#5a8fd6);background:linear-gradient(135deg,var(--primary-blue) 0,var(--primary-blue-dark) 100%);border-color:#7bb6fa;border-color:var(--primary-blue);box-shadow:0 4px 12px #7bb6fa40;color:#fff}.action-button.select-all.active:hover{box-shadow:0 8px 24px #7bb6fa59;transform:translateY(-1px)}.conversation-card.selected{background:#7bb6fa14;border-color:#7bb6fa;border-color:var(--primary-blue);box-shadow:0 0 0 1px #7bb6fa4d,0 4px 20px #3c5a821f;box-shadow:0 0 0 1px #7bb6fa4d,var(--shadow-medium)}.conversation-card.selectable .selection-checkbox{opacity:1;transform:scale(1)}.selection-checkbox input[type=checkbox]:checked{background-color:#7bb6fa;background-color:var(--primary-blue);border-color:#7bb6fa;border-color:var(--primary-blue)}.error-message-container{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:2rem}.error-message{align-items:center;animation:errorSlideIn .6s cubic-bezier(.16,1,.3,1);background:linear-gradient(90deg,#fff6f6 80%,#f7fafd);border:2.5px solid var(--error-red);border-radius:var(--border-radius-large);box-shadow:0 8px 32px #e573731a;display:flex;flex-direction:column;max-width:520px;padding:1.25rem 1.5rem;text-align:center;width:100%}@keyframes errorSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.error-content{align-items:center;display:flex;flex-direction:column;text-align:center;width:100%}.error-icon{color:var(--error-red);font-size:2rem;margin-bottom:.5rem}.error-content .error-title,.error-message .error-title,.error-message-container .error-title,.error-title,h3.error-title{color:var(--error-red);font-size:1.1rem;font-weight:600;margin-bottom:.5rem;text-transform:lowercase!important}.error-text{color:#6b7a90;line-height:1.5;margin-bottom:1rem}.error-text,.retry-button{font-size:.95rem;text-transform:lowercase!important}.retry-button{align-items:center;background:var(--error-red);border:none;border-radius:999px;border-radius:var(--radius-full);color:#fff;cursor:pointer;display:flex;font-weight:500;justify-content:center;margin:1rem auto 0;min-width:160px;padding:.75rem 1.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal);width:fit-content}.retry-button:hover{background-color:#6b8ead}.retry-button:active{background-color:#5a7d9a;transform:scale(.98)}@media (max-width:600px){.error-message{margin:1rem;padding:1rem}.error-icon{font-size:1.75rem}.error-title{font-size:1rem}.error-text{font-size:.9rem}.retry-button{font-size:.85rem;min-width:140px;padding:.6rem 1.25rem}}.error-content .error-title,.error-message .error-title,.error-message-container .error-title,.error-title,.error-title *,h3.error-title{font-family:inherit!important;text-transform:lowercase!important}@media (max-width:600px){.error-content .error-title,.error-message .error-title,.error-message-container .error-title,.error-title,h3.error-title{font-size:1rem!important;text-transform:lowercase!important}}.search-and-controls{align-items:center;background:#fffffff2;background:var(--bg-overlay);border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 12px #7bb6fa14;box-shadow:var(--shadow-light);display:flex;gap:1.5rem;margin-bottom:2rem;padding:1rem}.search-section{flex:1 1;min-width:300px}.search-input-wrapper{align-items:center;display:flex;position:relative;width:100%}.search-input{background:#0000;border:none;color:#2a3a4d;color:var(--text-primary);font-size:.95rem;outline:none;padding:.75rem 1rem .75rem 2.5rem;width:100%}.search-icon{color:#8ca0b8;color:var(--text-muted);font-size:1rem;left:1rem;position:absolute}.filter-controls{align-items:center;display:flex;gap:1.5rem}.control-group{align-items:center;display:flex;gap:.75rem}.control-label{color:#6b7a90;color:var(--text-secondary);font-size:.9rem;font-weight:500;white-space:nowrap}.control-select{appearance:none;background:#ffffffb3;background:var(--bg-glass);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7a90' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px;border:1px solid #7bb6fa26;border:1px solid var(--border-light);border-radius:999px;border-radius:var(--radius-full);color:#2a3a4d;color:var(--text-primary);cursor:pointer;font-size:.9rem;min-width:160px;outline:none;padding:.5rem 2rem .5rem 1rem}.control-select:hover{background-color:#7bb6fa0d;border-color:#7bb6fa40;border-color:var(--border-medium)}.control-select:focus{border-color:#7bb6fa;border-color:var(--primary-blue);box-shadow:0 0 0 3px #7bb6fa26}.clear-action{align-items:center;background:none;border:none;color:#8ca0b8;color:var(--text-muted);cursor:pointer;display:flex;font-size:1.25rem;justify-content:center;padding:.25rem;position:absolute;right:1rem;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.clear-action:hover{color:#2a3a4d;color:var(--text-primary);transform:scale(1.1)}@media (max-width:768px){.search-and-controls{flex-direction:column;gap:1rem;padding:1rem}.search-section{min-width:auto;width:100%}.filter-controls{flex-direction:column;gap:1rem;width:100%}.control-group{width:100%}.control-select{min-width:auto;width:100%}}.empty-message a.pill-button{color:#fff!important}@media (max-width:768px){.action-button,.control-select,.modal-button,.search-input{-webkit-tap-highlight-color:rgba(123,182,250,.2);touch-action:manipulation}.control-select,.search-input{min-height:44px}.search-and-controls{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#fffffff2;background:var(--bg-overlay);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:1rem;position:sticky;top:0;z-index:100}.filter-controls{order:2}.search-section{order:1}.chat-history-header{align-items:stretch;flex-direction:column;gap:1rem;padding:1.25rem}.header-center{align-items:center;text-align:center}.header-actions{flex-direction:column;gap:.75rem;justify-content:center;margin-left:0;width:100%}.search-and-controls{align-items:stretch;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1rem}.search-section{min-width:auto;width:100%}.filter-controls{align-items:stretch;flex-direction:column;gap:1rem}.control-group{align-items:flex-start;flex-direction:column;gap:.5rem;width:100%}.control-select{font-size:1rem;min-width:auto;padding:.75rem 1rem;width:100%}.control-label{color:#2a3a4d;color:var(--text-primary);font-size:.875rem;font-weight:600}.action-button,.action-button.danger,.action-button.secondary,.action-button.select-all{font-size:1rem;justify-content:center;min-height:48px;padding:.875rem 1.5rem;width:100%}.conversations-list{gap:1rem;padding-bottom:1.5rem;padding-top:1rem}.conversation-card{margin-bottom:.75rem}.conversation-card:hover{transform:scale(1.005)}.modal-overlay{padding:1rem}.modal-content{margin:1rem;max-width:calc(100vw - 2rem)}.modal-actions,.modal-body,.modal-header{padding-left:1.25rem;padding-right:1.25rem}.modal-actions{flex-direction:column;gap:.75rem}.modal-button{justify-content:center;min-height:48px;width:100%}}@media (max-width:480px){.chat-history-container{padding:1rem}.chat-history-header{gap:.75rem;margin-bottom:1.5rem;padding:1rem}.page-title{font-size:1.25rem;line-height:1.3}.page-subtitle{font-size:.875rem}.search-and-controls{gap:.75rem;margin-bottom:1rem;padding:.75rem}.search-input-wrapper{padding:0 .75rem}.search-input{font-size:1rem;padding:.875rem .75rem .875rem 2rem}.search-icon{font-size:1rem;left:.75rem}.filter-controls{gap:.75rem}.control-group{gap:.375rem}.control-label{font-size:.8125rem}.control-select{font-size:.9375rem;padding:.75rem .875rem}.action-button,.action-button.danger,.action-button.secondary,.action-button.select-all{font-size:.9375rem;min-height:44px;padding:.75rem 1.25rem}.header-actions{gap:.5rem}.conversations-list{gap:.75rem;padding-bottom:1rem;padding-top:.75rem}.conversation-card{margin-bottom:.5rem;padding:1rem}.modal-overlay{padding:.75rem}.modal-content{margin:.75rem;max-width:calc(100vw - 1.5rem)}.modal-actions,.modal-body,.modal-header{padding-left:1rem;padding-right:1rem}.modal-title{font-size:1.25rem}.modal-button{font-size:.9375rem;min-height:44px}.empty-state{padding:2rem 1rem}.empty-icon{font-size:2.5rem;height:2.5rem!important;width:2.5rem!important}.empty-title{font-size:1.125rem}.empty-message{font-size:.9375rem;margin-bottom:2rem}.selection-controls{gap:.5rem;padding:.75rem 0}.selection-actions{flex-direction:column;gap:.5rem}.delete{font-size:.875rem!important;height:2.25rem!important;min-height:44px;padding:0 1rem!important}}.message-thread{gap:1.5rem;margin:0 auto;max-width:1200px;padding:1rem;width:100%}.message,.message-thread{display:flex;flex-direction:column}.message{animation:fadeIn .3s ease-out;max-width:70%}.user-message{align-self:flex-end}.bot-message{align-self:flex-start}.message-content{background-color:#fff;border-radius:16px;box-shadow:0 2px 4px #0000000d;padding:1.2rem;position:relative}.user-message .message-content{background-color:#3b82f6;border-bottom-right-radius:4px;color:#fff}.bot-message .message-content{background-color:#fff;border-bottom-left-radius:4px}.message-sender{color:#64748b;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.user-message .message-sender{color:#ffffffe6}.message-text{font-size:1rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.bot-message .message-text{color:#1e293b}.message-timestamp{font-size:.75rem;margin-top:.5rem;opacity:.8}.user-message .message-timestamp{color:#fffc}.bot-message .message-timestamp{color:#64748b}@media (max-width:768px){.message-thread{padding:.75rem}.message{max-width:85%}.message-content{padding:1rem}.message-text{font-size:.95rem}}.conversation-detail-container{background:#eaf2fa!important;border:none!important;box-shadow:none!important;margin:0!important;max-width:100%!important;min-height:100vh;padding-left:0!important;padding-right:0!important;padding-top:8rem!important;position:relative;width:100%!important}.back-navigation{left:2rem;position:absolute;top:2rem;z-index:10}.back-link{align-items:center;border-radius:8px;color:#6b7a90;display:inline-flex;font-size:.92rem;font-weight:500;gap:.5rem;padding:.4rem .6rem;text-decoration:none;text-transform:lowercase;transition:all .2s ease}.back-link:focus,.back-link:hover{background:#7bb6fa14;color:#3a5a8c;outline:none;transform:translateX(-3px)}.back-icon{font-size:1.2rem;transition:transform .2s ease}.back-link:hover .back-icon{transform:translateX(-3px)}.loading-state{align-items:center;background:#0000!important;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-3xl);text-align:center}.loading-spinner{border:4px solid #6b9bd733;border-top:4px solid var(--light-blue);height:48px;margin-bottom:var(--spacing-xl);width:48px}.loading-state p{color:var(--text-muted);font-size:var(--text-base);text-transform:lowercase}.error-container{padding:2rem;width:100%}.error-icon-lock{margin-bottom:1rem}.error-title-text{color:#e57373;font-size:1.25rem;font-weight:600;margin-bottom:.5rem;text-transform:lowercase}.error-message-text{color:#6b7a90;margin-bottom:1.5rem;text-transform:lowercase}.error-actions{display:flex;justify-content:center;width:100%}.refresh-button-centered{background-color:#3a5a8c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;text-transform:lowercase;transition:background-color .2s ease}.refresh-button-centered:hover{background-color:#5a8fd6}.error-bg{background:#e3edf7!important;min-height:100vh}@media (max-width:768px){.conversation-detail-container{padding:1rem}.back-navigation{padding:.5rem 0 0 .5rem}.back-link{font-size:.85rem;padding:.35rem .5rem}}body.conversation-detail-page,html.conversation-detail-page{overflow-y:auto!important}.pagination-info{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:1rem 0;padding:1rem 2rem;position:relative;text-align:center;z-index:5}.pagination-info p{color:#6b7a90;font-size:.9rem;font-weight:500;margin:0}.load-more-container{display:flex;justify-content:center;padding:1rem 0;position:relative;z-index:5}.load-more-button{background:#3a5a8c;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.load-more-button:hover{background:#5a8fd6;box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.load-more-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.loading-more{align-items:center;color:#6b7a90;display:flex;font-size:.9rem;gap:.5rem;justify-content:center;padding:1rem}.loading-more .app-spinner{height:16px;width:16px}:root{--navbar-width:280px}@media (min-width:769px){.insights-coming-soon{margin:0 auto;max-width:1200px;padding:var(--space-5);width:100%}.insights-coming-soon__content{margin:0 auto;max-width:900px}}.insights-coming-soon{align-items:center;background:var(--bg-page);font-family:var(--font-family);justify-content:center;margin:0 auto;max-width:1200px;min-height:100vh;padding:var(--space-5)}.insights-coming-soon,.insights-coming-soon__content{box-sizing:border-box;display:flex;flex-direction:column;width:100%}.insights-coming-soon__content{gap:2rem;max-width:900px;padding:0 2rem}.insights-coming-soon .app-card{margin:0 auto!important;max-width:900px!important;width:100%!important}.insights-coming-soon__header{background:#fff;border:1px solid var(--border-light);border-radius:18px;box-shadow:0 4px 24px var(--shadow-light),0 1.5px 6px #3c5a820a;box-sizing:border-box;padding:3rem 2rem;text-align:center;width:100%}.insights-coming-soon__icon{color:var(--primary-blue);margin-bottom:1.5rem}.insights-coming-soon__title{color:var(--text-primary);font-size:2.5rem;font-weight:700;letter-spacing:.01em;margin:0 0 .5rem;text-transform:lowercase}.insights-coming-soon__subtitle{color:var(--text-gray);font-size:1.2rem;font-weight:500;letter-spacing:.01em;margin:0;text-transform:lowercase}.insights-coming-soon__progress{background:#fff;border:1px solid var(--border-light);border-radius:18px;box-shadow:0 4px 24px var(--shadow-light),0 1.5px 6px #3c5a820a;box-sizing:border-box;padding:2rem;width:100%}.insights-coming-soon__progress-content{text-align:center}.insights-coming-soon__progress-content h4{color:var(--text-primary);font-size:1.1rem;font-weight:600;letter-spacing:.01em;margin:0 0 1rem;text-transform:lowercase}.insights-coming-soon__progress-bar{background:var(--bg-light);border-radius:4px;height:8px;margin-bottom:1rem;overflow:hidden;width:100%}.insights-coming-soon__progress-fill{background:linear-gradient(135deg,var(--primary-blue) 0,var(--light-blue) 100%);border-radius:4px;height:100%;transition:width .3s ease;width:75%!important}.insights-coming-soon__progress-text{color:var(--text-gray);font-size:.95rem;letter-spacing:.01em;margin:0;text-transform:lowercase}.insights-coming-soon__main{background:#fff;border:1px solid var(--border-light);border-radius:18px;box-shadow:0 4px 24px var(--shadow-light),0 1.5px 6px #3c5a820a;box-sizing:border-box;padding:2rem;width:100%}.insights-coming-soon__description{margin-bottom:2rem;text-align:center}.insights-coming-soon__description p{color:var(--text-gray);font-size:1.1rem;letter-spacing:.01em;line-height:1.6;margin:0;text-transform:lowercase}.insights-coming-soon__features{margin-bottom:2rem}.insights-coming-soon__features h3{color:var(--text-primary);font-size:1.3rem;font-weight:600;letter-spacing:.01em;margin:0 0 1.5rem;text-align:center;text-transform:lowercase}.insights-coming-soon__feature-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.insights-coming-soon__feature{background:var(--bg-light);border:1px solid var(--border-light);border-radius:12px;box-sizing:border-box;display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem;text-align:center;width:100%}.insights-coming-soon__feature-icon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:center!important;display:flex!important;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Android Emoji,EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,sans-serif!important;font-size:2rem;height:1em!important;justify-content:center!important;line-height:1!important;text-align:center!important;transform:translateZ(0);vertical-align:middle!important;width:1em!important}.insights-coming-soon__feature h4{color:var(--text-primary);font-size:1.1rem;font-weight:600;letter-spacing:.01em;margin:0 0 .5rem;text-transform:lowercase}.insights-coming-soon__feature p{color:var(--text-gray);font-size:.95rem;letter-spacing:.01em;line-height:1.5;margin:0;text-transform:lowercase}.insights-coming-soon__beta-note{margin-top:2rem}@media (max-width:768px){.insights-coming-soon{align-items:center!important;justify-content:flex-start!important;left:0!important;margin-left:0!important;max-width:100vw!important;min-height:auto;padding:var(--space-3);padding-bottom:2rem;padding-top:2rem;position:relative!important;right:0!important;width:100vw!important}.insights-coming-soon__content{gap:1.5rem;max-width:100%;padding:0 1rem}.insights-coming-soon .app-card{margin:0!important;max-width:100%!important}.insights-coming-soon__header{border-radius:16px;padding:2rem 1.5rem}.insights-coming-soon__title{font-size:2rem;line-height:1.2}.insights-coming-soon__subtitle{font-size:1.1rem}.insights-coming-soon__main,.insights-coming-soon__progress{border-radius:16px;padding:1.5rem}.insights-coming-soon__feature-grid{gap:1rem;grid-template-columns:1fr}.insights-coming-soon__feature{border-radius:12px;gap:1rem;padding:1.25rem 1.5rem}.insights-coming-soon__description p{font-size:1rem;line-height:1.5}.insights-coming-soon__features h3{font-size:1.2rem;margin-bottom:1.25rem}.insights-coming-soon__feature h4{font-size:1rem}.insights-coming-soon__feature p{font-size:.9rem;line-height:1.4}.insights-coming-soon__progress-content h4{font-size:1rem}.insights-coming-soon__progress-text{font-size:.9rem}.insights-coming-soon__feature-icon{align-items:center!important;display:flex!important;font-size:1.75rem!important;height:1.75rem!important;justify-content:center!important;line-height:1!important;margin:0 auto!important;text-align:center!important;transform:translateZ(0);vertical-align:middle!important;width:1.75rem!important;will-change:transform}.insights-coming-soon__header,.insights-coming-soon__main,.insights-coming-soon__progress{border-radius:14px;margin:.5rem}.insights-coming-soon__feature{display:flex!important;flex-direction:column!important;padding-bottom:1.5rem!important;padding-top:1.5rem!important;text-align:center!important}.insights-coming-soon__content,.insights-coming-soon__feature{align-items:center!important;justify-content:flex-start!important}.insights-coming-soon__content{margin:0 auto!important;max-width:100%!important;padding:0 .5rem;width:100%!important}.dashboard-container,.main-content,.page-content{align-items:center!important;justify-content:flex-start!important;margin-left:0!important;max-width:100vw!important;width:100vw!important}}@media (max-width:480px){.insights-coming-soon{align-items:center!important;justify-content:flex-start!important;margin-left:0!important;max-width:100vw!important;padding:1.5rem 1rem;width:100vw!important}.insights-coming-soon__content{gap:1.25rem;padding:0 .5rem}.insights-coming-soon__header{border-radius:14px;padding:1.5rem 1.25rem}.insights-coming-soon__title{font-size:1.75rem;line-height:1.1}.insights-coming-soon__subtitle{font-size:1rem}.insights-coming-soon__main,.insights-coming-soon__progress{border-radius:14px;padding:1.25rem}.insights-coming-soon__description{margin-bottom:1.5rem}.insights-coming-soon__description p{font-size:.95rem;line-height:1.4}.insights-coming-soon__features{margin-bottom:1.5rem}.insights-coming-soon__features h3{font-size:1.1rem;margin-bottom:1rem}.insights-coming-soon__feature{border-radius:10px;gap:.875rem;padding:1rem 1.25rem}.insights-coming-soon__feature-icon{align-items:center!important;display:flex!important;font-size:1.75rem;height:1.75rem!important;justify-content:center!important;line-height:1!important;margin:0 auto!important;text-align:center!important;vertical-align:middle!important;width:1.75rem!important}.insights-coming-soon__feature h4{font-size:.95rem;margin-bottom:.375rem}.insights-coming-soon__feature p{font-size:.85rem;line-height:1.3}.insights-coming-soon__progress-content h4{font-size:.95rem;margin-bottom:.875rem}.insights-coming-soon__progress-text{font-size:.85rem}.insights-coming-soon__beta-note{margin-top:1.5rem}.app-banner__title{font-size:1rem}.app-banner__text{font-size:.9rem;line-height:1.4}}@media (max-width:768px){.dashboard-container,.insights-coming-soon,.insights-coming-soon *,.main-content,.page-content,.sidebar-offset{align-items:center!important;justify-content:flex-start!important;left:0!important;margin-left:0!important;margin-right:0!important;max-width:100vw!important;position:relative!important;right:0!important;width:100vw!important}#root,body{overflow-x:hidden!important}}@media (prefers-reduced-motion:reduce){.insights-coming-soon__progress-fill{transition:none}}@media (max-width:768px){.insights-coming-soon__feature{cursor:pointer;min-height:120px;transition:all .2s ease}.insights-coming-soon__feature:hover{box-shadow:0 6px 20px #0000001a;transform:translateY(-2px)}.insights-coming-soon__progress-bar{height:10px;margin-bottom:1.25rem}.insights-coming-soon__icon{margin-bottom:1.25rem}.insights-coming-soon__description p{word-wrap:break-word;max-width:100%}}@media (max-width:480px){.insights-coming-soon__feature{min-height:100px}.insights-coming-soon__progress-bar{height:8px;margin-bottom:1rem}.insights-coming-soon__content{gap:1rem}.insights-coming-soon__header,.insights-coming-soon__main,.insights-coming-soon__progress{margin-bottom:0}.insights-coming-soon__beta-note{padding:1rem}.app-banner__icon{font-size:1.25rem!important;margin-bottom:.75rem!important}}@media (max-width:768px) and (orientation:landscape){.insights-coming-soon{min-height:auto;padding:1rem}.insights-coming-soon__content{gap:1rem}.insights-coming-soon__header{padding:1.5rem}.insights-coming-soon__main,.insights-coming-soon__progress{padding:1.25rem 1.5rem}}.content-header,.main-content,.options-main,.page-content,body{background:var(--bg-page)}.options-main{align-items:center;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;font-family:var(--font-family);justify-content:center;padding:var(--space-5);position:relative;width:100%}@media (max-width:900px){.options-main{width:100%}}@media (max-width:768px){.options-main{padding:var(--space-4);width:100%}}@media (max-width:480px){.options-main{padding:var(--space-3);width:100%}}.user-menu-container{background:#ffffffd9;border-radius:50%;box-shadow:0 4px 24px #0000001a,0 1.5px 6px #00000014;position:absolute;right:2rem;top:2rem;z-index:100}.user-menu-trigger{align-items:center;background:#fff;border:1.5px solid #e0e6ef;border-radius:50%;box-shadow:var(--shadow-sm);color:var(--text-gray);cursor:pointer;display:flex;height:44px;justify-content:center;transition:all var(--transition-medium);width:44px}.user-menu-trigger:hover{background:var(--bg-light);box-shadow:var(--shadow-md);transform:translateY(-1px)}.user-menu-trigger:focus{box-shadow:0 0 0 3px var(--focus-blue);outline:none}.user-menu-trigger:disabled{cursor:not-allowed;opacity:.7;transform:none}.user-menu{animation:menuSlideIn .2s cubic-bezier(.16,1,.3,1);background:#fff;border:1px solid #fffc;border-radius:var(--border-radius-large);box-shadow:var(--shadow-lg);min-width:180px;padding:.5rem;position:absolute;right:0;top:calc(100% + 8px)}@keyframes menuSlideIn{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.user-menu-header{border-bottom:1px solid var(--border-light);margin-bottom:.5rem;padding:.75rem 1rem}.user-name{color:var(--primary-blue);font-weight:600}.user-menu-item,.user-name{font-size:.9rem;text-transform:lowercase}.user-menu-item{align-items:center;background:none;border:none;border-radius:var(--border-radius);color:var(--text-gray);cursor:pointer;display:flex;font-family:inherit;font-weight:500;gap:.75rem;padding:.75rem 1rem;text-align:left;transition:all var(--transition-fast);width:100%}.user-menu-item:hover{background:var(--bg-light);color:var(--primary-blue)}.user-menu-item:focus{background:var(--bg-light);box-shadow:0 0 0 2px var(--focus-blue);outline:none}.logout-button{color:#dc3545}.logout-button:hover{background:#dc354514;color:#dc3545}.logout-spinner{animation:spin .8s linear infinite;border:2px solid #dc35454d;border-radius:50%;border-top-color:#dc3545;height:14px;margin-left:auto;width:14px}.options-center{animation:slideInUp .6s cubic-bezier(.16,1,.3,1);flex-direction:column;margin:0 auto;max-width:var(--container-xs);min-height:100vh;position:relative;width:100%}.options-center,.options-heart{align-items:center;display:flex;justify-content:center}.options-heart{animation:float 3s ease-in-out infinite;background:#fff;border-radius:50%;box-shadow:var(--shadow-md);height:64px;margin-bottom:1.5rem;width:64px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.options-heart svg{display:block;filter:drop-shadow(0 2px 8px rgba(123,182,250,.2));height:44px;margin:auto;width:44px}.greeting-section{animation:fadeIn .8s cubic-bezier(.4,0,.2,1) .2s both;margin-bottom:2rem;text-align:center}.options-greeting{color:var(--primary-blue);font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.options-greeting,.options-title{letter-spacing:.01em;text-transform:lowercase}.options-title{color:var(--text-gray);font-size:1.1rem;font-weight:500;margin:0}.options-greeting,.options-title{background:none!important}.options-cards{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;width:100%}.options-card{align-items:center;animation:cardSlideIn .6s cubic-bezier(.16,1,.3,1) both;background:#fff;border:1.5px solid #0000;border-radius:18px;box-shadow:0 4px 24px var(--shadow-light),0 1.5px 6px #3c5a820a;cursor:pointer;display:flex;min-height:160px;outline:none;overflow:hidden;padding:2rem!important;padding-bottom:2.5rem;padding-top:2.5rem;position:relative;transition:all var(--transition-medium)}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.options-card:before{background:linear-gradient(90deg,var(--light-blue) 0,var(--medium-blue) 100%);background:var(--card-gradient,linear-gradient(90deg,var(--light-blue) 0,var(--medium-blue) 100%));content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity var(--transition-medium)}.options-card:focus:before,.options-card:hover:before{opacity:1}.options-card:focus{background:#fafbfd;border-color:var(--light-blue);box-shadow:0 0 0 3px var(--focus-blue)}.options-card:hover{background:#fafbfd;transform:translateY(-2px) scale(1.005)}.options-card:active{transform:translateY(-1px) scale(1.005)}.options-card.loading{background:var(--bg-light);box-shadow:var(--shadow-sm);pointer-events:none;transform:scale(.98)}.options-card-icon{align-items:center;background:linear-gradient(135deg,#7bb6fa1a,#5a8fd61a);border-radius:12px;border-radius:12px!important;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all var(--transition-medium);width:48px}.options-card:hover .options-card-icon{background:linear-gradient(135deg,#7bb6fa26,#5a8fd626);background:var(--card-gradient,linear-gradient(135deg,#7bb6fa26 0,#5a8fd626 100%));transform:scale(1.05)}.options-card-action{border-radius:12px!important;height:48px;width:48px}.options-card-content{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:.25rem;gap:.4rem;margin-right:2.5rem;text-align:left}.options-card-title{color:var(--primary-blue);font-size:1.1rem;font-weight:600;letter-spacing:.01em;margin-bottom:var(--space-3);text-transform:lowercase}.options-card-subtitle{color:var(--text-gray);font-size:.95rem;font-weight:500;line-height:1.3}.options-card-description{color:var(--light-gray);font-size:.85rem;font-weight:400;line-height:1.3;margin-bottom:var(--space-3);opacity:0;transform:translateY(8px);transition:all var(--transition-medium)}.options-card:focus .options-card-description,.options-card:hover .options-card-description{opacity:1;transform:translateY(0)}.options-card-action{align-items:center;background:#7bb6fa1a;border-radius:50%;color:var(--light-blue);display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all var(--transition-medium);width:32px}.options-card:hover .options-card-action{background:var(--light-blue);color:#fff;transform:translateX(3px)}.options-card-spinner{animation:spin .8s linear infinite;border:2px solid #7bb6fa4d;border-radius:50%;border-top:2px solid var(--light-blue);height:18px;width:18px}.options-footer{animation:fadeIn .8s cubic-bezier(.4,0,.2,1) .4s both;text-align:center}.support-text{color:var(--light-gray);font-size:.9rem;font-weight:400;margin:0;text-transform:lowercase}.crisis-link{border-radius:var(--border-radius-xs);color:var(--primary-blue)!important;font-weight:600;padding:2px 4px;text-decoration:none;transition:all var(--transition-fast)}.crisis-link:focus,.crisis-link:hover{background:#4caf5014;color:#388e3c;outline:none;text-decoration:underline}@media (max-width:600px){.options-main{margin-left:0;padding:1rem .5rem;width:100vw}.user-menu-container{right:1rem;top:1rem}.user-menu-trigger{height:40px;width:40px}.options-center{margin-left:auto;margin-right:auto;margin-top:24px;max-width:95vw}.options-card{border-radius:20px;min-height:70px;padding:1.25rem 1rem}.options-card-icon{height:40px;margin-right:.75rem;width:40px}.options-card-action{height:32px;width:32px}.options-greeting{font-size:1.3rem}.options-title{font-size:1rem}.options-heart{height:56px;margin-bottom:1.25rem;width:56px}.options-heart svg{height:36px;width:36px}.user-menu{border:2px solid var(--primary-blue)}}@media (prefers-reduced-motion:reduce){.greeting-section,.options-card,.options-center,.options-footer,.options-heart,.user-menu{animation:none}.options-card-action:hover,.options-card:focus,.options-card:hover{transform:none}.logout-spinner,.options-card-spinner,.options-heart{animation:none}.options-card-description{opacity:1;transform:none}.options-card:before{opacity:1}}@media print{.options-main{background:#fff;color:#000}.user-menu-container{display:none}.options-card{border:1px solid #ccc;box-shadow:none}.logout-spinner,.options-card-spinner{display:none}.options-heart{animation:none}}@media (max-width:400px){.options-main{margin-left:0;padding:var(--space-3);width:100vw}.options-center{margin-left:auto;margin-right:auto;max-width:100vw}.options-card{padding:1rem .875rem}.options-card-content{gap:.2rem}.user-menu{min-width:150px;right:-8px}.greeting-section{margin-bottom:1.5rem}}@media (prefers-contrast:high){.options-card{border:2px solid var(--primary-blue)}.options-card:focus{border-width:3px}}.options-card:first-child:before{background:#7bb6fa!important}.options-card:first-child .options-card-action{background:#eaf4fd!important;color:#7bb6fa!important}.options-card:first-child:hover .options-card-action{background:#7bb6fa!important;color:#eaf4fd!important}.options-card:first-child:hover .options-card-action svg{stroke:#eaf4fd!important;fill:none!important}.options-card:nth-child(2) .options-card-icon{background:#eafbe7!important}.options-card:nth-child(2):hover .options-card-icon{background:#4caf50!important}.options-card:nth-child(2):hover .options-card-icon svg{fill:#eafbe7!important}.options-card:nth-child(2) .options-card-action{background:#6edc7d1a;color:#6edc7d}.options-card:nth-child(2):hover .options-card-action{background:#6edc7d;color:#fff;transform:translateX(3px)}.options-card:nth-child(2):hover .options-card-action svg{stroke:#eafbe7!important;fill:none!important}.options-card:first-child .options-card-icon{background:#eaf4fd!important}.options-card:first-child .options-card-icon svg{fill:#7bb6fa}.options-card:first-child:hover .options-card-icon{background:#7bb6fa!important}.options-card:first-child:hover .options-card-icon svg{fill:#e3f0fa!important}.options-card:nth-child(2) .options-card-icon svg{fill:#4caf50}.options-inner,.options-inner .app-banner{align-items:center;display:flex;flex-direction:column;width:100%}.options-inner .app-banner{justify-content:center;margin:0 auto 1.5rem;max-width:var(--container-xs)}@media (max-width:1200px){.options-inner{max-width:100%;padding:0 1rem}}.options-card:hover .icon-voice{color:#b3d4fc}.options-card:hover .icon-chat{color:#b6f5c6}.options-card:first-child .options-card-action,.options-card:first-child .options-card-icon,.options-card:first-child .options-card-icon svg,.options-card:first-child:hover .options-card-action,.options-card:first-child:hover .options-card-action svg,.options-card:first-child:hover .options-card-icon,.options-card:first-child:hover .options-card-icon svg,.options-card:nth-child(2) .options-card-action,.options-card:nth-child(2) .options-card-icon,.options-card:nth-child(2) .options-card-icon svg,.options-card:nth-child(2):hover .options-card-action,.options-card:nth-child(2):hover .options-card-action svg,.options-card:nth-child(2):hover .options-card-icon,.options-card:nth-child(2):hover .options-card-icon svg{all:unset}.options-card[data-mode=voice] .options-card-action{background:#eaf4fd!important;color:#7bb6fa!important}.options-card[data-mode=voice]:focus .options-card-icon,.options-card[data-mode=voice]:hover .options-card-icon{background:#7bb6fa!important}.options-card[data-mode=voice]:focus .options-card-icon svg,.options-card[data-mode=voice]:hover .options-card-icon svg{fill:#eaf4fd!important;color:#eaf4fd!important}.options-card[data-mode=voice]:focus .options-card-action,.options-card[data-mode=voice]:hover .options-card-action{background:#7bb6fa!important;color:#eaf4fd!important}.options-card[data-mode=voice]:focus .options-card-action svg,.options-card[data-mode=voice]:hover .options-card-action svg{stroke:#eaf4fd!important;color:#eaf4fd!important}.options-card[data-mode=text]:before{background:var(--accent-green)!important}.options-card:first-child[data-mode=voice]:before,.options-card[data-mode=voice]:before{background:#7bb6fa!important}.options-card[data-mode=text]:focus .options-card-icon,.options-card[data-mode=text]:hover .options-card-icon{background:#4caf50!important}.options-card[data-mode=text]:focus .options-card-icon svg,.options-card[data-mode=text]:hover .options-card-icon svg{fill:#eafbe7!important;color:#eafbe7!important}.options-card[data-mode=text]:focus .options-card-action svg,.options-card[data-mode=text]:hover .options-card-action svg{stroke:#fff!important;color:#fff!important}.options-card .options-card-action svg{display:block!important;transition:color .2s,fill .2s,stroke .2s}.options-card-action,.options-card-icon{align-items:center;background:#f6f8fa;border:none!important;border-radius:12px!important;box-shadow:0 2px 8px #7bb6fa14;display:flex;height:48px;justify-content:center;margin:0;padding:0;width:48px}.options-card-icon{margin-right:1.5rem}.options-card-icon,.options-card[data-mode=voice] .options-card-icon{background:#eaf4fd!important}.options-card[data-mode=text] .options-card-icon{background:var(--pale-green)!important}.options-card[data-mode=voice] .options-card-icon svg{fill:#7bb6fa!important;color:#7bb6fa!important;height:28px;width:28px}.options-card[data-mode=text] .options-card-icon svg{fill:var(--accent-green)!important;color:var(--accent-green)!important;height:28px;width:28px}.options-card-icon svg{display:block;height:28px;width:28px}.options-card-action{align-self:center;background:#eaf4fd!important;color:#7bb6fa!important;margin-left:auto;margin-right:.25rem;transition:background .2s,color .2s}.options-card[data-mode=text] .options-card-action{background:#6edc7d1a!important;color:#6edc7d!important}.options-card-action svg{display:block;height:24px;width:24px}.options-card:focus .options-card-icon,.options-card:hover .options-card-icon{filter:brightness(.97)}.options-card:focus .options-card-action,.options-card:hover .options-card-action{background:#7bb6fa!important;color:#eaf4fd!important}.options-card[data-mode=text]:focus .options-card-action,.options-card[data-mode=text]:hover .options-card-action{background:#6edc7d!important;color:#fff!important}.options-card-icon{background:#0000 none repeat 0 0/auto auto padding-box border-box scroll;background:initial;border:none!important}.options-main .options-card{min-height:160px!important;padding-bottom:2.5rem!important;padding-top:2.5rem!important}.options-main .options-card-content{display:flex!important;flex:1 1!important;flex-direction:column!important;gap:.4rem!important;margin-right:2.5rem!important}.options-main .options-card-action{margin-left:auto!important}.options-main .options-card .options-card-action,.options-main .options-card .options-card-icon{align-items:center!important;background:#f6f8fa!important;border:none!important;border-radius:12px!important;box-shadow:0 2px 8px #7bb6fa14!important;display:flex!important;height:48px!important;justify-content:center!important;margin:0!important;max-height:48px!important;max-width:48px!important;min-height:48px!important;min-width:48px!important;padding:0!important;width:48px!important}.options-main .options-card .options-card-icon{background:#eaf4fd!important;margin-right:1.5rem!important}.options-main .options-card[data-mode=voice] .options-card-icon{background:#eaf4fd!important}.options-main .options-card[data-mode=text] .options-card-icon{background:var(--pale-green)!important}.options-main .options-card .options-card-action .app-icon,.options-main .options-card .options-card-action svg,.options-main .options-card .options-card-icon .app-icon,.options-main .options-card .options-card-icon svg{display:block!important;height:28px!important;margin:auto!important;max-height:100%!important;max-width:100%!important;min-height:0!important;min-width:0!important;width:28px!important}.options-main .options-card .options-card-action{align-self:center!important;background:#eaf4fd!important;color:#7bb6fa!important;margin-left:auto!important;margin-right:.25rem!important;transition:background .2s,color .2s!important}.options-main .options-card[data-mode=text] .options-card-action{background:#6edc7d1a!important;color:#6edc7d!important}.options-main .options-card:focus .options-card-icon,.options-main .options-card:hover .options-card-icon{filter:brightness(.97)!important}.options-main .options-card:focus .options-card-action,.options-main .options-card:hover .options-card-action{background:#7bb6fa!important;color:#eaf4fd!important}.options-main .options-card[data-mode=text]:focus .options-card-action,.options-main .options-card[data-mode=text]:hover .options-card-action{background:#6edc7d!important;color:#fff!important}.options-main .options-card[data-mode=voice]:focus .options-card-icon,.options-main .options-card[data-mode=voice]:hover .options-card-icon{background:var(--light-blue)!important}.options-main .options-card[data-mode=voice]:focus .options-card-icon .app-icon,.options-main .options-card[data-mode=voice]:focus .options-card-icon svg,.options-main .options-card[data-mode=voice]:hover .options-card-icon .app-icon,.options-main .options-card[data-mode=voice]:hover .options-card-icon svg{fill:var(--pale-blue)!important;color:var(--pale-blue)!important}.options-main .options-card[data-mode=text]:focus .options-card-icon,.options-main .options-card[data-mode=text]:hover .options-card-icon{background:var(--accent-green)!important}.options-main .options-card[data-mode=text]:focus .options-card-icon .app-icon,.options-main .options-card[data-mode=text]:focus .options-card-icon svg,.options-main .options-card[data-mode=text]:hover .options-card-icon .app-icon,.options-main .options-card[data-mode=text]:hover .options-card-icon svg{fill:var(--pale-green)!important;color:var(--pale-green)!important}.options-card,.options-card-description,.options-card-subtitle,.options-card-title,.options-main,.user-menu,.user-menu-trigger,.user-name{background:#f7fafd!important;color:#1a365d!important}.user-menu-topright{position:absolute;right:2.5rem;top:2.5rem;z-index:10}.settings-page{margin:0 auto;max-width:1000px;padding:2.5rem 1rem 3rem;position:relative;width:100%}@media (max-width:900px){.settings-page{align-items:center;display:flex;flex-direction:column;margin-left:0;margin-top:64px;max-width:100%;padding:2rem 1rem 3rem;width:100%}.settings-page .chat-history-header{border-radius:20px;margin-bottom:1.5rem;padding:1.5rem!important}.settings-page .page-title{font-size:1.75rem;line-height:1.2}.settings-page .page-subtitle{font-size:1rem}.settings-main{gap:1.5rem}.settings-main,.settings-main .app-card{max-width:100%!important;width:100%!important}.settings-main .app-card{margin:0!important}}@media (max-width:768px){.settings-page{align-items:center;display:flex;flex-direction:column;margin-left:0;max-width:100%;padding:2.5rem 1.5rem 3rem;width:100%}.settings-page .chat-history-header{border-radius:18px;margin-bottom:1.25rem;padding:1.25rem!important}.settings-page .page-title{font-size:1.5rem;line-height:1.1}.settings-page .page-subtitle{font-size:.95rem}.settings-main{gap:2.25rem}.settings-main,.settings-main .app-card{max-width:100%!important;width:100%!important}.settings-main .app-card{margin:0!important;padding:2.5rem 1.5rem!important}.settings-card-title{font-size:1.25rem;margin-bottom:1rem}.settings-card-description{font-size:.95rem;margin-bottom:1.5rem}.settings-form-input{border-radius:8px;font-size:1rem;min-height:48px;padding:1rem}.toggle-password{font-size:.9rem;padding:0 .375rem}}@media (max-width:480px){.settings-page{align-items:center;display:flex;flex-direction:column;margin-left:0;max-width:100%;padding:2rem 1.5rem 2.5rem;width:100%}.settings-page .chat-history-header{border-radius:16px;margin-bottom:1rem;padding:1rem!important}.settings-page .page-title{font-size:1.375rem;line-height:1.1}.settings-page .page-subtitle{font-size:.9rem}.settings-main{gap:2rem}.settings-main,.settings-main .app-card{max-width:100%!important;width:100%!important}.settings-main .app-card{margin:0!important;padding:2rem 1rem!important}.settings-card-title{font-size:1.125rem;margin-bottom:.875rem}.settings-card-description{font-size:.9rem;margin-bottom:1.25rem}.settings-form-input{border-radius:8px;font-size:.95rem;min-height:44px;padding:1rem}.toggle-password{font-size:.875rem;padding:0 .25rem}.settings-form-group{margin-bottom:1.5rem}.settings-form-group label{font-size:.9rem;margin-bottom:.75rem}}.settings-page .chat-history-container,.settings-page .chat-history-inner{height:auto!important;margin:0 auto;max-width:1000px;min-height:0!important;min-height:auto!important;overflow:visible!important;padding-left:0!important;padding-right:0!important;width:100%}@media (max-width:900px){.settings-page .chat-history-container,.settings-page .chat-history-inner{align-items:center;display:flex;flex-direction:column;margin-left:0;max-width:100%;width:100%}}@media (max-width:768px){.settings-page .chat-history-container,.settings-page .chat-history-inner{align-items:center;display:flex;flex-direction:column;margin-left:0;max-width:100%;width:100%}}@media (max-width:480px){.settings-page .chat-history-container,.settings-page .chat-history-inner{align-items:center;display:flex;flex-direction:column;margin-left:0;max-width:100%;width:100%}}.settings-page>.chat-history-header{background:#fff!important;border:none!important;border-radius:24px;box-shadow:0 2px 12px #7bb6fa1a;color:#23406e!important;margin-bottom:2rem;padding:2rem 2rem 1.25rem!important}.settings-page .header-center{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;text-align:center}.settings-page .page-title{-webkit-text-fill-color:#0000;align-items:center;background:linear-gradient(135deg,var(--primary-blue) 0,var(--medium-blue) 100%);-webkit-background-clip:text;background-clip:text;color:var(--primary-blue);display:flex;font-size:2rem;font-weight:700;gap:1.5rem;justify-content:center;letter-spacing:-.01em;margin:0 0 .5rem;text-transform:lowercase}.settings-page .page-subtitle{color:#7a869a;font-size:1.15rem;font-weight:400;margin-bottom:.2rem}.settings-page .chat-history-header .header-center{align-items:center!important;display:flex!important;flex-direction:column!important;justify-content:center!important;text-align:center!important;width:100%}.settings-page .chat-history-header .header-center .page-title{-webkit-text-fill-color:#0000!important;align-items:center;background:linear-gradient(135deg,var(--primary-blue) 0,var(--medium-blue) 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:var(--primary-blue);display:flex;font-size:2rem;font-weight:700;gap:1.5rem;justify-content:center;letter-spacing:-.01em;margin:0 0 .5rem;text-align:center!important;text-transform:lowercase}.settings-page .chat-history-header .header-center .page-subtitle{color:#7a869a;font-size:1.15rem;font-weight:400;margin-bottom:.2rem;text-align:center!important}.settings-main{display:flex;flex-direction:column;gap:2rem;margin:0 auto;max-width:600px}.settings-main,.settings-main .app-card{max-width:none!important;width:100%!important}@media (max-width:900px){.settings-main{align-items:center!important;display:flex!important;flex-direction:column!important;max-width:100%!important;width:100%!important}}@media (max-width:768px){.settings-main{align-items:center!important;display:flex!important;flex-direction:column!important;max-width:100%!important;width:100%!important}}@media (max-width:480px){.settings-main{align-items:center!important;display:flex!important;flex-direction:column!important;max-width:100%!important;width:100%!important}}.settings-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--primary-blue) 0,var(--medium-blue) 100%);-webkit-background-clip:text;background-clip:text;color:var(--primary-blue);font-size:2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .05rem}.settings-subtitle{color:#7a869a;font-size:1.15rem;font-weight:400;margin-bottom:.2rem}.settings-card{text-align:left}.settings-card:not(:last-child){margin-bottom:2.5rem}.danger-zone{background:#fff6f6;border:1.5px solid var(--error-red);box-shadow:var(--shadow-md)}.settings-card-title{color:var(--text-primary);font-size:1.45rem;font-weight:700;letter-spacing:-.5px;margin:0 0 var(--space-3) 0}.settings-card-description{color:var(--text-gray);font-size:1rem;font-weight:400;margin-bottom:var(--space-3)}.settings-form-group{margin-bottom:1.3rem}.settings-form-group label{color:#2d3748;display:block;font-weight:500;margin-bottom:.5rem;text-align:left}.input-wrapper{align-items:center;display:flex;position:relative}.settings-form-input{background:var(--bg-light);border:1px solid var(--border-light);border-radius:var(--border-radius);box-sizing:border-box;font-size:1.05rem;padding:.85rem 3.5rem .85rem .85rem;transition:border var(--transition-fast);width:100%}.settings-form-input:focus{background:var(--bg-white);border:1.5px solid var(--light-blue);outline:none}.toggle-password{background:none;border:none;color:#6b7a90;cursor:pointer;font-size:.98rem;font-weight:500;height:2rem;line-height:2rem;padding:0 .5rem;position:absolute;right:1rem;top:50%;transform:translateY(-50%);transition:color var(--transition-fast);z-index:2}.toggle-password:hover{color:var(--primary-blue)}.toggle-password:focus{outline:2px solid var(--light-blue)}.settings-page .app-button{margin-top:.5rem}.login-button{padding:1rem 2.5rem}.login-button .button-text{color:var(--bg-white);font-weight:600}.settings-divider{align-self:stretch;border:none;border-top:1.5px solid var(--primary-blue);margin:.15rem 0;opacity:.18;width:100%}.main-content-wrapper{width:100vw}@media (max-width:900px){.main-content-wrapper{margin-left:0;width:100vw}}@media (max-width:768px){.main-content-wrapper{margin-left:0;width:100vw}}@media (max-width:480px){.main-content-wrapper{margin-left:0;width:100vw}}.main-content-wrapper,body{background:var(--bg-page)!important}.form-control,.register-footer,.settings-container,.settings-page{background:var(--bg-page)!important;color:#1a365d!important}@media (max-width:768px){.app-button,.settings-form-input,.toggle-password{-webkit-tap-highlight-color:rgba(123,182,250,.2);min-height:44px;touch-action:manipulation}.settings-form-group{margin-bottom:1.75rem}.settings-card:not(:last-child){margin-bottom:2.5rem}.settings-card-description,.settings-card-title{word-wrap:break-word;line-height:1.4}.error-card{font-size:.95rem;margin-bottom:1.25rem;padding:1rem 1.25rem}.error-card__icon{font-size:1.25rem}.error-card__title{font-size:1rem}.error-card__message{font-size:.9rem}.app-button,.settings-form-input{margin-bottom:.75rem}.app-button{margin-top:1.25rem}.settings-card-title{margin-bottom:1.5rem}.settings-card-description{margin-bottom:2rem}}@media (max-width:480px){.app-button,.settings-form-input,.toggle-password{min-height:44px}.settings-main{gap:1.25rem}.settings-card:not(:last-child){margin-bottom:1.75rem}.input-wrapper{position:relative;width:100%}.settings-form-input{box-sizing:border-box;margin-bottom:.75rem;width:100%}.app-button{justify-content:center;margin-bottom:.75rem;margin-top:1.25rem;padding:1rem 1.5rem;width:100%}.error-card{font-size:.9rem;margin-bottom:1rem;padding:.875rem 1rem}.error-card__icon{font-size:1.125rem}.error-card__title{font-size:.95rem}.error-card__message{font-size:.85rem}.settings-form-group{margin-bottom:1.25rem}.settings-card-title{margin-bottom:1rem}.settings-card-description{margin-bottom:1.5rem}}@media (max-width:768px) and (orientation:landscape){.settings-page{padding:1rem 1rem 1.5rem}.settings-page .chat-history-header{margin-bottom:1rem;padding:1rem 1.5rem!important}.settings-main{gap:1rem}.settings-card:not(:last-child){margin-bottom:1rem}}@media (max-width:768px){.settings-main .app-card{border:1px solid #0000000f;box-shadow:0 2px 8px #00000014}.settings-form-group label{font-size:.95rem;font-weight:600;margin-bottom:.75rem}.settings-form-input{border-width:1.5px;font-size:1rem}.app-button{font-weight:600;letter-spacing:.01em}.settings-card-title{line-height:1.3}.settings-card-description{color:#64748b;line-height:1.5}}.pulsing-heart-root{-webkit-tap-highlight-color:transparent;align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:flex;justify-content:center;min-height:44px;min-width:44px;outline:none;padding:0;position:relative;transition:box-shadow .2s ease,transform .2s ease,filter .2s ease;user-select:none;-webkit-user-select:none;z-index:1}.pulsing-heart-root:focus,.pulsing-heart-root:focus-visible{box-shadow:none;outline:none}.pulsing-heart-root:hover:not(:disabled):not([aria-disabled=true]){filter:brightness(1.08);transform:scale(1.04) translateY(-2px);z-index:2}.pulsing-heart-root:active:not(:disabled):not([aria-disabled=true]){animation:heart-tap .2s ease-out;transform:scale(.98) translateY(0);transition:transform .1s ease}@keyframes heart-tap{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}.pulsing-heart-svg{display:block;height:100%;transition:filter .3s ease,transform .2s ease;width:100%;will-change:transform,filter}.heart-path{transition:filter .3s ease}.pulsing-heart-root.idle .pulsing-heart-svg{animation:ph-pulse 3s ease-in-out infinite}.pulsing-heart-root.idle .heart-path{filter:drop-shadow(0 4px 12px rgba(74,144,226,.25)) drop-shadow(0 2px 6px rgba(74,144,226,.15))}.pulsing-heart-root.listening .pulsing-heart-svg{animation:ph-pulse-fast 1.6s ease-in-out infinite}.pulsing-heart-root.listening .heart-path{filter:drop-shadow(0 6px 20px rgba(107,163,245,.4)) drop-shadow(0 3px 10px rgba(107,163,245,.3)) drop-shadow(0 0 25px rgba(107,163,245,.2))}.pulsing-heart-root.processing .pulsing-heart-svg{animation:ph-processing 2.2s ease-in-out infinite}.pulsing-heart-root.processing .heart-path{filter:drop-shadow(0 5px 16px rgba(74,144,226,.35)) drop-shadow(0 2px 8px rgba(74,144,226,.25)) drop-shadow(0 0 20px rgba(74,144,226,.2))}.pulsing-heart-root.speaking .pulsing-heart-svg{animation:ph-speaking 2.7s ease-in-out infinite}.pulsing-heart-root.speaking .heart-path{filter:drop-shadow(0 5px 15px rgba(74,144,226,.3)) drop-shadow(0 2px 8px rgba(74,144,226,.2)) drop-shadow(0 0 18px rgba(74,144,226,.15))}.pulsing-heart-root.error .pulsing-heart-svg{animation:ph-error .9s ease-in-out 3}.pulsing-heart-root.error .heart-path{filter:drop-shadow(0 6px 18px rgba(255,107,107,.4)) drop-shadow(0 3px 9px rgba(255,107,107,.3)) drop-shadow(0 0 24px rgba(255,107,107,.25))}@keyframes ph-pulse{0%,to{transform:scale(1)}10%{transform:scale(1.1)}20%{transform:scale(.97)}30%{transform:scale(1.06)}50%{transform:scale(1.13)}70%{transform:scale(.96)}80%{transform:scale(1.03)}}@keyframes ph-pulse-fast{0%,to{transform:scale(1.01)}12%{transform:scale(1.13)}24%{transform:scale(.98)}36%{transform:scale(1.08)}50%{transform:scale(1.16)}70%{transform:scale(.97)}80%{transform:scale(1.04)}}@keyframes ph-processing{0%{transform:scale(1) rotate(0deg)}25%{transform:scale(1.05) rotate(2deg)}50%{transform:scale(1.07) rotate(0deg)}75%{transform:scale(1.05) rotate(-2deg)}to{transform:scale(1) rotate(0deg)}}@keyframes ph-speaking{0%,to{transform:scale(1.01)}20%{transform:scale(1.1)}40%{transform:scale(.98)}60%{transform:scale(1.08)}80%{transform:scale(1.13)}}@keyframes ph-error{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.pulsing-heart-root[aria-pressed=true]{box-shadow:0 0 0 3px #6ba3f566}.pulsing-heart-root[aria-pressed=true]:focus-visible{box-shadow:0 0 0 3px #6ba3f566;outline-color:#6ba3f5}.pulsing-heart-root:active:not(:disabled):not([aria-disabled=true]) .pulsing-heart-svg{filter:drop-shadow(0 0 8px rgba(74,144,226,.8))}.pulsing-heart-root:disabled,.pulsing-heart-root[aria-disabled=true]{cursor:not-allowed;filter:grayscale(30%);opacity:.5;pointer-events:none}.pulsing-heart-root:disabled .heart-path,.pulsing-heart-root[aria-disabled=true] .heart-path{filter:drop-shadow(0 2px 6px rgba(74,144,226,.2))}.pulsing-heart-root:disabled .pulsing-heart-svg,.pulsing-heart-root[aria-disabled=true] .pulsing-heart-svg{animation:none}.pulsing-heart-root.processing{position:relative}.pulsing-heart-root.processing:after{animation:ph-loading-ring 2s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#4a90e299;bottom:-4px;content:"";left:-4px;pointer-events:none;position:absolute;right:-4px;top:-4px}@keyframes ph-loading-ring{0%{opacity:.8;transform:rotate(0deg)}50%{opacity:1}to{opacity:.8;transform:rotate(1turn)}}@media (max-width:480px){.pulsing-heart-root{min-height:48px;min-width:48px}.pulsing-heart-root:focus-visible{outline-offset:2px}}@media (hover:none) and (pointer:coarse){.pulsing-heart-root:hover{filter:none;transform:none}}@media (prefers-reduced-motion:reduce){.heart-tap,.pulsing-heart-root .pulsing-heart-svg,.pulsing-heart-root:after{animation:none!important}.heart-path,.pulsing-heart-root,.pulsing-heart-svg{transition:none!important}}.pulsing-heart-root:before{animation:heart-glow-idle 3s infinite;background:radial-gradient(circle,#6ba3f5 0,#4a90e2 80%,#0000 100%);border-radius:50%;content:"";filter:blur(24px);height:90%;left:50%;opacity:.7;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:background .3s,opacity .3s;width:90%;z-index:0}.pulsing-heart-root.listening:before{animation:heart-glow-listening 1.7s infinite;background:radial-gradient(circle,#7bb6fa 0,#4a90e2 80%,#0000 100%);opacity:.85}.pulsing-heart-root.speaking:before{animation:heart-glow-speaking 2.3s infinite;background:radial-gradient(circle,#4a90e2 0,#6ba3f5 80%,#0000 100%);opacity:.8}.pulsing-heart-root.processing:before{animation:heart-glow-processing 2.2s infinite;background:radial-gradient(circle,#4a90e2 0,#6ba3f5 80%,#0000 100%);opacity:.7}.pulsing-heart-root.error:before{animation:heart-glow-error 1.05s 3;background:radial-gradient(circle,#ff6b6b 0,#ffbaba 80%,#0000 100%);opacity:.8}@keyframes heart-glow-idle{0%,to{filter:blur(24px);opacity:.7}50%{filter:blur(32px);opacity:1}}@keyframes heart-glow-listening{0%,to{filter:blur(28px);opacity:.85}50%{filter:blur(40px);opacity:1}}@keyframes heart-glow-speaking{0%,to{filter:blur(24px);opacity:.8}50%{filter:blur(36px);opacity:1}}@keyframes heart-glow-processing{0%,to{filter:blur(20px);opacity:.7}50%{filter:blur(32px);opacity:.95}}@keyframes heart-glow-error{0%,to{filter:blur(20px);opacity:.8}50%{filter:blur(36px);opacity:1}}:root{--primary-blue:#3b82f6;--light-blue:#60a5fa;--dark-blue:#1d4ed8;--secondary-purple:#8b5cf6;--accent-teal:#06b6d4;--bg-primary:#f8fafc;--bg-secondary:#f1f5f9;--bg-tertiary:#e2e8f0;--text-primary:#334155;--text-secondary:#64748b;--text-muted:#94a3b8;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6;--font-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-secondary:"DM Sans",sans-serif;--text-xs:clamp(0.75rem,0.7rem + 0.25vw,0.875rem);--text-sm:clamp(0.875rem,0.8rem + 0.375vw,1rem);--text-base:clamp(1rem,0.9rem + 0.5vw,1.125rem);--text-lg:clamp(1.125rem,1rem + 0.625vw,1.25rem);--text-xl:clamp(1.25rem,1.1rem + 0.75vw,1.5rem);--text-2xl:clamp(1.5rem,1.3rem + 1vw,2rem);--text-3xl:clamp(1.875rem,1.6rem + 1.375vw,2.5rem);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-normal:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--shadow-2xl:0 25px 50px -12px #00000040;--border-subtle:1px solid #cbd5e199;--border-soft:1px solid #94a3b84d;--glass-bg:#ffffffd9;--glass-border:#fff3;--backdrop-blur:blur(20px);--border-radius:8px;--border-radius-md:12px;--border-radius-xl:20px;--border-radius-2xl:24px}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--main-bg-gradient);color:#334155;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);font-weight:400;line-height:1.6;overflow-x:hidden;text-rendering:optimizeLegibility}.voice-bg,body{margin:0;padding:0}.voice-bg{align-items:center;background:radial-gradient(circle at 20% 50%,#3b82f60d 0,#0000 50%),radial-gradient(circle at 80% 50%,#8b5cf60d 0,#0000 50%),linear-gradient(135deg,#f8fafc,#f1f5f9 50%,#e2e8f0);display:flex;justify-content:center;position:relative;width:100%}.voice-bg:before{background:radial-gradient(circle at 30% 20%,#3b82f608 0,#0000 60%),radial-gradient(circle at 70% 80%,#10b98108 0,#0000 60%)}.voice-bg:after,.voice-bg:before{bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.voice-bg:after{background-image:radial-gradient(circle at 25% 25%,#3b82f605 0,#0000 50%),radial-gradient(circle at 75% 75%,#8b5cf605 0,#0000 50%)}.voice-main-centered{background:var(--bg-page);max-width:100vw;min-height:100vh;padding:0;z-index:1}.voice-center,.voice-main-centered{align-items:center;display:flex;justify-content:center;position:relative;width:100%}.voice-center{animation:gentle-entrance .8s ease-out;background:#0000;flex-direction:column;margin:0;max-height:90vh;max-width:560px;min-height:640px;overflow-x:hidden;padding:2rem 2rem 3rem;padding:var(--space-8) var(--space-8) var(--space-12);text-align:center}.voice-main-centered:before{background:linear-gradient(90deg,#0000,#3b82f6 20%,#8b5cf6 50%,#06b6d4 80%,#0000);background:linear-gradient(90deg,#0000 0,var(--primary-blue) 20%,var(--secondary-purple) 50%,var(--accent-teal) 80%,#0000 100%);content:"";height:2px;left:0;left:50%;opacity:.6;position:absolute;right:0;top:0;transform:translateX(-50%);width:100vw;z-index:10}@keyframes gentle-entrance{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes container-breathing{0%,to{box-shadow:0 25px 50px -12px #00000040,inset 0 1px 0 #ffffff1a;box-shadow:var(--shadow-2xl),inset 0 1px 0 #ffffff1a}50%{box-shadow:0 25px 50px -12px #00000040,inset 0 1px 0 #ffffff26,0 0 40px #3b82f60d;box-shadow:var(--shadow-2xl),inset 0 1px 0 #ffffff26,0 0 40px #3b82f60d}}@media (min-width:769px){.voice-center{max-height:90vh;max-width:560px;min-height:640px}}.voice-status{word-wrap:break-word;color:#334155;color:var(--text-primary);font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(1rem,.9rem + .3vw,1.25rem);font-weight:500;letter-spacing:-.02em;line-height:1.4;margin-bottom:2rem;margin-bottom:var(--space-8);max-width:100%;opacity:.9;overflow-wrap:break-word;position:relative;text-align:center;text-transform:lowercase;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.voice-status:after{background:linear-gradient(90deg,#3b82f6,#8b5cf6);background:linear-gradient(90deg,var(--primary-blue),var(--secondary-purple));border-radius:1px;bottom:-4px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:width .25s cubic-bezier(.4,0,.2,1);transition:width var(--transition-normal);width:0}.voice-status.listening{color:#3b82f6;color:var(--primary-blue);transform:translateY(-2px)}.voice-status.listening:after,.voice-status.processing:after,.voice-status.speaking:after{width:60px}.voice-status.processing{color:#8b5cf6;color:var(--secondary-purple)}.voice-status.speaking{color:#06b6d4;color:var(--accent-teal)}.voice-status.error{color:#ef4444;color:var(--error);position:relative}.voice-heart-container{margin-bottom:2rem;margin-bottom:var(--space-8);position:relative}.voice-activity-indicator{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#3b82f60d;border:1px solid #3b82f61a;border-radius:var(--border-radius-lg);display:flex;flex-direction:column;gap:1rem;gap:var(--space-4);margin:1.5rem 0;margin:var(--space-6) 0;padding:1rem;padding:var(--space-4)}.vad-visualizer{align-items:end;background:#00000005;border:1px solid #3b82f61a;border-radius:12px;border-radius:var(--border-radius-md);display:flex;gap:2px;height:40px;padding:.5rem;padding:var(--space-2)}.vad-bar{animation:vad-pulse 1.5s ease-in-out infinite;background:linear-gradient(0deg,#3b82f6,#60a5fa);background:linear-gradient(to top,var(--primary-blue),var(--light-blue));border-radius:2px;transition:all .1s ease-out;width:3px}.vad-bar.active{background:linear-gradient(0deg,#06b6d4,#3b82f6);background:linear-gradient(to top,var(--accent-teal),var(--primary-blue));box-shadow:0 0 8px #06b6d466}@keyframes vad-pulse{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.1)}}.vad-status{color:#64748b;color:var(--text-secondary);font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);font-weight:500;text-align:center;transition:color .25s cubic-bezier(.4,0,.2,1);transition:color var(--transition-normal)}.vad-status:has(.active){color:#06b6d4;color:var(--accent-teal)}@media (max-width:768px){.voice-activity-indicator{margin:1rem 0;margin:var(--space-4) 0;padding:.75rem;padding:var(--space-3)}.vad-visualizer{gap:1px;height:30px}.vad-bar{width:2px}}.device-test-button{backdrop-filter:blur(20px);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--backdrop-blur);background:#ffffffd9;background:var(--glass-bg);border:1px solid #cbd5e199;border:var(--border-subtle);border-radius:var(--border-radius-lg);bottom:1.5rem;bottom:var(--space-6);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);color:#64748b;color:var(--text-secondary);cursor:pointer;font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);font-weight:500;padding:.75rem 1rem;padding:var(--space-3) var(--space-4);position:fixed;right:1.5rem;right:var(--space-6);transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal);z-index:1000}.device-test-button:hover{background:#3b82f61a;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl);color:#3b82f6;color:var(--primary-blue);transform:translateY(-1px)}.network-test-button{backdrop-filter:blur(20px);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--backdrop-blur);background:#ffffffd9;background:var(--glass-bg);border:1px solid #cbd5e199;border:var(--border-subtle);border-radius:var(--border-radius-lg);bottom:1.5rem;bottom:var(--space-6);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);color:#64748b;color:var(--text-secondary);cursor:pointer;font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);font-weight:500;padding:.75rem 1rem;padding:var(--space-3) var(--space-4);position:fixed;right:calc(1.5rem + 120px);right:calc(var(--space-6) + 120px);transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal);z-index:1000}.network-test-button:hover{background:#22c55e1a;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl);color:#10b981;color:var(--success);transform:translateY(-1px)}.network-test-modal-overlay{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;padding:var(--space-4);position:fixed;right:0;top:0;z-index:2000}.network-test-modal{animation:modal-entrance .3s ease-out;backdrop-filter:blur(20px);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--backdrop-blur);background:#ffffffd9;background:var(--glass-bg);border:1px solid #cbd5e199;border:var(--border-subtle);border-radius:24px;border-radius:var(--border-radius-2xl);box-shadow:0 25px 50px -12px #00000040;box-shadow:var(--shadow-2xl);max-height:80vh;max-width:500px;overflow-y:auto;width:100%}@keyframes modal-entrance{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.network-test-header{align-items:center;border-bottom:1px solid #22c55e1a;display:flex;justify-content:space-between;padding:1.5rem;padding:var(--space-6)}.network-test-header h3{color:#334155;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);font-size:clamp(1.25rem,1.1rem + .75vw,1.5rem);font-size:var(--text-xl);font-weight:600;margin:0}.close-button{background:none;border:none;border-radius:12px;border-radius:var(--border-radius-md);color:#94a3b8;color:var(--text-muted);cursor:pointer;font-size:clamp(1.5rem,1.3rem + 1vw,2rem);font-size:var(--text-2xl);line-height:1;padding:.5rem;padding:var(--space-2);transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.close-button:hover{background:#ef44441a;color:#ef4444;color:var(--error)}.network-test-content{padding:1.5rem;padding:var(--space-6)}.device-test-modal-overlay{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;padding:var(--space-4);position:fixed;right:0;top:0;z-index:2000}.device-test-modal{animation:modal-entrance .3s ease-out;backdrop-filter:blur(20px);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--backdrop-blur);background:#ffffffd9;background:var(--glass-bg);border:1px solid #cbd5e199;border:var(--border-subtle);border-radius:24px;border-radius:var(--border-radius-2xl);box-shadow:0 25px 50px -12px #00000040;box-shadow:var(--shadow-2xl);max-height:80vh;max-width:600px;overflow-y:auto;width:100%}.device-test-header{align-items:center;border-bottom:1px solid #3b82f61a;display:flex;justify-content:space-between;padding:1.5rem;padding:var(--space-6)}.device-test-header h3{color:#334155;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);font-size:clamp(1.25rem,1.1rem + .75vw,1.5rem);font-size:var(--text-xl);font-weight:600;margin:0}.device-test-content{padding:1.5rem;padding:var(--space-6)}.connection-quality{border-radius:var(--border-radius-sm);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);font-weight:600;padding:.25rem .5rem;padding:var(--space-1) var(--space-2)}.connection-quality.excellent{background:#22c55e1a;color:#10b981;color:var(--success)}.connection-quality.good{background:#3b82f61a;color:#3b82f6;color:var(--primary-blue)}.connection-quality.fair{background:#f59e0b1a;color:#f59e0b;color:var(--warning)}.connection-quality.poor{background:#ef44441a;color:#ef4444;color:var(--error)}.connection-quality.offline{background:#6b72801a;color:#94a3b8;color:var(--text-muted)}.connection-quality.online{background:#22c55e1a;color:#10b981;color:var(--success)}.test-section{margin-bottom:1.5rem;margin-bottom:var(--space-6)}.test-section:last-child{margin-bottom:0}.test-section h4{color:#334155;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);font-size:clamp(1.125rem,1rem + .625vw,1.25rem);font-size:var(--text-lg);font-weight:600;margin:0 0 .75rem;margin:0 0 var(--space-3) 0}.test-section p{color:#64748b;color:var(--text-secondary);font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);line-height:1.5;margin:.25rem 0;margin:var(--space-1) 0}.capability-list{display:flex;flex-direction:column;gap:.5rem;gap:var(--space-2)}.capability{align-items:center;background:#00000005;border:1px solid #3b82f61a;border-radius:12px;border-radius:var(--border-radius-md);display:flex;font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);justify-content:space-between;padding:.75rem;padding:var(--space-3);transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.capability.supported{background:#22c55e0d;border-color:#22c55e33;color:#10b981;color:var(--success)}.capability.unsupported{background:#ef44440d;border-color:#ef444433;color:#ef4444;color:var(--error)}.format-list{display:flex;flex-wrap:wrap;gap:.5rem;gap:var(--space-2)}.format-tag{background:#3b82f6;background:var(--primary-blue);border-radius:var(--border-radius-full);color:#fff;font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.75rem,.7rem + .25vw,.875rem);font-size:var(--text-xs);font-weight:500;padding:.25rem .75rem;padding:var(--space-1) var(--space-3)}.no-formats,.no-inputs{color:#94a3b8;color:var(--text-muted);font-style:italic}.audio-inputs-list{display:flex;flex-direction:column;gap:.5rem;gap:var(--space-2)}.audio-input{align-items:center;background:#00000005;border:1px solid #3b82f61a;border-radius:12px;border-radius:var(--border-radius-md);display:flex;justify-content:space-between;padding:.75rem;padding:var(--space-3)}.input-label{color:#334155;color:var(--text-primary);font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);font-weight:500}.input-id{background:#0000000d;border-radius:var(--border-radius-sm);color:#94a3b8;color:var(--text-muted);font-family:var(--font-mono);font-size:clamp(.75rem,.7rem + .25vw,.875rem);font-size:var(--text-xs);padding:.25rem .5rem;padding:var(--space-1) var(--space-2)}.test-summary{background:#3b82f60d;border:1px solid #3b82f61a;border-radius:var(--border-radius-lg);padding:1rem;padding:var(--space-4)}.test-summary p{margin:.5rem 0;margin:var(--space-2) 0}.compatible{color:#10b981;color:var(--success);font-weight:600}.incompatible{color:#ef4444;color:var(--error);font-weight:600}@media (max-width:768px){.device-test-modal{margin:1rem;margin:var(--space-4);max-height:90vh}.device-test-content,.device-test-header{padding:1rem;padding:var(--space-4)}.device-test-button{right:1rem;right:var(--space-4)}.device-test-button,.network-test-button{bottom:1rem;bottom:var(--space-4);font-size:clamp(.75rem,.7rem + .25vw,.875rem);font-size:var(--text-xs);padding:.5rem .75rem;padding:var(--space-2) var(--space-3)}.network-test-button{right:calc(1rem + 120px);right:calc(var(--space-4) + 120px)}}.voice-heart-btn{align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:flex;justify-content:center;outline:none;padding:0;position:relative;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.voice-heart-btn:focus-visible{outline:3px solid #3b82f6;outline:3px solid var(--primary-blue);outline-offset:8px}.voice-heart-btn:hover:not(:disabled){transform:translateY(-4px) scale(1.02)}.voice-heart-btn:disabled{cursor:not-allowed;opacity:.7;pointer-events:none}.voice-heart-btn:active:not(:disabled){transform:translateY(-2px) scale(.98)}.pulsing-heart{display:block;filter:drop-shadow(0 8px 32px rgba(59,130,246,.2));height:200px;transition:all .35s cubic-bezier(.4,0,.2,1);transition:all var(--transition-slow);width:200px}.pulsing-heart.idle{animation:pulse-gentle 3s ease-in-out infinite}.pulsing-heart.listening{animation:pulse-active 1.5s ease-in-out infinite;filter:drop-shadow(0 12px 40px rgba(59,130,246,.4))}.pulsing-heart.processing{animation:pulse-processing 2s ease-in-out infinite;filter:drop-shadow(0 12px 40px rgba(139,92,246,.4))}.pulsing-heart.speaking{animation:pulse-speaking 2.5s ease-in-out infinite;filter:drop-shadow(0 12px 40px rgba(6,182,212,.4))}.pulsing-heart.error{animation:pulse-error 1s ease-in-out 3;filter:drop-shadow(0 12px 40px rgba(239,68,68,.4))}@keyframes pulse-gentle{0%,to{filter:drop-shadow(0 8px 32px rgba(59,130,246,.15));transform:scale(1)}50%{filter:drop-shadow(0 12px 40px rgba(59,130,246,.25));transform:scale(1.05)}}@keyframes pulse-active{0%,to{filter:drop-shadow(0 12px 40px rgba(59,130,246,.3));transform:scale(1.02)}50%{filter:drop-shadow(0 16px 48px rgba(59,130,246,.5));transform:scale(1.08)}}@keyframes pulse-processing{0%,to{filter:drop-shadow(0 12px 40px rgba(139,92,246,.3));transform:scale(1) rotate(0deg)}25%{filter:drop-shadow(0 14px 44px rgba(139,92,246,.4));transform:scale(1.03) rotate(.5deg)}75%{filter:drop-shadow(0 14px 44px rgba(139,92,246,.4));transform:scale(1.03) rotate(-.5deg)}}@keyframes pulse-speaking{0%,to{filter:drop-shadow(0 12px 40px rgba(6,182,212,.3));transform:scale(1.01)}50%{filter:drop-shadow(0 14px 44px rgba(6,182,212,.4));transform:scale(1.04)}}@keyframes pulse-error{0%,to{filter:drop-shadow(0 8px 32px rgba(239,68,68,.3));transform:scale(1)}50%{filter:drop-shadow(0 12px 40px rgba(239,68,68,.5));transform:scale(1.03)}}.voice-ai-text{color:#334155;color:var(--text-primary);font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.875rem,.8rem + .2vw,1rem);line-height:1.6;margin-top:1.5rem;margin-top:var(--space-6);min-height:3rem;opacity:.9;outline:none;overflow-wrap:break-word;padding:1rem .75rem;padding:var(--space-4) var(--space-3);text-align:left;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal);width:100%;word-break:break-word}.ai-response-content{animation:fadeInUp .4s ease-out;display:flex;flex-direction:column;gap:1rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-paragraph{animation:paragraphFadeIn .3s ease-out;animation-fill-mode:both;color:#334155;color:var(--text-primary);display:block;font-weight:400;letter-spacing:.01em;line-height:1.7;margin:0 0 .5rem;padding:.5rem;text-align:left;text-transform:none}@keyframes paragraphFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.ai-paragraph:first-child{margin-top:0}.ai-paragraph:last-child{margin-bottom:0}.voice-ai-text::-webkit-scrollbar{width:4px}.voice-ai-text::-webkit-scrollbar-track{background:#0000}.voice-ai-text::-webkit-scrollbar-thumb{background:#94a3b8;background:var(--text-muted);border-radius:2px}.voice-ai-text::-webkit-scrollbar-thumb:hover{background:#64748b;background:var(--text-secondary)}.ai-loading{animation:gentle-pulse 2s ease-in-out infinite;color:#3b82f6;color:var(--primary-blue);font-size:clamp(.9rem,.85rem + .15vw,1.1rem);font-weight:500;letter-spacing:.1em}.ai-error{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ef44440d;border:1px solid #ef44441a;border-radius:12px;border-radius:var(--border-radius-md);color:#ef4444;color:var(--error);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);font-weight:400;line-height:1.5;margin:1rem 0;margin:var(--space-4) 0;padding:1rem 1.5rem;padding:var(--space-4) var(--space-6);text-align:center}@keyframes gentle-pulse{0%,to{opacity:.6}50%{opacity:1}}.bottom-mic-button{align-items:center;backdrop-filter:blur(20px);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--backdrop-blur);background:#ffffffd9;background:var(--glass-bg);border:1px solid #cbd5e199;border:var(--border-subtle);border-radius:50%;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,inset 0 1px 0 #fff3;box-shadow:var(--shadow-lg),inset 0 1px 0 #fff3;cursor:pointer;display:flex;height:88px;justify-content:center;margin:2.5rem auto 0;margin:var(--space-10) auto 0;outline:none;overflow:hidden;padding:0;position:relative;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal);width:88px;z-index:2}.bottom-mic-button:before{background:linear-gradient(135deg,#3b82f61a,#8b5cf60d 50%,#06b6d41a);border-radius:inherit;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .25s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-normal)}.bottom-mic-button:hover:before{opacity:1}.bottom-mic-button:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,inset 0 1px 0 #ffffff4d;box-shadow:var(--shadow-xl),inset 0 1px 0 #ffffff4d;transform:translateY(-2px)}.bottom-mic-button:focus-visible{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 0 3px #3b82f64d,0 0 0 6px #3b82f61a;box-shadow:var(--shadow-xl),0 0 0 3px #3b82f64d,0 0 0 6px #3b82f61a;outline:none}.bottom-mic-button:active{animation:button-tap .2s ease-out;transform:translateY(0)}@keyframes button-tap{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}.bottom-mic-button.active{animation:mic-glow 2s ease-in-out infinite;background:linear-gradient(135deg,#3b82f6,#60a5fa);background:linear-gradient(135deg,var(--primary-blue) 0,var(--light-blue) 100%);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 0 4px #3b82f633;box-shadow:var(--shadow-xl),0 0 0 4px #3b82f633}@keyframes mic-glow{0%,to{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 0 4px #3b82f633;box-shadow:var(--shadow-xl),0 0 0 4px #3b82f633}50%{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 0 8px #3b82f64d;box-shadow:var(--shadow-xl),0 0 0 8px #3b82f64d}}.bottom-mic-button svg{height:40px;position:relative;width:40px;z-index:1}.heart-mic-glow{height:2rem;height:var(--space-8);margin:0 auto;pointer-events:none;position:relative;width:2px;z-index:1}.heart-mic-glow:before{background:linear-gradient(180deg,#3b82f6,#8b5cf6 50%,#0000);background:linear-gradient(180deg,var(--primary-blue) 0,var(--secondary-purple) 50%,#0000 100%);border-radius:2px;content:"";display:block;filter:blur(1px);height:100%;left:50%;opacity:.4;position:absolute;top:0;transform:translateX(-50%);width:2px}.voice-center .error-card{margin:1rem 0;margin:var(--space-4) 0;max-width:100%}.voice-center .error-card,.voice-center .error-card__content{overflow:visible!important}.voice-center .error-card__message{max-width:100%;overflow:visible!important}.voice-center{overflow-y:auto}.voice-center.has-error{overflow-y:visible}.gentle-modal-backdrop{align-items:center;animation:fadeIn .3s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0006;display:flex;inset:0;justify-content:center;padding:1rem;padding:var(--space-4);position:fixed;z-index:1000}.gentle-modal{animation:slideIn .3s ease-out;backdrop-filter:blur(20px);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--backdrop-blur);background:#ffffffd9;background:var(--glass-bg);border:1px solid #cbd5e199;border:var(--border-subtle);border-radius:24px;box-shadow:0 25px 50px -12px #00000040,inset 0 1px 0 #ffffff1a;box-shadow:var(--shadow-2xl),inset 0 1px 0 #ffffff1a;max-width:90vw;min-width:320px;padding:2rem;padding:var(--space-8);position:relative;text-align:center}.gentle-modal-title{color:#334155;color:var(--text-primary);font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(1.25rem,1.1rem + .75vw,1.5rem);font-size:var(--text-xl);font-weight:600;margin-bottom:1rem;margin-bottom:var(--space-4);text-transform:lowercase}.gentle-modal-message{color:#64748b;color:var(--text-secondary);font-size:clamp(1rem,.9rem + .5vw,1.125rem);font-size:var(--text-base);line-height:1.6;margin-bottom:2rem;margin-bottom:var(--space-8);text-transform:lowercase}.gentle-modal-actions{display:flex;flex-wrap:wrap;gap:.75rem;gap:var(--space-3);justify-content:center}.gentle-modal-btn{align-items:center;border:none;border-radius:12px;border-radius:var(--border-radius-md);cursor:pointer;display:inline-flex;font-family:DM Sans,sans-serif;font-family:var(--font-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);font-weight:500;gap:.25rem;justify-content:center;outline:none;padding:.75rem 1.5rem;padding:var(--space-3) var(--space-6);text-align:center;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.gentle-modal-btn.primary-action{background:linear-gradient(135deg,#3b82f6,#60a5fa);background:linear-gradient(135deg,var(--primary-blue) 0,var(--light-blue) 100%);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.gentle-modal-btn.primary-action:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-1px)}.gentle-modal-btn.primary-action:focus-visible{outline:3px solid #3b82f680;outline-offset:2px}.gentle-modal-btn.secondary-action{background:#f1f5f9;background:var(--bg-secondary);border:1px solid #94a3b84d;border:var(--border-soft);color:#334155;color:var(--text-primary)}.gentle-modal-btn.secondary-action:hover{background:#e2e8f0;background:var(--bg-tertiary);transform:translateY(-1px)}.mic-spinner{animation:spin 1s linear infinite;border:2px solid #fff3;border-radius:50%;border-top-color:#fffc;height:28px;margin:-14px 0 0 -14px;top:50%;width:28px;z-index:3}.mic-spinner,.mic-tooltip{left:50%;position:absolute}.mic-tooltip{animation:tooltip-appear .2s ease-out;background:#334155;background:var(--text-primary);border-radius:8px;border-radius:var(--border-radius);bottom:calc(100% + 12px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);color:#fff;font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);font-weight:500;opacity:0;padding:.5rem 1rem;padding:var(--space-2) var(--space-4);pointer-events:none;transform:translateX(-50%);transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast);white-space:nowrap;z-index:10}@keyframes tooltip-appear{0%{opacity:0;transform:translateX(-50%) translateY(-8px) scale(.9)}to{opacity:1;transform:translateX(-50%) translateY(-4px) scale(1)}}.bottom-mic-button:focus .mic-tooltip,.bottom-mic-button:hover .mic-tooltip{opacity:1;transform:translateX(-50%) translateY(-4px)}.mic-tooltip:after{border-color:#334155 #0000 #0000;border-color:var(--text-primary) #0000 #0000 #0000;border-style:solid;border-width:6px 6px 0;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}@media (max-width:768px){.voice-bg{background:var(--main-bg-gradient);min-height:100vh;width:100vw}.voice-main-centered{min-height:100vh;padding:0;width:100vw}.voice-center{align-items:center!important;animation:gentle-entrance .8s ease-out!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#0000!important;border:none!important;border-radius:0!important;box-shadow:none!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:center!important;margin:0!important;max-height:none!important;max-width:100%!important;min-height:100vh!important;overflow:visible!important;padding:2rem 1rem!important;padding:var(--space-8) var(--space-4)!important}.voice-status{font-size:clamp(.9rem,.85rem + .15vw,1.1rem);margin-bottom:1.5rem;margin-bottom:var(--space-6)}.pulsing-heart{height:160px;width:160px}.bottom-mic-button{height:72px;margin-top:2rem;margin-top:var(--space-8);width:72px}.bottom-mic-button svg{height:32px;width:32px}.voice-ai-text{max-height:6rem;padding:.75rem .5rem;padding:var(--space-3) var(--space-2)}.ai-paragraph{font-size:clamp(.8rem,.75rem + .1vw,.9rem)}}@media (max-width:480px){.voice-center{border-radius:0!important;margin:0!important;max-height:none!important;min-height:100vh!important;padding:1.5rem .75rem!important;padding:var(--space-6) var(--space-3)!important}.voice-status{font-size:clamp(.8rem,.75rem + .1vw,.95rem);margin-bottom:1.25rem;margin-bottom:var(--space-5)}.pulsing-heart{height:140px;width:140px}.bottom-mic-button{height:64px;width:64px}.bottom-mic-button,.voice-heart-btn{min-height:44px;min-width:44px}.bottom-mic-button{touch-action:manipulation}.voice-ai-text{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.pulsing-heart{transform:translateZ(0);will-change:transform}}@media (prefers-reduced-motion:reduce){.ai-loading,.bottom-mic-button.active,.mic-spinner,.pulsing-heart,.pulsing-heart.error,.pulsing-heart.idle,.pulsing-heart.listening,.pulsing-heart.processing,.pulsing-heart.speaking{animation:none!important}.voice-center{animation:gentle-entrance-reduced .3s ease-out!important}.button-tap,.container-breathing,.tooltip-appear{animation:none!important}*{transition:none!important}}@keyframes gentle-entrance-reduced{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes slideOutLeft{0%{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes slideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.gentle-modal-btn,.gentle-modal-message,.gentle-modal-title,.voice-status,button,label,select{text-transform:lowercase}.voice-bg{background:var(--bg-page)!important;color:#1a365d!important}@media (max-width:768px){.voice-bg{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent}.voice-center{font-size:16px}.bottom-mic-button,.voice-heart-btn,button{-webkit-tap-highlight-color:rgba(59,130,246,.1);touch-action:manipulation}.voice-activity-indicator{transform:translateZ(0)}.pulsing-heart{filter:drop-shadow(0 4px 16px rgba(59,130,246,.15))}.voice-center{backface-visibility:hidden;will-change:auto}.mobile-guidance{background:#3b82f61a;border:1px solid #3b82f633;border-radius:12px;border-radius:var(--border-radius-md);margin:1rem 0;margin:var(--space-4) 0;padding:.75rem 1rem;padding:var(--space-3) var(--space-4);text-align:center}.mobile-guidance-text{color:#64748b;color:var(--text-secondary);font-size:clamp(.875rem,.8rem + .375vw,1rem);font-size:var(--text-sm);line-height:1.4;margin:0}}@supports (-webkit-touch-callout:none){.voice-bg{background-attachment:scroll}.voice-center{transform:translateZ(0)}audio{-webkit-playsinline:true;playsinline:true}}@media screen and (-webkit-min-device-pixel-ratio:0) and (-webkit-min-device-pixel-ratio:0),screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution:0.001dpcm){.voice-center{transform:translateZ(0)}}.metrics-cards{background:#fff;border:1px solid var(--border-light);border-radius:var(--border-radius-large);box-shadow:var(--shadow-lg);margin-bottom:var(--space-6);padding:var(--space-6)}.metrics-header{margin-bottom:var(--space-6);text-align:center}.metrics-title{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin-bottom:var(--space-3)}.metrics-subtitle{color:var(--text-secondary);font-size:1rem;font-weight:400;line-height:1.5;margin:0 auto;max-width:500px}.metrics-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:var(--space-6)}.metric-card{background:#fff;border:1px solid #dbe6f3;border-radius:12px;box-shadow:0 2px 8px #3c5a8214;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.metric-card:before{background:linear-gradient(90deg,#3a5a8c,#5a8fd6);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.metric-card:hover{border-color:#7bb6fa;box-shadow:0 8px 24px #3c5a821f;transform:translateY(-2px)}.metric-card:hover:before{opacity:1}.metric-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.metric-icon{border-radius:12px;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;width:48px}.metric-icon,.metric-trend{align-items:center;display:flex}.metric-trend{font-size:.875rem;font-weight:500;gap:.25rem}.trend-icon{font-size:1rem}.trend-value{font-weight:600}.metric-content{display:flex;flex-direction:column;gap:.5rem}.metric-value{color:#1a365d;font-size:2rem;font-weight:700;line-height:1.2;margin:0}.metric-title{color:#3a5a8c;font-size:1rem;font-weight:600;line-height:1.3;margin:0}.metric-subtitle{color:#6b7a90;font-size:.875rem;font-weight:400;line-height:1.4;margin:0}@media (max-width:1024px){.metrics-grid{gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.metric-card{padding:1.25rem}.metric-value{font-size:1.75rem}}@media (max-width:768px){.metrics-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.metric-card{padding:1rem}.metric-icon{font-size:1.25rem;height:40px;width:40px}.metric-value{font-size:1.5rem}.metric-title{font-size:.9rem}.metric-subtitle{font-size:.8rem}}@media (max-width:480px){.metrics-grid{gap:.75rem;grid-template-columns:1fr}.metric-card{padding:.875rem}.metric-header{margin-bottom:.75rem}.metric-icon{font-size:1.125rem;height:36px;width:36px}.metric-value{font-size:1.375rem}.metric-title{font-size:.85rem}.metric-subtitle{font-size:.75rem}}@media (prefers-contrast:high){.metric-card{background:#fff;border:2px solid #000}.metric-card:hover{border-color:#000;box-shadow:0 4px 12px #0003}.metric-value{color:#000}.metric-title{color:#333}.metric-subtitle{color:#666}}@media (prefers-reduced-motion:reduce){.metric-card{transition:none}.metric-card:hover{transform:none}}@media print{.metric-card{background:#fff;border:1px solid #000;box-shadow:none;break-inside:avoid;page-break-inside:avoid}.metric-card:hover{box-shadow:none;transform:none}.metric-value{color:#000}.metric-title{color:#333}.metric-subtitle{color:#666}}.metric-card{background:#fff!important;border-color:#dbe6f3!important}.metric-card,.metric-value{color:#1a365d!important}.metric-title{color:#3a5a8c!important}.metric-subtitle{color:#6b7a90!important}.analytics-charts{background:#fff;border:1px solid var(--border-light);border-radius:var(--border-radius-large);box-shadow:var(--shadow-lg);overflow:hidden}.chart-tabs{background:#f8fbff;border-bottom:1px solid #dbe6f3;display:flex;padding:0 1rem}.chart-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7a90;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:1rem 1.5rem;position:relative;transition:all .2s ease}.chart-tab:hover{background:#7bb6fa1a;color:#3a5a8c}.chart-tab.active{background:#fff;border-bottom-color:#3a5a8c;color:#3a5a8c}.tab-icon{font-size:1.125rem}.tab-label{font-weight:600}.chart-content{padding:2rem}.chart-section{margin-bottom:2rem}.chart-section:last-child{margin-bottom:0}.chart-title{color:#1a365d;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.charts-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.chart-container{background:#f8fbff;border:1px solid #dbe6f3;border-radius:8px;padding:1.5rem}.chart-container h4{color:#3a5a8c;font-size:1.125rem;font-weight:600;margin-bottom:1rem;text-align:center}@media (max-width:1024px){.charts-grid{gap:1.5rem;grid-template-columns:1fr}.chart-content{padding:1.5rem}.chart-container{padding:1.25rem}}@media (max-width:768px){.chart-tabs{flex-wrap:wrap;padding:0 .75rem}.chart-tab{flex:1 1;font-size:.8rem;justify-content:center;min-width:120px;padding:.75rem 1rem}.chart-content{padding:1rem}.chart-title{font-size:1.25rem;margin-bottom:1rem}.chart-container{padding:1rem}.chart-container h4{font-size:1rem}}@media (max-width:480px){.chart-tabs{padding:0 .5rem}.chart-tab{font-size:.75rem;min-width:100px;padding:.5rem .75rem}.tab-icon{font-size:1rem}.chart-content{padding:.75rem}.chart-title{font-size:1.125rem}.chart-container{padding:.75rem}.chart-container h4{font-size:.9rem}}@media (prefers-contrast:high){.analytics-charts{background:#fff;border:2px solid #000}.chart-tabs{background:#f0f0f0;border-bottom-color:#000}.chart-tab.active{background:#fff;border-bottom-color:#000;color:#000}.chart-container{background:#f8f8f8;border-color:#000}.chart-title{color:#000}.chart-container h4{color:#333}}@media (prefers-reduced-motion:reduce){.chart-tab{transition:none}}@media print{.analytics-charts{background:#fff;border:1px solid #000;box-shadow:none}.chart-tabs{display:none}.chart-content{padding:0}.chart-title{color:#000}.chart-container{background:#fff;border-color:#000}.chart-container h4{color:#333}}.analytics-charts{background:#fff!important;border-color:#dbe6f3!important}.chart-tabs{background:#f8fbff!important;border-bottom-color:#dbe6f3!important}.chart-tab{color:#6b7a90!important}.chart-tab.active{background:#fff!important;border-bottom-color:#3a5a8c!important;color:#3a5a8c!important}.chart-container{background:#f8fbff!important;border-color:#dbe6f3!important}.chart-title{color:#1a365d!important}.chart-container h4{color:#3a5a8c!important}.admin-dashboard{align-items:center;background:var(--bg-page);box-sizing:border-box;display:flex;flex-direction:column;font-family:var(--font-family);justify-content:flex-start;min-height:100vh;padding:var(--space-5);width:100%}.admin-header{margin-bottom:var(--space-6);max-width:800px;text-align:center;width:100%}.admin-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3a5a8c,#5a8fd6);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:var(--space-3)}.admin-subtitle{color:var(--text-secondary);font-size:1.1rem;font-weight:400;line-height:1.6;margin:0 auto;max-width:600px}.admin-loading{align-items:center;background:#0000;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.admin-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #6b9bd733;border-radius:50%;border-top:4px solid var(--light-blue);height:48px;margin-bottom:var(--space-4);width:48px}.admin-loading p{color:var(--text-muted);font-size:1rem;margin:0;text-transform:lowercase}.admin-error{align-items:center;background:#0000;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.admin-error .error-icon{font-size:3rem;margin-bottom:var(--space-4)}.admin-error h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:var(--space-3);text-transform:lowercase}.admin-error p{color:var(--text-muted);font-size:1rem;line-height:1.5;margin-bottom:var(--space-4);max-width:400px;text-transform:lowercase}.admin-content{display:flex;flex-direction:column;gap:var(--space-6);max-width:1200px;width:100%}@media (max-width:1024px){.admin-dashboard{padding:var(--space-4)}.admin-title{font-size:2rem}.admin-subtitle{font-size:1rem}}@media (max-width:768px){.admin-dashboard{padding:var(--space-3)}.admin-title{font-size:1.75rem}.admin-subtitle{font-size:.9rem}.admin-content{gap:var(--space-4)}}@media (max-width:480px){.admin-dashboard{padding:var(--space-2)}.admin-title{font-size:1.5rem}.admin-subtitle{font-size:.85rem}.admin-content{gap:var(--space-3)}}@media (prefers-contrast:high){.admin-dashboard{background:#fff}.admin-title{-webkit-text-fill-color:initial;background:none;color:#000}.admin-subtitle{color:#333}}@media (prefers-reduced-motion:reduce){.admin-loading .loading-spinner{animation:none}}@media print{.admin-dashboard{background:#fff;padding:0}.admin-title{-webkit-text-fill-color:initial;background:none;color:#000}.admin-subtitle{color:#333}}:root{--primary-blue:#3a5a8c;--light-blue:#7bb6fa;--medium-blue:#5a8fd6;--text-gray:#6b7a90;--light-gray:#8ca0b8;--bg-light:#f8fbff;--bg-gradient-start:#e3edf7;--bg-gradient-end:#f7fafd;--border-light:#dbe6f3;--shadow-light:#3c5a8214;--shadow-medium:#3c5a821f;--transition-fast:0.2s ease;--transition-medium:0.3s cubic-bezier(0.4,0,0.2,1);--font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--success-green:#4caf50;--warning-orange:#ff9800;--error-red:#f44336;--info-blue:#2196f3}.subscription-layout{background:#eaf2fa;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-family);min-height:100vh}.subscription-main{flex:1 1;padding:2rem;position:relative}.main-content-wrapper,.subscription-main{align-items:center;display:flex;justify-content:center;margin-left:280px}.main-content-wrapper{min-height:100vh;width:calc(100% - 280px)}@media (max-width:768px){.main-content-wrapper{margin-left:0;width:100%}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.subscription-header{margin-bottom:2rem;text-align:center}.subscription-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3a5a8c,#5a8fd6);background:linear-gradient(135deg,var(--primary-blue) 0,var(--medium-blue) 100%);-webkit-background-clip:text;background-clip:text;color:#3a5a8c;color:var(--primary-blue);font-size:2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem}.subscription-subtitle{color:#6b7a90;color:var(--text-gray);font-size:1rem;margin:0;opacity:.8}.subscription-status-banner{align-items:center;background:#fff;border:3.5px solid #dbe6f3;border:3.5px solid var(--border-light);border-radius:var(--border-radius-large);box-shadow:0 8px 40px #3c5a821f,0 3px 12px #3c5a8214;box-shadow:0 8px 40px var(--shadow-medium),0 3px 12px #3c5a8214;display:flex;flex-direction:column;justify-content:center;margin:0 auto 1.5rem;max-width:520px;padding:2.5rem 2rem;text-align:center;transition:all .2s ease;transition:all var(--transition-fast);width:100%}.subscription-status-banner:hover{box-shadow:#3c5a8214;box-shadow:var(--shadow-light);transform:translateY(-1px)}.subscription-status-banner h3{color:#3a5a8c;color:var(--primary-blue);font-size:1.25rem;font-weight:600;margin:0 0 .75rem;text-align:center;width:100%}.subscription-status-banner p{color:#6b7a90;color:var(--text-gray);font-size:1rem;line-height:1.5;margin:0 0 1rem;text-align:center;width:100%}.subscription-status-banner.active,.subscription-status-banner.canceled,.subscription-status-banner.inactive,.subscription-status-banner.past-due,.subscription-status-banner.trial{background:#fff;border-color:#dbe6f3;border-color:var(--border-light);color:inherit}.trial-banner{align-items:center;background:linear-gradient(135deg,#fffbe6,#fff8dc);border:1px solid #ffe58f;border-radius:12px;color:#ad6800;display:flex;flex-direction:column;font-size:.9rem;justify-content:center;margin-bottom:1.5rem;padding:1rem;text-align:center;width:100%}.trial-banner a{color:#3a5a8c;color:var(--primary-blue);font-weight:600;text-decoration:none;transition:color .2s ease;transition:color var(--transition-fast)}.trial-banner a:hover{color:#5a8fd6;color:var(--medium-blue);text-decoration:underline}.subscription-loading{align-items:center;color:#6b7a90;color:var(--text-gray);display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.subscription-spinner{animation:spin 1s linear infinite;border:3px solid #7bb6fa33;border-radius:50%;border-top-color:#7bb6fa;border-top:3px solid var(--light-blue);height:40px;margin-bottom:1rem;width:40px}.subscription-loading-text{color:#6b7a90;color:var(--text-gray);font-size:1rem}.subscription-waiting{background:#fffbe680;border:1px solid #ffe58f4d;border-radius:var(--border-radius);color:#ad6800;font-size:.9rem;line-height:1.5;margin-top:2rem;padding:1rem;text-align:center}@media (max-width:1024px){.subscription-main{margin-left:96px;padding:1.5rem}.subscription-container{padding:2rem}}@media (max-width:768px){.subscription-layout{flex-direction:column}.subscription-main{margin-left:0;padding:1rem}.subscription-container{border-radius:12px;padding:1.5rem}.subscription-title{font-size:1.75rem}.subscription-button{min-width:auto;width:100%}}@media (max-width:480px){.subscription-main{padding:.75rem}.subscription-container{padding:1.25rem}.subscription-title{font-size:1.5rem}.subscription-status-banner{padding:1.25rem}}@media (prefers-contrast:high){.subscription-container{border:2px solid #3a5a8c;border:2px solid var(--primary-blue)}.subscription-status-banner{border:2px solid #dbe6f3;border:2px solid var(--border-light)}.subscription-button{border:2px solid #3a5a8c;border:2px solid var(--primary-blue)}}@media (prefers-reduced-motion:reduce){.subscription-container{animation:none}.subscription-button:hover,.subscription-status-banner:hover{transform:none}.subscription-spinner{animation:none}}@media print{.subscription-layout{background:#fff;height:auto}.subscription-container{background:#fff;border:1px solid #ccc;box-shadow:none}.subscription-button{display:none}}.highlight-banner{background:linear-gradient(90deg,#e3edf7,#f7fafd);border:1.5px solid #b3d4fc;box-shadow:none!important;margin-top:2rem}.app-banner--warning .app-banner__button{background:#3a5a8c;background:var(--primary-blue);border-color:#3a5a8c;border-color:var(--primary-blue);color:#fff}.app-banner--warning .app-banner__button:hover{background:#5a8fd6;background:var(--medium-blue);border-color:#5a8fd6;border-color:var(--medium-blue)}.premium-page{align-items:center;background:#eaf2fa;display:flex;justify-content:center;min-height:100vh;position:relative}.main-content-wrapper .premium-page{align-items:center!important;justify-content:center!important;margin:0!important;min-height:100vh!important;padding:0!important;width:100%!important}.main-content-wrapper:has(.premium-page){align-items:center!important;justify-content:center!important;min-height:100vh!important;padding:0!important}.app-banner--page-level{margin:0 auto!important}.app-banner--page-level,.premium-page .app-banner{align-items:center!important;display:flex!important;flex-direction:column!important;justify-content:center!important;max-width:600px!important;position:relative!important;width:90%!important}.premium-page .app-banner{background:#fff!important;border:1.5px solid #dbe6f3!important;box-shadow:0 8px 40px #3c5a821f!important;gap:1.5rem!important;margin:0!important;padding:2rem 2.5rem!important;text-align:center!important}.premium-page .app-banner .app-banner__content{align-items:center!important;animation:none!important;position:relative!important;text-align:center!important;transform:none!important;transition:none!important;width:100%!important}.premium-page .app-banner .app-banner__title{font-size:1.3rem!important;margin:0!important;text-align:center!important}.premium-page .app-banner .app-banner__text{font-size:1rem!important;margin:0!important;text-align:center!important}.premium-page .app-banner .app-banner__actions{animation:none!important;justify-content:center!important;position:relative!important;transform:none!important;transition:none!important;width:100%!important}.premium-page .app-banner.app-banner--no-icon,.premium-page .app-banner.app-banner--no-icon .app-banner__content{align-items:center!important;display:flex!important;flex-direction:column!important;justify-content:center!important;text-align:center!important}.premium-page .app-banner.app-banner--no-icon .app-banner__content{width:100%!important}@media (max-width:768px){.premium-page .app-banner{gap:1rem!important;padding:1.5rem!important}.premium-page .app-banner .app-banner__title{font-size:1.1rem!important}.premium-page .app-banner .app-banner__text{font-size:.9rem!important}}@media (max-width:480px){.premium-page .app-banner{gap:.75rem!important;padding:1.25rem!important}.premium-page .app-banner .app-banner__title{font-size:1rem!important}.premium-page .app-banner .app-banner__text{font-size:.85rem!important}}.user-menu-container .logout-button:disabled~* .app-banner,.user-menu-container .logout-button:disabled~.app-banner,body:has(.logout-button:disabled) .app-banner{animation:none!important}body.logging-out .app-banner{animation:none!important}.subscription-button:active,.subscription-button:focus,.subscription-button:hover{transform:none!important;transition:none!important}.premium-page .app-banner .subscription-button:active~*,.premium-page .app-banner .subscription-button:focus~*,.premium-page .app-banner .subscription-button:hover~*{animation:none!important;transition:none!important}.premium-page .app-banner .subscription-button{min-height:44px!important;min-width:200px!important;transform:none!important;transition:background-color .2s ease!important}.premium-page .app-banner .subscription-button:disabled{cursor:not-allowed!important;opacity:.7!important;transform:none!important;transition:none!important}.premium-page .app-banner,.premium-page .app-banner *,.premium-page .app-banner :after,.premium-page .app-banner :before{animation:none!important;transform:none!important;transition:none!important}.premium-page .app-banner .app-card-action,.premium-page .app-banner .app-card-action:active,.premium-page .app-banner .app-card-action:focus,.premium-page .app-banner .app-card-action:hover{transform:none!important;transition:none!important}.premium-page .app-banner .app-banner__button:active,.premium-page .app-banner .app-banner__button:focus,.premium-page .app-banner .app-banner__button:hover{transform:none!important;transition:background-color .2s ease!important}.exit-thankyou-bg{align-items:center;background:radial-gradient(circle at 60% 20%,#e3f0fa 0,#4a90e2 100%);bottom:0;display:flex;font-family:Inter,Arial,sans-serif;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;transition:opacity .6s,transform .6s;width:100vw;z-index:2000}.exit-fade-in{animation:thankyou-fade-in .8s cubic-bezier(.4,0,.2,1);opacity:1}.exit-fade-out{animation:thankyou-fade-out 1s cubic-bezier(.4,0,.2,1);opacity:0;pointer-events:none}@keyframes thankyou-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes thankyou-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(24px)}}.exit-thankyou-card{align-items:center;background:#ffffffd9;border-radius:24px;box-shadow:0 8px 32px #4a90e221;display:flex;flex-direction:column;max-width:95vw;min-width:340px;outline:none;padding:56px 44px 40px;transition:box-shadow .2s}.exit-thankyou-card:focus-visible{box-shadow:0 0 0 3px #4a90e2,0 8px 32px #4a90e221}.exit-thankyou-heart{align-items:center;animation:floating-heart 3s ease-in-out infinite;display:flex;justify-content:center;margin-bottom:28px;will-change:transform}@keyframes floating-heart{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.exit-thankyou-title{animation:fadeUp .6s cubic-bezier(.4,0,.2,1) .15s forwards;color:#4a90e2;font-size:28px;font-weight:700;letter-spacing:.01em;line-height:1.2;margin-bottom:16px;opacity:0;transform:translateY(12px)}.exit-thankyou-support{animation:fadeUp .6s cubic-bezier(.4,0,.2,1) .35s forwards;color:#2c3e50;font-size:18px;line-height:1.5;margin-bottom:36px;opacity:0}.exit-thankyou-support p{animation:fadeUp .5s cubic-bezier(.4,0,.2,1) forwards;opacity:0;transform:translateY(8px)}.exit-thankyou-support p:first-child{animation-delay:.45s}.exit-thankyou-support p:nth-child(2){animation-delay:.65s}.exit-thankyou-support p:nth-child(3){animation-delay:.85s}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.exit-thankyou-progress{background:#4a90e21a;border-radius:2px;height:4px;margin-bottom:18px;margin-top:-12px;opacity:.85;overflow:hidden;width:100%}.exit-thankyou-progress-bar{background:linear-gradient(90deg,#4a90e2,#6ba3f5);border-radius:2px;height:100%;transition:width .3s linear;will-change:width}.exit-thankyou-continue{background:linear-gradient(135deg,#4a90e2,#6ba3f5);border:none;border-radius:12px;box-shadow:0 2px 8px #4a90e221;color:#fff;cursor:pointer;font-size:18px;font-weight:600;margin-top:8px;outline:none;padding:.8em 2.4em;transition:background .2s,box-shadow .2s,transform .2s,color .2s;will-change:transform,box-shadow}.exit-thankyou-continue:focus-visible,.exit-thankyou-continue:hover{background:linear-gradient(135deg,#6ba3f5,#4a90e2);box-shadow:0 6px 24px #4a90e22e;color:#e3f0fa;outline:2px solid #4a90e2;transform:scale(1.05) translateY(-2px)}.exit-thankyou-continue:active{background:#4a90e2;transform:scale(.98)}.exit-thankyou-loading{align-items:center;animation:fadeInLoading .4s;background:#ffffffb3;display:flex;inset:0;justify-content:center;opacity:1;position:absolute;z-index:10}@keyframes fadeInLoading{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.exit-fade-in,.exit-fade-out,.exit-thankyou-continue,.exit-thankyou-heart,.exit-thankyou-support,.exit-thankyou-support p,.exit-thankyou-title{animation:none!important;transition:none!important}.exit-thankyou-heart,.exit-thankyou-support,.exit-thankyou-support p,.exit-thankyou-title{transform:none!important}}@media (max-width:600px){.exit-thankyou-card{min-width:0;padding:28px 4vw 18px}.exit-thankyou-title{font-size:20px}.exit-thankyou-support{font-size:15px;margin-bottom:24px}.exit-thankyou-heart svg{height:40px;width:40px}.exit-thankyou-continue{font-size:15px;padding:.6em 1.5em}}.dashboard-container{background-color:var(--bg-page);display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;transition:margin-left var(--transition-medium)}.dashboard-container.no-transition{transition:none}.chat-container{padding:var(--space-3) var(--space-5)}.chat-container,.content-container{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;margin:0 auto;width:100%}.content-container{max-width:var(--container-max);padding:var(--space-4) var(--space-5)}.content-container.narrow{max-width:var(--container-narrow)}.content-container.wide{max-width:var(--container-wide)}.history-container,.insights-container{max-width:var(--container-wide)}.history-container,.insights-container,.options-container{margin:0 auto;padding:var(--space-4) var(--space-5);width:100%}.options-container{max-width:var(--container-medium)}.profile-container{margin:0 auto;max-width:var(--container-narrow);padding:var(--space-4) var(--space-5);width:100%}.support-container{background:var(--bg-white);flex-direction:column;justify-content:flex-start}.exit-container,.support-container{align-items:center;display:flex;margin-left:0!important;min-height:100vh;padding:var(--space-5) var(--space-3)}.exit-container{background:var(--main-bg-gradient);justify-content:center}@media (max-width:1024px){.dashboard-container{margin-left:96px}.chat-container,.content-container,.history-container,.insights-container{padding:var(--space-2) var(--space-3)}}@media (max-width:768px){.dashboard-container{margin-left:0}.chat-container,.content-container,.history-container,.insights-container,.options-container,.profile-container{max-width:100%;padding:var(--space-3) var(--space-4)}}@media (max-width:480px){.dashboard-container{margin-left:0}.chat-container,.content-container,.history-container,.insights-container,.options-container,.profile-container{padding:var(--space-3) var(--space-2)}.exit-container,.support-container{padding:var(--space-5)}}.loading-container{align-items:center;color:var(--text-gray);display:flex;font-size:1.1rem;justify-content:center;min-height:400px}.loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--bg-gradient-start);border:3px solid var(--bg-gradient-start);border-radius:50%;border-top-color:var(--light-blue);height:32px;margin-right:var(--space-3);width:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-container{align-items:center;color:var(--error-red);display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:var(--space-5);text-align:center}.error-icon{font-size:3rem;margin-bottom:var(--space-3)}.error-message{font-size:1.1rem;margin-bottom:var(--space-2)}.error-details{color:var(--light-gray);font-size:.9rem}.premium-overlay{position:relative}.premium-overlay:before{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffc;bottom:0;content:"";display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.premium-message{background:#fff;border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);max-width:var(--container-xs);padding:var(--space-5);text-align:center}@media print{.dashboard-container{background:#fff!important;margin-left:0!important}.error-container,.loading-container,.premium-overlay{display:none!important}}.content-header,.dashboard-container,.main-content,.options-main,.page-content{background:var(--bg-page)!important}
/*# sourceMappingURL=main.53338fb9.css.map*/