.page-intro{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page-intro__main{align-items:center;gap:var(--space-3);min-width:0;display:flex}.page-intro__icon{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--page-intro-accent-500) 16%, transparent);width:3rem;height:3rem;color:var(--page-intro-accent-600);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.page-intro__icon svg{width:1.5rem;height:1.5rem}.page-intro__text{min-width:0}.page-intro__title{font-size:var(--app-page-title-size);font-weight:var(--app-page-title-weight);letter-spacing:-.025em;color:var(--color-text-primary);margin:0}.page-intro__subtitle{max-width:42rem;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:.3rem 0 0;line-height:1.5}.page-intro__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.page-intro,.page-intro--brand{--page-intro-accent-500:var(--color-brand-500);--page-intro-accent-600:var(--color-brand-600)}.page-intro--success{--page-intro-accent-500:var(--color-success-500);--page-intro-accent-600:var(--color-success-600)}.page-intro--warning{--page-intro-accent-500:var(--color-warning-500);--page-intro-accent-600:var(--color-warning-600)}.page-intro--info{--page-intro-accent-500:var(--color-info-500);--page-intro-accent-600:var(--color-info-600)}.page-intro--purple{--page-intro-accent-500:var(--color-purple-500);--page-intro-accent-600:var(--color-purple-600)}.page-intro--danger{--page-intro-accent-500:var(--color-danger-500);--page-intro-accent-600:var(--color-danger-600)}.page-intro--neutral{--page-intro-accent-500:var(--color-text-tertiary);--page-intro-accent-600:var(--color-text-secondary)}@media (width<=48rem){.page-intro__actions{flex-wrap:wrap;flex-shrink:1;width:100%;min-width:0}}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 1.5rem;display:flex}.empty-state__icon{color:var(--color-border);margin-bottom:.25rem}.empty-state__title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.empty-state__description{font-size:var(--font-size-sm);color:var(--color-text-muted);max-width:28rem;margin:0;line-height:1.6}.empty-state__action{margin-top:.5rem}.inline-error-banner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-danger-50);border:1px solid var(--color-danger-200);color:var(--color-danger-700);font-size:var(--font-size-sm);line-height:var(--line-height-normal);align-items:flex-start;gap:.625rem;display:flex}.inline-error-banner__icon{color:var(--color-danger-500);flex-shrink:0;margin-top:.1rem}.inline-error-banner__body{flex:1;min-width:0}.inline-error-banner__message{margin:0}.inline-error-banner__retry{font-size:var(--font-size-xs);color:var(--color-danger-700);text-underline-offset:2px;margin-top:.25rem;padding:0;text-decoration:underline}.inline-error-banner__retry:hover:not(:disabled){color:var(--color-danger-800)}.success-banner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-success-50);border:1px solid var(--color-success-200);color:var(--color-success-700);font-size:var(--font-size-sm);line-height:var(--line-height-normal);align-items:center;gap:.625rem;display:flex}.success-banner__icon{color:var(--color-success-500);flex-shrink:0}.success-banner__message{flex:1;margin:0}.confirm-dialog__description{margin:0 0 var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.6}.status-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:.02em;white-space:nowrap;align-items:center;gap:.375rem;padding:.1875rem .625rem;line-height:1;display:inline-flex}.status-badge__dot{background:currentColor;border-radius:50%;flex-shrink:0;width:.375rem;height:.375rem}.status-badge__spinner{border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0;width:.75rem;height:.75rem;animation:.7s linear infinite status-badge-spin;display:inline-block}@keyframes status-badge-spin{to{transform:rotate(360deg)}}.status-badge--success{background:var(--color-success-50);color:var(--color-success-700)}.status-badge--warning{background:var(--color-warning-50);color:var(--color-warning-700)}.status-badge--danger{background:var(--color-danger-50);color:var(--color-danger-700)}.status-badge--muted{background:var(--color-bg-elevated);color:var(--color-text-muted)}.status-badge--processing{background:var(--color-info-50);color:var(--color-info-700)}.loading-spinner{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex}.loading-spinner__ring{border:2.5px solid var(--color-border-light);border-top-color:var(--color-brand-500);border-radius:50%;flex-shrink:0;width:2rem;height:2rem;animation:.7s linear infinite spin}.loading-spinner--sm .loading-spinner__ring{border-width:2px;width:1.25rem;height:1.25rem}.loading-spinner--lg .loading-spinner__ring{border-width:3px;width:3rem;height:3rem}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner__text{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.breadcrumb{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.breadcrumb__item{align-items:center;gap:.25rem;min-width:0;display:flex}.breadcrumb__link{color:var(--color-text-muted);font-weight:var(--font-weight-medium);transition:color var(--transition-fast);text-overflow:ellipsis;white-space:nowrap;max-width:18rem;text-decoration:none;overflow:hidden}.breadcrumb__link:hover{color:var(--color-brand-500);text-underline-offset:2px;text-decoration:underline}.breadcrumb__separator{color:var(--color-border);flex-shrink:0}.breadcrumb__current{color:var(--color-text-label);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;max-width:18rem;overflow:hidden}.progress-bar{width:100%}.progress-bar__track{background:var(--color-bg-elevated);border-radius:var(--radius-full);height:.5rem;overflow:hidden}.progress-bar--sm .progress-bar__track{height:.375rem}.progress-bar--lg .progress-bar__track{height:.75rem}.progress-bar__fill{border-radius:var(--radius-full);background:linear-gradient(90deg, var(--color-brand-500), var(--color-info-500));height:100%;transition:width .4s}.progress-bar--success .progress-bar__fill{background:var(--color-success-500)}.progress-bar--warning .progress-bar__fill{background:var(--color-warning-500)}.progress-bar--danger .progress-bar__fill{background:var(--color-danger-500)}.progress-bar__label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-medium);justify-content:space-between;align-items:center;margin-bottom:.375rem;display:flex}.step-indicator{align-items:center;gap:0;display:flex}.step-indicator__item{flex-direction:column;flex:1;align-items:center;gap:.375rem;display:flex;position:relative}.step-indicator__item:not(:last-child):after{content:"";background:var(--color-border-light);z-index:0;height:2px;position:absolute;top:1rem;left:calc(50% + 1.25rem);right:calc(1.25rem - 50%)}.step-indicator__item--completed:after{background:var(--color-brand-500)}.step-indicator__dot{width:2rem;height:2rem;font-size:.8125rem;font-weight:var(--font-weight-bold);border:2px solid var(--color-border-light);background:var(--color-bg-surface);color:var(--color-text-tertiary);z-index:1;transition:background var(--transition-base), border-color var(--transition-base), color var(--transition-base);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.step-indicator__item--active .step-indicator__dot{border-color:var(--color-brand-500);color:var(--color-brand-500);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-brand-500) 12%, transparent)}.step-indicator__item--completed .step-indicator__dot{border-color:var(--color-brand-500);background:var(--color-brand-500);color:var(--color-text-inverse)}.step-indicator__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);white-space:nowrap}.step-indicator__item--active .step-indicator__label{color:var(--color-brand-500);font-weight:var(--font-weight-semibold)}.step-indicator__item--completed .step-indicator__label{color:var(--color-text-label)}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);white-space:nowrap;border:none;padding:.5625rem 1.125rem;line-height:1;text-decoration:none;display:inline-flex;position:relative}.btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn:disabled{cursor:not-allowed;opacity:.5}.btn--sm{font-size:var(--font-size-xs);padding:.375rem .75rem}.btn--lg{font-size:var(--font-size-md);padding:.6875rem 1.5rem}.btn--icon{aspect-ratio:1;padding:.5rem}.btn--icon.btn--sm{padding:.375rem}.btn--block{width:100%}@media (width<=48rem){.btn:not(.btn--sm):not(.btn--link){min-height:2.75rem}.btn--icon:not(.btn--sm){min-width:2.75rem}}.btn--primary{background:var(--color-brand-500);color:var(--color-text-inverse);box-shadow:var(--shadow-sm)}.btn--primary:hover:not(:disabled){background:var(--color-brand-600)}.btn--primary:active:not(:disabled){background:var(--color-brand-700)}.btn--secondary{background:var(--color-bg-surface);color:var(--color-text-label);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.btn--secondary:hover:not(:disabled){background:var(--color-bg-elevated)}.btn--ghost{color:var(--color-text-secondary);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--color-bg-elevated);color:var(--color-text-primary)}.btn--danger{background:var(--color-danger-800);color:var(--color-text-inverse);box-shadow:var(--shadow-sm)}.btn--danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger-800) 85%, var(--color-shadow-ink))}.btn--link{color:var(--color-text-secondary);box-shadow:none;padding-left:var(--space-2);padding-right:var(--space-2);background:0 0}.btn--link:hover:not(:disabled){color:var(--color-text-primary);text-underline-offset:2px;background:0 0;text-decoration:underline}.btn--loading{cursor:wait}.btn__spinner{border:2px solid color-mix(in srgb, currentColor 35%, transparent);border-top-color:currentColor;border-radius:50%;flex-shrink:0;width:.875em;height:.875em;animation:.65s linear infinite spin;display:inline-block}.btn--secondary .btn__spinner,.btn--ghost .btn__spinner{border-color:color-mix(in srgb, currentColor 15%, transparent);border-top-color:currentColor}.btn__icon{flex-shrink:0;align-items:center;display:inline-flex}.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;padding:.1875rem .625rem;line-height:1;display:inline-flex}.badge__dot{background:currentColor;border-radius:50%;flex-shrink:0;width:.375rem;height:.375rem}.badge--success{background:var(--color-success-50);color:var(--color-success-700)}.badge--warning{background:var(--color-warning-50);color:var(--color-warning-700)}.badge--danger{background:var(--color-danger-50);color:var(--color-danger-700)}.badge--neutral{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.badge--info{background:var(--color-info-50);color:var(--color-info-700)}.badge--processing{background:var(--color-brand-50);color:var(--color-brand-600)}.skeleton{background:linear-gradient(90deg, var(--color-bg-elevated) 25%, var(--color-border-light) 50%, var(--color-bg-elevated) 75%);background-size:200% 100%;animation:1.4s ease-in-out infinite skeleton-shimmer;display:inline-block}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton--rect{border-radius:var(--radius-sm);width:100%;height:1rem}.skeleton--text{border-radius:var(--radius-full);width:100%;height:.875rem}.skeleton--circle{border-radius:var(--radius-full);width:2.5rem;height:2.5rem}.inline-alert{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:var(--line-height-normal);border:1px solid;display:flex}.inline-alert__icon{flex-shrink:0;margin-top:.1rem;display:inline-flex}.inline-alert__body{flex:1;min-width:0}.inline-alert__title{font-weight:var(--font-weight-semibold);margin:0 0 .125rem}.inline-alert__message{margin:0}.inline-alert__action{margin-top:var(--space-1);font-size:var(--font-size-xs);color:inherit;text-underline-offset:2px;padding:0;text-decoration:underline}.inline-alert__action:hover:not(:disabled){color:inherit;opacity:.8}.inline-alert__dismiss{color:inherit;opacity:.6;flex-shrink:0;padding:.125rem;line-height:1}.inline-alert__dismiss:hover:not(:disabled){color:inherit;opacity:1;background:0 0}.inline-alert--error{background:var(--color-danger-50);border-color:var(--color-danger-200);color:var(--color-danger-700)}.inline-alert--warning{background:var(--color-warning-50);border-color:var(--color-warning-300);color:var(--color-warning-700)}[data-theme=dark] .inline-alert--warning{color:var(--color-warning-500)}.inline-alert--success{background:var(--color-success-50);border-color:var(--color-success-200);color:var(--color-success-700)}.inline-alert--info{background:var(--color-info-50);border-color:var(--color-info-200);color:var(--color-info-700)}.toast-viewport{bottom:var(--space-6);right:var(--space-6);z-index:var(--z-toast);gap:var(--space-2);pointer-events:none;flex-direction:column;width:100%;max-width:22rem;display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-text-primary);color:var(--color-text-inverse);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--font-size-sm);line-height:var(--line-height-normal);pointer-events:all;animation:toast-in var(--transition-base) forwards;display:flex}.toast--exiting{animation:toast-out var(--transition-base) forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(.5rem)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(.5rem)scale(.97)}}.toast__icon{flex-shrink:0;margin-top:.05rem;display:inline-flex}.toast__body{flex:1;min-width:0}.toast__title{font-weight:var(--font-weight-semibold);margin:0}.toast__message{margin:0}.toast__close{color:inherit;opacity:.6;flex-shrink:0;padding:.125rem;line-height:1}.toast__close:hover:not(:disabled){color:inherit;opacity:1;background:0 0}.toast--success{background:var(--color-success-700)}.toast--error{background:var(--color-danger-700)}.toast--warning{background:var(--color-warning-700)}.toast--info{background:var(--color-brand-600)}.card{background:var(--color-bg-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card--padded>:not(.card__header):not(.card__footer){padding:var(--space-6)}.card--padded>.card__header+*{padding-top:0}.card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border-light);display:flex}.card__header-text{min-width:0}.card__title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:var(--line-height-tight);margin:0}.card__subtitle{margin:var(--space-1) 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.card__header-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.card__body{padding:var(--space-6)}.card__footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border-light);background:var(--color-bg-elevated);justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.tooltip-wrap{align-items:center;display:inline-flex;position:relative}.tooltip-pop{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);pointer-events:none;z-index:var(--z-tooltip,var(--z-dropdown));position:fixed}.tooltip-pop--top{transform:translate(-50%,-100%)}.tooltip-pop--bottom{transform:translate(-50%)}.tooltip-pop--left{transform:translate(-100%,-50%)}.tooltip-pop--right{transform:translateY(-50%)}.tooltip-pop--wide{white-space:normal;text-align:left;-webkit-hyphens:auto;hyphens:auto;width:max-content;max-width:min(20rem,86vw);line-height:1.4}.help-hint-btn{border:1px solid var(--color-border);background:var(--color-bg-elevated);width:1.125rem;height:1.125rem;color:var(--color-text-muted);font-size:.65rem;font-weight:var(--font-weight-bold);cursor:help;vertical-align:middle;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;font-family:inherit;line-height:1;display:inline-flex}@media (width<=48rem){.btn.btn--icon.help-hint-btn{min-width:1.125rem;min-height:1.125rem}}.help-hint-btn:hover,.help-hint-btn:focus-visible{border-color:var(--color-text-tertiary);color:var(--color-text-primary);outline:none}.kbd-shortcut{align-items:center;gap:.125rem;display:inline-flex}.kbd-shortcut__key{min-width:1.375rem;height:1.375rem;padding:0 var(--space-1);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);box-shadow:0 1px 0 var(--color-border);border-bottom-width:2px;justify-content:center;align-items:center;line-height:1;display:inline-flex}.kbd-shortcut__sep{font-size:var(--font-size-xs);color:var(--color-text-tertiary);padding:0 .0625rem}.offline-banner{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-warning-50);border-bottom:1px solid var(--color-warning-300);color:var(--color-warning-700);font-size:.8125rem;font-weight:var(--font-weight-medium);display:flex}.offline-banner__icon{flex-shrink:0}.install-banner{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-brand-50,var(--color-bg-elevated));border-bottom:1px solid var(--color-border-light);color:var(--color-text-label);font-size:.8125rem;font-weight:var(--font-weight-medium);display:flex}.install-banner__icon{flex-shrink:0;font-size:1.05rem}.install-banner__text{flex:1;min-width:0;line-height:1.35}.install-banner__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.install-banner__close{border-radius:var(--radius-md);width:1.75rem;height:1.75rem;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:.95rem;line-height:1;display:inline-flex}.install-banner__close:hover{background:var(--color-bg-surface);color:var(--color-text-primary)}@media (width<=30rem){.install-banner{gap:var(--space-2);flex-wrap:wrap}}@keyframes slideDown{0%{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:translateY(0)}}.search-modal__input-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);display:flex}.search-modal__icon{color:var(--color-text-tertiary);flex-shrink:0;display:flex}.search-modal__input{font-family:var(--font-family-base);font-size:var(--font-size-md);color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0}.search-modal__input::placeholder{color:var(--color-text-tertiary)}.search-modal__input::-webkit-search-cancel-button{display:none}.search-modal__esc-kbd{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-tertiary);background:var(--color-bg-elevated);cursor:pointer;flex-shrink:0;padding:.125rem .4rem}.search-modal__results{overscroll-behavior:contain;max-height:22rem;overflow-y:auto}.search-modal__status{padding:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-tertiary);text-align:center;margin:0}.search-modal__alert{margin:var(--space-2) var(--space-4)}.search-modal__section-label{padding:var(--space-2) var(--space-4) 0;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);margin:0}.search-modal__result{gap:var(--space-1);width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-family-base);text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;border-radius:0;flex-direction:column;display:flex}.search-modal__result--active,.search-modal__result:hover{background:var(--color-bg-elevated)}.search-modal__result-kind{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted);align-self:flex-start}.search-modal__result-question{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:var(--line-height-tight)}.search-modal__result-snippet{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-normal)}.search-modal__result-match{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.search-modal__footer{align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border-light);background:var(--color-bg-elevated);display:flex}.search-modal__hint{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.notif-panel{top:var(--dashboard-header-offset,3.75rem);right:max(var(--space-4), env(safe-area-inset-right,0px));width:min(24rem,100vw - 2rem);z-index:var(--z-dropdown);animation:slideDown var(--transition-base) ease;position:fixed}.notif-panel__card{border-radius:var(--radius-xl);border:1px solid var(--theme-glass-border);background:var(--theme-glass-bg);box-shadow:var(--theme-glass-shadow), var(--shadow-xl);-webkit-backdrop-filter:blur(var(--theme-glass-blur));overflow:hidden}.notif-panel__card>.card__header{padding:var(--space-4) var(--space-4) var(--space-4) var(--space-5);border-bottom-color:var(--theme-glass-border)}.notif-panel__card>.card__body{padding:0}.notif-panel__card>.card__footer{padding:var(--space-3) var(--space-4);border-top-color:var(--theme-glass-border);background:0 0}.notif-panel__body{padding:0}.notif-panel__settings-link{align-items:center;gap:var(--space-2);width:100%;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);transition:color var(--transition-fast) ease;text-decoration:none;display:flex}.notif-panel__settings-link-icon{color:var(--color-text-tertiary);transition:color var(--transition-fast) ease;display:inline-flex}.notif-panel__settings-link-icon svg{width:1rem;height:1rem}.notif-panel__settings-link-text{flex:1}.notif-panel__settings-link-chevron{color:var(--color-text-tertiary);transition:transform var(--transition-fast) ease;display:inline-flex}.notif-panel__settings-link-chevron svg{width:1rem;height:1rem}.notif-panel__settings-link:hover,.notif-panel__settings-link:focus-visible{color:var(--color-brand-600)}.notif-panel__settings-link:hover .notif-panel__settings-link-icon,.notif-panel__settings-link:focus-visible .notif-panel__settings-link-icon{color:var(--color-brand-500)}.notif-panel__settings-link:hover .notif-panel__settings-link-chevron{color:var(--color-brand-500);transform:translate(2px)}.error-boundary-fallback{justify-content:center;align-items:center;gap:var(--space-4);min-height:100dvh;padding:var(--space-8) var(--space-4);text-align:center;background:var(--color-bg-base);flex-direction:column;display:flex}.error-boundary-fallback__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.error-boundary-fallback__message{font-size:var(--font-size-sm);color:var(--color-text-muted);max-width:28rem;margin:0}@keyframes step-slide-in-right{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes step-slide-in-left{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}.step-transition--forward{animation:.22s both step-slide-in-right}.step-transition--backward{animation:.22s both step-slide-in-left}.searchable-select{width:100%;position:relative}.searchable-select__trigger{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-primary);font:inherit;font-size:var(--font-size-sm);text-align:left;cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);display:flex}.searchable-select__trigger:hover:not(:disabled){border-color:var(--color-border-focus)}.searchable-select__trigger:focus-visible{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-brand-50);outline:none}.searchable-select__trigger:disabled{opacity:.6;cursor:not-allowed}.searchable-select__trigger--placeholder .searchable-select__value{color:var(--color-text-tertiary)}.searchable-select__value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.searchable-select__chevron{color:var(--color-text-tertiary);flex-shrink:0;display:inline-flex}.searchable-select__popover{top:calc(100% + var(--space-1));z-index:var(--z-dropdown);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated,var(--color-bg-surface));max-height:20rem;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;left:0;right:0;overflow:hidden}.searchable-select__search-row{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-light,var(--color-border));display:flex}.searchable-select__search-icon{color:var(--color-text-tertiary);flex-shrink:0;display:inline-flex}.searchable-select__search-input{min-width:0;color:var(--color-text-primary);font:inherit;font-size:var(--font-size-sm);background:0 0;border:none;outline:none;flex:1}.searchable-select__search-input::placeholder{color:var(--color-text-tertiary)}.searchable-select__list{padding:var(--space-1);overflow-y:auto}.searchable-select__option{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-primary);font:inherit;font-size:var(--font-size-sm);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.searchable-select__option--active{background:var(--color-bg-base)}.searchable-select__option--selected{font-weight:var(--font-weight-medium);color:var(--color-brand-600)}.searchable-select__option-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.searchable-select__option-check{color:var(--color-brand-600);flex-shrink:0;display:inline-flex}.searchable-select__empty{padding:var(--space-3);color:var(--color-text-tertiary);font-size:var(--font-size-sm);text-align:center;margin:0}.searchable-select__option--create{color:var(--color-brand-600);border-top:1px solid var(--color-border-light);border-radius:0;justify-content:flex-start}.searchable-select__option--create:disabled{cursor:default;opacity:.7}.searchable-select__option-icon{flex-shrink:0;align-items:center;display:inline-flex}.searchable-select__spinner{border:2px solid var(--color-border-light);border-top-color:var(--color-brand-500);border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite spin;display:inline-block}.searchable-select__create-error{padding:var(--space-2) var(--space-3);color:var(--color-danger-600);font-size:var(--font-size-xs);margin:0}.nav-tabs{top:var(--dashboard-header-offset,0px);z-index:var(--z-sticky);justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-2);padding-bottom:var(--space-2);margin-bottom:var(--space-5);background:var(--app-canvas-bg-layers);display:flex;position:sticky}.nav-tabs__list{gap:var(--space-1);min-width:0;padding-inline:var(--space-2);scrollbar-width:none;display:flex;overflow-x:auto}.nav-tabs__list::-webkit-scrollbar{display:none}.nav-tabs__tab{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);white-space:nowrap;transition:color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);text-decoration:none;display:inline-flex}.nav-tabs__tab:hover{background:var(--app-tab-hover-bg);color:var(--color-text-primary)}.nav-tabs__tab--active,.nav-tabs__tab--active:hover{background:var(--app-tab-active-bg);box-shadow:var(--app-tab-active-glow);color:var(--app-tab-active-text);font-weight:var(--font-weight-semibold)}.nav-tabs__count{min-width:1.375rem;padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;display:inline-flex}.nav-tabs__tab--active .nav-tabs__count{background:var(--color-brand-50);color:var(--app-tab-active-text)}.nav-tabs__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}@media (width<=40rem){.nav-tabs__tab{padding:var(--space-3)}.nav-tabs__list{flex-wrap:wrap;overflow-x:visible}}.md-toolbar{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.md-toolbar__buttons{align-items:center;gap:var(--space-1);display:inline-flex}.md-toolbar__btn{min-width:1.75rem;height:1.75rem;padding:0 var(--space-2);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-secondary);font:inherit;cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.md-toolbar__btn:hover:not(:disabled){background:var(--color-bg-elevated);border-color:var(--color-border);color:var(--color-text-primary)}.md-toolbar__btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.md-toolbar__btn:disabled{opacity:.5;cursor:not-allowed}.md-toolbar__glyph{font-size:var(--font-size-xs);line-height:1}.md-toolbar__glyph--bold{font-weight:var(--font-weight-bold)}.md-toolbar__glyph--italic{font-style:italic;font-weight:var(--font-weight-semibold)}.md-toolbar__glyph--mono{font-family:var(--font-family-mono);font-size:.625rem}.md-toolbar__hint{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}@media (pointer:coarse){.md-toolbar__btn{min-width:2.75rem;height:2.75rem}}.modal-overlay{z-index:var(--z-modal);padding:var(--space-4);background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;animation:.15s modal-backdrop-in;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-overlay--center{align-items:center}.modal-overlay--top{align-items:flex-start;padding-top:8rem}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-height:calc(100vh - 2 * var(--space-4));max-height:calc(100dvh - 2 * var(--space-4));background:var(--color-bg-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);flex-direction:column;animation:.15s modal-in;display:flex;position:relative;overflow:hidden}.modal:focus{outline:none}.modal-overlay--top .modal{max-height:calc(100dvh - 10rem)}@media (width<=48rem){.modal-overlay--top{padding-top:var(--space-6)}.modal-overlay--top .modal{max-height:calc(100dvh - 5rem)}}@keyframes modal-in{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal--sm{max-width:22rem}.modal--md{max-width:28rem}.modal--lg{max-width:38rem}.modal--wide{max-width:52rem}.modal--xl{max-width:72rem}.modal__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3);display:flex}.modal__heading{min-width:0}.modal__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:-.02em;color:var(--color-text-primary);margin:0;line-height:1.3}.modal__subtitle{margin:var(--space-2) 0 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-brand-600);line-height:1.4}.modal__close{border-radius:var(--radius-md);width:2rem;height:2rem;color:var(--color-text-tertiary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-family:inherit;font-size:1.375rem;line-height:1;display:inline-flex}.modal__close:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.modal__close:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.modal__body{padding:0 var(--space-5) var(--space-5);overflow-y:auto}.modal>.modal__body:first-child{padding-top:var(--space-5)}.modal__body--flush{padding:0}.modal>.modal__body--flush:first-child{padding-top:0}.modal__footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5) var(--space-5);border-top:1px solid var(--color-border-light);flex-wrap:wrap;display:flex}@media (prefers-reduced-motion:reduce){.modal-overlay,.modal{animation:none}}@media (width<=30rem){.modal-overlay{padding:var(--space-2)}.modal-overlay--top{padding-top:var(--space-6)}.modal{max-height:calc(100dvh - 2 * var(--space-2))}.modal-overlay--top .modal{max-height:calc(100dvh - var(--space-6) - var(--space-2))}.modal__body{padding-inline:var(--space-4)}.modal__footer{padding-inline:var(--space-4);flex-direction:column-reverse;align-items:stretch}.modal__footer>*{width:100%}}
