.card-base.svelte-1h11m92{border-radius:var(--theme-radius-card, var(--radius-lg, .5rem));transition:transform,box-shadow,border-color var(--theme-duration-standard, var(--duration-fast, .2s)) var(--theme-easing-standard, var(--ease-standard, cubic-bezier(.25, .1, .25, 1)));color:var(--text-primary)}.card-variant-default{background-color:var(--surface-card);box-shadow:var(--theme-shadow-card, var(--shadow-sm));border:1px solid var(--border-color-muted)}.card-variant-elevated{background-color:var(--surface-card);box-shadow:var(--shadow-md);border:1px solid var(--border-color-default);backdrop-filter:blur(var(--theme-backdrop-blur, 2px));-webkit-backdrop-filter:blur(var(--theme-backdrop-blur, 2px))}.card-variant-bordered{background-color:var(--surface-card);border:2px solid color-mix(in srgb,var(--color-primary) 20%,transparent);transition:border-color var(--duration-fast, .2s) var(--ease-standard)}.card-variant-bordered:hover{border-color:color-mix(in srgb,var(--color-primary) 30%,transparent)}.card-variant-ghost{background-color:transparent;transition:background-color var(--duration-fast, .2s) var(--ease-standard)}.card-variant-ghost:hover{background-color:var(--surface-hover)}.toast-container .toast{padding:0;background-color:transparent;border:none}.toast-position-top-left.svelte-y14euw{top:calc(var(--space-4) + env(safe-area-inset-top,0));left:calc(var(--space-4) + env(safe-area-inset-left,0));right:auto}.toast-position-top-center.svelte-y14euw{top:calc(var(--space-4) + env(safe-area-inset-top,0));left:50%;right:auto;transform:translate(-50%)}.toast-position-top-right.svelte-y14euw{top:calc(var(--space-4) + env(safe-area-inset-top,0));right:calc(var(--space-4) + env(safe-area-inset-right,0));left:auto}.toast-position-bottom-left.svelte-y14euw{top:auto;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0));left:calc(var(--space-4) + env(safe-area-inset-left,0));right:auto}.toast-position-bottom-center.svelte-y14euw{top:auto;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0));left:50%;right:auto;transform:translate(-50%)}.toast-position-bottom-right.svelte-y14euw{top:auto;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0));right:calc(var(--space-4) + env(safe-area-inset-right,0));left:auto}.toast-card,.toast-card-interactive{display:flex;flex-direction:column;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);overflow:hidden;cursor:default;transition:transform var(--duration-fast, .2s) var(--ease-standard, cubic-bezier(.25, .1, .25, 1)),opacity var(--duration-fast, .2s) var(--ease-standard, cubic-bezier(.25, .1, .25, 1)),box-shadow var(--duration-fast, .2s) var(--ease-standard, cubic-bezier(.25, .1, .25, 1));border-radius:var(--radius-lg, 12px);padding:0;box-shadow:var( --shadow-lg, 0 8px 32px var(--border-color-muted), 0 2px 8px var(--overlay-subtle) )}.toast-card:hover{box-shadow:var( --shadow-xl, 0 12px 40px var(--border-color-default), 0 4px 12px var(--overlay-subtle) )}.toast-inner,.toast-inner-content{position:relative;padding:0;display:flex;align-items:center;gap:0;min-height:var(--space-12, 48px)}.toast-content-area{padding:var(--space-3, 12px) var(--space-4, 16px);flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.toast-text-content{display:flex;flex-direction:column;gap:var(--space-1, 4px);width:100%}.toast-close-container{display:flex;align-items:center;justify-content:center;padding:0 var(--space-3);flex-shrink:0}.toast-close-button{width:var(--space-6, 24px);height:var(--space-6, 24px);padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm, 4px);color:var(--text-secondary);cursor:pointer;transition:background-color var(--duration-fast, .15s) var(--ease-in-out, ease),opacity var(--duration-fast, .15s) var(--ease-in-out, ease);opacity:.6;flex-shrink:0}.toast-close-button:hover{opacity:1;background-color:var(--surface-hover, var(--overlay-subtle))}.toast-close-button:active{background-color:var(--surface-active, var(--overlay-subtle));opacity:1}.toast-close-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px;opacity:1}.toast-icon-container{display:flex;align-items:center;justify-content:center;padding:0 var(--space-3, 12px);background-color:transparent;border-right:none;flex-shrink:0}.toast-icon{font-size:var(--text-xl, 20px);display:flex;align-items:center;justify-content:center;line-height:1;opacity:1}.toast-title{font-weight:var(--weight-semibold, 600);margin-bottom:var(--space-0-5, 2px);font-size:var(--text-base, 1rem);line-height:var(--leading-snug, 1.375);letter-spacing:var(--tracking-tight, -.01em);color:var(--toast-text-primary, var(--text-primary))}.toast-message{font-size:var(--text-sm, .875rem);font-weight:var(--weight-normal, 400);color:var(--toast-text-secondary, var(--text-secondary));line-height:var(--leading-normal, 1.5);letter-spacing:var(--tracking-normal, 0);margin:0}.toast-action-button{margin-top:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-4, 16px);background-color:var( --color-accent-dark, var(--toast-info-button-bg, var(--color-primary, var(--color-primary-600))) );color:var(--toast-button-text, var(--text-inverse, var(--color-white)));border:none;border-radius:var(--radius-md, 8px);font-size:var(--text-sm, .875rem);font-weight:var(--weight-semibold, 600);letter-spacing:var(--tracking-normal, 0);cursor:pointer;transition:background-color var(--duration-fast, .15s) var(--ease-in-out, ease),transform var(--duration-instant, .1s) var(--ease-in-out, ease),opacity var(--duration-fast, .15s) var(--ease-in-out, ease);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2, 8px);min-height:var(--space-10, 40px);align-self:flex-start}.toast-action-button:disabled{cursor:not-allowed;opacity:.7}.toast-action-spinner{animation:svelte-y14euw-toast-spinner-rotate 1s linear infinite}@keyframes svelte-y14euw-toast-spinner-rotate{to{transform:rotate(360deg)}}.toast-retry-badge{display:inline-flex;align-items:center;justify-content:center;width:var(--space-4, 16px);height:var(--space-4, 16px);background-color:color-mix(in srgb,var(--text-inverse) 20%,transparent);border-radius:var(--radius-full, 50%);font-size:var(--text-xs, .75rem);font-weight:var(--weight-bold, 700);line-height:1;flex-shrink:0}.toast-action-button:hover{background-color:color-mix(in srgb,var(--color-accent-dark, var(--color-primary)) 90%,black)}.toast-action-button:active{transform:scale(.96)}.toast-action-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.toast-success .toast-icon-container{background-color:transparent;color:var(--color-success-icon, var(--color-success, var(--color-success)));border-right:none}.toast-error .toast-icon-container{background-color:transparent;color:var(--color-error-icon, var(--color-error, var(--color-error)));border-right:none}.toast-warning .toast-icon-container{background-color:transparent;color:var(--color-warning-icon, var(--color-warning, var(--color-warning)));border-right:none}.toast-info .toast-icon-container{background-color:transparent;color:var(--color-info-icon, var(--color-info, var(--color-primary-500)));border-right:none}.toast-success .toast-action-button{background-color:var(--toast-success-button-bg, var(--color-success-dark));color:var(--toast-button-text, var(--text-inverse, var(--color-white)))}.toast-success .toast-action-button:hover{background-color:color-mix(in srgb,var(--toast-success-button-bg, var(--color-success-dark)) 85%,black)}.toast-error .toast-action-button{background-color:var(--toast-error-button-bg, var(--color-error-dark));color:var(--toast-button-text, var(--text-inverse, var(--color-white)))}.toast-error .toast-action-button:hover{background-color:color-mix(in srgb,var(--toast-error-button-bg, var(--color-error-dark)) 85%,black)}.toast-warning .toast-action-button{background-color:var(--toast-warning-button-bg, var(--color-warning-dark));color:var(--toast-button-text, var(--text-inverse, var(--color-white)))}.toast-warning .toast-action-button:hover{background-color:color-mix(in srgb,var(--toast-warning-button-bg, var(--color-warning-dark)) 85%,black)}.toast-info .toast-action-button{background-color:var(--toast-info-button-bg, var(--color-info-dark));color:var(--toast-button-text, var(--text-inverse, var(--color-white)))}.toast-info .toast-action-button:hover{background-color:color-mix(in srgb,var(--toast-info-button-bg, var(--color-info-dark)) 85%,black)}.toast-progress-container{width:100%;height:4px;background-color:var(--color-surface-sunken);overflow:hidden}.toast-progress-bar{height:100%;width:100%;background-color:var(--color-accent);transform-origin:left;animation-name:toast-progress;animation-timing-function:linear;animation-fill-mode:forwards}@media (max-width: 640px){.toast-container.svelte-y14euw{max-width:min(420px,calc(100vw - 2rem))}.toast-position-top-left.svelte-y14euw,.toast-position-top-right.svelte-y14euw,.toast-position-bottom-left.svelte-y14euw,.toast-position-bottom-right.svelte-y14euw{left:var(--space-2);right:var(--space-2)}.toast-position-top-center.svelte-y14euw,.toast-position-bottom-center.svelte-y14euw{width:calc(100vw - 1rem);max-width:calc(100vw - 1rem)}.toast-icon-container{min-width:40px;padding:var(--space-2)}.toast-icon{font-size:1.125rem}.toast-content-area{padding:var(--space-2) var(--space-3)}.toast-close-container{padding:var(--space-2);min-width:36px}.toast-close-button{width:var(--space-6);height:var(--space-6)}.toast-close-button:hover,.toast-close-button:active{transform:scale(1)}.toast-title{font-size:var(--text-base, 1rem);color:var(--text-primary)}.toast-message{font-size:var(--text-sm, .875rem);color:var(--text-secondary);line-height:var(--leading-normal, 1.5)}.toast-action-button{font-size:var(--text-sm, .875rem);padding:var(--space-2, 8px) var(--space-4, 16px);color:var(--text-inverse);width:100%;margin-top:var(--space-2, 8px)}}.dark .toast-title,[data-theme=circuit] .toast-title{color:var(--toast-text-primary, var(--color-neutral-900))}.dark .toast-message,[data-theme=circuit] .toast-message{color:var(--toast-text-secondary, var(--color-neutral-700))}.sr-only.svelte-y14euw{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.toast-history-backdrop.svelte-17oagk9{position:fixed;inset:0;background:var(--color-black-alpha-50);z-index:999;border:none;cursor:pointer}.toast-history-panel.svelte-17oagk9{position:fixed;top:0;right:0;bottom:0;width:min(400px,90vw);background:var(--theme-surface-card, var(--color-surface));box-shadow:var(--shadow-xl);z-index:1000;display:flex;flex-direction:column;animation:svelte-17oagk9-slideIn .2s ease-out}@keyframes svelte-17oagk9-slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.panel-header.svelte-17oagk9{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-color-default)}.panel-title-group.svelte-17oagk9{display:flex;align-items:center;gap:var(--space-2)}.panel-title.svelte-17oagk9{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.unread-badge.svelte-17oagk9{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-1-5);background:var(--color-accent);color:var(--text-inverse);font-size:var(--text-xs);font-weight:var(--font-bold);border-radius:var(--radius-full)}.close-button.svelte-17oagk9{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-xl);cursor:pointer;transition:background-color .2s ease}.close-button.svelte-17oagk9:hover{background:var(--surface-hover)}.close-button.svelte-17oagk9:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.panel-actions.svelte-17oagk9{display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color-default)}.action-button.svelte-17oagk9{padding:var(--space-1-5) var(--space-3);background:var(--surface-secondary);border:1px solid var(--border-color-default);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:background-color,border-color,color,box-shadow,transform .2s ease}.action-button.svelte-17oagk9:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.action-button.svelte-17oagk9:disabled{opacity:.5;cursor:not-allowed}.action-button.svelte-17oagk9:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.action-button-danger.svelte-17oagk9:hover:not(:disabled){background:var(--color-error-light);color:var(--color-error);border-color:var(--color-error)}.panel-content.svelte-17oagk9{flex:1;overflow-y:auto;padding:var(--space-2)}.empty-state.svelte-17oagk9{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);color:var(--text-muted);text-align:center}.empty-icon.svelte-17oagk9{font-size:48px;margin-bottom:var(--space-4);opacity:.5}.toast-history-item.svelte-17oagk9{display:flex;align-items:stretch;gap:0;width:100%;margin-bottom:var(--space-2);background:var(--surface-secondary);border:1px solid var(--border-color-default);border-radius:var(--radius-lg);text-align:left;transition:transform,opacity .2s ease;position:relative;overflow:hidden}.toast-history-item.svelte-17oagk9:hover{background:var(--surface-hover)}.toast-history-item.unread.svelte-17oagk9{background:var(--theme-surface-card, var(--color-surface));border-color:var(--color-accent)}.toast-item-button.svelte-17oagk9{display:flex;align-items:flex-start;gap:var(--space-3);flex:1;padding:var(--space-3);background:transparent;border:none;cursor:pointer;text-align:left;min-width:0}.toast-item-button.svelte-17oagk9:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.toast-history-item.toast-type-error.svelte-17oagk9 .toast-icon:where(.svelte-17oagk9){color:var(--color-error)}.toast-history-item.toast-type-warning.svelte-17oagk9 .toast-icon:where(.svelte-17oagk9){color:var(--color-warning)}.toast-history-item.toast-type-success.svelte-17oagk9 .toast-icon:where(.svelte-17oagk9){color:var(--color-success)}.toast-history-item.toast-type-info.svelte-17oagk9 .toast-icon:where(.svelte-17oagk9){color:var(--color-info)}.toast-icon.svelte-17oagk9{flex-shrink:0;font-size:var(--text-lg);line-height:1}.toast-content.svelte-17oagk9{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.toast-title.svelte-17oagk9{font-weight:var(--font-semibold);color:var(--text-primary);font-size:var(--text-sm)}.toast-message.svelte-17oagk9{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-normal);word-break:break-word}.toast-time.svelte-17oagk9{color:var(--text-muted);font-size:var(--text-xs)}.unread-indicator.svelte-17oagk9{flex-shrink:0;width:8px;height:8px;margin-top:var(--space-1);background:var(--color-accent);border-radius:50%}.remove-button.svelte-17oagk9{flex-shrink:0;display:flex;align-items:center;justify-content:center;align-self:center;width:32px;height:32px;margin-right:var(--space-2);background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-lg);cursor:pointer;opacity:.5;transition:opacity .2s ease,transform .2s ease}.toast-history-item.svelte-17oagk9:hover .remove-button:where(.svelte-17oagk9),.toast-history-item.svelte-17oagk9:focus-within .remove-button:where(.svelte-17oagk9){opacity:1}.remove-button.svelte-17oagk9:hover{background:var(--color-error-light);color:var(--color-error)}.remove-button.svelte-17oagk9:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;opacity:1}.panel-footer.svelte-17oagk9{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color-default);text-align:center}.help-text.svelte-17oagk9{margin:0;font-size:var(--text-xs);color:var(--text-muted)}.sr-only.svelte-17oagk9{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.confirm-variant-danger .confirm-dialog-actions button:last-child{background-color:var(--color-error);border-color:var(--color-error)}.confirm-variant-danger .confirm-dialog-actions button:last-child:hover{background-color:var(--color-error-hover);border-color:var(--color-error-hover)}.confirm-variant-warning .confirm-dialog-actions button:last-child{background-color:var(--color-warning);border-color:var(--color-warning);color:var(--color-neutral-900, var(--color-black))}.confirm-variant-warning .confirm-dialog-actions button:last-child:hover{background-color:var(--color-warning-hover);border-color:var(--color-warning-hover)}.skip-link.svelte-icmqsp{position:absolute;top:-999px;left:-999px;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;background:var(--color-primary);color:var(--text-inverse);padding:var(--space-3) var(--space-6);border-radius:var(--shape-button);font-size:var(--text-base);font-weight:var(--font-semibold);text-decoration:none;z-index:var(--z-toast, 9999);transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);min-height:var(--touch-target-preferred, 44px);display:inline-flex;align-items:center;justify-content:center}.skip-link.svelte-icmqsp:focus{position:fixed;top:var(--space-4);left:var(--space-4);width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;outline:var(--focus-outline, 3px solid var(--color-accent));outline-offset:var(--focus-outline-offset, 2px);box-shadow:var(--shadow-xl)}.skip-link.svelte-icmqsp:focus{background:var(--color-primary);color:var(--color-text-on-primary, var(--color-white))}@media (hover: hover) and (pointer: fine){.skip-link.svelte-icmqsp:focus:hover{background:var(--color-primary-hover, var(--color-primary-600));transform:translateY(-1px)}}@media (max-width: 768px){.skip-link.svelte-icmqsp:focus{font-size:16px;min-height:48px;padding:var(--space-4) var(--space-8)}}@media (prefers-contrast: high){.skip-link.svelte-icmqsp:focus{border:2px solid currentColor;outline-width:4px}}@media (prefers-reduced-motion: reduce){.skip-link.svelte-icmqsp{transition:none}.skip-link.svelte-icmqsp:focus:hover{transform:none}}.offline-indicator.svelte-qvrzw2{position:fixed;left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:var(--space-sm, 8px);padding:var(--space-sm, 12px) var(--space-md, 16px);border-radius:var(--radius-lg, 8px);font-size:var(--text-sm, 14px);font-weight:500;box-shadow:var(--shadow-lg, 0 10px 25px var(--border-color-default));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:svelte-qvrzw2-slideIn .3s ease-out;max-width:90vw;background:var(--status-online-bg, var(--color-success-600));color:var(--status-online-text, var(--color-neutral-0))}.offline-indicator.top.svelte-qvrzw2{top:var(--space-md, 16px)}.offline-indicator.bottom.svelte-qvrzw2{bottom:var(--space-md, 16px)}.offline-indicator.offline.svelte-qvrzw2{background:var(--status-offline-bg, rgba(244, 67, 54, .95));color:var(--status-offline-text, var(--color-neutral-0))}.offline-indicator.reconnected.svelte-qvrzw2{background:var(--status-reconnected-bg, var(--color-success-600));color:var(--status-reconnected-text, var(--color-neutral-0))}.offline-indicator.poor.svelte-qvrzw2{background:var(--status-poor-bg, rgba(255, 152, 0, .95));color:var(--status-poor-text, var(--color-neutral-0))}.offline-indicator.excellent.svelte-qvrzw2{background:var(--status-excellent-bg, var(--color-success-600));color:var(--status-excellent-text, var(--color-neutral-0))}.indicator-icon.svelte-qvrzw2{font-size:18px;line-height:1}.indicator-text.svelte-qvrzw2{flex:1;white-space:nowrap}.connection-details.svelte-qvrzw2{font-size:var(--text-xs, 12px);opacity:.9;margin-left:var(--space-xs, 4px);white-space:nowrap}.close-button.svelte-qvrzw2{all:unset;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm, 4px);cursor:pointer;opacity:.8;transition:opacity .2s ease}.close-button.svelte-qvrzw2:hover{opacity:1;background:var(--surface-interactive)}.close-button.svelte-qvrzw2:focus-visible{outline:2px solid currentColor;outline-offset:2px}@keyframes svelte-qvrzw2-slideIn{0%{transform:translate(-50%) translateY(-100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@media (max-width: 480px){.offline-indicator.svelte-qvrzw2{font-size:var(--text-xs, 13px);padding:var(--space-xs, 10px) var(--space-sm, 12px);gap:var(--space-xs, 6px)}.connection-details.svelte-qvrzw2{display:none}}@media (prefers-reduced-motion: reduce){.offline-indicator.svelte-qvrzw2{animation:none}}.dark{.offline-indicator.svelte-qvrzw2{box-shadow:var(--shadow-dark-lg, 0 10px 25px var(--overlay-light))}}:root{--motion-instant: .1s;--motion-quick: .2s;--motion-standard: .3s;--motion-deliberate: .5s;--motion-button-hover: var(--motion-instant);--motion-button-press: var(--motion-instant);--motion-card-enter: var(--motion-standard);--motion-card-hover: var(--motion-quick);--motion-message-enter: var(--motion-standard);--motion-stream-pulse: .4s;--motion-shimmer-cycle: 2s;--motion-celebration: var(--motion-quick);--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasized-decel: cubic-bezier(.05, .7, .1, 1);--ease-emphasized-accel: cubic-bezier(.3, 0, .8, .15);--ease-material: cubic-bezier(.4, 0, .2, 1);--ease-elastic: cubic-bezier(.34, 1.56, .64, 1);--ease-out-fast: cubic-bezier(0, 0, .2, 1);--ease-quint-out: cubic-bezier(.22, 1, .36, 1);--ease-quart-out: cubic-bezier(.25, 1, .5, 1);--ease-cubic-out: cubic-bezier(.33, 1, .68, 1);--ease-quad-out: cubic-bezier(.5, 1, .89, 1);--ease-expo-out: cubic-bezier(.16, 1, .3, 1);--ease-circ-out: cubic-bezier(0, .55, .45, 1);--ease-back-out: cubic-bezier(.34, 1.56, .64, 1);--ease-sine-out: cubic-bezier(.61, 1, .88, 1);--ease-button: var(--ease-standard);--ease-card: var(--ease-emphasized-decel);--ease-message: var(--ease-emphasized-decel);--ease-hover: var(--ease-standard);--ease-press: var(--ease-emphasized-accel);--scale-none: 1;--scale-subtle: 1.01;--scale-standard: 1.02;--scale-emphasized: 1.05;--scale-press: .98;--scale-button-hover: var(--scale-standard);--scale-button-press: var(--scale-press);--scale-card-hover: var(--scale-subtle);--scale-celebration: var(--scale-standard);--opacity-hover-subtle: .9;--opacity-hover-standard: .85;--opacity-hover-pronounced: .75;--opacity-press: .7;--opacity-focus-ring: .5;--opacity-disabled: .4;--blur-hover-none: 0;--blur-hover-subtle: blur(2px);--blur-hover-standard: blur(4px);--blur-hover-pronounced: blur(8px);--blur-interactive-light: blur(8px) saturate(1.2) brightness(1.05);--blur-interactive-dark: blur(8px) saturate(1.3) brightness(.95);--blur-focus: blur(0);--shadow-button-rest: var(--shadow-sm);--shadow-button-hover: 0 4px 8px -2px rgba(0, 0, 0, .12), 0 2px 4px -1px rgba(0, 0, 0, .08);--shadow-button-active: 0 1px 2px 0 rgba(0, 0, 0, .15), 0 0px 1px 0 rgba(0, 0, 0, .1);--shadow-button-focus: 0 0 0 4px var(--color-primary-alpha-20);--shadow-card-rest: var(--shadow-sm);--shadow-card-hover: 0 8px 16px -4px rgba(0, 0, 0, .1), 0 4px 8px -2px rgba(0, 0, 0, .06);--shadow-card-active: 0 2px 4px -1px rgba(0, 0, 0, .12);--glow-primary-subtle: 0 0 8px 0 var(--color-primary-alpha-20);--glow-primary-standard: 0 0 16px 2px var(--color-primary-alpha-30);--glow-primary-pronounced: 0 0 24px 4px var(--color-primary-alpha-40);--tint-hover-light: color-mix(in srgb, var(--surface-interactive) 80%, var(--color-primary) 20%);--tint-active-light: color-mix( in srgb, var(--surface-interactive-pressed) 70%, var(--color-primary) 30% );--tint-hover-accent: color-mix(in srgb, transparent 90%, var(--color-primary) 10%);--tint-active-accent: color-mix(in srgb, transparent 80%, var(--color-primary) 20%);--tint-icon-hover: var(--color-primary);--tint-icon-active: var(--color-primary-dark);--border-width-rest: 1px;--border-width-hover: 2px;--border-width-focus: 2px;--border-color-rest: var(--border-default);--border-color-hover: color-mix(in srgb, var(--color-primary) 40%, var(--border-default) 60%);--border-color-active: var(--color-primary);--border-color-focus: var(--color-primary);--focus-ring-width: 2px;--focus-ring-offset: 2px;--focus-ring-color: var(--color-primary-alpha-50);--lift-none: 0;--lift-subtle: 2px;--lift-standard: 4px;--lift-emphasized: 6px;--lift-button: var(--lift-standard);--lift-card: var(--lift-standard);--lift-message: var(--lift-standard);--spring-stiffness-gentle: .15;--spring-stiffness-standard: .2;--spring-stiffness-bouncy: .3;--spring-damping-loose: .7;--spring-damping-standard: .85;--spring-damping-tight: .95;--gpu-will-change-transform: transform;--gpu-will-change-opacity: opacity;--gpu-will-change-combined: transform, opacity;--gpu-force-layer: translateZ(0);--stagger-minimal: 25ms;--stagger-standard: 50ms;--stagger-relaxed: .1s;--animation-gap-tight: 50ms;--animation-gap-standard: .1s;--animation-gap-relaxed: .2s;--motion-streaming-end: .4s;--ease-streaming-end: cubic-bezier(.33, 1, .68, 1);--collapse-duration: .35s;--collapse-to-expand-gap: .15s}:where(.dark){--shadow-button-hover: 0 4px 8px -2px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-card-hover: 0 8px 16px -4px rgba(0, 0, 0, .4), 0 4px 8px -2px rgba(0, 0, 0, .25);--tint-hover-light: color-mix(in srgb, var(--surface-interactive) 75%, var(--color-primary) 25%);--tint-active-light: color-mix( in srgb, var(--surface-interactive-pressed) 65%, var(--color-primary) 35% )}[data-theme=cocovox-dark]{--motion-standard: .35s;--lift-standard: 6px;--scale-emphasized: 1.05;--spring-damping-standard: .8}[data-theme=cocovox]{--motion-standard: .25s;--spring-damping-standard: .9}[data-context=learning],.learning-mode{--scale-standard: 1.04;--lift-standard: 4px;--motion-celebration: .2s}[data-context=chat],.chat-mode{--scale-standard: 1.01;--lift-standard: 2px;--motion-standard: .2s}[data-context=admin],.admin-mode{--motion-instant: 75ms;--motion-quick: .15s;--motion-standard: .2s}@media (prefers-reduced-motion: reduce){:root{--motion-instant: 0ms;--motion-quick: 0ms;--motion-standard: .1s;--motion-deliberate: .15s;--motion-stream-pulse: 0ms;--motion-shimmer-cycle: 0ms;--ease-standard: linear;--ease-emphasized-decel: linear;--ease-emphasized-accel: linear;--ease-material: linear;--scale-subtle: 1;--scale-standard: 1;--scale-emphasized: 1;--scale-press: 1;--lift-subtle: 0;--lift-standard: 0;--lift-emphasized: 0;--blur-hover-subtle: blur(0);--blur-hover-standard: blur(0);--blur-hover-pronounced: blur(0);--blur-interactive-light: none;--blur-interactive-dark: none;--shadow-button-hover: var(--shadow-button-rest);--shadow-card-hover: var(--shadow-card-rest);--spring-damping-standard: 1}:root{--stagger-minimal: 0ms;--stagger-standard: 0ms;--stagger-relaxed: 0ms;--animation-gap-tight: 0ms;--animation-gap-standard: 0ms;--animation-gap-relaxed: 0ms;--motion-streaming-end: .01ms;--collapse-duration: .01ms;--collapse-to-expand-gap: 0ms}}@media (prefers-contrast: high){:root{--motion-instant: .15s;--motion-quick: .25s;--motion-standard: .35s;--scale-standard: 1.03;--scale-emphasized: 1.06;--lift-standard: 6px;--lift-emphasized: 8px}}.will-animate-transform{will-change:var(--gpu-will-change-transform)}.will-animate-opacity{will-change:var(--gpu-will-change-opacity)}.will-animate{will-change:var(--gpu-will-change-combined)}.animation-complete{will-change:auto}.force-gpu-layer{transform:var(--gpu-force-layer);backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}@keyframes enter-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes enter-slide-right{0%{opacity:0;transform:translate(-24px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes enter-slide-left{0%{opacity:0;transform:translate(24px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes enter-scale-fade{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes exit-fade-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}@keyframes exit-scale-fade{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes shimmer-wave{0%{transform:translate(-100%)}to{transform:translate(200%)}}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes pulse-glow{0%,to{opacity:1;box-shadow:0 0 rgba(var(--color-primary-rgb),0)}50%{opacity:.8;box-shadow:0 0 20px 4px rgba(var(--color-primary-rgb),.3)}}@keyframes scale-pulse{0%,to{transform:scale(1)}50%{transform:scale(var(--pulse-scale, var(--scale-standard)))}}@keyframes bounce-feedback{0%,to{transform:translateY(0) scale(1)}25%{transform:translateY(-4px) scale(var(--scale-emphasized))}50%{transform:translateY(-2px) scale(var(--scale-standard))}75%{transform:translateY(-1px) scale(1.01)}}@keyframes rotate-scale{0%,to{transform:rotate(0) scale(1)}50%{transform:rotate(5deg) scale(1.1)}}@keyframes gentle-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes streaming-glow{0%{transform:translateZ(0);box-shadow:inset 0 0 rgba(var(--color-primary-rgb),0)}30%{transform:translateZ(0);box-shadow:inset -2px 0 8px rgba(var(--color-primary-rgb),.1)}to{transform:translateZ(0);box-shadow:inset 0 0 rgba(var(--color-primary-rgb),0)}}@keyframes progress-fill{0%{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}.animate-enter{animation:enter-fade-up var(--motion-standard) var(--ease-emphasized-decel)}.animate-enter-slide{animation:enter-slide-right var(--motion-standard) var(--ease-emphasized-decel)}.animate-enter-scale{animation:enter-scale-fade var(--motion-quick) var(--ease-emphasized-decel)}.animate-exit{animation:exit-fade-down var(--motion-quick) var(--ease-emphasized-accel)}.animate-exit-scale{animation:exit-scale-fade var(--motion-quick) var(--ease-emphasized-accel)}.animate-shimmer{position:relative;overflow:hidden}.animate-shimmer:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);transform:translate(-100%);animation:shimmer-wave var(--motion-shimmer-cycle) linear infinite}.dark .animate-shimmer:before{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.05) 50%,transparent 100%)}.animate-pulse{animation:scale-pulse var(--motion-shimmer-cycle) ease-in-out infinite}.animate-glow{animation:pulse-glow var(--motion-shimmer-cycle) ease-in-out infinite}.animate-streaming{animation:streaming-glow var(--motion-stream-pulse) var(--ease-standard) forwards}.animate-gradient{background-size:200% 200%;animation:gradient-shift 6s ease-in-out infinite}.stagger-children>*{animation:enter-fade-up var(--motion-standard) var(--ease-emphasized-decel)}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:50ms}.stagger-children>*:nth-child(3){animation-delay:.1s}.stagger-children>*:nth-child(4){animation-delay:.15s}.stagger-children>*:nth-child(5){animation-delay:.2s}.stagger-children>*:nth-child(6){animation-delay:.25s}.stagger-children>*:nth-child(7){animation-delay:.3s}.stagger-children>*:nth-child(8){animation-delay:.35s}.stagger-children>*:nth-child(9){animation-delay:.4s}.stagger-children>*:nth-child(10){animation-delay:.45s}.stagger-children>*:nth-child(11){animation-delay:.5s}.stagger-children>*:nth-child(12){animation-delay:.55s}.stagger-children>*:nth-child(13){animation-delay:.6s}.stagger-children>*:nth-child(14){animation-delay:.65s}.stagger-children>*:nth-child(15){animation-delay:.7s}.stagger-children>*:nth-child(16){animation-delay:.75s}.stagger-children>*:nth-child(17){animation-delay:.8s}.stagger-children>*:nth-child(18){animation-delay:.85s}.stagger-children>*:nth-child(19){animation-delay:.9s}.stagger-children>*:nth-child(20){animation-delay:.95s}.stagger-children-fast>*{animation:enter-fade-up var(--motion-quick) var(--ease-emphasized-decel)}.stagger-children-fast>*:nth-child(1){animation-delay:0ms}.stagger-children-fast>*:nth-child(2){animation-delay:25ms}.stagger-children-fast>*:nth-child(3){animation-delay:50ms}.stagger-children-fast>*:nth-child(4){animation-delay:75ms}.stagger-children-fast>*:nth-child(5){animation-delay:.1s}.stagger-children-fast>*:nth-child(6){animation-delay:125ms}.stagger-children-fast>*:nth-child(7){animation-delay:.15s}.stagger-children-fast>*:nth-child(8){animation-delay:175ms}.stagger-children-fast>*:nth-child(9){animation-delay:.2s}.stagger-children-fast>*:nth-child(10){animation-delay:225ms}.stagger-children-slow>*{animation:enter-fade-up var(--motion-deliberate) var(--ease-emphasized-decel)}.stagger-children-slow>*:nth-child(1){animation-delay:0ms}.stagger-children-slow>*:nth-child(2){animation-delay:.1s}.stagger-children-slow>*:nth-child(3){animation-delay:.2s}.stagger-children-slow>*:nth-child(4){animation-delay:.3s}.stagger-children-slow>*:nth-child(5){animation-delay:.4s}.stagger-children-slow>*:nth-child(6){animation-delay:.5s}.stagger-children-slow>*:nth-child(7){animation-delay:.6s}.stagger-children-slow>*:nth-child(8){animation-delay:.7s}.stagger-children-slow>*:nth-child(9){animation-delay:.8s}.stagger-children-slow>*:nth-child(10){animation-delay:.9s}.stagger-entrance{animation:enter-fade-up var(--motion-standard) var(--ease-emphasized-decel);animation-delay:calc(var(--item-index, 0) * var(--stagger-standard))}.stagger-entrance-fast{animation:enter-fade-up var(--motion-quick) var(--ease-emphasized-decel);animation-delay:calc(var(--item-index, 0) * var(--stagger-minimal))}.stagger-entrance-slow{animation:enter-fade-up var(--motion-deliberate) var(--ease-emphasized-decel);animation-delay:calc(var(--item-index, 0) * var(--stagger-relaxed))}.animating{will-change:transform,opacity;backface-visibility:hidden;transform:translateZ(0)}.animation-done{will-change:auto}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-enter,.animate-exit,.stagger-entrance,.stagger-entrance-fast,.stagger-entrance-slow{animation-name:none;opacity:1;transform:none}.animate-shimmer:before,.animate-pulse,.animate-glow,.animate-gradient{animation:none!important}button,a,.interactive{transition:background-color .1s linear,color .1s linear}}[data-context=learning] .animate-enter,.learning-mode .animate-enter{animation:bounce-feedback var(--motion-celebration) var(--ease-standard)}[data-context=chat] .animate-enter,.chat-mode .animate-enter{animation-duration:var(--motion-quick)}[data-context=admin] .animate-enter,.admin-mode .animate-enter{animation-duration:var(--motion-instant)}.message-container-enter{animation:enter-fade-up var(--motion-standard) var(--ease-emphasized-decel)}.message-container-enter>*{animation:enter-fade-up var(--motion-quick) var(--ease-emphasized-decel);animation-delay:var(--animation-gap-tight)}.card-grid-item{animation:enter-slide-right var(--motion-standard) var(--ease-card);animation-delay:calc(var(--card-index, 0) * var(--stagger-standard));transition:transform var(--motion-card-hover) var(--ease-hover),box-shadow var(--motion-card-hover) var(--ease-hover)}.card-grid-item:hover{transform:translateY(calc(-1 * var(--lift-card))) scale(var(--scale-card-hover))}.tool-card-loading{border-color:var(--color-border);transition:border-color var(--motion-shimmer-cycle) ease-in-out;animation:shimmer-wave var(--motion-shimmer-cycle) linear infinite}.tool-card-complete{animation:bounce-feedback var(--motion-celebration) var(--ease-standard)}.btn-interactive{position:relative;transition:transform var(--motion-button-hover) var(--ease-hover),box-shadow var(--motion-button-hover) var(--ease-hover),opacity var(--motion-quick) var(--ease-hover);will-change:transform,box-shadow}.btn-interactive:hover{transform:translateY(calc(-1 * var(--lift-button)));box-shadow:var(--shadow-button-hover)}.btn-interactive:active{transform:translateY(0);box-shadow:var(--shadow-button-active);opacity:var(--opacity-press);transition-duration:var(--motion-button-press)}.btn-primary-interactive{position:relative;transition:transform var(--motion-button-hover) var(--ease-hover),box-shadow var(--motion-button-hover) var(--ease-hover),opacity var(--motion-quick) var(--ease-hover)}.btn-primary-interactive:hover{transform:translateY(calc(-1 * var(--lift-emphasized)));box-shadow:var(--shadow-button-hover),var(--glow-primary-subtle)}.btn-primary-interactive:active{transform:translateY(0);box-shadow:var(--shadow-button-active);opacity:var(--opacity-press);transition-duration:var(--motion-button-press)}.btn-subtle-interactive{transition:opacity var(--motion-instant) var(--ease-hover)}.btn-subtle-interactive:hover{opacity:var(--opacity-hover-subtle)}.btn-subtle-interactive:active{opacity:var(--opacity-press)}.card-interactive{transition:transform var(--motion-card-hover) var(--ease-hover),box-shadow var(--motion-card-hover) var(--ease-hover),opacity var(--motion-quick) var(--ease-hover);will-change:transform}.card-interactive:hover{transform:translateY(calc(-1 * var(--lift-card)));box-shadow:var(--shadow-card-hover)}.card-interactive:active{transform:translateY(calc(-1 * var(--lift-subtle)));box-shadow:var(--shadow-card-active);opacity:var(--opacity-press)}@media (min-width: 1024px){.card-tilt{transition:transform var(--motion-standard) var(--ease-hover),box-shadow var(--motion-quick) var(--ease-hover);-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.card-tilt:hover{transform:translateY(calc(-1 * var(--lift-standard))) rotateX(2deg) rotateY(2deg) scale(var(--scale-subtle));box-shadow:var(--shadow-card-hover)}}.card-clickable{cursor:pointer;transition:transform var(--motion-quick) var(--ease-hover),box-shadow var(--motion-quick) var(--ease-hover),opacity var(--motion-quick) var(--ease-hover)}.card-clickable:hover{transform:translateY(calc(-1 * var(--lift-subtle)));box-shadow:var(--shadow-card-hover)}.card-clickable:active{transform:translateY(0);opacity:var(--opacity-press)}.link-interactive{position:relative;color:var(--color-primary);text-decoration:none;transition:color var(--motion-quick) var(--ease-hover)}.link-interactive:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--motion-standard) var(--ease-emphasized-decel)}.link-interactive:hover:after{transform:scaleX(1)}.link-gradient{position:relative;transition:color var(--motion-quick) var(--ease-hover)}.link-gradient:before{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-accent) 100%);transform:scaleX(0);transform-origin:left;transition:transform var(--motion-standard) var(--ease-emphasized-decel)}.link-gradient:hover:before{transform:scaleX(1)}.input-interactive{transition:border-color var(--motion-quick) var(--ease-hover),box-shadow var(--motion-standard) var(--ease-hover),transform var(--motion-quick) var(--ease-hover)}.input-interactive:hover{border-color:rgba(var(--color-primary-rgb),.4);box-shadow:0 0 0 1px rgba(var(--color-primary-rgb),.1),0 2px 8px #0000000d}.input-interactive:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.2),0 2px 12px #0000001a;outline:none;transform:scale(var(--scale-subtle))}.textarea-expanding{transition:height var(--motion-standard) var(--ease-standard),border-color var(--motion-quick) var(--ease-hover);resize:none}.textarea-expanding:focus{border-color:var(--color-primary)}.icon-interactive{transition:transform var(--motion-quick) var(--ease-hover),color var(--motion-quick) var(--ease-hover);will-change:transform}.icon-interactive:hover{transform:scale(var(--scale-emphasized)) rotate(5deg);color:var(--color-primary)}.icon-bounce{transition:transform var(--motion-quick) cubic-bezier(.68,-.55,.265,1.55)}.icon-bounce:hover{animation:bounce-feedback var(--motion-standard) cubic-bezier(.68,-.55,.265,1.55)}.icon-spin-hover:hover{animation:rotate-scale .6s var(--ease-standard) infinite}.nav-item-interactive{position:relative;transition:color var(--motion-quick) var(--ease-hover),background var(--motion-standard) var(--ease-hover);border-radius:.5rem}.nav-item-interactive:before{content:"";position:absolute;inset:0;background:rgba(var(--color-primary-rgb),.05);opacity:0;border-radius:inherit;transition:opacity var(--motion-quick) var(--ease-hover);z-index:-1}.nav-item-interactive:hover:before{opacity:1}.nav-item-interactive:hover{transform:translate(2px);color:var(--color-primary)}.nav-slide{position:relative;transition:color var(--motion-quick) var(--ease-hover)}.nav-slide:after{content:"";position:absolute;left:-1rem;top:50%;width:.5rem;height:2px;background:var(--color-primary);transform:translateY(-50%) scaleX(0);transform-origin:left center;transition:transform var(--motion-standard) var(--ease-emphasized-decel)}.nav-slide:hover:after{transform:translateY(-50%) scaleX(1)}.image-zoom{overflow:hidden;transition:box-shadow var(--motion-standard) var(--ease-hover)}.image-zoom img{transition:transform var(--motion-standard) var(--ease-hover);will-change:transform}.image-zoom:hover img{transform:scale(1.1)}.image-zoom:hover{box-shadow:0 calc(var(--lift-standard) * 2) calc(var(--lift-standard) * 6) #00000026}.image-overlay{position:relative;overflow:hidden}.image-overlay:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.2),rgba(var(--color-accent-rgb),.2));opacity:0;transition:opacity var(--motion-standard) var(--ease-emphasized-decel);pointer-events:none}.image-overlay:hover:before{opacity:1}.badge-interactive{transition:transform var(--motion-quick) var(--ease-hover),box-shadow var(--motion-quick) var(--ease-hover)}.badge-interactive:hover{transform:scale(var(--scale-standard));box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.2)}.badge-pulse{animation:scale-pulse var(--motion-shimmer-cycle) ease-in-out infinite}.skeleton-shimmer{position:relative;overflow:hidden;background:var(--color-neutral-200);border-radius:.5rem}.skeleton-shimmer:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);transform:translate(-100%);animation:shimmer-wave var(--motion-shimmer-cycle) linear infinite}.dark .skeleton-shimmer{background:var(--color-neutral-700)}.dark .skeleton-shimmer:before{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.05) 50%,transparent 100%)}.spinner-rotate{animation:rotate-scale 1s linear infinite}.feedback-success{animation:bounce-feedback var(--motion-celebration) var(--ease-standard)}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.feedback-error{animation:shake .4s var(--ease-standard)}.feedback-loading{animation:pulse-glow var(--motion-shimmer-cycle) ease-in-out infinite}.hover-group:hover .hover-group-item{opacity:.5;transform:scale(.98);transition:opacity var(--motion-quick) var(--ease-hover),transform var(--motion-quick) var(--ease-hover)}.hover-group:hover .hover-group-item:hover{opacity:1;transform:scale(1.02)}.interaction-disabled{pointer-events:none;opacity:.6;cursor:not-allowed}.interaction-disabled:hover{transform:none!important;box-shadow:none!important}@media (prefers-reduced-motion: reduce){.btn-interactive,.btn-primary-interactive,.btn-subtle-interactive,.card-interactive,.card-tilt,.card-clickable,.icon-interactive,.icon-bounce,.nav-item-interactive,.image-zoom img,.badge-interactive{transition:background-color var(--motion-quick) ease,color var(--motion-quick) ease!important;transform:none!important;animation:none!important}.btn-interactive:hover,.card-interactive:hover,.link-interactive:hover{background-color:rgba(var(--color-primary-rgb),.1)}.badge-pulse,.spinner-rotate,.feedback-loading,.skeleton-shimmer:before{animation:none!important}.feedback-success,.feedback-error{animation-duration:.2s}}.btn-interactive:focus-visible,.card-interactive:focus-visible,.link-interactive:focus-visible,.input-interactive:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media print{:where(*){animation:none!important;transition:none!important;transform:none!important;box-shadow:none!important}}.interaction-fast{transition-duration:var(--motion-instant)!important}.interaction-slow{transition-duration:var(--motion-deliberate)!important}.interaction-none{pointer-events:none;cursor:default}.interaction-none:hover{transform:none;box-shadow:none}:root{--sidebar-mobile-breakpoint: 768px;--sidebar-expanded-width: 260px;--sidebar-collapsed-width: 72px;--sidebar-expand-duration: .3s;--sidebar-collapse-duration: .42s;--sidebar-content-delay: 80ms;--sidebar-content-duration: .25s;--sidebar-expand-easing: cubic-bezier(.175, .885, .32, 1.275);--sidebar-collapse-easing: cubic-bezier(.25, .46, .45, .94);--sidebar-content-easing: cubic-bezier(.4, 0, .2, 1);--sidebar-transition-duration: var(--sidebar-expand-duration);--sidebar-transition-easing: var(--sidebar-expand-easing);--sidebar-touch-target: 44px;--sidebar-icon-size: 20px;--sidebar-gap: .25rem;--sidebar-padding: .5rem}@media (width >=640px){:root{--sidebar-collapsed-width: 72px;--sidebar-expanded-width: 280px}}@media (width >=768px){:root{--sidebar-collapsed-width: 80px;--sidebar-expanded-width: 260px}}@media (width >=768px){.main-content[data-sidebar-expanded=true],.main-content[data-sidebar-expanded=false]{margin-left:0;flex:1;min-width:0}}@media (width < 768px){.main-content{margin-left:0;width:100%;max-width:100%}}.main-content,.page-content{transition:width var(--sidebar-expand-duration) var(--sidebar-expand-easing),max-width var(--sidebar-expand-duration) var(--sidebar-expand-easing)}.main-content[data-sidebar-expanded=false],.page-content[data-sidebar-expanded=false]{transition:width var(--sidebar-collapse-duration) var(--sidebar-collapse-easing),max-width var(--sidebar-collapse-duration) var(--sidebar-collapse-easing)}.sidebar-wrapper{transition:width var(--sidebar-expand-duration) var(--sidebar-expand-easing);contain:style}.sidebar-container{transition:width var(--sidebar-expand-duration) var(--sidebar-expand-easing),transform var(--sidebar-expand-duration) var(--sidebar-expand-easing);contain:layout style;will-change:transform}.sidebar-container[data-collapsed=true]{transition:width var(--sidebar-collapse-duration) var(--sidebar-collapse-easing),transform var(--sidebar-collapse-duration) var(--sidebar-collapse-easing)}.sidebar-nav-item,.sidebar-nav-item-collapsed{transition:opacity var(--sidebar-content-duration) var(--sidebar-content-easing),transform var(--sidebar-content-duration) var(--sidebar-content-easing)}.sidebar-container:not([data-collapsed=true]) .sidebar-nav-item{transition-delay:var(--sidebar-content-delay)}.sidebar-container[data-collapsed=true] .sidebar-nav-item{transition-delay:0ms}@media (768px <=width <=1024px){.main-content{contain:style}}@media (width > 1024px){.main-content{contain:style}}.sidebar-container,.main-content,.page-content{will-change:transform,width;transform:translateZ(0);backface-visibility:hidden}.sidebar-wrapper{will-change:width;backface-visibility:hidden}@media (prefers-reduced-motion: reduce){:root{--sidebar-expand-duration: 0ms !important;--sidebar-collapse-duration: 0ms !important;--sidebar-content-delay: 0ms !important;--sidebar-content-duration: 0ms !important}.main-content,.page-content,.sidebar-container,.sidebar-nav-item,.sidebar-nav-item-collapsed{transition:none!important;animation:none!important;transform:none!important}}.sidebar-container:not(.transitioning){will-change:auto}@media (width < 768px){.sidebar-container[aria-hidden=true] *{pointer-events:none;tab-index:-1}}@media (width >=768px){.sidebar-container[data-collapsed=true]{pointer-events:auto!important;visibility:visible!important}.sidebar-container[data-collapsed=true] *{pointer-events:auto!important;tab-index:0}.sidebar-container[data-collapsed=true] .sidebar-nav-item-collapsed{pointer-events:auto!important;cursor:pointer!important;opacity:1!important;visibility:visible!important}#sidebar[data-collapsed=true]{transform:translate(0)!important}}.sidebar-container[aria-hidden=false] *{pointer-events:auto}html[data-sidebar-tier=literacy]{--sidebar-touch-target: 64px;--sidebar-icon-size: 48px;--sidebar-gap: .75rem;--sidebar-padding: .5rem}html[data-sidebar-tier=literacy] .sidebar-nav-item,html[data-sidebar-tier=literacy] .sidebar-nav-item-collapsed{min-width:var(--sidebar-touch-target);min-height:var(--sidebar-touch-target);padding:1rem;border-radius:var(--radius-2xl, 1.25rem)}html[data-sidebar-tier=literacy] .nav-icon-wrapper{width:var(--sidebar-icon-size);height:var(--sidebar-icon-size)}html[data-sidebar-tier=literacy] .nav-icon-wrapper svg{width:var(--sidebar-icon-size);height:var(--sidebar-icon-size)}html[data-sidebar-tier=literacy] .course-label,html[data-sidebar-tier=literacy] .nav-label{display:none}html[data-sidebar-tier=elementary]{--sidebar-touch-target: 48px;--sidebar-icon-size: 24px;--sidebar-gap: .5rem;--sidebar-padding: .5rem}html[data-sidebar-tier=elementary] .sidebar-nav-item,html[data-sidebar-tier=elementary] .sidebar-nav-item-collapsed{min-height:var(--sidebar-touch-target);padding:.875rem 1rem}html[data-sidebar-tier=elementary] .nav-icon-wrapper{width:var(--sidebar-icon-size);height:var(--sidebar-icon-size)}html[data-sidebar-tier=middle_school]{--sidebar-touch-target: 48px;--sidebar-icon-size: 20px;--sidebar-gap: .25rem;--sidebar-padding: .5rem}html[data-sidebar-tier=middle_school] .sidebar-nav-item,html[data-sidebar-tier=middle_school] .sidebar-nav-item-collapsed{min-height:var(--sidebar-touch-target)}html[data-sidebar-tier=high_school]{--sidebar-touch-target: 44px;--sidebar-icon-size: 20px;--sidebar-gap: .25rem;--sidebar-padding: .5rem}html[data-sidebar-tier=high_school] .sidebar-nav-item,html[data-sidebar-tier=high_school] .sidebar-nav-item-collapsed{min-height:var(--sidebar-touch-target)}html[data-sidebar-tier=college]{--sidebar-touch-target: 44px;--sidebar-icon-size: 20px;--sidebar-gap: .25rem;--sidebar-padding: .5rem}html[data-sidebar-tier=college] .sidebar-nav-item,html[data-sidebar-tier=college] .sidebar-nav-item-collapsed{min-height:var(--sidebar-touch-target)}html[data-sidebar-tier=teacher],html[data-sidebar-tier=parent],html[data-sidebar-tier=admin]{--sidebar-touch-target: 44px;--sidebar-icon-size: 20px;--sidebar-gap: .25rem;--sidebar-padding: .5rem}html[data-sidebar-tier] .nav-group{gap:var(--sidebar-gap)}html[data-sidebar-tier] .sidebar-inner{padding:var(--sidebar-padding)}.sidebar-section-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;margin-top:.5rem;cursor:pointer;border-radius:var(--radius-md, .5rem);transition:background-color var(--duration-fast) var(--ease-out)}.sidebar-section-header:hover{background-color:var(--color-hover-surface)}.sidebar-section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted, #585452)}.sidebar-section-chevron{width:16px;height:16px;color:var(--color-text-muted);transition:transform var(--duration-fast) var(--ease-out)}.sidebar-section-header[data-expanded=true] .sidebar-section-chevron{transform:rotate(180deg)}.sidebar-section-content{display:flex;flex-direction:column;overflow:hidden;transition:max-height var(--duration-normal) var(--ease-out)}.sidebar-section-content[data-collapsed=true]{max-height:0}.sidebar-hero-item{display:flex;align-items:center;width:100%;padding:1rem;margin:0 .5rem 1rem;background:linear-gradient(135deg,var(--color-primary-50) 0%,var(--color-primary-100) 100%);border:1px solid var(--color-primary-300);border-radius:var(--shape-tab, .75rem);cursor:pointer;transition:background-color,color,opacity var(--duration-normal) var(--ease-out)}.sidebar-hero-item:hover{background:linear-gradient(135deg,var(--color-primary-100) 0%,var(--surface-primary-hover) 100%);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.2)}.sidebar-hero-item:active{transform:translateY(0)}.sidebar-hero-content{display:flex;align-items:center;gap:.75rem;flex:1}.sidebar-hero-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-primary-500);border-radius:var(--radius-md, .5rem);color:var(--color-white)}.sidebar-hero-text{font-weight:600;font-size:1rem;color:var(--color-primary-500)}.sidebar-hero-badge{display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:.7rem;font-weight:600;color:var(--color-white);background-color:var(--color-primary-500);border-radius:9999px}.sidebar-hero-badge.urgent{background-color:var(--color-error, var(--color-error));animation:pulse-badge 2s ease-in-out infinite}.dark .sidebar-hero-item{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-primary) 30%,transparent),color-mix(in srgb,var(--color-primary-800) 40%,transparent));border-color:var(--color-primary-500)}.dark .sidebar-hero-item:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary-800) 40%,transparent),color-mix(in srgb,var(--color-primary-500) 50%,transparent))}.dark .sidebar-hero-text{color:var(--surface-primary-hover)}.sidebar-container[data-collapsed=true] .sidebar-hero-item{padding:.75rem;margin:0 auto 1rem;width:auto;justify-content:center}.sidebar-container[data-collapsed=true] .sidebar-hero-text{display:none}.sidebar-container[data-collapsed=true] .sidebar-hero-content{gap:0}html[data-literacy-mode=true] .sidebar-container .section-header,html[data-literacy-mode=true] .sidebar-container .nav-group:not(.literacy-nav-group),html[data-literacy-mode=true] .sidebar-container .admin-section,html[data-literacy-mode=true] .sidebar-container .nav-wrapper,html[data-literacy-mode=true] .sidebar-container .courses-header-wrapper,html[data-literacy-mode=true] .sidebar-container .courses-list-wrapper{display:none}html[data-literacy-mode=true] .literacy-nav{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:1rem}html[data-literacy-mode=true] .sidebar-nav-item:after,html[data-literacy-mode=true] .literacy-nav-button:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--color-primary-400);border-radius:50%;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}html[data-literacy-mode=true] .sidebar-nav-item:focus:after,html[data-literacy-mode=true] .sidebar-nav-item:hover:after,html[data-literacy-mode=true] .literacy-nav-button:focus:after,html[data-literacy-mode=true] .literacy-nav-button:hover:after{opacity:1}::view-transition-old(root),::view-transition-new(root){animation-duration:0s}:root[data-theme=cocovox]::view-transition-old(root),:root[data-theme=cocovox-dark]::view-transition-old(root){animation:cocovox-slide-out .3s cubic-bezier(.4,0,.2,1)}:root[data-theme=cocovox]::view-transition-new(root),:root[data-theme=cocovox-dark]::view-transition-new(root){animation:cocovox-slide-in .3s cubic-bezier(0,0,.2,1)}@keyframes cocovox-slide-in{0%{transform:translate(30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes cocovox-slide-out{0%{transform:translate(0);opacity:1}to{transform:translate(-30px);opacity:0}}:root[data-theme=modern]::view-transition-old(root),:root[data-theme=modern-dark]::view-transition-old(root){animation:modern-fade-out var(--modern-page-duration-professional, .4s) var(--modern-easing-professional, cubic-bezier(.25, .8, .25, 1))}:root[data-theme=modern]::view-transition-new(root),:root[data-theme=modern-dark]::view-transition-new(root){animation:modern-fade-in var(--modern-page-duration-professional, .4s) var(--modern-easing-professional, cubic-bezier(.25, .8, .25, 1))}@keyframes modern-fade-in{0%{opacity:0;transform:scale(1.02);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;transform:scale(1);-webkit-backdrop-filter:blur(var(--modern-backdrop-blur-professional, 20px));backdrop-filter:blur(var(--modern-backdrop-blur-professional, 20px))}}@keyframes modern-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.98)}}:root[data-theme=circuit]::view-transition-old(root),:root[data-theme=circuit-light]::view-transition-old(root){animation:circuit-wipe-out var(--circuit-page-duration-technical, 275ms) var(--circuit-easing-technical, linear)}:root[data-theme=circuit]::view-transition-new(root),:root[data-theme=circuit-light]::view-transition-new(root){animation:circuit-wipe-in var(--circuit-page-duration-technical, 275ms) var(--circuit-easing-technical, linear)}@keyframes circuit-wipe-in{0%{clip-path:inset(0 100% 0 0);filter:brightness(1.2) contrast(1.1)}50%{filter:brightness(1.5) contrast(1.3);box-shadow:inset 0 0 20px #00ffff4d}to{clip-path:inset(0 0 0 0);filter:brightness(1) contrast(1)}}@keyframes circuit-wipe-out{0%{clip-path:inset(0 0 0 0)}to{clip-path:inset(0 0 0 100%)}}:root[data-theme=coral]::view-transition-old(root),:root[data-theme=coral-light]::view-transition-old(root){animation:coral-morph-out var(--coral-page-duration-organic, .35s) var(--coral-easing-organic, cubic-bezier(.25, .46, .45, .94))}:root[data-theme=coral]::view-transition-new(root),:root[data-theme=coral-light]::view-transition-new(root){animation:coral-morph-in var(--coral-page-duration-organic, .35s) var(--coral-easing-organic, cubic-bezier(.25, .46, .45, .94))}@keyframes coral-morph-in{0%{opacity:0;transform:translateY(10px) scale(.98);filter:sepia(10%) blur(2px)}70%{filter:sepia(5%) blur(1px)}to{opacity:1;transform:translateY(0) scale(1);filter:sepia(0%) blur(0px)}}@keyframes coral-morph-out{0%{opacity:1;transform:translateY(0);filter:blur(0px)}to{opacity:0;transform:translateY(-10px);filter:blur(5px) sepia(10%)}}:root[data-theme=velvet]::view-transition-old(root),:root[data-theme=velvet-dawn]::view-transition-old(root){animation:velvet-turn-out var(--velvet-page-duration-elegant, .3s) var(--velvet-easing-elegant, ease-out)}:root[data-theme=velvet]::view-transition-new(root),:root[data-theme=velvet-dawn]::view-transition-new(root){animation:velvet-turn-in var(--velvet-page-duration-elegant, .3s) var(--velvet-easing-elegant, ease-out)}@keyframes velvet-turn-in{0%{opacity:0;transform:translateY(20px) rotateX(-5deg);transform-origin:top center}to{opacity:1;transform:translateY(0) rotateX(0)}}@keyframes velvet-turn-out{0%{opacity:1;transform:translateY(0) rotateX(0);transform-origin:top center}to{opacity:0;transform:translateY(-20px) rotateX(5deg)}}[data-theme=cocovox] .stagger-child,[data-theme=cocovox-dark] .stagger-child{animation:stagger-fade-in .4s var(--cocovox-easing-playful, cubic-bezier(.34, 1.56, .64, 1)) both}[data-theme=cocovox] .stagger-child:nth-child(1),[data-theme=cocovox-dark] .stagger-child:nth-child(1){animation-delay:0ms}[data-theme=cocovox] .stagger-child:nth-child(2),[data-theme=cocovox-dark] .stagger-child:nth-child(2){animation-delay:50ms}[data-theme=cocovox] .stagger-child:nth-child(3),[data-theme=cocovox-dark] .stagger-child:nth-child(3){animation-delay:.1s}[data-theme=cocovox] .stagger-child:nth-child(4),[data-theme=cocovox-dark] .stagger-child:nth-child(4){animation-delay:.15s}[data-theme=cocovox] .stagger-child:nth-child(5),[data-theme=cocovox-dark] .stagger-child:nth-child(5){animation-delay:.2s}@keyframes stagger-fade-in{0%{opacity:0;transform:translateY(20px) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@media (prefers-reduced-motion: reduce){::view-transition-old(root),::view-transition-new(root),.stagger-child{animation:none!important;transition:opacity .1s ease!important}}body.protanopia{filter:url(#protanopia-filter)!important}body.deuteranopia{filter:url(#deuteranopia-filter)!important}body.tritanopia{filter:url(#tritanopia-filter)!important}body.achromatopsia{filter:url(#achromatopsia-filter)!important}@font-face{font-family:OpenDyslexic;src:url(../../../assets/fonts/OpenDyslexic-Regular.woff2) format("woff2"),url(../../../assets/fonts/OpenDyslexic-Regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:OpenDyslexic;src:url(../../../assets/fonts/OpenDyslexic-Bold.woff2) format("woff2"),url(../../../assets/fonts/OpenDyslexic-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}.use-dyslexic-font,.dyslexic-font,[data-dyslexic=true]{font-family:OpenDyslexic,Arial,sans-serif!important}[data-dyslexic=true] *:not(i):not(.icon):not([class*=icon]):not(svg){font-family:OpenDyslexic,Arial,sans-serif!important}.high-contrast-mode{filter:contrast(150%) brightness(120%)}.increased-line-spacing{line-height:1.8!important}.large-text-mode{font-size:1.2rem!important}.dyslexic-debug *{border:1px solid red!important}:root{--vh: 1vh;--visual-vh: 1vh;--viewport-height-small: 100svh;--viewport-height-large: 100lvh;--viewport-height-dynamic: 100dvh;--app-header-height: 56px;--app-footer-height: 56px;--app-header-height-mobile: 48px;--app-footer-height-mobile: 64px;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--app-chrome-top: calc(var(--app-header-height-mobile) + var(--safe-top));--app-chrome-bottom: calc(var(--app-footer-height-mobile) + var(--safe-bottom));--content-height: calc(100svh - var(--app-chrome-top) - var(--app-chrome-bottom));--content-height-with-input: calc(100svh - var(--app-chrome-top) - var(--app-chrome-bottom) - var(--chat-input-height, 60px));--keyboard-height: 0px;--visual-viewport-height: 100svh}.app-shell{position:fixed;inset:0;display:flex;flex-direction:column;height:100svh;height:calc(var(--vh, 1vh) * 100);overflow:hidden;background:var(--surface-background)}.app-shell-relative{position:relative;min-height:100svh;min-height:calc(var(--vh, 1vh) * 100);display:flex;flex-direction:column;overflow:hidden}.app-header{flex-shrink:0;position:sticky;top:0;z-index:100;height:var(--app-header-height-mobile);padding-top:var(--safe-top);background:var(--surface-background)}.app-footer{flex-shrink:0;position:sticky;bottom:0;z-index:100;min-height:var(--app-footer-height-mobile);padding-bottom:var(--safe-bottom);background:var(--surface-background)}.app-content{flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0}.app-content-fixed{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.chat-layout{display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-messages{flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;min-height:0;contain:layout style}.chat-input-area{flex-shrink:0;position:relative;background:var(--surface-background);border-top:1px solid var(--border-color-default, var(--color-neutral-200));padding-bottom:max(var(--space-2, .5rem),var(--safe-bottom))}.chat-input-keyboard-aware{transform:translateY(calc(-1 * var(--keyboard-height)));transition:transform .2s ease}.fullscreen-view{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;background:var(--surface-background);padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right)}.fullscreen-content{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.fullscreen-immersive{padding:0}.modal-fullscreen{position:fixed;inset:0;z-index:999;display:flex;flex-direction:column;height:100dvh;max-height:100dvh;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom)}.modal-bottom-sheet{position:fixed;bottom:0;left:0;right:0;z-index:999;max-height:calc(100dvh - var(--safe-top) - 20px);padding-bottom:var(--safe-bottom);border-radius:16px 16px 0 0;background:var(--surface-card)}.modal-centered{position:fixed;inset:0;z-index:999;display:flex;align-items:center;justify-content:center;padding:var(--space-4);overflow:hidden}.modal-centered-content{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 40px);max-width:calc(100vw - var(--safe-left) - var(--safe-right) - 32px);overflow-y:auto;overflow-x:hidden}.scroll-container{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;transform:translateZ(0);will-change:scroll-position}.scroll-container-x{overflow-y:hidden;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.scroll-container-x>*{scroll-snap-align:start}.scroll-fixed-height{height:var(--content-height);max-height:var(--content-height)}.scroll-fill{flex:1;min-height:0}html.keyboard-visible{--content-height: calc(var(--visual-viewport-height) - var(--app-chrome-top))}html.keyboard-visible .hide-on-keyboard{display:none!important}html.keyboard-visible .shrink-on-keyboard{max-height:30vh;overflow-y:auto}html.keyboard-visible .app-header{height:auto;min-height:40px}html.keyboard-visible .chat-input-area{position:fixed;bottom:var(--keyboard-height);left:0;right:0;padding-bottom:var(--space-2)}@media (display-mode: standalone){.app-shell,.app-shell-relative{height:100vh;height:100svh}.app-header{padding-top:var(--safe-top)}.app-footer{padding-bottom:var(--safe-bottom)}}@media (orientation: landscape) and (max-height: 500px){:root{--app-header-height-mobile: 40px;--app-footer-height-mobile: 48px}.app-header{padding-top:0;height:40px}.hide-landscape-mobile{display:none!important}.chat-messages{padding-left:max(var(--space-3),var(--safe-left));padding-right:max(var(--space-3),var(--safe-right))}}@media (orientation: portrait){.hide-portrait{display:none!important}}.no-scroll{overflow:hidden!important;position:fixed;width:100%;height:100%}body.scroll-locked{overflow:hidden;position:fixed;width:100%;top:0;left:0}@media (max-width: 640px){.app-tight-spacing{--spacing-xs: .125rem;--spacing-sm: .25rem;--spacing-md: .5rem;--spacing-lg: .75rem;--spacing-xl: 1rem}.list-compact>*{padding-top:var(--space-2);padding-bottom:var(--space-2)}.margin-compact{margin:var(--space-2)}}.fit-viewport{height:100svh;height:calc(var(--vh, 1vh) * 100);max-height:100svh;overflow:hidden}.fit-content-area{height:var(--content-height);max-height:var(--content-height);overflow:hidden}.flex-height{flex:1;min-height:200px;max-height:var(--content-height);overflow-y:auto}@media (prefers-reduced-motion: reduce){.scroll-container,.chat-input-keyboard-aware{scroll-behavior:auto;transition:none}}.debug-viewport:after{content:"H: " attr(data-vh) " | K: " attr(data-keyboard);position:fixed;bottom:60px;right:10px;background:var(--color-black-alpha-70);color:var(--color-white);padding:var(--space-1) 8px;font-size:10px;border-radius:4px;z-index:9999;pointer-events:none}.android-safe-top{padding-top:env(safe-area-inset-top,0px)}.android-safe-right{padding-right:env(safe-area-inset-right,0px)}.android-safe-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}.android-safe-left{padding-left:env(safe-area-inset-left,0px)}.android-safe-all{padding-top:env(safe-area-inset-top,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px)}.android-safe-top-min{padding-top:max(var(--space-3, 1rem),env(safe-area-inset-top,0px))}.android-safe-bottom-min{padding-bottom:max(var(--space-3, 1rem),env(safe-area-inset-bottom,0px))}.android-fixed-header{position:fixed;top:0;left:0;right:0;padding-top:env(safe-area-inset-top,0px);z-index:100}.android-fixed-footer{position:fixed;bottom:0;left:0;right:0;padding-bottom:env(safe-area-inset-bottom,0px);z-index:100}:root{--android-keyboard-height: 0px}html.android-keyboard-visible .hide-on-keyboard{display:none!important}html.android-keyboard-visible .fade-on-keyboard{opacity:0;pointer-events:none;transition:opacity .2s ease}html.android-keyboard-visible .adjust-for-keyboard{transform:translateY(calc(-1 * var(--android-keyboard-height)));transition:transform .2s ease}html.android-keyboard-visible .modal-content{max-height:calc(100vh - var(--android-keyboard-height) - 40px);max-height:calc(100svh - var(--android-keyboard-height) - 40px);overflow-y:auto}.android-touch-target{min-height:48px;min-width:48px;display:inline-flex;align-items:center;justify-content:center}.android-touch-target-lg{min-height:56px;min-width:56px}.android-touch-padding{padding:var(--space-3)}.android-scroll{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}.android-scroll-x{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-behavior:smooth}.android-no-overscroll{overscroll-behavior:none}.android-scroll-snap{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.android-scroll-snap>*{scroll-snap-align:start}.gpu-accelerated{transform:translateZ(0);will-change:transform;backface-visibility:hidden}.gpu-accelerated-opacity{will-change:opacity}.gpu-accelerated-transform,.gpu-accelerated-auto{will-change:transform}.gpu-accelerated-auto:not(:hover):not(:focus):not(:active){will-change:auto}.android-no-highlight{-webkit-tap-highlight-color:transparent}.android-touch-manipulation{touch-action:manipulation}.android-no-select{user-select:none;-webkit-user-select:none}.android-input{font-size:16px!important;min-height:48px;padding:var(--space-3) 16px;border-radius:8px;border:1px solid var(--border-color-default, var(--color-neutral-200));background:var(--surface-card, var(--color-white));color:var(--text-primary, var(--color-neutral-900))}.android-input:focus{outline:2px solid var(--theme-color-primary, var(--color-primary-500));outline-offset:2px}@keyframes android-fade-in{0%{opacity:0}to{opacity:1}}.android-animate-fade-in{animation:android-fade-in .2s ease forwards}@keyframes android-slide-up{0%{opacity:0;transform:translateY(20px) translateZ(0)}to{opacity:1;transform:translateY(0) translateZ(0)}}.android-animate-slide-up{animation:android-slide-up .3s ease forwards}@keyframes android-scale-in{0%{opacity:0;transform:scale(.95) translateZ(0)}to{opacity:1;transform:scale(1) translateZ(0)}}.android-animate-scale-in{animation:android-scale-in .2s ease forwards}html:not(.is-android) .android-only{display:none!important}html.is-android .android-hidden{display:none!important}@media (prefers-reduced-motion: reduce){.android-animate-fade-in,.android-animate-slide-up,.android-animate-scale-in{animation:none!important;opacity:1;transform:none}.gpu-accelerated,.gpu-accelerated-auto{will-change:auto;transform:none}.adjust-for-keyboard{transition:none!important}}.dark .android-input{border-color:var(--border-color-default, var(--color-neutral-600));background:var(--surface-card, var(--color-neutral-700));color:var(--text-primary)}@media (horizontal-viewport-segments: 2){.android-foldable-span{display:grid;grid-template-columns:env(viewport-segment-width 0 0) env(viewport-segment-width 1 0);gap:env(viewport-segment-left 1 0,0px)}}@media (vertical-viewport-segments: 2){.android-foldable-span-vertical{display:grid;grid-template-rows:env(viewport-segment-height 0 0) env(viewport-segment-height 0 1);gap:env(viewport-segment-top 0 1,0px)}}:root{--thinking-state-active: #6366f1;--thinking-state-complete: var(--color-success);--thinking-state-idle: #64748b;--thinking-state-error: var(--color-error);--thinking-bg-active: var(--color-accent-alpha-10);--thinking-bg-complete: var(--color-success-alpha-10);--thinking-bg-idle: rgba(100, 116, 139, .05);--thinking-bg-error: var(--color-error-alpha-10);--thinking-border-active: var(--color-accent-alpha-30);--thinking-border-complete: var(--color-success-alpha-30);--thinking-border-idle: rgba(100, 116, 139, .2);--thinking-border-error: var(--color-error-alpha-30);--budget-low: #fbbf24;--budget-medium: var(--color-primary-500);--budget-high: #8b5cf6;--budget-exhausted: #dc2626;--efficiency-excellent: #059669;--efficiency-good: #0891b2;--efficiency-fair: #d97706;--efficiency-poor: #dc2626;--thinking-space-xs: .25rem;--thinking-space-sm: .5rem;--thinking-space-md: 1rem;--thinking-space-lg: 1.5rem;--thinking-space-xl: 2rem;--thinking-space-2xl: 3rem;--thinking-font-size-xs: .75rem;--thinking-font-size-sm: .875rem;--thinking-font-size-md: 1rem;--thinking-font-size-lg: 1.125rem;--thinking-font-size-xl: 1.25rem;--thinking-font-weight-normal: 400;--thinking-font-weight-medium: 500;--thinking-font-weight-semibold: 600;--thinking-font-weight-bold: 700;--thinking-line-height-tight: 1.25;--thinking-line-height-normal: 1.5;--thinking-line-height-relaxed: 1.75;--thinking-anim-duration-fast: .15s;--thinking-anim-duration-normal: .3s;--thinking-anim-duration-slow: .5s;--thinking-anim-easing-standard: cubic-bezier(.4, 0, .2, 1);--thinking-anim-easing-decel: cubic-bezier(0, 0, .2, 1);--thinking-anim-easing-accel: cubic-bezier(.4, 0, 1, 1);--thinking-radius-sm: .25rem;--thinking-radius-md: .5rem;--thinking-radius-lg: .75rem;--thinking-radius-xl: 1rem;--thinking-radius-full: 9999px;--thinking-border-width: 1px;--thinking-border-width-thick: 2px;--thinking-shadow-sm: 0 1px 2px var(--color-black-alpha-5);--thinking-shadow-md: 0 4px 6px var(--color-black-alpha-10);--thinking-shadow-lg: 0 10px 15px var(--color-black-alpha-10);--thinking-shadow-xl: 0 20px 25px var(--color-black-alpha-15);--thinking-z-base: 1;--thinking-z-indicator: 10;--thinking-z-dropdown: 100;--thinking-z-modal: 1000;--thinking-z-toast: 2000;--thinking-z-tooltip: 3000}:where(.dark){--thinking-state-active: #818cf8;--thinking-state-complete: #34d399;--thinking-state-idle: #94a3b8;--thinking-bg-active: rgba(129, 140, 248, .15);--thinking-bg-complete: rgba(52, 211, 153, .15);--thinking-bg-idle: rgba(148, 163, 184, .1);--thinking-shadow-sm: 0 1px 2px var(--color-black-alpha-30);--thinking-shadow-md: 0 4px 6px var(--color-black-alpha-40);--thinking-shadow-lg: 0 10px 15px var(--color-black-alpha-50);--thinking-shadow-xl: 0 20px 25px var(--color-black-alpha-60)}.thinking-state-active{color:var(--thinking-state-active);background:var(--thinking-bg-active);border-color:var(--thinking-border-active)}.thinking-state-complete{color:var(--thinking-state-complete);background:var(--thinking-bg-complete);border-color:var(--thinking-border-complete)}.thinking-state-idle{color:var(--thinking-state-idle);background:var(--thinking-bg-idle);border-color:var(--thinking-border-idle)}@keyframes thinking-pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes thinking-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes thinking-fade-in{0%{opacity:0}to{opacity:1}}@keyframes thinking-slide-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.thinking-animate-pulse{animation:thinking-pulse 2s ease-in-out infinite}.thinking-animate-spin{animation:thinking-spin 1.5s linear infinite}.thinking-animate-fade-in{animation:thinking-fade-in var(--thinking-anim-duration-normal) var(--thinking-anim-easing-standard)}.thinking-animate-slide-up{animation:thinking-slide-up var(--thinking-anim-duration-normal) var(--thinking-anim-easing-decel)}@media (prefers-reduced-motion: reduce){.thinking-animate-pulse,.thinking-animate-spin,.thinking-animate-fade-in,.thinking-animate-slide-up{animation:none}:root{--thinking-anim-duration-fast: 1ms;--thinking-anim-duration-normal: 1ms;--thinking-anim-duration-slow: 1ms}}@media (prefers-contrast: high){:root{--thinking-border-width: 2px;--thinking-border-width-thick: 3px}}.thinking-focusable:focus-visible{outline:2px solid var(--thinking-state-active);outline-offset:2px}.layout-transition.svelte-12qhfyh{animation:fade-in .15s var(--ease-standard, ease-out)}@media (prefers-reduced-motion: reduce){.layout-transition.svelte-12qhfyh{animation:none}}
