@charset "UTF-8";html{color-scheme:light;--mat-sys-background: light-dark(#f7faf9, #101414);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#eff1f0, #2d3131);--mat-sys-inverse-primary: light-dark(#00dddd, #006a6a);--mat-sys-inverse-surface: light-dark(#2d3131, #e0e3e2);--mat-sys-on-background: light-dark(#191c1c, #e0e3e2);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #003737);--mat-sys-on-primary-container: light-dark(#004f4f, #00fbfb);--mat-sys-on-primary-fixed: light-dark(#002020, #002020);--mat-sys-on-primary-fixed-variant: light-dark(#004f4f, #004f4f);--mat-sys-on-secondary: light-dark(#ffffff, #1b3534);--mat-sys-on-secondary-container: light-dark(#324b4b, #cce8e7);--mat-sys-on-secondary-fixed: light-dark(#051f1f, #051f1f);--mat-sys-on-secondary-fixed-variant: light-dark(#324b4b, #324b4b);--mat-sys-on-surface: light-dark(#191c1c, #e0e3e2);--mat-sys-on-surface-variant: light-dark(#3f4948, #dae5e4);--mat-sys-on-tertiary: light-dark(#ffffff, #502400);--mat-sys-on-tertiary-container: light-dark(#723600, #ffdcc7);--mat-sys-on-tertiary-fixed: light-dark(#311300, #311300);--mat-sys-on-tertiary-fixed-variant: light-dark(#723600, #723600);--mat-sys-outline: light-dark(#6f7979, #889392);--mat-sys-outline-variant: light-dark(#bec9c8, #3f4948);--mat-sys-primary: light-dark(#006a6a, #00dddd);--mat-sys-primary-container: light-dark(#00fbfb, #004f4f);--mat-sys-primary-fixed: light-dark(#00fbfb, #00fbfb);--mat-sys-primary-fixed-dim: light-dark(#00dddd, #00dddd);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#4a6363, #b0cccb);--mat-sys-secondary-container: light-dark(#cce8e7, #324b4b);--mat-sys-secondary-fixed: light-dark(#cce8e7, #cce8e7);--mat-sys-secondary-fixed-dim: light-dark(#b0cccb, #b0cccb);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#f7faf9, #101414);--mat-sys-surface-bright: light-dark(#f7faf9, #363a39);--mat-sys-surface-container: light-dark(#ebefed, #1c2020);--mat-sys-surface-container-high: light-dark(#e6e9e7, #272b2a);--mat-sys-surface-container-highest: light-dark(#e0e3e2, #313635);--mat-sys-surface-container-low: light-dark(#f1f4f3, #191c1c);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0b0f0e);--mat-sys-surface-dim: light-dark(#d7dbd9, #101414);--mat-sys-surface-tint: light-dark(#006a6a, #00dddd);--mat-sys-surface-variant: light-dark(#dae5e4, #3f4948);--mat-sys-tertiary: light-dark(#964900, #ffb787);--mat-sys-tertiary-container: light-dark(#ffdcc7, #723600);--mat-sys-tertiary-fixed: light-dark(#ffdcc7, #ffdcc7);--mat-sys-tertiary-fixed-dim: light-dark(#ffb787, #ffb787);--mat-sys-neutral-variant20: #293232;--mat-sys-neutral10: #191c1c;--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);--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);--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);--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);--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);--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);--mat-sys-body-large: 400 1rem / 1.5rem Cairo, Inter, system-ui, sans-serif;--mat-sys-body-large-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-body-medium-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-body-small-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-display-large-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-display-medium-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-display-small-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-headline-large-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-headline-medium-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-headline-small-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-label-large-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-label-medium-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-label-small-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-title-large-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-title-medium-font: Cairo, Inter, system-ui, sans-serif;--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 Cairo, Inter, system-ui, sans-serif;--mat-sys-title-small-font: Cairo, Inter, system-ui, sans-serif;--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;--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;--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;--mat-sys-primary-container: color-mix(in srgb, var(--mat-sys-primary) 14%, var(--mat-sys-surface));--mat-sys-on-primary-container: color-mix(in srgb, var(--mat-sys-primary) 80%, var(--mat-sys-on-surface));--app-radius: 16px;--app-radius-sm: 10px;--app-shadow: 0 1px 2px rgb(0 0 0 / .04), 0 8px 24px rgb(0 0 0 / .06);--app-border: color-mix(in srgb, var(--mat-sys-outline-variant) 70%, transparent);--app-secondary: var(--mat-sys-tertiary);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--app-radius-xs: 6px;--app-radius-pill: 999px;--app-shadow-lg: 0 2px 6px rgb(0 0 0 / .06), 0 18px 48px rgb(0 0 0 / .12);--app-success: #16a34a;--app-success-container: color-mix(in srgb, var(--app-success) 14%, var(--mat-sys-surface));--app-warning: #d97706;--app-warning-container: color-mix(in srgb, var(--app-warning) 14%, var(--mat-sys-surface));--app-info: var(--mat-sys-primary);--app-info-container: var(--mat-sys-primary-container);--app-danger: var(--mat-sys-error);--app-danger-container: var(--mat-sys-error-container);--app-sidenav-width: 264px;--app-sidenav-rail: 76px;--app-toolbar-height: 64px;--z-toolbar: 5;--z-sticky: 4;--z-overlay: 1000}.branded{--mat-sys-primary: var(--brand-primary);--mat-sys-on-primary: var(--brand-on-primary, #fff);--mat-sys-primary-container: color-mix(in srgb, var(--brand-primary) 14%, var(--mat-sys-surface));--mat-sys-on-primary-container: color-mix(in srgb, var(--brand-primary) 75%, var(--mat-sys-on-surface));--app-secondary: var(--brand-secondary)}html[data-theme=dark].branded,html[data-theme=dark] .branded{--mat-sys-primary: color-mix(in srgb, var(--brand-primary) 65%, white);--mat-sys-on-primary: #111}html,body{height:100%}body{margin:0;font-family:var(--mat-sys-body-large-font);background:var(--mat-sys-surface);color:var(--mat-sys-on-surface);-webkit-font-smoothing:antialiased}a{color:var(--mat-sys-primary)}h1,h2,h3{font-family:var(--mat-sys-headline-small-font);letter-spacing:-.01em}h1{font-size:clamp(1.6rem,2.4vw,2.1rem);margin:0 0 8px;font-weight:700}h2{font-size:1.25rem;margin:0 0 12px;font-weight:700}h3{font-size:1.05rem;margin:0 0 6px;font-weight:700}.muted{color:var(--mat-sys-on-surface-variant)}.small{font-size:.875rem}.center{text-align:center}.spacer{flex:1 1 auto}.full-width{width:100%}.lead{font-size:1.15rem;line-height:1.7}.container{width:min(1180px,100% - 40px);margin-inline:auto}.container.narrow{width:min(760px,100% - 40px)}.chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.75rem;background:var(--mat-sys-surface-container-high);color:var(--mat-sys-on-surface-variant)}@media(max-width:720px){.hide-sm{display:none!important}}.public-toolbar{position:sticky;top:0;z-index:10;gap:8px;background:color-mix(in srgb,var(--mat-sys-surface) 88%,transparent)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-block-end:1px solid var(--app-border)}.brand-link{text-decoration:none;color:inherit;display:inline-flex}.public-nav{display:flex;gap:2px;margin-inline-start:16px}.public-nav a.active{color:var(--mat-sys-primary);background:var(--mat-sys-primary-container)}.menu-button{display:none!important}@media(max-width:900px){.menu-button{display:inline-flex!important}.public-nav{display:none;position:absolute;inset-inline:0;top:64px;flex-direction:column;padding:12px;background:var(--mat-sys-surface-container);border-block-end:1px solid var(--app-border);margin:0}.public-nav.open{display:flex}.lang-toggle .mat-icon{margin:0}}@media(max-width:480px){.public-toolbar{padding-inline:8px;gap:2px}.public-toolbar .lang-toggle{min-width:0;padding-inline:8px}.public-toolbar .brand-name{max-width:28vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}}.public-main{min-height:calc(100vh - 152px)}.public-footer{border-block-start:1px solid var(--app-border);padding-block:28px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.section{padding-block:64px}.section-alt{background:var(--mat-sys-surface-container-low)}.section-title{text-align:center;font-size:clamp(1.4rem,2vw,1.9rem)}.section-lead{text-align:center;max-width:620px;margin:0 auto 36px}.page-intro{padding-block:56px 8px}.eyebrow{display:inline-block;font-weight:600;font-size:.85rem;padding:4px 12px;border-radius:999px;background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container);margin-block-end:16px}.hero{padding-block:72px;background:radial-gradient(60% 80% at 100% 0%,color-mix(in srgb,var(--app-secondary) 18%,transparent),transparent),radial-gradient(60% 80% at 0% 100%,color-mix(in srgb,var(--mat-sys-primary) 16%,transparent),transparent)}.hero-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}.hero h1{font-size:clamp(2rem,4vw,3.1rem);line-height:1.15}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-block:24px 12px}.hero-actions a{min-height:48px;padding-inline:24px}@media(max-width:900px){.hero-inner{grid-template-columns:1fr}}.mock-window{background:var(--mat-sys-surface-container-lowest);border-radius:var(--app-radius);box-shadow:var(--app-shadow);border:1px solid var(--app-border);overflow:hidden}.mock-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--mat-sys-surface-container);direction:ltr}.mock-bar span{width:10px;height:10px;border-radius:50%;background:var(--mat-sys-outline-variant)}.mock-bar em{margin-inline-start:12px;font-style:normal;font-size:.8rem;color:var(--mat-sys-on-surface-variant)}.mock-body{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:20px}.mock-stat{background:var(--mat-sys-surface-container-low);border-radius:var(--app-radius-sm);padding:14px}.mock-stat strong{display:block;font-size:1.5rem;color:var(--mat-sys-primary)}.mock-chart{grid-column:1/-1;display:flex;align-items:flex-end;gap:10px;height:120px;padding-top:8px}.mock-chart i{flex:1;border-radius:8px 8px 0 0;background:linear-gradient(var(--mat-sys-primary),color-mix(in srgb,var(--mat-sys-primary) 40%,transparent))}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.feature-card{background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border);border-radius:var(--app-radius);padding:24px;box-shadow:var(--app-shadow);text-decoration:none;color:inherit}.feature-card p{margin:0;line-height:1.65}.feature-icon{width:44px!important;height:44px!important;font-size:24px;display:grid!important;place-items:center;border-radius:12px;background:var(--mat-sys-primary-container);color:var(--mat-sys-primary);margin-block-end:14px}.step-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px}.step-list li{display:flex;gap:14px}.step-number{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}@media(max-width:900px){.step-list{grid-template-columns:1fr}}.cta-band{background:linear-gradient(120deg,var(--mat-sys-primary),color-mix(in srgb,var(--app-secondary) 80%,var(--mat-sys-primary)));color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.cta-inner h2{margin:0;font-size:1.6rem}.cta-light{background:#fff!important;color:#1f1f1f!important}.cta-outline-light{color:#fff!important;border-color:#ffffffb3!important}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;align-items:stretch}.plan-card{position:relative;display:flex;flex-direction:column;padding:28px 24px;border-radius:var(--app-radius);background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border);box-shadow:var(--app-shadow)}.plan-card.featured{border:2px solid var(--mat-sys-primary)}.plan-badge{position:absolute;top:-12px;inset-inline-start:24px;padding:2px 12px;border-radius:999px;font-size:.8rem;font-weight:600;background:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}.plan-limits{list-style:none;padding:0;margin:16px 0 24px;display:grid;gap:10px;flex:1}.plan-limits li{display:flex;align-items:center;gap:10px}.plan-limits .mat-icon{color:var(--mat-sys-primary);font-size:20px;width:20px;height:20px}.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:28px}.tenant-hero{padding-block:72px;color:var(--mat-sys-on-primary);background:linear-gradient(135deg,var(--mat-sys-primary),color-mix(in srgb,var(--app-secondary) 85%,#000))}html[data-theme=dark] .tenant-hero{color:#111}.tenant-hero-inner{display:flex;gap:28px;align-items:center}.tenant-hero-inner .brand-initials{background:#ffffff2e!important;color:inherit!important}.tenant-hero h1{font-size:clamp(2rem,4vw,2.8rem)}.tenant-hero .lead{opacity:.92;max-width:640px}@media(max-width:720px){.tenant-hero-inner{flex-direction:column;align-items:flex-start}}.tenant-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.contact-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.contact-list li{display:flex;align-items:center;gap:10px}.contact-list .mat-icon{color:var(--mat-sys-on-surface-variant)}.auth-shell{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(50% 60% at 100% 0%,color-mix(in srgb,var(--app-secondary) 14%,transparent),transparent),radial-gradient(50% 60% at 0% 100%,color-mix(in srgb,var(--mat-sys-primary) 14%,transparent),transparent),var(--mat-sys-surface)}.auth-top{display:flex;align-items:center;justify-content:space-between;padding:16px 24px}.auth-card-wrap{flex:1;display:grid;place-items:center;padding:16px 16px 48px}.auth-card{width:min(440px,100%);box-sizing:border-box;padding:36px 32px;border-radius:20px;background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border);box-shadow:var(--app-shadow)}.auth-card h1{font-size:1.6rem}.form-stack{display:flex;flex-direction:column;gap:14px;margin-top:20px}.auth-card:has(.wide-form){width:min(760px,100%)}.form-section{border:0;padding:0;margin:var(--space-6) 0 0;min-width:0}.form-section legend{font-weight:700;font-size:1rem;padding:0;margin-bottom:var(--space-3)}.form-section .form-grid{padding-top:0;align-items:start}.wide-form .submit{width:100%;min-height:48px;margin-top:var(--space-4)}@media(max-width:560px){.auth-card:has(.wide-form){padding:24px 16px}}.form-stack .submit{min-height:48px}.form-row-end{display:flex;justify-content:flex-end;margin-top:-6px;font-size:.9rem}.auth-switch{text-align:center;margin:24px 0 0;font-size:.95rem}.callout{border-radius:var(--app-radius-sm);padding:12px 14px;margin-top:16px;line-height:1.6}.callout-error{background:var(--mat-sys-error-container);color:var(--mat-sys-on-error-container)}.callout-info{background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container)}.callout-action{margin-top:8px;display:block}.done{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.done-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin-bottom:8px;background:var(--mat-sys-primary-container);color:var(--mat-sys-primary)}.done-icon.error{background:var(--mat-sys-error-container);color:var(--mat-sys-error)}.done-icon .mat-icon{font-size:32px;width:32px;height:32px}.workspace-url{font-weight:600;padding:8px 14px;border-radius:8px;background:var(--mat-sys-surface-container)}.dash-container{height:100vh}.dash-sidenav{width:264px;border-inline-end:1px solid var(--app-border)!important;background:var(--mat-sys-surface-container-low)!important}.dash-brand{padding:20px 20px 12px}.dash-badge{margin:0 20px 8px;padding:4px 10px;border-radius:8px;font-size:.8rem;font-weight:600;background:var(--mat-sys-tertiary-container);color:var(--mat-sys-on-tertiary-container)}.dash-sidenav .mat-mdc-nav-list{padding-inline:10px}.dash-sidenav a.mat-mdc-list-item{border-radius:12px;margin-block:2px}.dash-sidenav a.active-link{background:var(--mat-sys-primary-container)}.dash-sidenav a.active-link .mat-icon,.dash-sidenav a.active-link .mdc-list-item__primary-text{color:var(--mat-sys-on-primary-container);font-weight:600}.dash-toolbar{position:sticky;top:0;z-index:5;gap:6px;background:var(--mat-sys-surface)!important;border-block-end:1px solid var(--app-border)}.dash-title{font-weight:700;font-size:1.05rem}.dash-page{padding:28px clamp(16px,3vw,36px) 48px;max-width:1280px;box-sizing:border-box}.user-button{gap:8px}.avatar{width:32px;height:32px;border-radius:50%;display:inline-grid;place-items:center;font-size:.8rem;font-weight:700;background:var(--mat-sys-primary);color:var(--mat-sys-on-primary);margin-inline-end:6px}.menu-header{display:flex;flex-direction:column;padding:12px 16px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.page-header p{margin:0}.page-actions{display:flex;gap:8px}.panel{display:block;background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border);border-radius:var(--app-radius);padding:20px;margin-bottom:24px}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;align-items:start}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;margin-bottom:24px}.stat-card{display:flex;gap:14px;align-items:center;padding:18px;border-radius:var(--app-radius);background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border)}.stat-icon{width:44px!important;height:44px!important;display:grid!important;place-items:center;border-radius:12px;background:var(--mat-sys-primary-container);color:var(--mat-sys-primary)}.stat-label{margin:0;color:var(--mat-sys-on-surface-variant);font-size:.9rem}.stat-value{margin:2px 0 0;font-size:1.6rem;font-weight:700}.stat-soon{margin:4px 0 0;font-size:.8rem;color:var(--mat-sys-on-surface-variant)}.checklist{list-style:none;margin:0;padding:0}.checklist li{display:flex;align-items:center;gap:12px;padding:10px 0;border-block-end:1px solid var(--app-border)}.checklist li:last-child{border:0}.checklist li>span:first-of-type{flex:1}.checklist .mat-icon{color:var(--mat-sys-on-surface-variant)}.checklist .mat-icon.done{color:var(--mat-sys-primary)}.toolbar-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:8px}.toolbar-row .grow{flex:1 1 260px}.toolbar-row .filter{flex:0 1 200px}.table-scroll{overflow-x:auto}.data-table{width:100%;background:transparent!important}.data-table th{font-weight:600;color:var(--mat-sys-on-surface-variant)}.cell-primary{font-weight:600}.cell-secondary{font-size:.85rem;color:var(--mat-sys-on-surface-variant)}.actions-cell{text-align:end;width:56px}.status{display:inline-flex;align-items:center;gap:6px;font-size:.85rem}.status:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--mat-sys-outline)}.status[data-status=Active]:before{background:var(--app-success)}.status[data-status=Suspended]:before,.status[data-status=Closed]:before{background:var(--mat-sys-error)}.status[data-status=Invited]:before,.status[data-status=PendingSetup]:before{background:var(--app-warning)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding-top:20px}.form-grid .span-2{grid-column:1/-1}@media(max-width:720px){.form-grid{grid-template-columns:1fr}}.form-actions{display:flex;justify-content:flex-end}.toggle-field{display:flex;align-items:center;min-height:56px}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:0}.facts dt{font-size:.8rem;color:var(--mat-sys-on-surface-variant)}.facts dd{margin:2px 0 0;font-weight:600}.branding-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}@media(max-width:1100px){.branding-layout{grid-template-columns:1fr}}.color-swatch{width:32px;height:32px;border:0;padding:0;background:none;cursor:pointer;margin-inline-end:8px}.brand-preview{position:sticky;top:88px;padding-top:20px}.preview-hero{border-radius:var(--app-radius);padding:24px;color:#fff;display:grid;gap:8px;justify-items:start;background:linear-gradient(135deg,var(--preview-primary),var(--preview-secondary))}.preview-hero p{margin:0;opacity:.9;font-size:.9rem}.preview-mark{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;font-weight:700;background:#fff3}.preview-button{background:#fff;color:#1f1f1f;padding:8px 14px;border-radius:999px;font-size:.85rem;font-weight:600}.role-options{display:grid;gap:4px}.back-link{display:inline-flex;gap:6px;margin-bottom:8px;text-decoration:none;font-size:.9rem}[dir=rtl] .flip-rtl{display:inline-block;transform:scaleX(-1)}.sticky-progress{position:sticky;top:64px;z-index:4}.clickable-rows tr.mat-mdc-row{cursor:pointer}.clickable-rows tr.mat-mdc-row:hover{background:var(--mat-sys-surface-container-low)}.tab-toolbar{display:flex;align-items:center;gap:12px;padding:16px 0 8px}.tab-toolbar h2{margin:0}.dialog-form,.mat-mdc-dialog-content.dialog-form{display:flex;flex-direction:column;gap:12px;padding-top:8px!important}.row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}@media(max-width:560px){.row-2{grid-template-columns:1fr}}.status-toggle{align-self:center}.status[data-status=Published]:before,.status[data-status=Completed]:before{background:var(--app-success)}.status[data-status=Draft]:before{background:var(--app-warning)}.status[data-status=Archived]:before,.status[data-status=Cancelled]:before{background:var(--mat-sys-outline)}.progress-cell{display:flex;align-items:center;gap:10px;font-size:.85rem;min-width:140px}.progress-track{flex:1;height:8px;border-radius:999px;background:var(--mat-sys-surface-container-high);overflow:hidden}.progress-fill{height:100%;border-radius:inherit;background:var(--mat-sys-primary);transition:width .3s ease}.curriculum{padding:16px 0;display:flex;flex-direction:column;gap:16px;align-items:flex-start}.section-list{display:flex;flex-direction:column;gap:16px;width:100%}.curriculum-section{border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--mat-sys-surface-container-lowest);padding:8px 12px 12px}.section-head{display:flex;align-items:center;gap:8px;min-height:48px}.drag-handle{cursor:grab;color:var(--mat-sys-on-surface-variant)}.lesson-list{min-height:40px;display:flex;flex-direction:column;gap:6px}.lesson-row{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:var(--app-radius-sm);background:var(--mat-sys-surface-container-low);border:1px solid transparent}.lesson-row:hover{border-color:var(--app-border)}.lesson-type{color:var(--mat-sys-primary)}.lesson-title{flex:1;font-weight:500}.empty-lessons{padding:8px 4px;margin:0}.add-lesson{margin-top:6px}.cdk-drag-preview{box-shadow:var(--app-shadow);border-radius:var(--app-radius-sm);background:var(--mat-sys-surface-container)}.cdk-drag-placeholder{opacity:.35}.cdk-drag-animating,.cdk-drop-list-dragging .cdk-drag:not(.cdk-drag-placeholder){transition:transform .2s ease}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.course-card{display:flex;flex-direction:column;overflow:hidden;border-radius:var(--app-radius);background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border);box-shadow:var(--app-shadow);color:inherit;text-decoration:none}.link-card{transition:transform .15s ease,box-shadow .15s ease}.link-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0000001a}.course-cover{aspect-ratio:16/7;display:grid;place-items:center;background-size:cover;background-position:center;background-color:var(--mat-sys-primary-container);color:var(--mat-sys-primary);background-image:linear-gradient(135deg,var(--mat-sys-primary-container),color-mix(in srgb,var(--app-secondary) 25%,var(--mat-sys-surface)))}.course-cover .mat-icon{font-size:40px;width:40px;height:40px;opacity:.7}.course-card-body{display:flex;flex-direction:column;gap:8px;padding:16px;flex:1}.course-card-body h3,.course-card-body p{margin:0}.course-card-body .mat-mdc-button-base{align-self:flex-start;margin-top:auto}.completed{color:var(--app-success)}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-meta{display:flex;align-items:center;justify-content:space-between;margin-top:auto;font-size:.9rem}.course-meta span,.course-facts span{display:inline-flex;align-items:center;gap:4px}.course-meta .mat-icon,.course-facts .mat-icon{font-size:18px;width:18px;height:18px}.price{color:var(--mat-sys-primary);font-size:1.05rem}.small-eyebrow{margin:0;padding:2px 10px;font-size:.75rem;align-self:flex-start}.catalog-filters{display:flex;gap:12px;margin:16px 0 8px;max-width:560px}.catalog-filters .grow{flex:1}.catalog-section{padding-top:24px}.featured-list{list-style:none;padding:0;margin:0 0 8px;display:grid;gap:8px}.featured-list li{display:flex;justify-content:space-between;gap:8px}.course-hero{padding-block:48px}.course-hero-inner{display:grid;grid-template-columns:1fr 300px;gap:32px;align-items:center}@media(max-width:860px){.course-hero-inner{grid-template-columns:1fr}}.hero-back{color:inherit;opacity:.85;text-decoration:none;display:inline-block;margin-bottom:12px}.course-hero .eyebrow{background:#fff3;color:inherit}.course-facts{display:flex;gap:20px;flex-wrap:wrap;opacity:.92}.enroll-card{background:var(--mat-sys-surface-container-lowest);color:var(--mat-sys-on-surface);border-radius:var(--app-radius);padding:24px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--app-shadow)}.enroll-price{font-size:1.8rem;font-weight:800;margin:0;color:var(--mat-sys-primary)}.course-body{display:grid;gap:24px;max-width:900px}.outline-lessons{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:2px}.outline-lessons.public li{display:flex;align-items:center;gap:10px;padding:6px 0}.outline-lessons.public li>span{flex:1}.outline-lessons .mat-icon{color:var(--mat-sys-on-surface-variant);font-size:20px;width:20px;height:20px}.player{display:grid;grid-template-columns:320px minmax(0,1fr);gap:24px;align-items:start}@media(max-width:960px){.player{grid-template-columns:1fr}}.player-outline{position:sticky;top:88px;max-height:calc(100vh - 110px);overflow:auto}.player-outline h2{font-size:1.1rem}.outline-section{font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;color:var(--mat-sys-on-surface-variant);margin:20px 0 6px}.outline-lesson{width:100%;display:flex;align-items:center;gap:10px;padding:8px;border:0;border-radius:var(--app-radius-sm);background:none;color:inherit;font:inherit;text-align:start;cursor:pointer}.outline-lesson span{flex:1}.outline-lesson:hover{background:var(--mat-sys-surface-container-low)}.outline-lesson.current{background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container);font-weight:600}.outline-lesson .mat-icon.done{color:var(--app-success)}.player-main h1{font-size:1.5rem}.player-actions{display:flex;align-items:center;gap:12px;margin-top:28px;padding-top:16px;border-top:1px solid var(--app-border)}.course-done{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--app-success)}.video-frame{position:relative;aspect-ratio:16/9;border-radius:var(--app-radius);overflow:hidden;background:#000;margin-bottom:16px}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.lesson-body{white-space:pre-line;line-height:1.9;font-size:1.05rem;margin:0 0 16px}.activity-list{list-style:none;margin:0;padding:0}.activity-list li{display:flex;align-items:center;gap:12px;padding:10px 0;border-block-end:1px solid var(--app-border)}.activity-list li:last-child{border:0}.activity-list li>span{flex:1}.activity-list .mat-icon{color:var(--mat-sys-primary)}.nowrap{white-space:nowrap}.tf-answer{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.options-editor{display:flex;flex-direction:column;gap:4px}.option-row{display:flex;align-items:center;gap:8px}.option-row .grow{flex:1}.kind-toggle{align-self:flex-start}.pick-list{display:flex;flex-direction:column;gap:6px;max-height:50vh;overflow:auto}.exam-questions{margin-top:8px}.q-number{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.85rem;background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container)}.points-input{width:64px;padding:6px 8px;border-radius:8px;border:1px solid var(--app-border);font:inherit;background:var(--mat-sys-surface);color:inherit}.results-stats{margin-top:16px}.exam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.exam-card{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--app-radius);background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border);box-shadow:var(--app-shadow)}.exam-card h3{margin:4px 0}.exam-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.exam-facts{display:flex;flex-wrap:wrap;gap:12px;margin:0}.exam-facts span{display:inline-flex;align-items:center;gap:4px}.exam-facts .mat-icon{font-size:16px;width:16px;height:16px}.exam-card p{margin:0}.warn-text{color:#b45309}.best-score{font-weight:600;color:var(--mat-sys-error)}.best-score.passed{color:var(--app-success)}.exam-card-actions{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:12px;flex-wrap:wrap}.runner-bar{display:flex;align-items:center;gap:12px;position:sticky;top:72px;z-index:4;flex-wrap:wrap}.timer{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-variant-numeric:tabular-nums;font-size:1.1rem;direction:ltr}.timer.urgent{color:var(--mat-sys-error);animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.55}}.runner{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:start}@media(max-width:860px){.runner{grid-template-columns:1fr}}.runner-nav{display:flex;flex-wrap:wrap;gap:8px;position:sticky;top:150px}.q-dot{width:38px;height:38px;border-radius:10px;border:1px solid var(--app-border);cursor:pointer;font:inherit;font-weight:600;background:var(--mat-sys-surface);color:inherit}.q-dot.answered{background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container);border-color:transparent}.q-dot.current{outline:2px solid var(--mat-sys-primary);outline-offset:1px}.question-text{font-size:1.25rem;line-height:1.7;white-space:pre-line}.answer-list{display:flex;flex-direction:column;gap:8px;margin:16px 0}.answer{padding:6px 8px;border-radius:var(--app-radius-sm);border:1px solid var(--app-border)}.save-state{min-width:80px;text-align:end}.result-banner{display:flex;align-items:center;gap:16px;padding:20px;border-radius:var(--app-radius);margin:8px 0 20px;background:var(--mat-sys-error-container);color:var(--mat-sys-on-error-container)}.result-banner.passed{background:var(--app-success-container);color:inherit}.result-banner .mat-icon{font-size:40px;width:40px;height:40px}.result-banner>div{display:flex;flex-direction:column;gap:2px}.result-score{font-size:2rem;line-height:1}.review-list{padding-inline-start:20px;display:flex;flex-direction:column;gap:16px}.review-question{padding:12px 16px;border-radius:var(--app-radius-sm);border:1px solid var(--app-border)}.review-question.correct{border-inline-start:4px solid var(--app-success)}.review-question.wrong{border-inline-start:4px solid var(--mat-sys-error)}.review-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.review-head .question-text{font-size:1rem;font-weight:600}.review-options{list-style:none;padding:0;margin:8px 0;display:grid;gap:4px}.review-options li{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:8px}.review-options li .mat-icon{color:var(--mat-sys-on-surface-variant)}.review-options li.selected{background:var(--mat-sys-surface-container);font-weight:600}.review-options li.is-correct .mat-icon{color:var(--app-success)}.review-options li.selected:not(.is-correct) .mat-icon{color:var(--mat-sys-error)}.explanation{display:flex;gap:8px;align-items:flex-start;margin:4px 0 0;color:var(--mat-sys-on-surface-variant)}.explanation .mat-icon{color:var(--app-warning)}.row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:start}@media(max-width:560px){.row-3{grid-template-columns:1fr}}.day-group{margin-bottom:20px}.day-heading{font-size:.95rem;color:var(--mat-sys-on-surface-variant);margin:12px 0 8px}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}.slot-card{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:var(--app-radius-sm);background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border);border-inline-start:4px solid var(--mat-sys-primary)}.slot-card.clickable{cursor:pointer}.slot-card.clickable:hover{background:var(--mat-sys-surface-container-low)}.slot-card.full{border-inline-start-color:var(--mat-sys-outline)}.slot-card.cancelled{opacity:.55;border-inline-start-color:var(--mat-sys-error);text-decoration:line-through}.slot-time{display:flex;flex-direction:column;min-width:72px;font-variant-numeric:tabular-nums}.slot-body{flex:1;display:flex;flex-direction:column;min-width:0}.slot-title{font-weight:600}.slot-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.chip-full{background:var(--mat-sys-surface-container-highest)}.rule-list{list-style:none;padding:0;margin:16px 0;display:grid;gap:8px}.rule-row{display:flex;align-items:center;gap:16px;padding:10px 14px;border-radius:var(--app-radius-sm);border:1px solid var(--app-border)}.rule-when{display:flex;flex-direction:column;min-width:120px}.rule-what{flex:1;display:flex;flex-direction:column}.slot-summary{display:flex;align-items:center;gap:8px;margin:4px 0}.slot-summary .mat-icon{color:var(--mat-sys-on-surface-variant)}.attendee-list{list-style:none;padding:0;margin:8px 0;display:grid;gap:4px}.attendee-list li{display:flex;align-items:center;gap:10px;padding:6px 4px;border-block-end:1px solid var(--app-border)}.attendee-name{flex:1;font-weight:500}.history-list{margin-top:12px}.danger-text{color:var(--mat-sys-error)!important}.booking-cards{display:grid;gap:12px;margin-top:16px}.booking-card{display:flex;align-items:center;gap:16px;padding:14px;border-radius:var(--app-radius);border:1px solid var(--app-border);flex-wrap:wrap}.booking-date{width:56px;height:60px;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container)}.booking-day{font-size:1.4rem;font-weight:800;line-height:1}.booking-month{font-size:.75rem;text-transform:uppercase}.booking-info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:200px}.booking-actions{display:flex;align-items:center;gap:8px}.state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:48px 16px;color:var(--mat-sys-on-surface-variant)}.state h3{color:var(--mat-sys-on-surface);margin:8px 0 0}.state p{margin:0}.state-icon{font-size:44px;width:44px!important;height:44px!important;opacity:.7}.state-error .state-icon{color:var(--mat-sys-error)}.full-center{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;gap:8px;position:relative}.big-code{font-size:5rem;font-weight:800;margin:0;color:var(--mat-sys-primary);line-height:1}.big-icon{font-size:64px;width:64px!important;height:64px!important;color:var(--mat-sys-primary)}.corner-controls{position:absolute;top:16px;inset-inline-end:16px}.mat-mdc-snack-bar-container.toast-success{--mat-snack-bar-button-color: #bbf7d0}.mat-mdc-snack-bar-container.toast-error{--mdc-snackbar-container-color: var(--mat-sys-error);--mat-snack-bar-container-color: var(--mat-sys-error);--mat-snack-bar-button-color: #fff}button.danger{--mat-button-filled-container-color: var(--mat-sys-error);--mat-button-filled-label-text-color: var(--mat-sys-on-error)}.mat-mdc-dialog-content p{line-height:1.6}.status[data-status=Trialing]:before{background:#2563eb}.status[data-status=PastDue]:before{background:var(--app-warning)}.status[data-status=Expired]:before{background:var(--mat-sys-outline)}.billing-layout .panel{height:100%}.plan-summary{display:flex;align-items:center;gap:14px;margin-bottom:8px}.plan-summary .grow,.plan-compare .grow{flex:1;min-width:0}.plan-name{margin:0;font-size:1.5rem}.usage-list{list-style:none;padding:0;margin:8px 0 16px;display:grid;gap:14px}.usage-row{display:flex;gap:12px;align-items:flex-start}.usage-icon{color:var(--mat-sys-primary)}.usage-main{flex:1;display:grid;gap:6px}.usage-head{display:flex;align-items:center;gap:8px}.usage-value{font-variant-numeric:tabular-nums;color:var(--mat-sys-on-surface-variant)}.progress-fill.full{background:var(--mat-sys-error)}.feature-checks{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 16px}.feature-checks li{display:flex;align-items:center;gap:8px}.feature-checks .mat-icon{color:var(--app-success)}.feature-checks li.off{color:var(--mat-sys-on-surface-variant)}.feature-checks li.off .mat-icon{color:var(--mat-sys-outline)}.plan-compare{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:8px}.plan-compare li{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--app-radius-sm);border:1px solid var(--app-border)}.plan-compare li.current{border-color:var(--mat-sys-primary);background:color-mix(in srgb,var(--mat-sys-primary) 6%,transparent)}.pricing-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px}.price-amount{font-size:1.6rem;font-weight:700;color:var(--mat-sys-on-surface)}.plan-card .price{margin:4px 0 0}.plan-card-head{display:flex;align-items:center;gap:8px}.plan-card-head h2{margin:0}.plan-card .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.plan-card.plan-off{opacity:.7}.toggle-row{display:flex;flex-wrap:wrap;align-items:center;gap:24px}.toggle-row .sort-field{width:140px}.price-rows{display:grid;gap:4px}.price-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;align-items:start}.feature-editor{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px 16px}.feature-edit-row{display:flex;align-items:center;gap:8px;min-height:56px}.feature-edit-row mat-checkbox{flex:1}.feature-edit-row .limit-field{width:130px}.tab-form{padding-top:16px}@media(max-width:600px){.price-row{grid-template-columns:1fr 1fr}}.status[data-status=Succeeded]:before{background:var(--app-success)}.status[data-status=Failed]:before{background:var(--mat-sys-error)}.status[data-status=Refunded]:before{background:var(--mat-sys-outline)}.payment-result{max-width:520px;margin:48px auto}.payment-result .panel{padding:40px 28px;gap:12px}.payment-result h1{margin:8px 0 0;font-size:1.5rem}.pricing-controls.start{justify-content:flex-start;margin:0 0 12px}.settings-form{max-width:560px}.settings-form .workspace-url{display:block;margin:6px 0;word-break:break-all}.file-upload{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.file-upload mat-progress-bar{flex:1;min-width:160px}.file-upload .file-name{display:inline-flex;align-items:center;gap:4px}.file-upload .file-name .mat-icon{color:var(--app-success);font-size:18px;width:18px;height:18px}.cover-upload{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.cover-preview{width:160px;aspect-ratio:16/9;object-fit:cover;border-radius:var(--app-radius-sm);border:1px solid var(--app-border)}.media-upload{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px}.media-upload .mat-icon{font-size:16px;width:16px;height:16px;vertical-align:middle}.video-frame.uploaded{background:#000}.video-frame.uploaded video{width:100%;height:100%;display:block}.notification-menu{min-width:320px!important;max-width:380px!important}.notification-menu .menu-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px}.notification-item{height:auto!important;min-height:56px;padding-block:8px!important}.notification-item.unread{background:color-mix(in srgb,var(--mat-sys-primary) 8%,transparent)}.notification-text{display:flex;flex-direction:column;line-height:1.35;white-space:normal}.notification-title{font-weight:500}.notification-time{font-size:.75rem;color:var(--mat-sys-on-surface-variant)}.empty-notifications{padding:16px;margin:0}.notification-list{list-style:none;padding:0;margin:8px 0;display:grid;gap:8px}.notification-list li{display:flex;gap:14px;align-items:flex-start;padding:12px 14px;border-radius:var(--app-radius-sm);border:1px solid var(--app-border);cursor:pointer}.notification-list li.unread{border-color:var(--mat-sys-primary);background:color-mix(in srgb,var(--mat-sys-primary) 5%,transparent)}.notification-list .grow{flex:1;min-width:0}.notification-body{white-space:pre-line;margin:4px 0;color:var(--mat-sys-on-surface-variant)}.pref-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.pref-list li{display:flex;align-items:center;gap:12px}.pref-list .grow{flex:1}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.skip-link{position:absolute;inset-inline-start:12px;top:-48px;z-index:1000;padding:8px 14px;border-radius:8px;background:var(--mat-sys-primary);color:var(--mat-sys-on-primary);transition:top .15s ease}.skip-link:focus{top:12px}main:focus{outline:none}:focus-visible{outline:3px solid color-mix(in srgb,var(--mat-sys-primary) 60%,transparent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.bar-chart{margin:8px 0 0}.bar-chart svg{width:100%;height:180px;display:block;overflow:visible}.bar-chart .bar{fill:var(--mat-sys-primary);transition:opacity .15s}.bar-chart .bar:hover{opacity:.8}.bar-chart .bar.zero{fill:var(--mat-sys-outline-variant, #cbd5e1)}.bar-chart .axis{stroke:var(--app-border);stroke-width:1}.bar-chart .tick,.bar-chart .max{font-size:11px;fill:var(--mat-sys-on-surface-variant)}.rank-list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:12px}.rank-list li{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}.rank-list .progress-track{grid-column:1/-1}.activity-list li.unread-row{font-weight:600}.student-panels{margin-top:24px}.teacher-profile{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.teacher-photo{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid var(--mat-sys-surface);box-shadow:var(--app-shadow)}.teacher-photo.hero{width:104px;height:104px;border-color:#fff9}.teacher-photo.small{width:72px;height:72px}.teacher-photo.placeholder{display:grid;place-items:center;background:var(--mat-sys-primary-container);color:var(--mat-sys-primary)}.teacher-photo.placeholder .mat-icon{font-size:56px;width:56px;height:56px}.hero-headline{font-size:1.15rem;font-weight:500;margin:4px 0 8px;opacity:.95}.clamp-4{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}.section-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.section-head h2{margin:0}.domain-list{list-style:none;padding:0;margin:12px 0;display:grid;gap:12px}.domain-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.domain-head .mat-icon.done{color:var(--app-success)}.dns-table{width:100%;border-collapse:collapse;font-size:.85rem}.dns-table th,.dns-table td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--app-border);word-break:break-all}.status[data-status=Pending]:before{background:var(--app-warning)}.audit-details{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:0;font-size:.85rem}.audit-details dt{color:var(--mat-sys-on-surface-variant)}.audit-details dd{margin:0;word-break:break-word}.pv{position:relative;aspect-ratio:16/9;background:#000;border-radius:var(--app-radius);overflow:hidden;margin-bottom:16px;outline:none;-webkit-user-select:none;user-select:none}.pv:focus-visible{box-shadow:0 0 0 3px var(--mat-sys-primary)}.pv video{width:100%;height:100%;display:block;background:#000}.pv:fullscreen{border-radius:0;aspect-ratio:auto;width:100vw;height:100vh}.pv-watermark{position:absolute;z-index:2;pointer-events:none;color:#ffffff8c;text-shadow:0 0 3px rgba(0,0,0,.6);font-size:clamp(.7rem,1.6vw,1rem);font-weight:600;white-space:nowrap;transition:top 1.5s ease,left 1.5s ease}.pv-controls{position:absolute;inset-inline:0;bottom:0;z-index:3;display:flex;align-items:center;gap:4px;padding:4px 8px;background:linear-gradient(transparent,#000000bf);color:#fff;opacity:0;transition:opacity .2s}.pv:hover .pv-controls,.pv:focus-within .pv-controls,.pv.pv-paused .pv-controls{opacity:1}.pv-controls .mat-mdc-icon-button,.pv-controls .mat-mdc-button{color:#fff}.pv-seek{flex:1;min-width:60px;accent-color:var(--mat-sys-primary)}.pv-time{font-variant-numeric:tabular-nums;font-size:.8rem;min-width:38px;text-align:center}.pv-speed{min-width:44px!important;padding:0 6px!important}.pv-big-play{position:absolute;inset:0;margin:auto;z-index:2;width:72px;height:72px;border-radius:50%;border:0;cursor:pointer;background:#0000008c;color:#fff;display:grid;place-items:center}.pv-big-play mat-icon{font-size:44px;width:44px;height:44px}.pv-overlay{position:absolute;inset:0;z-index:4;display:grid;place-content:center;justify-items:center;gap:8px;padding:24px;background:#000c;color:#fff;text-align:center}.pv-spinner{position:absolute;inset:0;margin:auto;z-index:2;width:42px;height:42px;border-radius:50%;border:4px solid rgba(255,255,255,.25);border-top-color:#fff;animation:pv-spin .8s linear infinite}@keyframes pv-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.pv-spinner{animation-duration:2.4s}.pv-watermark{transition:none}}.video-state{display:grid;place-content:center;justify-items:center;gap:8px;color:#e5e7eb;text-align:center;padding:24px}.video-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--app-radius-sm);background:var(--mat-sys-surface-container);margin:8px 0;font-size:.9rem}.video-status mat-progress-bar{flex-basis:100%}.video-status.ready mat-icon{color:var(--app-success)}.video-status.failed mat-icon{color:var(--mat-sys-error)}.designer{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:24px;align-items:start}@media(max-width:960px){.designer{grid-template-columns:1fr}}.designer-form{display:flex;flex-direction:column;gap:8px}.designer-form h3{margin:12px 0 4px}.toggle-hint{margin:-4px 0 8px;padding-inline-start:52px}.style-picker{display:flex;flex-wrap:wrap;margin-bottom:12px}.style-picker .mat-button-toggle-label-content{display:flex;align-items:center;gap:8px}.style-thumb{display:inline-block;width:28px;height:20px;border-radius:3px;background:#fff;border:1px solid var(--app-border)}.style-thumb.classic{box-shadow:inset 0 0 0 2px #1e3a8a,inset 0 0 0 4px #fff,inset 0 0 0 5px #b8860b}.style-thumb.modern{background:linear-gradient(90deg,#1e3a8a 28%,#fff 28%)}.style-thumb.minimal{background:linear-gradient(#b8860b 3px,#fff 3px)}.designer-preview{position:sticky;top:16px}.preview-head{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.preview-head h3{margin:0}.certificate-frame{width:100%;aspect-ratio:297/210;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);background:#fff}.certificate-frame.placeholder{display:grid;place-content:center;text-align:center;padding:24px}.upsell{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:16px;margin-bottom:16px;border-radius:var(--app-radius);background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container)}.upsell>div{flex:1;min-width:200px}.upsell p{margin:4px 0 0}.cert-filter{margin:8px 0 12px}.cert-rows{list-style:none;margin:0;padding:0}.cert-row{display:flex;align-items:center;gap:12px;padding:10px 4px;border-bottom:1px solid var(--app-border)}.cert-row.revoked .cert-main strong{text-decoration:line-through}.cert-icon{color:#b8860b}.cert-row.revoked .cert-icon{color:var(--mat-sys-error)}.cert-main{flex:1;display:flex;flex-direction:column;min-width:0}.status-chip{font-size:.78rem;padding:2px 10px;border-radius:999px;background:#dcfce7;color:#166534;white-space:nowrap}.status-chip.revoked{background:#fee2e2;color:#991b1b}.empty-note{display:flex;align-items:center;gap:8px}.certificate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.certificate-card{display:flex;flex-direction:column;gap:4px;border-top:4px solid #b8860b}.certificate-card h2{margin:4px 0;font-size:1.15rem}.certificate-card p{margin:0}.certificate-seal{color:#b8860b;font-size:36px;width:36px;height:36px}.card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.empty-state{display:grid;justify-items:center;gap:8px;text-align:center;padding:32px}.empty-state mat-icon{font-size:48px;width:48px;height:48px;color:#b8860b}.verify-page{max-width:640px;margin-inline:auto;padding:32px 16px}.verify-form{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline}.verify-form mat-form-field{flex:1;min-width:220px}.verify-result{display:flex;gap:16px;padding:20px;margin-top:16px;border-radius:var(--app-radius);background:#f0fdf4;border:1px solid #86efac;color:#14532d}.verify-result mat-icon{color:var(--app-success);font-size:36px;width:36px;height:36px}.verify-result.revoked{background:#fef2f2;border-color:#fca5a5;color:#7f1d1d}.verify-result.revoked mat-icon{color:#dc2626}.verify-result .facts{margin-top:12px}.verify-result .facts dt{color:inherit;opacity:.75}.align-start{align-self:flex-start}.steps{padding-inline-start:20px;line-height:1.8}.quiz-editor{display:flex;flex-direction:column;gap:8px}.quiz-rules{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.passing-field{width:150px}.quiz-question{border:1px solid var(--app-border);border-radius:var(--app-radius-sm);padding:8px 14px 4px;margin:0;display:flex;flex-direction:column}.quiz-question legend{font-weight:600;padding:0 6px}.question-tools{display:flex;justify-content:flex-end;align-items:center}.quiz-option{display:flex;align-items:center;gap:4px}.quiz-option .grow{flex:1}.lesson-row .has-quiz{color:var(--mat-sys-primary)}.lesson-quiz{margin-top:24px;padding-top:16px;border-top:1px solid var(--app-border)}.lesson-quiz-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px}.lesson-quiz-head h2{display:flex;align-items:center;gap:8px;margin:0;font-size:1.2rem}.quiz-item{border:1px solid var(--app-border);border-radius:var(--app-radius-sm);padding:10px 14px;margin:0 0 12px;display:flex;flex-direction:column;gap:2px}.quiz-item legend{font-weight:600;padding:0 6px}.quiz-item.right{border-color:#86efac;background:#f0fdf4}.quiz-item.wrong{border-color:#fca5a5;background:#fef2f2}.quiz-radios{display:flex;flex-direction:column}.correct-answer{font-weight:700;color:#166534}.quiz-verdict{display:flex;align-items:center;gap:6px;margin:6px 0 0}.quiz-item.right .quiz-verdict mat-icon{color:var(--app-success)}.quiz-item.wrong .quiz-verdict mat-icon{color:#dc2626}.quiz-explanation{margin:4px 0 0;color:var(--mat-sys-on-surface-variant)}.coupon-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0 12px;align-items:baseline;margin-bottom:8px}.upper{text-transform:uppercase}.coupon-code{font-family:ui-monospace,monospace;letter-spacing:.05em}.coupon-row{display:flex;gap:6px;align-items:center;margin:8px 0}.coupon-input{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--app-border);border-radius:var(--app-radius-sm);font:inherit;text-transform:uppercase;background:transparent;color:inherit}.coupon-applied{display:flex;align-items:center;gap:4px;color:#166534;margin:0 0 8px}.old-price{font-size:.8em;margin-inline-end:6px}.children-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.child-card{display:flex;flex-direction:column;gap:10px}.child-head{display:flex;align-items:center;gap:12px}.child-head h2{margin:0;font-size:1.15rem}.avatar-lg{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:1.2rem;background:var(--mat-sys-primary-container);color:var(--mat-sys-on-primary-container)}.child-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;text-align:center}.child-stats div{display:flex;flex-direction:column;padding:8px 4px;border-radius:var(--app-radius-sm);background:var(--mat-sys-surface-container)}.child-stats strong{font-size:1.15rem}.child-stats span{font-size:.75rem;color:var(--mat-sys-on-surface-variant)}.child-course{gap:8px}.child-course .grow{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-session{display:flex;align-items:center;gap:6px;margin:0}@media(max-width:480px){.child-stats{grid-template-columns:repeat(2,1fr)}}.slot-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0 12px}.slot-filters .mat-mdc-form-field{flex:0 1 200px}.slot-center{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.center-row .center-icon{color:var(--mat-sys-primary)}.attendance-counts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:8px 0}.roster .roster-row{flex-wrap:wrap}.roster-main{flex:1 1 220px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0}.roster-actions{display:flex;align-items:center;gap:4px}.attendance-history{flex-basis:100%;margin:4px 0 0;padding-inline-start:20px;display:grid;gap:2px}.attendance-history li{display:flex;flex-wrap:wrap;gap:4px 10px;border:0;padding:2px 0}.admin-session{flex-wrap:wrap;cursor:pointer}.status[data-status=Present]:before{background:var(--app-success)}.status[data-status=Late]:before{background:var(--app-warning)}.status[data-status=Absent]:before{background:var(--mat-sys-error)}.status[data-status=Excused]:before{background:#2563eb}.status[data-status=Unmarked]:before{background:transparent;border:1px solid var(--mat-sys-outline)}.status[data-status=NotStarted]:before{background:var(--app-warning)}.status[data-status=Ended]:before{background:var(--mat-sys-outline)}.status[data-status=Due]:before,.status[data-status=RefundDue]:before{background:var(--mat-sys-error)}.status[data-status=Free]:before{background:#2563eb}.amount-in{color:var(--app-success)}.amount-out{color:var(--mat-sys-error)}:root{--app-accent-gradient: linear-gradient(135deg, var(--mat-sys-primary), color-mix(in srgb, var(--app-secondary) 70%, var(--mat-sys-primary)))}.hero{position:relative;overflow:hidden;padding-block:clamp(56px,8vw,104px)}.hero:after{content:"";position:absolute;inset:auto -10% -60% auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--app-secondary) 16%,transparent),transparent);pointer-events:none}.hero h1{letter-spacing:-.02em}.hero .eyebrow{border:1px solid color-mix(in srgb,var(--mat-sys-primary) 25%,transparent)}.hero-visual{position:relative;z-index:1}.mock-window{transform:perspective(1200px) rotateY(-4deg) rotateX(2deg);transition:transform .4s ease;box-shadow:var(--app-shadow-lg)}[dir=rtl] .mock-window{transform:perspective(1200px) rotateY(4deg) rotateX(2deg)}.mock-window:hover,[dir=rtl] .mock-window:hover{transform:none}.feature-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--app-shadow-lg);border-color:color-mix(in srgb,var(--mat-sys-primary) 35%,var(--app-border))}.feature-icon{background:var(--app-accent-gradient);color:#fff}.ss-steps{counter-reset:none}.ss-steps .step-number{background:var(--app-accent-gradient);box-shadow:0 0 0 6px color-mix(in srgb,var(--mat-sys-primary) 12%,transparent)}.cta-band{position:relative;overflow:hidden;background:var(--app-accent-gradient)}.cta-band:before{content:"";position:absolute;inset:-40% auto auto -10%;width:380px;height:380px;border-radius:50%;background:#ffffff14;pointer-events:none}.cta-inner{position:relative}.public-footer{background:var(--mat-sys-surface-container-low)}.public-nav a{border-radius:var(--app-radius-pill)}a:focus-visible,button:focus-visible,summary:focus-visible,[role=tab]:focus-visible{outline:3px solid color-mix(in srgb,var(--mat-sys-primary) 60%,transparent);outline-offset:2px}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){.public-main .section .container,.public-main .feature-card{animation:app-reveal linear both;animation-timeline:view();animation-range:entry 0% entry 30%}}}@keyframes app-reveal{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.mock-window,[dir=rtl] .mock-window{transform:none;transition:none}.feature-card,.feature-card:hover{transition:none;transform:none}}.dash-sidenav{background:var(--mat-sys-surface-container-lowest)!important}.dash-group-label{font-size:.72rem!important;font-weight:700!important;letter-spacing:.06em;text-transform:uppercase;color:var(--mat-sys-on-surface-variant)!important;opacity:.8;margin-block-start:8px}.dash-sidenav a.mat-mdc-list-item{--mdc-list-list-item-one-line-container-height: 42px;height:42px;border-radius:var(--app-radius-sm)}.dash-sidenav a.active-link{position:relative;background:color-mix(in srgb,var(--mat-sys-primary) 12%,transparent)}.dash-sidenav a.active-link .mat-icon,.dash-sidenav a.active-link .mdc-list-item__primary-text{color:var(--mat-sys-primary)}.dash-sidenav a.active-link:before{content:"";position:absolute;inset-block:8px;inset-inline-start:-10px;width:4px;border-radius:0 4px 4px 0;background:var(--mat-sys-primary)}[dir=rtl] .dash-sidenav a.active-link:before{border-radius:4px 0 0 4px}.dash-content{background:var(--mat-sys-surface-container-low)}.dash-toolbar{background:color-mix(in srgb,var(--mat-sys-surface) 92%,transparent)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.page-header{padding-block-end:16px;border-block-end:1px solid var(--app-border)}.page-header h1{font-size:clamp(1.35rem,2vw,1.75rem)}.panel{box-shadow:0 1px 2px #00000008}.stat-card{position:relative;overflow:hidden;transition:box-shadow .2s ease}.stat-card:after{content:"";position:absolute;inset-inline:0;top:0;height:3px;background:var(--app-accent-gradient);opacity:.85}.stat-card:hover{box-shadow:var(--app-shadow)}.toolbar-row{padding:12px;margin-bottom:12px;border-radius:var(--app-radius-sm);background:var(--mat-sys-surface-container-lowest);border:1px solid var(--app-border)}.data-table th.mat-mdc-header-cell{background:var(--mat-sys-surface-container);font-size:.8rem;text-transform:none}.data-table tr.mat-mdc-row:nth-child(2n) td{background-color:color-mix(in srgb,var(--mat-sys-surface-container) 45%,transparent)}.data-table tr.mat-mdc-row:hover td,.data-table tr.mat-mdc-row:nth-child(2n):hover td{background-color:color-mix(in srgb,var(--mat-sys-primary) 7%,transparent)}.data-table td.mat-mdc-cell,.data-table th.mat-mdc-header-cell{padding-inline:14px}
