html{--mat-sys-background: #faf9fd;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f2f0f4;--mat-sys-inverse-primary: #abc7ff;--mat-sys-inverse-surface: #2f3033;--mat-sys-on-background: #1a1b1f;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #00458f;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3e4759;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #1a1b1f;--mat-sys-on-surface-variant: #44474e;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #0000ef;--mat-sys-on-tertiary-fixed: #00006e;--mat-sys-on-tertiary-fixed-variant: #0000ef;--mat-sys-outline: #74777f;--mat-sys-outline-variant: #c4c6d0;--mat-sys-primary: #005cbb;--mat-sys-primary-container: #d7e3ff;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #565e71;--mat-sys-secondary-container: #dae2f9;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #faf9fd;--mat-sys-surface-bright: #faf9fd;--mat-sys-surface-container: #efedf0;--mat-sys-surface-container-high: #e9e7eb;--mat-sys-surface-container-highest: #e3e2e6;--mat-sys-surface-container-low: #f4f3f6;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dbd9dd;--mat-sys-surface-tint: #005cbb;--mat-sys-surface-variant: #e0e2ec;--mat-sys-tertiary: #343dff;--mat-sys-tertiary-container: #e0e0ff;--mat-sys-tertiary-fixed: #e0e0ff;--mat-sys-tertiary-fixed-dim: #bec2ff;--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--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 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;--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}.auth-shell,.auth-shell *{box-sizing:border-box}.auth-shell{min-height:100vh;background:#f8fafc;display:flex;flex-direction:column;color:#0f172a}.auth-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:60px;border-bottom:1px solid #e2e8f0;flex-shrink:0;background:#fff}.auth-topbar__logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#0f172a}.auth-topbar__mark{width:30px;height:30px;background:#3b82f6;color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem;flex-shrink:0}.auth-topbar__name{font-weight:700;font-size:1.05rem;letter-spacing:-.01em}.auth-topbar__back{display:flex;align-items:center;gap:.3rem;text-decoration:none;color:#64748b;font-size:.875rem;font-weight:500;transition:color .15s}.auth-topbar__back mat-icon{font-size:1.1rem;width:1.1rem;height:1.1rem}.auth-topbar__back:hover{color:#0f172a}.auth-main{flex:1;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:2.5rem 1rem}.auth-card{width:100%;min-width:0;max-width:440px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:2rem 2rem 1.75rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 1px 3px #0f172a0f}.auth-card__header{display:flex;flex-direction:column;gap:.25rem}.auth-card__icon-wrap{width:48px;height:48px;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:.25rem}.auth-card__icon-wrap mat-icon{font-size:1.5rem;width:1.5rem;height:1.5rem;color:#1d4ed8}.auth-card__title{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0;color:#0f172a}.auth-card__sub{font-size:.875rem;color:#64748b;margin:0;line-height:1.5}.auth-card__switch{text-align:center;font-size:.875rem;color:#64748b;margin:0}.auth-card__switch a{color:#1d4ed8;text-decoration:none;font-weight:500}.auth-card__switch a:hover{text-decoration:underline}.auth-error{display:flex;align-items:center;gap:.5rem;background:#ef444414;border:1px solid rgba(239,68,68,.25);color:#dc2626;border-radius:10px;padding:.65rem .875rem;font-size:.875rem}.auth-error mat-icon{font-size:1.1rem;width:1.1rem;height:1.1rem;flex-shrink:0}.auth-invite-banner{display:flex;align-items:flex-start;gap:.5rem;background:#3b82f614;border:1px solid rgba(59,130,246,.2);color:#374151;border-radius:10px;padding:.65rem .875rem;font-size:.875rem;line-height:1.4;margin-bottom:1rem}.auth-invite-banner mat-icon{font-size:1.1rem;width:1.1rem;height:1.1rem;flex-shrink:0;margin-top:.1rem;color:#1d4ed8}.auth-invite-banner strong{color:#0f172a}.auth-oauth{display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:0;overflow:hidden}.google-btn{display:grid;place-items:center;min-height:44px;width:100%;min-width:0;overflow:hidden}.auth-oauth__hint{font-size:.78rem;color:#64748b;margin:0}.auth-divider{position:relative;display:flex;align-items:center;justify-content:center;margin:-.25rem 0}.auth-divider:before{content:"";position:absolute;left:0;right:0;height:1px;background:#e2e8f0}.auth-divider span{position:relative;background:#fff;padding:0 .75rem;font-size:.78rem;color:#64748b}.auth-form{display:flex;flex-direction:column;gap:0}.auth-field{width:100%;margin-bottom:.5rem;--mat-form-field-outlined-outline-color: #cbd5e1;--mat-form-field-outlined-hover-outline-color: #94a3b8;--mat-form-field-outlined-focus-outline-color: #3b82f6;--mat-form-field-outlined-label-text-color: #64748b;--mat-form-field-outlined-hover-label-text-color: #64748b;--mat-form-field-outlined-focus-label-text-color: #3b82f6;--mat-form-field-outlined-input-text-color: #0f172a;--mat-form-field-outlined-container-shape: 10px}.auth-field-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.auth-field-row .auth-field{margin-bottom:.5rem}@media(max-width:400px){.auth-field-row{grid-template-columns:minmax(0,1fr)}}.auth-section-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#1d4ed8;padding-bottom:.25rem;border-bottom:1px solid #e2e8f0;margin-top:.25rem}.auth-form__forgot{display:flex;justify-content:flex-end;margin:-.25rem 0 .75rem}.auth-form__forgot a{font-size:.8rem;color:#1d4ed8;text-decoration:none}.auth-form__forgot a:hover{text-decoration:underline}.auth-submit{width:100%;height:46px;border-radius:10px;font-size:.95rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem}.auth-sent{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:.5rem 0}.auth-sent__icon{width:64px;height:64px;border-radius:50%;background:#3b82f614;border:1px solid rgba(59,130,246,.2);display:flex;align-items:center;justify-content:center;margin-bottom:.25rem}.auth-sent__icon mat-icon{font-size:2rem;width:2rem;height:2rem;color:#1d4ed8}.auth-sent__title{font-size:1.35rem;font-weight:700;margin:0;color:#0f172a}.auth-sent__sub{font-size:.9rem;color:#64748b;margin:0;line-height:1.6}.auth-sent__sub strong{color:#0f172a}.auth-sent__note{font-size:.8rem;color:#64748b;margin:0}.auth-sent__retry{background:none;border:none;color:#1d4ed8;cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.auth-sent__retry:hover{opacity:.8}.auth-sent__back{margin-top:.5rem;width:100%;border-radius:10px}@media(max-width:480px){.auth-topbar{padding:0 1rem}.auth-main{padding:1.5rem .75rem}.auth-card{padding:1.5rem 1.25rem 1.25rem;gap:1rem}.auth-card__title{font-size:1.25rem}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:24px}.page-header__actions{display:flex;align-items:center;gap:8px}.page-title{margin:0 0 4px;font-size:1.5rem;font-weight:600;color:#111827}.page-subtitle{margin:0;font-size:.875rem;color:#6b7280}.spinner-wrap{display:flex;justify-content:center;padding:60px 0}.empty-state{text-align:center;padding:64px 24px;color:#6b7280}.empty-state .empty-icon{font-size:56px;width:56px;height:56px;color:#d1d5db;margin-bottom:16px}.empty-state h3{margin:0 0 8px;font-size:1.125rem;color:#374151}.empty-state p{margin:0 0 24px;color:#6b7280}.status-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-badge--draft{background:#f3f4f6;color:#6b7280}.status-badge--scheduled{background:#dbeafe;color:#1d4ed8}.status-badge--sending{background:#fef9c3;color:#a16207}.status-badge--sent{background:#dcfce7;color:#166534}.status-badge--cancelled{background:#fee2e2;color:#991b1b}.status-badge--pending{background:#fef9c3;color:#a16207}.status-badge--accepted{background:#dcfce7;color:#166534}.status-badge--expired{background:#fee2e2;color:#991b1b}.status-badge--active{background:#dcfce7;color:#166534}.status-badge--inactive,.status-badge--archived{background:#f3f4f6;color:#6b7280}.error-banner{display:flex;align-items:center;gap:8px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px 16px;color:#dc2626;margin-bottom:24px}.dialog-form{display:flex;flex-direction:column;gap:4px;padding-top:8px}.full-width{width:100%}.error-msg{color:#dc2626;font-size:.8125rem;padding:4px 0}.stats-pill{display:flex;align-items:center;gap:3px;font-size:.75rem;font-weight:500}.stats-pill mat-icon{font-size:14px;width:14px;height:14px}.stats-pill--sent{color:#16a34a}.stats-pill--fail{color:#dc2626}.expire-note{font-size:.75rem;color:#9ca3af}@media(max-width:599px){.page-title{font-size:1.25rem}.page-subtitle{font-size:.8125rem}.page-header{margin-bottom:16px}.page-header__actions{flex-wrap:wrap}.empty-state{padding:40px 16px}.dialog-form{min-width:0!important}}.lp-container{max-width:1160px;margin:0 auto;padding:0 24px}.lp-section{padding:96px 0}.lp-section__header{text-align:center;margin-bottom:56px}.lp-section__tag{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--lp-primary);background:var(--lp-primary-light);border-radius:100px;padding:4px 14px;margin-bottom:16px}.lp-section__title{font-size:clamp(26px,4vw,36px);font-weight:700;letter-spacing:-.02em;color:var(--lp-text);margin:0 0 16px}.lp-section__sub{font-size:17px;color:var(--lp-text-muted);max-width:560px;margin:0 auto;line-height:1.7}.lp-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .1s;white-space:nowrap;border:2px solid transparent;box-sizing:border-box}.lp-btn mat-icon{font-size:18px;width:18px;height:18px}.lp-btn:active{transform:scale(.98)}.lp-btn--primary{background:var(--lp-primary);color:var(--lp-white)}.lp-btn--primary:hover{background:var(--lp-primary-dark)}.lp-btn--outline{background:transparent;border-color:var(--lp-border);color:var(--lp-text)}.lp-btn--outline:hover{border-color:#94a3b8;background:var(--lp-surface)}.lp-btn--ghost{background:transparent;color:var(--lp-text-muted)}.lp-btn--ghost:hover{color:var(--lp-text);background:var(--lp-surface)}.lp-btn--white{background:var(--lp-white);color:var(--lp-primary)}.lp-btn--white:hover{background:var(--lp-primary-light)}.lp-btn--outline-white{background:transparent;border-color:#fff6;color:var(--lp-white)}.lp-btn--outline-white:hover{border-color:#fffc;background:#ffffff14}.lp-btn--lg{padding:13px 26px;font-size:15px;border-radius:10px}.lp-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.lp-logo__mark{width:36px;height:36px;border-radius:9px;background:var(--lp-primary);color:#fff;font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lp-logo__text{font-size:18px;font-weight:700;color:var(--lp-text);letter-spacing:-.02em}.lp-logo--light .lp-logo__text{color:var(--lp-white)}.lp-logo--light .lp-logo__mark{background:#ffffff26;color:var(--lp-white)}.lp-nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--lp-nav-h);background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}.lp-nav--scrolled{border-color:var(--lp-border);box-shadow:0 1px 12px #0000000f}.lp-nav__inner{height:100%;display:flex;align-items:center;gap:32px}.lp-nav__links{display:flex;align-items:center;gap:4px;margin-left:8px}.lp-nav__links a{padding:6px 12px;border-radius:6px;font-size:14px;font-weight:500;color:var(--lp-text-muted);text-decoration:none;cursor:pointer;transition:color .15s,background .15s}.lp-nav__links a:hover{color:var(--lp-text);background:var(--lp-surface)}.lp-nav__actions{margin-left:auto;display:flex;align-items:center;gap:8px}.lp-nav__mobile-auth{display:none}.lp-hamburger{display:none;margin-left:auto;background:none;border:none;cursor:pointer;color:var(--lp-text);padding:6px;border-radius:6px}.lp-hamburger:hover{background:var(--lp-surface)}.lp-hamburger mat-icon{display:block}.lp-user-pill{display:flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border:1px solid var(--lp-border);border-radius:100px;background:var(--lp-white);font-size:13px;color:var(--lp-text)}.lp-user-pill__avatar{width:28px;height:28px;border-radius:50%;background:var(--lp-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;flex-shrink:0}.lp-user-pill__name{font-weight:500;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lp-hero__note--auth strong{color:var(--lp-text)}.lp-hero{padding-top:calc(var(--lp-nav-h) + 64px);padding-bottom:80px;background:linear-gradient(160deg,#f8fafc,#eff6ff 60%,#f8fafc)}.lp-hero__inner{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.lp-hero__content{max-width:540px}.lp-hero__visual{display:flex;justify-content:center}.lp-hero__ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.lp-hero__note{font-size:13px;color:#94a3b8;margin:0}.lp-badge{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--lp-primary);border:1px solid var(--lp-primary-mid);background:var(--lp-primary-light);border-radius:100px;padding:5px 14px;margin-bottom:24px}.lp-hero__title{font-size:clamp(36px,5vw,54px);font-weight:800;letter-spacing:-.04em;line-height:1.1;color:var(--lp-text);margin:0 0 20px}.lp-hero__sub{font-size:18px;color:var(--lp-text-muted);line-height:1.7;margin:0 0 36px}.lp-mockup{width:100%;max-width:420px;background:var(--lp-white);border-radius:16px;box-shadow:var(--lp-shadow-lg);overflow:hidden;border:1px solid var(--lp-border)}.lp-mockup__header{display:flex;align-items:center;gap:6px;padding:12px 16px;background:#f1f5f9;border-bottom:1px solid var(--lp-border)}.lp-mockup__dot{width:11px;height:11px;border-radius:50%}.lp-mockup__dot--red{background:#f87171}.lp-mockup__dot--yellow{background:#fbbf24}.lp-mockup__dot--green{background:#4ade80}.lp-mockup__title{margin-left:8px;font-size:12px;font-weight:600;color:var(--lp-text-muted)}.lp-mockup__chat{padding:20px 16px 12px;display:flex;flex-direction:column;gap:10px;background:#f0f4f8}.lp-bubble{max-width:80%;padding:10px 14px;border-radius:14px;font-size:13px;line-height:1.5}.lp-bubble--in{align-self:flex-start;background:var(--lp-white);border-radius:14px 14px 14px 4px;box-shadow:0 1px 4px #00000014;color:var(--lp-text)}.lp-bubble--out{align-self:flex-end;background:#25d366;border-radius:14px 14px 4px;color:#fff;max-width:85%}.lp-slots{display:flex;flex-direction:column;gap:5px;margin-top:8px}.lp-slot{padding:5px 10px;border-radius:6px;background:#fff3;font-size:12px;font-weight:500}.lp-slot--active{background:#ffffff59;font-weight:700}.lp-booking-card{margin:0 16px 16px;padding:14px 16px;border-radius:12px;background:var(--lp-white);border:1px solid var(--lp-border);display:flex;align-items:center;gap:14px;box-shadow:0 2px 8px #0000000f}.lp-booking-card__icon mat-icon{font-size:28px;width:28px;height:28px;color:var(--lp-success)}.lp-booking-card__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--lp-success);margin-bottom:2px}.lp-booking-card__service{font-size:14px;font-weight:700;color:var(--lp-text)}.lp-booking-card__time{font-size:12px;color:var(--lp-text-muted);margin-top:2px}.lp-stats{background:var(--lp-surface);border-top:1px solid var(--lp-border);border-bottom:1px solid var(--lp-border);padding:40px 0}.lp-stats__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;text-align:center}.lp-stat__number{font-size:36px;font-weight:800;color:var(--lp-primary);letter-spacing:-.03em}.lp-stat__label{font-size:13px;color:var(--lp-text-muted);margin-top:4px}.lp-features__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.lp-feature-card{padding:28px;border:1px solid var(--lp-border);border-radius:var(--lp-radius);background:var(--lp-white);transition:box-shadow .2s,transform .2s}.lp-feature-card:hover{box-shadow:var(--lp-shadow-lg);transform:translateY(-2px)}.lp-feature-card__icon{width:48px;height:48px;border-radius:10px;background:var(--lp-primary-light);display:flex;align-items:center;justify-content:center;margin-bottom:18px}.lp-feature-card__icon mat-icon{color:var(--lp-primary);font-size:22px;width:22px;height:22px}.lp-feature-card__title{font-size:16px;font-weight:700;margin:0 0 10px;color:var(--lp-text)}.lp-feature-card__desc{font-size:14px;color:var(--lp-text-muted);line-height:1.65;margin:0}.lp-hiw{background:var(--lp-surface)}.lp-hiw__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;position:relative}.lp-step{text-align:center;position:relative}.lp-step__number{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--lp-primary);background:var(--lp-primary-light);display:inline-block;padding:4px 12px;border-radius:100px;margin-bottom:20px}.lp-step__icon{width:60px;height:60px;border-radius:16px;background:var(--lp-white);border:1px solid var(--lp-border);box-shadow:var(--lp-shadow);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.lp-step__icon mat-icon{font-size:26px;width:26px;height:26px;color:var(--lp-primary)}.lp-step__title{font-size:17px;font-weight:700;margin:0 0 10px;color:var(--lp-text)}.lp-step__desc{font-size:14px;color:var(--lp-text-muted);line-height:1.65;margin:0}.lp-step__connector{position:absolute;top:62px;right:-20px;width:40px;height:2px;background:var(--lp-border);display:none}.lp-biz__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.lp-biz-tile{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 12px;border:1px solid var(--lp-border);border-radius:var(--lp-radius);background:var(--lp-white);transition:border-color .2s,box-shadow .2s}.lp-biz-tile:hover{border-color:var(--lp-primary);box-shadow:0 0 0 3px var(--lp-primary-light)}.lp-biz-tile__icon mat-icon{font-size:28px;width:28px;height:28px;color:var(--lp-primary)}.lp-biz-tile__label{font-size:12px;font-weight:600;color:var(--lp-text-muted);text-align:center}.lp-pricing{background:linear-gradient(180deg,var(--lp-primary-light) 0%,var(--lp-white) 100%)}.lp-pricing__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.lp-plan{position:relative;padding:32px;border:1px solid var(--lp-border);border-radius:16px;background:var(--lp-white);box-shadow:var(--lp-shadow)}.lp-plan--popular{border-color:var(--lp-primary);box-shadow:0 0 0 2px var(--lp-primary),var(--lp-shadow-lg);transform:scale(1.03)}.lp-plan__popular-badge{position:absolute;top:-14px;left:50%;transform:translate(-50%);background:var(--lp-primary);color:var(--lp-white);font-size:11px;font-weight:700;padding:4px 16px;border-radius:100px;white-space:nowrap}.lp-plan__header{margin-bottom:28px}.lp-plan__name{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--lp-text-muted);margin-bottom:12px}.lp-plan__price{display:flex;align-items:baseline;gap:4px;margin-bottom:10px}.lp-plan__amount{font-size:40px;font-weight:800;letter-spacing:-.03em;color:var(--lp-text)}.lp-plan__period{font-size:14px;color:var(--lp-text-muted)}.lp-plan__desc{font-size:13px;color:var(--lp-text-muted);margin:0;line-height:1.5}.lp-plan__features{list-style:none;padding:0;margin:0 0 28px;display:flex;flex-direction:column;gap:10px}.lp-plan__features li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--lp-text)}.lp-plan__features li mat-icon{font-size:16px;width:16px;height:16px;color:var(--lp-success);flex-shrink:0}.lp-plan .lp-btn{display:flex;width:80%;margin:0 auto;justify-content:center}.lp-demo-btn{cursor:pointer}.lp-demo-btn:disabled{opacity:.7;cursor:not-allowed}.lp-demo-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(0,0,0,.2);border-top-color:currentColor;border-radius:50%;animation:lp-spin .7s linear infinite;flex-shrink:0}.lp-demo-spinner--light{border-color:#ffffff4d;border-top-color:#fff}@keyframes lp-spin{to{transform:rotate(360deg)}}.lp-lang-toggle{display:flex;align-items:center;background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:6px;padding:2px;gap:2px}.lp-lang-btn{padding:4px 10px;border:none;background:transparent;border-radius:4px;font-size:12px;font-weight:600;color:var(--lp-text-muted);cursor:pointer;letter-spacing:.04em;transition:background .15s,color .15s}.lp-lang-btn:hover{color:var(--lp-text)}.lp-lang-btn--active{background:var(--lp-white);color:var(--lp-primary);box-shadow:0 1px 3px #0000001a}.lp-currency-toggle{display:flex;justify-content:center;margin-bottom:32px}.lp-currency-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;border-radius:100px;border:1px solid var(--lp-primary);background:transparent;color:var(--lp-primary);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.lp-currency-btn mat-icon{font-size:18px;width:18px;height:18px}.lp-currency-btn:hover{background:var(--lp-primary);color:var(--lp-white)}.lp-testimonials__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.lp-testimonial{padding:28px;border:1px solid var(--lp-border);border-radius:var(--lp-radius);background:var(--lp-white)}.lp-testimonial__stars{color:#f59e0b;font-size:14px;margin-bottom:14px}.lp-testimonial__quote{font-size:14px;color:var(--lp-text);line-height:1.7;margin:0 0 20px}.lp-testimonial__author{display:flex;align-items:center;gap:12px}.lp-testimonial__avatar{width:38px;height:38px;border-radius:50%;background:var(--lp-primary-mid);color:var(--lp-primary);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lp-testimonial__name{font-size:14px;font-weight:700;color:var(--lp-text)}.lp-testimonial__role{font-size:12px;color:var(--lp-text-muted);margin-top:2px}.lp-faq{background:var(--lp-surface)}.lp-faq__inner{max-width:720px;margin:0 auto;padding:0 24px}.lp-faq__accordion{display:flex;flex-direction:column;gap:8px}.lp-faq__panel{border-radius:var(--lp-radius)!important;border:1px solid var(--lp-border)!important;box-shadow:none!important;background:var(--lp-white)!important}.lp-faq__panel p{font-size:14px;color:var(--lp-text-muted);line-height:1.7;margin:0}::ng-deep .lp-faq__panel .mat-expansion-panel-header-title{font-size:15px;font-weight:600;color:var(--lp-text)}::ng-deep .lp-faq__panel.mat-expanded{border-color:var(--lp-primary)!important}.lp-cta{background:var(--lp-primary);padding:80px 0}.lp-cta__inner{text-align:center}.lp-cta__title{font-size:clamp(26px,4vw,38px);font-weight:800;letter-spacing:-.03em;color:var(--lp-white);margin:0 0 16px}.lp-cta__sub{font-size:17px;color:#ffffffbf;margin:0 0 36px}.lp-cta__actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.lp-footer{background:#0f172a;color:#fff9}.lp-footer__inner{display:grid;grid-template-columns:1fr auto;gap:48px;padding-top:56px;padding-bottom:48px;align-items:start}.lp-footer__brand{max-width:300px}.lp-footer__tagline{font-size:13px;margin:12px 0 0;line-height:1.6}.lp-footer__links{display:flex;gap:48px}.lp-footer__col{display:flex;flex-direction:column;gap:10px}.lp-footer__col a{font-size:13px;color:#ffffff8c;text-decoration:none;cursor:pointer;transition:color .15s}.lp-footer__col a:hover{color:#fff}.lp-footer__col-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#ffffff59;margin-bottom:4px}.lp-footer__bottom{border-top:1px solid rgba(255,255,255,.08);padding:16px 0;font-size:12px}@media(max-width:1024px){.lp-biz__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.lp-pricing__grid,.lp-hiw__steps,.lp-testimonials__grid{grid-template-columns:minmax(0,1fr)}.lp-features__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-plan--popular{transform:none;box-shadow:0 0 0 2px var(--lp-primary)}.lp-stats__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-biz__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lp-footer__inner{grid-template-columns:minmax(0,1fr);gap:32px}.lp-footer__links{gap:32px}.lp-section{padding:72px 0}.lp-nav__links{display:none;position:fixed;top:var(--lp-nav-h);left:0;right:0;background:var(--lp-white);flex-direction:column;align-items:stretch;padding:12px 16px 20px;border-bottom:1px solid var(--lp-border);box-shadow:0 8px 16px #00000014;gap:2px}.lp-nav__links--open{display:flex}.lp-nav__links a{padding:10px 14px;font-size:15px}.lp-nav__mobile-lang{display:flex;gap:8px;padding:8px 0 4px}.lp-nav__mobile-lang .lp-lang-btn{flex:1;text-align:center;font-size:14px;padding:6px 12px}.lp-lang-toggle{display:none}.lp-nav__mobile-auth{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding-top:12px;border-top:1px solid var(--lp-border)}.lp-nav__mobile-auth .lp-btn{width:100%;justify-content:center;height:42px}.lp-nav__actions{display:none}.lp-hamburger{display:flex}}@media(max-width:768px){.lp-hero__inner{grid-template-columns:minmax(0,1fr);gap:32px}.lp-hero__visual{display:none}.lp-features__grid{grid-template-columns:minmax(0,1fr)}.lp-biz__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-footer__links{flex-direction:column;gap:24px}.lp-section{padding:56px 0}.lp-section__header{margin-bottom:36px}.lp-container{padding:0 16px}.lp-hero__ctas{flex-direction:column}.lp-hero__ctas .lp-btn{width:100%;justify-content:center}.lp-cta__actions{flex-direction:column;align-items:center}.lp-cta__actions .lp-btn{width:100%;justify-content:center}.lp-hero{padding-top:calc(var(--lp-nav-h) + 40px);padding-bottom:48px}.lp-hero__sub{font-size:16px}.lp-plan{padding:24px}.lp-plan .lp-btn{width:100%;margin:0}.lp-feature-card,.lp-testimonial{padding:20px}.lp-cta{padding:56px 0}.lp-section__sub{font-size:15px}}@media(max-width:480px){.lp-stats__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-section{padding:44px 0}.lp-section__header{margin-bottom:28px}.lp-container{padding:0 14px}.lp-hero{padding-top:calc(var(--lp-nav-h) + 24px);padding-bottom:36px}.lp-hero__title{letter-spacing:-.03em}.lp-hero__sub{font-size:15px}.lp-cta__actions .lp-btn{max-width:280px}.lp-biz__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-footer__inner{padding-top:36px;padding-bottom:32px}.lp-stat__number{font-size:28px}}.portal-shell,.portal-shell *{box-sizing:border-box}.portal-shell{min-height:100vh;display:flex;flex-direction:column;background:#f8fafc;color:#0f172a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.portal-shell h1,.portal-shell h2,.portal-shell h3,.portal-shell p{margin:0}.portal-topbar{background:#fff;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:10}.portal-topbar__inner{max-width:960px;margin:0 auto;padding:0 24px;height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-brand{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none;color:#0f172a}.portal-brand__mark{width:32px;height:32px;flex-shrink:0;display:grid;place-items:center;border-radius:8px;background:#3b82f6;color:#fff;font-weight:800;font-size:.85rem;letter-spacing:.02em}.portal-brand__name{font-weight:700;font-size:1.05rem;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-topbar__tag{font-size:.8rem;font-weight:500;color:#64748b;white-space:nowrap}.portal-tabs{max-width:960px;margin:0 auto;padding:0 24px;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.portal-tabs::-webkit-scrollbar{display:none}.portal-tabs a{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:12px 14px;margin-bottom:-1px;border-bottom:2px solid transparent;color:#64748b;font-size:.875rem;font-weight:500;text-decoration:none;white-space:nowrap;transition:color .15s,border-color .15s}.portal-tabs a mat-icon{font-size:18px;width:18px;height:18px}.portal-tabs a:hover{color:#0f172a}.portal-tabs a.active{color:#2563eb;border-bottom-color:#3b82f6}.portal-content{width:100%;max-width:960px;margin:0 auto;padding:28px 24px 56px;flex:1;display:flex;flex-direction:column}.portal-section-header+.portal-state-message,.portal-section-header+.spinner-wrap{margin:auto;width:100%;max-width:480px}.portal-main--center{flex:1;display:flex;flex-direction:column;justify-content:center;padding-bottom:40px}.portal-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.portal-section-header h2{font-size:1.5rem;font-weight:600;letter-spacing:-.01em;color:#0f172a}.portal-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 2px #0206170f;overflow:hidden}.portal-card--padded{padding:20px}.portal-footer{padding:20px 24px;text-align:center;font-size:.8rem;color:#9ca3af}.portal-shell .spinner-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;padding:64px 0;color:#64748b}.portal-state-message{display:flex;flex-direction:column;align-items:center;gap:10px;padding:56px 24px;text-align:center;color:#64748b}.portal-state-message mat-icon{font-size:40px;width:40px;height:40px;color:#9ca3af}.portal-state-message p{font-size:.95rem}.portal-state-message--error{color:#dc2626}.portal-state-message--error mat-icon{color:#ef4444}.portal-shell .portal-table{width:100%;background:transparent}.portal-shell .portal-table th.mat-mdc-header-cell,.portal-shell .portal-table th[mat-header-cell]{background:#f8fafc;color:#64748b;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0;padding:0 16px;height:44px}.portal-shell .portal-table td.mat-mdc-cell,.portal-shell .portal-table td[mat-cell]{padding:14px 16px;font-size:.875rem;color:#374151;border-bottom:1px solid #e2e8f0}.portal-shell .portal-table tr.mat-mdc-row:last-child td{border-bottom:0}.portal-shell .portal-table tr.mat-mdc-row:hover td{background:#f8fafc}.outstanding{color:#dc2626;font-weight:600}@media(max-width:640px){.portal-shell .portal-table{display:block}.portal-shell .portal-table thead{display:none}.portal-shell .portal-table tbody{display:block}.portal-shell .portal-table tr.mat-mdc-row{display:flex;flex-direction:column;gap:6px;padding:14px 16px;height:auto;border-bottom:1px solid #e2e8f0}.portal-shell .portal-table tr.mat-mdc-row:last-child{border-bottom:0}.portal-shell .portal-table td.mat-mdc-cell,.portal-shell .portal-table td[mat-cell]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0;border:0;min-height:0;text-align:right}.portal-shell .portal-table td.mat-mdc-cell:before,.portal-shell .portal-table td[mat-cell]:before{content:attr(data-label);flex-shrink:0;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;text-align:left}.portal-shell .portal-table td.mat-mdc-cell:empty,.portal-shell .portal-table td.mat-mdc-cell:not([data-label]):before,.portal-shell .portal-table td[mat-cell]:empty,.portal-shell .portal-table td[mat-cell]:not([data-label]):before{display:none}.portal-shell .portal-table td.mat-mdc-cell:not([data-label]),.portal-shell .portal-table td[mat-cell]:not([data-label]){justify-content:flex-end}.portal-shell .portal-table tr.mat-mdc-row:hover td{background:transparent}}.portal-status-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600;line-height:1.6;white-space:nowrap;background:#f3f4f6;color:#6b7280}.portal-status-badge--confirmed,.portal-status-badge--paid,.portal-status-badge--completed{background:#dcfce7;color:#166534}.portal-status-badge--pending,.portal-status-badge--scheduled,.portal-status-badge--sent,.portal-status-badge--partial,.portal-status-badge--partiallypaid{background:#fef9c3;color:#a16207}.portal-status-badge--cancelled,.portal-status-badge--canceled,.portal-status-badge--overdue,.portal-status-badge--noshow,.portal-status-badge--no_show,.portal-status-badge--void{background:#fee2e2;color:#b91c1c}.portal-status-badge--draft{background:#f3f4f6;color:#6b7280}.portal-invoice-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.portal-wallet-chip{padding:6px 14px;border-radius:999px;background:#eff6ff;color:#2563eb;font-size:.85rem;font-weight:600;font-variant-numeric:tabular-nums}.portal-wallet-balance-card{display:flex;flex-direction:column;gap:4px;padding:24px;margin-bottom:20px;border-radius:14px;color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #0206171f,0 1px 2px #0206170f}.portal-wallet-balance-label{font-size:.85rem;opacity:.85}.portal-wallet-balance-amount{font-size:2.25rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.portal-wallet-topup-form{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:20px;padding:20px 20px 4px;background:#fff;border:1px solid #e2e8f0;border-radius:14px}.portal-wallet-topup-actions{display:flex;gap:8px;padding-top:6px}.portal-wallet-history-title{margin:28px 0 12px!important;font-size:1.05rem;font-weight:600}.portal-wallet-amount--credit{color:#16a34a!important;font-weight:600;font-variant-numeric:tabular-nums}.portal-wallet-amount--debit{color:#dc2626!important;font-weight:600;font-variant-numeric:tabular-nums}.portal-messages-thread{display:flex;flex-direction:column;gap:12px;min-height:280px;max-height:55vh;overflow-y:auto;padding:20px;margin-bottom:16px;background:#fff;border:1px solid #e2e8f0;border-radius:14px}.portal-message-bubble{align-self:flex-start;max-width:78%;padding:10px 14px;border-radius:14px 14px 14px 4px;background:#f8fafc;border:1px solid #e2e8f0}.portal-message-bubble--mine{align-self:flex-end;border-radius:14px 14px 4px;background:#3b82f6;border-color:#3b82f6;color:#fff}.portal-message-bubble--mine .portal-message-sender,.portal-message-bubble--mine .portal-message-time{color:#fffc;opacity:1}.portal-message-sender{display:block;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#9ca3af;margin-bottom:2px}.portal-message-text{white-space:pre-wrap;word-break:break-word;line-height:1.45;font-size:.9rem}.portal-message-time{display:block;margin-top:6px;font-size:.7rem;color:#9ca3af;font-variant-numeric:tabular-nums}.portal-message-error{color:#dc2626;font-size:.85rem;margin:0 0 12px!important}.portal-message-composer{display:flex;align-items:flex-start;gap:12px}.portal-message-input{flex:1}.portal-message-send-btn{margin-top:8px;flex-shrink:0}.portal-hero{max-width:960px;margin:0 auto;width:100%;padding:32px 24px 24px;text-align:center}.portal-hero__logo{width:72px;height:72px;margin:0 auto 20px;display:grid;place-items:center;border-radius:20px;background:#3b82f6;color:#fff;font-size:1.6rem;font-weight:800;box-shadow:0 4px 12px #0206171f,0 1px 2px #0206170f}.portal-hero__title{font-size:2.25rem;font-weight:700;letter-spacing:-.02em}.portal-hero__tagline{margin:12px auto 28px!important;max-width:480px;color:#64748b;font-size:1.05rem;line-height:1.5}.portal-cta-group{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.portal-account-form{max-width:420px;margin:28px auto 0;padding:20px;display:flex;flex-direction:column;gap:8px;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 2px #0206170f}.portal-account-form .portal-email-field{width:100%}.portal-account-hint{font-size:.875rem;color:#64748b;line-height:1.45}.portal-link-error{font-size:.85rem;color:#dc2626}.portal-link-sent{display:flex;align-items:center;gap:10px;font-size:.9rem;color:#166534}.portal-link-sent mat-icon{color:#16a34a;flex-shrink:0}.portal-features{width:100%;max-width:960px;margin:0 auto;padding:16px 24px 64px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.portal-feature-card{padding:24px;background:#fff;border:1px solid #e2e8f0;border-radius:14px}.portal-feature-card h3{margin:14px 0 6px;font-size:1rem;font-weight:600}.portal-feature-card p{font-size:.875rem;line-height:1.5;color:#64748b}.portal-feature-card__icon{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#eff6ff;color:#2563eb}@media(max-width:480px){.portal-tabs a mat-icon{display:none}}@media(max-width:640px){.portal-topbar__inner,.portal-tabs,.portal-content,.portal-features{padding-left:16px;padding-right:16px}.portal-topbar__tag{display:none}.portal-tabs a{padding:12px 10px}.portal-tabs{gap:0;padding-left:6px;padding-right:6px}.portal-content{padding-top:20px;padding-bottom:40px}.portal-section-header h2{font-size:1.25rem}.portal-hero{padding:40px 16px 16px}.portal-hero__title{font-size:1.75rem}.portal-wallet-balance-amount{font-size:1.85rem}.portal-message-bubble{max-width:88%}.portal-message-composer{flex-direction:column;align-items:stretch;gap:0}.portal-message-send-btn{margin-top:0}.portal-wallet-topup-form{padding:16px 16px 4px}}html,body{height:100%}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}:root{--mat-sys-body-large-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-body-medium-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-body-small-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-display-large-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-display-medium-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-display-small-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-large-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-medium-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-headline-small-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-label-large-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-label-medium-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-label-small-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-title-large-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-title-medium-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mat-sys-title-small-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.mat-mdc-dialog-container{--mat-dialog-container-color: #ffffff;--mat-dialog-subhead-color: #111827;--mat-dialog-supporting-text-color: #374151}.mat-mdc-dialog-title{color:#111827!important}.mat-mdc-dialog-actions button:not([color]){color:#374151!important}.mat-mdc-select-panel{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:10px!important;box-shadow:0 8px 32px #0000001f!important}.mat-mdc-option{color:#111827!important}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background:#0000000a!important}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled){background:#3b82f614!important;color:#2563eb!important}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mat-pseudo-checkbox-checked{background:#3b82f6!important;border-color:#3b82f6!important}.mat-mdc-select-value-text{color:#111827!important}.mat-mdc-select-arrow{color:#6b7280!important}.mat-mdc-select-panel::-webkit-scrollbar{width:6px}.mat-mdc-select-panel::-webkit-scrollbar-track{background:#f8fafc}.mat-mdc-select-panel::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.menu-panel.mat-mdc-menu-panel{background:#0b1220!important;border:1px solid #1e293b!important;border-radius:12px!important;box-shadow:0 8px 32px #00000080!important}.menu-panel .mat-mdc-menu-item,.menu-panel .mat-mdc-menu-item .mdc-list-item__primary-text{color:#e5e7ebeb!important}.menu-panel .mat-mdc-menu-item mat-icon,.menu-panel .mat-mdc-menu-item .mat-icon{color:#e5e7ebcc!important}.menu-panel .mat-mdc-menu-item:hover:not([disabled]){background:#ffffff0f!important}.menu-panel .mat-divider{border-top-color:#94a3b82e!important}.menu-panel .menu-title{color:#e5e7ebeb!important}.menu-panel .menu-subtitle{color:#94a3b8bf!important}.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:95vw!important}@media(max-width:599px){.mat-mdc-dialog-title{padding:16px 16px 8px!important;font-size:1rem!important}.mat-mdc-dialog-content{padding:12px 16px!important;max-height:60vh!important}.mat-mdc-dialog-actions{padding:8px 16px 16px!important;flex-wrap:wrap;gap:8px}.mat-mdc-dialog-actions button{flex:1;min-width:80px}}.pi-country-menu.mat-mdc-menu-panel{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:12px!important;box-shadow:0 8px 32px #0000001f!important;max-height:340px!important;min-width:260px!important;overflow:hidden!important}.pi-country-menu .mat-mdc-menu-content{padding:0!important}.pi-country-menu .pi-search{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #e2e8f0;position:sticky;top:0;background:#f8fafc;z-index:1}.pi-country-menu .pi-search .pi-search-icon{color:#9ca3af;font-size:18px;width:18px;height:18px;flex-shrink:0}.pi-country-menu .pi-search .pi-search-input{border:none;outline:none;font-size:.875rem;color:#111827;background:transparent;width:100%}.pi-country-menu .pi-search .pi-search-input::placeholder{color:#9ca3af}.pi-country-menu .pi-option{display:flex!important;align-items:center!important;gap:8px!important;padding:8px 14px!important;height:auto!important;min-height:40px!important}.pi-country-menu .pi-option .pi-flag{font-size:1.2rem;line-height:1}.pi-country-menu .pi-option .pi-name{flex:1;font-size:.875rem;color:#111827}.pi-country-menu .pi-option .pi-tag{font-size:.78rem;color:#6b7280;font-family:ui-monospace,monospace}.pi-country-menu .pi-option:hover{background:#0000000a!important}.workouts-page .mat-mdc-table,.workouts-page mat-table,.equipment-page .mat-mdc-table,.equipment-page mat-table,.challenges-page .mat-mdc-table,.challenges-page mat-table,.lockers-page .mat-mdc-table,.lockers-page mat-table,.retention-page .mat-mdc-table,.retention-page mat-table,.gym-table-host .mat-mdc-table,.gym-table-host mat-table{background:transparent!important}.workouts-page .mat-mdc-header-row,.workouts-page mat-header-row,.equipment-page .mat-mdc-header-row,.equipment-page mat-header-row,.challenges-page .mat-mdc-header-row,.challenges-page mat-header-row,.lockers-page .mat-mdc-header-row,.lockers-page mat-header-row,.retention-page .mat-mdc-header-row,.retention-page mat-header-row,.gym-table-host .mat-mdc-header-row,.gym-table-host mat-header-row{background:#ffffff08!important}.workouts-page .mat-mdc-header-cell,.workouts-page mat-header-cell,.equipment-page .mat-mdc-header-cell,.equipment-page mat-header-cell,.challenges-page .mat-mdc-header-cell,.challenges-page mat-header-cell,.lockers-page .mat-mdc-header-cell,.lockers-page mat-header-cell,.retention-page .mat-mdc-header-cell,.retention-page mat-header-cell,.gym-table-host .mat-mdc-header-cell,.gym-table-host mat-header-cell{color:#64748b!important;border-bottom-color:#1e293b!important;font-size:.72rem!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.05em!important}.workouts-page .mat-mdc-cell,.workouts-page mat-cell,.equipment-page .mat-mdc-cell,.equipment-page mat-cell,.challenges-page .mat-mdc-cell,.challenges-page mat-cell,.lockers-page .mat-mdc-cell,.lockers-page mat-cell,.retention-page .mat-mdc-cell,.retention-page mat-cell,.gym-table-host .mat-mdc-cell,.gym-table-host mat-cell{color:#e2e8f0!important;border-bottom-color:#1e293b!important}.workouts-page .mat-mdc-row,.workouts-page mat-row,.equipment-page .mat-mdc-row,.equipment-page mat-row,.challenges-page .mat-mdc-row,.challenges-page mat-row,.lockers-page .mat-mdc-row,.lockers-page mat-row,.retention-page .mat-mdc-row,.retention-page mat-row,.gym-table-host .mat-mdc-row,.gym-table-host mat-row{background:transparent!important}.workouts-page .mat-mdc-row:hover,.workouts-page mat-row:hover,.equipment-page .mat-mdc-row:hover,.equipment-page mat-row:hover,.challenges-page .mat-mdc-row:hover,.challenges-page mat-row:hover,.lockers-page .mat-mdc-row:hover,.lockers-page mat-row:hover,.retention-page .mat-mdc-row:hover,.retention-page mat-row:hover,.gym-table-host .mat-mdc-row:hover,.gym-table-host mat-row:hover{background:#ffffff08!important}.workouts-page .mat-mdc-no-data-row,.equipment-page .mat-mdc-no-data-row,.challenges-page .mat-mdc-no-data-row,.lockers-page .mat-mdc-no-data-row,.retention-page .mat-mdc-no-data-row,.gym-table-host .mat-mdc-no-data-row{color:#64748b!important}.mat-mdc-cell,mat-cell{overflow-wrap:break-word}.no-print{display:none!important}@media print{.shell-sidenav,.shell-toolbar,.shell-footer,.cdk-overlay-container{display:none!important}.shell-content{margin:0!important;padding:0!important}mat-sidenav-container.shell-container,mat-sidenav-content{height:auto!important;overflow:visible!important}}.page-actions,.header-actions,.wc-header-actions{max-width:100%;flex-wrap:wrap}.table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll>table{min-width:100%}@media(max-width:768px){table.mat-mdc-table,table[mat-table]{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table.mat-mdc-table,table[mat-table],.table-scroll,.table-card,.table-wrap,.cp-table-scroll{scrollbar-width:none;-ms-overflow-style:none}table.mat-mdc-table::-webkit-scrollbar,table[mat-table]::-webkit-scrollbar,.table-scroll::-webkit-scrollbar,.table-card::-webkit-scrollbar,.table-wrap::-webkit-scrollbar,.cp-table-scroll::-webkit-scrollbar{display:none;width:0;height:0}}tr.row-clickable{cursor:pointer}tr.row-clickable:focus-visible{outline:2px solid #3b82f6;outline-offset:-2px}.mat-mdc-snack-bar-container.toast{margin:72px 16px 0;--mat-snack-bar-container-shape: 10px;box-shadow:0 10px 30px #02061740}@media(max-width:599px){.mat-mdc-snack-bar-container.toast{margin-top:64px}}.mat-mdc-snack-bar-container.toast.toast--success{--mat-snack-bar-container-color: #15803d;--mat-snack-bar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #ffffff}.mat-mdc-snack-bar-container.toast.toast--error{--mat-snack-bar-container-color: #b91c1c;--mat-snack-bar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #ffffff}.mat-mdc-snack-bar-container.toast.toast--warning{--mat-snack-bar-container-color: #facc15;--mat-snack-bar-supporting-text-color: #422006;--mat-snack-bar-button-color: #422006}.mat-mdc-snack-bar-container.toast.toast--info{--mat-snack-bar-container-color: #1e293b;--mat-snack-bar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #93c5fd}
