html{--mat-sys-background: light-dark(#fff8f8, #171213);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#faeeef, #352f30);--mat-sys-inverse-primary: light-dark(#ffb1c5, #ba005c);--mat-sys-inverse-surface: light-dark(#352f30, #ece0e1);--mat-sys-on-background: light-dark(#201a1b, #ece0e1);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #65002f);--mat-sys-on-primary-container: light-dark(#8f0045, #ffd9e1);--mat-sys-on-primary-fixed: light-dark(#3f001b, #3f001b);--mat-sys-on-primary-fixed-variant: light-dark(#8f0045, #8f0045);--mat-sys-on-secondary: light-dark(#ffffff, #422930);--mat-sys-on-secondary-container: light-dark(#5b3f46, #ffd9e1);--mat-sys-on-secondary-fixed: light-dark(#2b151b, #2b151b);--mat-sys-on-secondary-fixed-variant: light-dark(#5b3f46, #5b3f46);--mat-sys-on-surface: light-dark(#201a1b, #ece0e1);--mat-sys-on-surface-variant: light-dark(#514346, #f3dde1);--mat-sys-on-tertiary: light-dark(#ffffff, #42008a);--mat-sys-on-tertiary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-tertiary-fixed: light-dark(#270057, #270057);--mat-sys-on-tertiary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-outline: light-dark(#847376, #9e8c90);--mat-sys-outline-variant: light-dark(#d6c2c5, #514346);--mat-sys-primary: light-dark(#ba005c, #ffb1c5);--mat-sys-primary-container: light-dark(#ffd9e1, #8f0045);--mat-sys-primary-fixed: light-dark(#ffd9e1, #ffd9e1);--mat-sys-primary-fixed-dim: light-dark(#ffb1c5, #ffb1c5);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#74565d, #e3bdc5);--mat-sys-secondary-container: light-dark(#ffd9e1, #5b3f46);--mat-sys-secondary-fixed: light-dark(#ffd9e1, #ffd9e1);--mat-sys-secondary-fixed-dim: light-dark(#e3bdc5, #e3bdc5);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fff8f8, #171213);--mat-sys-surface-bright: light-dark(#fff8f8, #3e3738);--mat-sys-surface-container: light-dark(#f7ebec, #241e1f);--mat-sys-surface-container-high: light-dark(#f1e5e6, #2f2829);--mat-sys-surface-container-highest: light-dark(#ece0e1, #3a3334);--mat-sys-surface-container-low: light-dark(#fdf1f2, #201a1b);--mat-sys-surface-container-lowest: light-dark(#ffffff, #120d0e);--mat-sys-surface-dim: light-dark(#e3d7d8, #171213);--mat-sys-surface-tint: light-dark(#ba005c, #ffb1c5);--mat-sys-surface-variant: light-dark(#f3dde1, #514346);--mat-sys-tertiary: light-dark(#7d00fa, #d5baff);--mat-sys-tertiary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-tertiary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-tertiary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-neutral-variant20: #3a2d30;--mat-sys-neutral10: #201a1b}html{--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12)}html{--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12)}html{--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500}html{--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px}html{--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}html{--mat-sys-primary: var(--accent);--mat-sys-on-primary: var(--on-accent);--mat-sys-background: var(--bg-base);--mat-sys-on-background: var(--text-primary);--mat-sys-surface: var(--bg-surface);--mat-sys-surface-variant: var(--bg-surface-2);--mat-sys-surface-container-low: var(--bg-surface);--mat-sys-surface-container: var(--bg-elevated);--mat-sys-surface-container-high: var(--bg-elevated);--mat-sys-on-surface: var(--text-primary);--mat-sys-on-surface-variant: var(--text-secondary);--mat-sys-outline-variant: var(--border)}html{--mdc-protected-button-label-text-color: var(--accent-text)}:root{color-scheme:light;--bg-base: #f7f8fa;--bg-surface: #ffffff;--bg-surface-2: #f4f4f6;--bg-surface-3: #fafafa;--bg-elevated: #ffffff;--text-primary: #1a1a1a;--text-secondary: #555555;--text-muted: #707070;--text-placeholder: #aaaaaa;--border: #ececec;--border-strong: #e0e0e0;--accent: #ff1963;--accent-hover: #e0154f;--accent-text: #d4124b;--on-accent: #ffffff;--accent-soft: rgba(255, 25, 99, .08);--accent-soft-2: rgba(255, 25, 99, .12);--accent-pill-bg: #fff0f5;--accent-pill-border: #ffbdd2;--success: #16a34a;--success-text: #15803d;--success-soft: rgba(34, 197, 94, .1);--success-border: rgba(34, 197, 94, .3);--warning: #d97706;--warning-text: #b45309;--warning-soft: rgba(245, 158, 11, .1);--warning-border: rgba(245, 158, 11, .35);--danger: #dc2626;--danger-text: #b91c1c;--danger-soft: rgba(239, 68, 68, .1);--danger-border: rgba(239, 68, 68, .3);--info: #2563eb;--info-text: #1d4ed8;--info-soft: rgba(59, 130, 246, .1);--info-border: rgba(59, 130, 246, .3);--ai-tint: rgba(102, 126, 234, .07);--ai-border: rgba(102, 126, 234, .3);--ai-text: #4f5ec8;--tag-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--accent-gradient: linear-gradient(90deg, #ff1963 0%, #ff6090 100%);--spotlight-gradient: linear-gradient(135deg, #ff1963 0%, #a78bfa 100%);--banner-gradient: linear-gradient(135deg, #1a1a2e 0%, #16213e 25%, #0f3460 55%, #533483 80%, #e94560 100%);--skeleton-base: #f0f0f0;--skeleton-shine: #e4e4e4;--chart-1: #5b6ee1;--chart-2: #e2621b;--chart-3: #0f9488;--chart-4: #9146e0;--chart-5: #5f9a12;--chart-6: #1f86c7;--chart-ramp-1: #9aa8f3;--chart-ramp-2: #6a7de6;--chart-ramp-3: #3f4fc4;--chart-track: var(--bg-surface-2);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .06);--shadow-md: 0 2px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 24px rgba(0, 0, 0, .1);--shadow-xl: 0 8px 32px rgba(0, 0, 0, .18);--shadow-up: 0 -2px 12px rgba(0, 0, 0, .1);--shadow-header: none;--shadow-accent: 0 2px 8px var(--accent-soft-2);--shadow-accent-lg: 0 14px 32px var(--accent-soft-2);--focus-ring: 0 0 0 3px var(--accent-soft-2)}[data-theme=dark]{color-scheme:dark;--bg-base: #0d0d15;--bg-surface: #13131f;--bg-surface-2: #1c1c2a;--bg-surface-3: #181826;--bg-elevated: #1c1c2a;--text-primary: #edeef5;--text-secondary: #a8a8c0;--text-muted: #8585ad;--text-placeholder: #525278;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--accent: #ff1963;--accent-hover: #ff4080;--accent-text: #ff4080;--on-accent: #ffffff;--accent-soft: rgba(255, 25, 99, .12);--accent-soft-2: rgba(255, 25, 99, .18);--accent-pill-bg: rgba(255, 25, 99, .12);--accent-pill-border: rgba(255, 25, 99, .3);--success: #4ade80;--success-text: #4ade80;--success-soft: rgba(74, 222, 128, .12);--success-border: rgba(74, 222, 128, .3);--warning: #fbbf24;--warning-text: #fbbf24;--warning-soft: rgba(251, 191, 36, .12);--warning-border: rgba(251, 191, 36, .3);--danger: #f87171;--danger-text: #f87171;--danger-soft: rgba(248, 113, 113, .12);--danger-border: rgba(248, 113, 113, .3);--info: #60a5fa;--info-text: #60a5fa;--info-soft: rgba(96, 165, 250, .12);--info-border: rgba(96, 165, 250, .3);--ai-tint: rgba(129, 140, 248, .1);--ai-border: rgba(129, 140, 248, .3);--ai-text: #a5b4fc;--tag-gradient: linear-gradient(135deg, #4f5ec8 0%, #6b39a0 100%);--skeleton-base: #1e1e2e;--skeleton-shine: #262638;--chart-1: #6b7be8;--chart-2: #dd6a2c;--chart-3: #17a092;--chart-4: #a36bf0;--chart-5: #629f17;--chart-6: #3290cf;--chart-ramp-1: #4a58c9;--chart-ramp-2: #7b8cf0;--chart-ramp-3: #b3bdf8;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .25);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .35);--shadow-md: 0 2px 12px rgba(0, 0, 0, .45);--shadow-lg: 0 4px 24px rgba(0, 0, 0, .55);--shadow-xl: 0 8px 32px rgba(0, 0, 0, .6);--shadow-up: 0 -2px 12px rgba(0, 0, 0, .45)}:root{--media-bg: #000000;--on-media: #ffffff;--on-media-2: rgba(255, 255, 255, .8);--on-media-3: rgba(255, 255, 255, .6);--media-track: rgba(255, 255, 255, .55);--media-glass: rgba(255, 255, 255, .15);--media-glass-hover: rgba(255, 255, 255, .25);--media-glass-border: rgba(255, 255, 255, .6);--media-chip: rgba(0, 0, 0, .5);--media-chip-hover: rgba(0, 0, 0, .75);--media-menu: rgba(16, 16, 16, .97);--media-menu-border: rgba(255, 255, 255, .12);--media-warning: #fbbf24;--scrim-hover: rgba(0, 0, 0, .22);--backdrop: rgba(0, 0, 0, .35);--scrim-top: linear-gradient(to bottom, rgba(0, 0, 0, .55) 0%, transparent 100%);--scrim-bottom: linear-gradient(to top, rgba(0, 0, 0, .95) 0%, rgba(0, 0, 0, .65) 40%, transparent 100%);--scrim-controls: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .45) 40%, rgba(0, 0, 0, .82) 75%, rgba(0, 0, 0, .94) 100%);--media-shadow: 0 2px 8px rgba(0, 0, 0, .35);--media-text-shadow: 0 1px 3px rgba(0, 0, 0, .8);--media-icon-shadow: drop-shadow(0 1px 3px rgba(0, 0, 0, .95));--blur-sm: 6px;--blur-md: 10px;--font-sans: Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "Roboto Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-size-3xs: .6875rem;--font-size-2xs: .75rem;--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-md: .9375rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.75rem;--font-size-4xl: 2rem;--font-size-5xl: 2.75rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-none: 1;--line-height-tight: 1.2;--line-height-snug: 1.35;--line-height-normal: 1.5;--line-height-relaxed: 1.65;--letter-spacing-tight: -.01em;--letter-spacing-wide: .02em;--letter-spacing-caps: .06em;--space-0-5: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--radius-round: 50%;--duration-fast: .15s;--duration-base: .2s;--duration-moderate: .3s;--duration-slow: .5s;--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.45, 0, .55, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--transition: var(--duration-base) ease;--z-raised: 1;--z-overlay: 5;--z-media-ui: 10;--z-sticky: 400;--z-backdrop: 490;--z-header: 500;--z-bottom-nav: 900;--z-float: 950;--z-toast: 1100;--header-height: 68px;--bottom-nav-height: 60px;--page-gutter: 24px;--grid-gap: 16px;--content-max: 1400px;--player-max: 980px;--reading-max: 780px;--dialog-width: 560px;--upload-card-space: 104px;--control-sm: 32px;--control-md: 40px;--control-lg: 48px;--avatar-xs: 26px;--avatar-sm: 34px;--avatar-md: 42px;--avatar-lg: 52px;--avatar-xl: 100px;--icon-xs: 14px;--icon-sm: 18px;--icon-md: 20px;--icon-lg: 24px;--icon-xl: 32px;--icon-2xl: 48px}@media (max-width: 900px){:root{--page-gutter: 16px}}@media (max-width: 768px){:root{--header-height: 60px}}@media (max-width: 600px){:root{--page-gutter: 12px;--grid-gap: 8px}}@media (max-width: 480px){:root{--header-height: 56px}}button,input,select,textarea{font:inherit}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes ss-spin{to{transform:rotate(360deg)}}@keyframes ss-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes ss-pulse{50%{opacity:.55}}@keyframes ss-rise{0%{opacity:0;transform:translateY(12px)}}@keyframes ss-pan{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{overflow-x:hidden;max-width:100vw}body{font-family:var(--font-sans);background:var(--bg-base);color:var(--text-primary);transition:background var(--transition),color var(--transition)}*{scroll-behavior:smooth}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sidebar-nav .active-link .mdc-list-item__primary-text,.sidebar-nav .active-link span,.sidebar-nav mat-list-item.active-link .mdc-list-item__primary-text{color:#fff!important}.sidebar-nav mat-list-item:hover .mdc-list-item__primary-text,.sidebar-nav mat-list-item:hover span{color:var(--accent)!important}[data-theme=dark] mat-toolbar{background:var(--bg-surface)!important;color:var(--text-primary)!important;border-bottom-color:var(--border)!important}.mat-mdc-menu-panel{border:1px solid var(--border)}[data-theme=dark] .mat-divider{border-color:var(--border)!important}[data-theme=dark] mat-list-item{color:var(--text-primary)!important}[data-theme=dark] .mat-mdc-snack-bar-container{background:var(--bg-surface-2)!important;color:var(--text-primary)!important}[data-theme=dark]{scrollbar-color:rgba(255,255,255,.12) transparent}[data-theme=dark] ::-webkit-scrollbar{width:8px;height:8px}[data-theme=dark] ::-webkit-scrollbar-track{background:transparent}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#fff3}:root{scrollbar-color:rgba(0,0,0,.12) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0003}.ss-sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ss-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--control-md);padding:0 var(--space-5);border:1px solid transparent;border-radius:var(--radius-pill);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) ease,color var(--duration-fast) ease,border-color var(--duration-fast) ease,box-shadow var(--duration-base) ease,transform var(--duration-fast) ease}.ss-btn .mat-icon{width:var(--icon-md);height:var(--icon-md);font-size:var(--icon-md)}.ss-btn:active:not(:disabled){transform:scale(.98)}.ss-btn:disabled,.ss-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;box-shadow:none}.ss-btn--primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-accent)}.ss-btn--primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 6px 18px var(--accent-soft-2)}.ss-btn--secondary{background:var(--bg-surface-2);color:var(--text-primary);border-color:var(--border-strong)}.ss-btn--secondary:hover:not(:disabled){background:var(--accent-pill-bg);color:var(--accent-text);border-color:var(--accent-pill-border)}.ss-btn--ghost{background:transparent;color:var(--text-secondary)}.ss-btn--ghost:hover:not(:disabled){background:var(--bg-surface-2);color:var(--text-primary)}.ss-btn--danger{background:transparent;color:var(--danger-text);border-color:var(--danger-border)}.ss-btn--danger:hover:not(:disabled){background:var(--danger-soft)}.ss-btn--glass{background:var(--media-glass);color:var(--on-media);border-color:var(--media-glass-border);backdrop-filter:blur(var(--blur-sm))}.ss-btn--glass:hover:not(:disabled){background:var(--media-glass-hover);border-color:var(--on-media)}.ss-btn--sm{height:var(--control-sm);padding:0 var(--space-3);font-size:var(--font-size-xs)}.ss-btn--sm .mat-icon{width:var(--icon-sm);height:var(--icon-sm);font-size:var(--icon-sm)}.ss-btn--lg{height:var(--control-lg);padding:0 var(--space-6);font-size:var(--font-size-md)}.ss-btn--lg .mat-icon{width:var(--icon-lg);height:var(--icon-lg);font-size:var(--icon-lg)}.ss-btn--block{width:100%}.ss-icon-btn{display:inline-grid;place-items:center;flex:none;width:var(--control-md);height:var(--control-md);padding:0;border:0;border-radius:var(--radius-round);background:transparent;color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) ease,color var(--duration-fast) ease}.ss-icon-btn .mat-icon{width:var(--icon-lg);height:var(--icon-lg);font-size:var(--icon-lg)}.ss-icon-btn:hover:not(:disabled){background:var(--bg-surface-2);color:var(--text-primary)}.ss-icon-btn:disabled{opacity:.45;cursor:not-allowed}.ss-icon-btn--sm{width:var(--control-sm);height:var(--control-sm)}.ss-icon-btn--sm .mat-icon{width:var(--icon-md);height:var(--icon-md);font-size:var(--icon-md)}.ss-icon-btn--media{color:var(--on-media)}.ss-icon-btn--media .mat-icon{filter:var(--media-icon-shadow)}.ss-icon-btn--media:hover:not(:disabled){background:var(--media-glass);color:var(--on-media)}.ss-chip{display:inline-flex;align-items:center;gap:var(--space-1);flex:none;height:var(--control-sm);padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--bg-surface-2);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) ease,color var(--duration-fast) ease,border-color var(--duration-fast) ease}.ss-chip:hover{background:var(--accent-pill-bg);color:var(--accent-text);border-color:var(--accent-pill-border)}.ss-chip[aria-pressed=true],.ss-chip.is-active{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-accent)}.ss-badge{display:inline-flex;align-items:center;gap:var(--space-1);height:22px;padding:0 var(--space-2);border:1px solid transparent;border-radius:var(--radius-pill);font-size:var(--font-size-3xs);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-caps);line-height:1;text-transform:uppercase;white-space:nowrap}.ss-badge .mat-icon{width:var(--icon-xs);height:var(--icon-xs);font-size:var(--icon-xs)}.ss-badge--category{background:var(--tag-gradient);color:#fff}.ss-badge--media{background:var(--media-chip-hover);color:var(--on-media);text-transform:none;letter-spacing:0;font-weight:var(--font-weight-semibold)}.ss-badge--media-warning{background:var(--media-warning);color:#1a1a1a}.ss-badge--accent{background:var(--accent);color:var(--on-accent)}.ss-badge--success{background:var(--success-soft);color:var(--success-text);border-color:var(--success-border)}.ss-badge--warning{background:var(--warning-soft);color:var(--warning-text);border-color:var(--warning-border)}.ss-badge--danger{background:var(--danger-soft);color:var(--danger-text);border-color:var(--danger-border)}.ss-badge--neutral{background:var(--bg-surface-2);color:var(--text-secondary);border-color:var(--border)}.ss-badge--ai{background:var(--ai-tint);color:var(--ai-text);border-color:var(--ai-border)}.ss-avatar{display:inline-grid;place-items:center;flex:none;width:var(--avatar-sm);height:var(--avatar-sm);border-radius:var(--radius-round);background:var(--tag-gradient);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);line-height:1;overflow:hidden;object-fit:cover;-webkit-user-select:none;user-select:none}.ss-avatar--xs{width:var(--avatar-xs);height:var(--avatar-xs);font-size:var(--font-size-3xs)}.ss-avatar--md{width:var(--avatar-md);height:var(--avatar-md);font-size:var(--font-size-base)}.ss-avatar--lg{width:var(--avatar-lg);height:var(--avatar-lg);font-size:var(--font-size-lg)}img.ss-avatar{background:var(--bg-surface-2)}.ss-skel{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-shine) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:ss-shimmer 1.4s ease-in-out infinite}.ss-skel-line{display:block;height:12px;border-radius:var(--radius-pill)}.ss-spinner{display:inline-block;flex:none;width:32px;height:32px;border:3px solid var(--border-strong);border-top-color:var(--accent);border-radius:var(--radius-round);animation:ss-spin .8s linear infinite}.ss-spinner--sm{width:16px;height:16px;border-width:2px}.ss-spinner--lg{width:44px;height:44px}.ss-spinner--media{border-color:#ffffff40;border-top-color:var(--on-media)}.ss-spinner--warning{border-color:var(--warning-soft);border-top-color:var(--warning)}.ss-spin{animation:ss-spin 1.2s linear infinite}.ss-dot-list>*+*:before{content:"\b7";content:"\b7" / "";margin-right:var(--space-1-5)}.ss-video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:var(--space-8) var(--space-4)}@media (max-width: 600px){.ss-video-grid{row-gap:var(--space-6)}}.ss-card-skel{display:flex;flex-direction:column;gap:var(--space-3)}.ss-card-skel-thumb{aspect-ratio:16 / 9;border-radius:var(--radius-md)}.ss-card-skel-body{display:flex;align-items:flex-start;gap:var(--space-3)}.ss-card-skel-avatar{flex:none;width:36px;height:36px;margin-top:2px;border-radius:var(--radius-round)}.ss-card-skel-lines{display:flex;flex:1;flex-direction:column;gap:var(--space-2);padding-top:var(--space-1)}.ss-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-5);text-align:center;color:var(--text-secondary)}.ss-state>.mat-icon{width:var(--icon-2xl);height:var(--icon-2xl);font-size:var(--icon-2xl);color:var(--text-muted)}.ss-state--error>.mat-icon{color:var(--danger)}.ss-state h2,.ss-state h3{margin:var(--space-1) 0 0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.ss-state p{margin:0;max-width:42ch;font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.ss-state .ss-btn{margin-top:var(--space-3)}.ss-toast{position:fixed;left:50%;bottom:var(--space-6);z-index:var(--z-toast);display:flex;align-items:center;gap:var(--space-2);max-width:min(560px,calc(100vw - 2 * var(--space-4)));min-height:48px;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-xl);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);translate:-50% 0;animation:ss-rise var(--duration-moderate) var(--ease-out) both}.ss-toast>.mat-icon{flex:none;color:var(--success)}.ss-toast--error>.mat-icon{color:var(--danger)}.ss-toast>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.ss-toast{bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + var(--space-3))}}body.ss-has-upload-card .ss-toast{bottom:calc(var(--space-6) + var(--upload-card-space))}@media (max-width: 768px){body.ss-has-upload-card .ss-toast{bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px) + var(--space-3) + var(--upload-card-space))}}.ss-dialog{--mat-dialog-container-shape: var(--radius-xl);--mat-dialog-container-color: var(--bg-elevated);--mat-dialog-container-max-width: 100vw;--mat-dialog-container-small-max-width: 100vw;width:min(760px,calc(100vw - 2 * var(--space-4)))}.ss-dialog .mat-mdc-dialog-surface{border:1px solid var(--border);box-shadow:var(--shadow-xl)}@media (max-width: 600px){.ss-dialog{width:100vw;height:100dvh;max-height:100dvh!important}.ss-dialog .mat-mdc-dialog-surface{border:0;border-radius:0}}

/*# sourceMappingURL=styles.e7645df2963e01f6.css.map*/