@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);:root{--brand-jet-black:#0b0b0b;--brand-charcoal:#1a1a1a;--brand-red:#c8102e;--brand-white:#fff;--brand-light-gray:#bfbfbf;--neutral-900:#0b0b0b;--neutral-850:#121212;--neutral-800:#1a1a1a;--neutral-750:#232323;--neutral-700:#2e2e2e;--neutral-600:#424242;--neutral-500:#666;--neutral-400:#8a8a8a;--neutral-300:#bfbfbf;--neutral-200:#d5d5d5;--neutral-100:#ebebeb;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-full:9999px;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--shadow-soft:0 1px 1px #0000002e,0 8px 20px #00000040;--shadow-md:0 2px 6px #00000047,0 12px 28px #00000059;--shadow-lg:0 6px 14px #00000057,0 20px 40px #00000073;--font-family-sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-mono:"SF Mono",Monaco,Menlo,Consolas,"Liberation Mono","Courier New",monospace;--font-size-xs:12px;--font-size-sm:13px;--font-size-md:14px;--font-size-base:16px;--font-size-lg:18px;--font-size-xl:22px;--font-size-2xl:28px;--font-size-3xl:36px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-body:1.45;--bg-0:var(--neutral-900);--bg-1:var(--neutral-850);--surface-1:var(--neutral-800);--surface-2:var(--neutral-750);--surface-elevated:#252525;--text-1:var(--brand-white);--text-2:#d3d3d3;--text-muted:#a0a0a0;--text-inverse:var(--brand-jet-black);--border-subtle:#2f2f2f;--border-strong:#434343;--accent:var(--brand-red);--accent-hover:#dd1234;--accent-active:#ab0f28;--accent-contrast:var(--brand-white);--success:#1fb578;--warning:#e8b24a;--danger:#e0505c;--info:#3f89ff;--sidebar-bg:#090909;--sidebar-surface:#131313;--sidebar-hover:#1e1e1e;--sidebar-active:#272727;--sidebar-text:var(--text-1);--header-bg:#101010;--badge-neutral-bg:#1f1f1f;--badge-neutral-text:#e8e8e8;--badge-success-bg:#1fb57829;--badge-success-text:#52d59d;--badge-warning-bg:#e8b24a29;--badge-warning-text:#e8b24a;--badge-danger-bg:#e0505c2e;--badge-danger-text:#ea6a76;--badge-info-bg:#3f89ff2e;--badge-info-text:#67a2ff;--focus-ring:0 0 0 3px #c8102e57;--shell-content-padding:24px;--shell-content-max-width:1440px}.theme-dark,[data-theme=dark]{--bg-0:var(--neutral-900);--bg-1:var(--neutral-850);--surface-1:var(--neutral-800);--surface-2:var(--neutral-750);--surface-elevated:#252525;--text-1:var(--brand-white);--text-2:#d3d3d3;--text-muted:#a0a0a0;--border-subtle:#2f2f2f;--border-strong:#434343;--sidebar-bg:#090909;--header-bg:#101010}.theme-light,[data-theme=light]{--bg-0:#f4f4f4;--bg-1:#fff;--surface-1:#fff;--surface-2:#f8f8f8;--surface-elevated:#fff;--text-1:#111;--text-2:#2f2f2f;--text-muted:#5d5d5d;--border-subtle:#dadada;--border-strong:#bdbdbd;--sidebar-bg:#131313;--sidebar-text:#e0e0e0;--header-bg:#fff}:root{--color-primary:var(--accent);--color-primary-dark:var(--accent-active);--color-primary-light:var(--accent-hover);--color-success:var(--success);--color-warning:var(--warning);--color-error:var(--danger);--color-info:var(--info);--color-white:var(--brand-white);--color-black:var(--brand-jet-black);--color-text-primary:var(--text-1);--color-text-secondary:var(--text-2);--color-text-muted:var(--text-muted);--color-border:var(--border-subtle);--color-background:var(--bg-0);--color-card-bg:var(--surface-1);--color-sidebar-bg:var(--sidebar-bg);--color-sidebar-text:var(--sidebar-text);--color-sidebar-hover:var(--sidebar-hover);--color-sidebar-active:var(--sidebar-active);--color-topbar-bg:var(--header-bg)}:root,[data-theme=dark],[data-theme=light]{--color-bg-primary:var(--surface-1);--color-bg-secondary:var(--bg-0);--color-bg-tertiary:var(--surface-2);--color-text-primary:var(--text-1);--color-text-secondary:var(--text-2);--color-text-tertiary:var(--text-muted);--color-border:var(--border-subtle);--color-border-secondary:color-mix(in srgb,var(--border-subtle) 88%,var(--text-1) 12%);--color-accent:var(--accent-color,var(--accent));--accent-rgb:200,16,46;--color-accent-rgb:var(--accent-rgb);--color-danger:var(--danger);--color-success:var(--success);--color-warning:var(--warning);--color-info:var(--info);--color-success-rgb:var(--success-rgb);--color-danger-rgb:var(--danger-rgb);--color-warning-rgb:var(--warning-rgb);--color-text-secondary-rgb:var(--text-2-rgb);--color-success-light:color-mix(in srgb,var(--color-success) 16%,var(--color-bg-primary));--color-success-dark:color-mix(in srgb,var(--color-success) 85%,var(--brand-jet-black));--color-info-light:color-mix(in srgb,var(--color-info) 14%,var(--color-bg-primary));--color-info-dark:color-mix(in srgb,var(--color-info) 70%,var(--brand-jet-black));--color-warning-light:color-mix(in srgb,var(--color-warning) 18%,var(--color-bg-primary));--color-warning-dark:color-mix(in srgb,var(--color-warning) 55%,var(--brand-jet-black));--primary-color:var(--color-primary);--secondary-color:var(--color-error)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media (max-width:767px){.btn,.btn-danger,.btn-icon,.btn-logout,.btn-primary,.btn-secondary,.btn-success,.btn-theme-toggle,.btn-view,.mobile-menu-close,.mobile-menu-toggle,a.btn,button,input[type=button],input[type=reset],input[type=submit]{min-height:44px;min-width:44px}input[type=date],input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=time],select,textarea{font-size:16px;min-height:44px}.clickable,[role=button],a{align-items:center;display:inline-flex;min-height:44px}.btn+.btn,button+button,button+input,input+button{margin-left:.5rem}}.portalr-app-layout{display:flex;height:100vh;overflow:hidden}.portalr-sidebar{background:var(--color-sidebar-bg);border-right:1px solid color-mix(in srgb,var(--color-sidebar-text) 12%,#0000);box-shadow:inset -1px 0 0 #ffffff05;color:var(--color-sidebar-text);display:flex;flex-direction:column;position:relative;transition:transform .3s ease;width:272px;z-index:1000}.portalr-sidebar-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:1.15rem 1.2rem}.portalr-logoWrap{align-items:center;display:flex;gap:.8rem}.portalr-logoBadge{align-items:center;background:radial-gradient(circle at 32% 32%,color-mix(in srgb,var(--color-accent) 95%,#000),color-mix(in srgb,var(--color-accent) 70%,#000));border-radius:10px;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 45%,#0000),0 8px 20px color-mix(in srgb,var(--color-accent) 25%,#0000);color:var(--color-white);display:inline-flex;font-size:.9rem;font-weight:800;height:32px;justify-content:center;width:32px}.mobile-menu-close{background:none;border:none;border-radius:4px;color:var(--color-white);cursor:pointer;display:none;padding:.5rem;transition:background .2s}.mobile-menu-close:hover{background:#ffffff1a}.portalr-logo{color:var(--color-white);font-size:1.05rem;font-weight:800;letter-spacing:-.015em;margin:0}.portalr-logoMeta{color:var(--color-text-tertiary);font-size:.72rem;letter-spacing:.06em;margin:.2rem 0 0;text-transform:uppercase}.portalr-sidebar-nav{flex:1 1;overflow-y:auto;padding:1rem 0}.portalr-nav-list{list-style:none;margin:0;padding:0}.portalr-nav-item{margin:.25rem 0}.portalr-nav-link{align-items:center;border:1px solid #0000;border-radius:12px;color:color-mix(in srgb,var(--color-sidebar-text) 78%,#0000);display:flex;margin:.2rem .7rem;padding:.7rem .95rem;position:relative;text-decoration:none;transition:background .2s,border-color .2s}.portalr-nav-link:hover{background:var(--color-sidebar-hover);color:var(--color-white)}.portalr-nav-link.active{background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent) 16%,#0000),color-mix(in srgb,var(--color-sidebar-active) 95%,#0000));border-left:2px solid var(--color-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 30%,#0000),0 8px 18px color-mix(in srgb,var(--color-accent) 14%,#0000);color:var(--color-white)}.portalr-nav-link:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,#0000);outline:none}.portalr-nav-link.locked{cursor:not-allowed;opacity:.6}.portalr-nav-link.locked:hover{background:var(--color-sidebar-hover)}.portalr-nav-icon{align-items:center;background:color-mix(in srgb,var(--color-sidebar-bg) 78%,var(--color-sidebar-text) 22%);border:1px solid color-mix(in srgb,var(--color-sidebar-text) 22%,#0000);border-radius:10px;color:inherit;display:inline-flex;height:30px;justify-content:center;margin-right:.72rem;width:30px}.portalr-nav-label{flex:1 1}.portalr-nav-badge{background:var(--color-accent);border:1px solid color-mix(in srgb,var(--color-accent) 55%,#0000);border-radius:4px;color:var(--color-white);font-size:.75rem;margin-left:.5rem;padding:.25rem .5rem}.portalr-nav-lock{font-size:.875rem;margin-left:.5rem}.portalr-main-content{background:var(--color-bg-secondary);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.portalr-header{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--color-topbar-bg);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:.95rem 1.5rem}.portalr-header-left{align-items:center;display:flex;gap:1rem}.mobile-menu-toggle{align-items:center;background:none;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);cursor:pointer;display:none;justify-content:center;padding:.5rem;transition:all .2s}.mobile-menu-toggle:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}.mobile-menu-toggle:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,#0000);outline:none}.mobile-menu-backdrop{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}.portalr-page-title{color:var(--color-text-primary);font-size:1.2rem;font-weight:700;letter-spacing:-.015em}.portalr-header-right{align-items:center;display:flex;gap:1.5rem}.portalr-tenant-name{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-secondary);font-size:.8rem;padding:.3rem .65rem}.portalr-user-menu{align-items:center;display:flex;gap:.75rem}.portalr-user-avatar{align-items:center;background:color-mix(in srgb,var(--color-accent) 75%,#000);border:1px solid color-mix(in srgb,var(--color-accent) 50%,#0000);border-radius:50%;color:var(--color-white);display:inline-flex;font-size:.72rem;font-weight:700;height:28px;justify-content:center;width:28px}.portalr-user-email{color:var(--color-text-primary);font-size:.875rem}.btn-logout{align-items:center;background:none;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);cursor:pointer;display:flex;padding:.5rem;transition:all .2s}.btn-logout:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}.btn-logout:focus-visible,.btn-theme-toggle:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,#0000);outline:none}.portalr-content{flex:1 1;overflow-y:auto;padding:1.25rem 1.5rem 1.5rem}.app-layout-loading{align-items:center;display:flex;height:100vh;justify-content:center}.btn-theme-toggle,.loading-spinner{color:var(--color-text-secondary)}.btn-theme-toggle{align-items:center;background:none;border:1px solid var(--color-border);border-radius:4px;cursor:pointer;display:flex;padding:.5rem;transition:all .2s}.btn-theme-toggle:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}[data-theme=dark] .portalr-main-content{background:var(--color-bg-secondary)}[data-theme=dark] .portalr-header{background:var(--color-bg-primary);border-bottom-color:var(--color-border)}[data-theme=dark] .portalr-page-title{color:var(--color-text-primary)}[data-theme=dark] .portalr-tenant-name{color:var(--color-text-secondary)}[data-theme=dark] .portalr-content,[data-theme=dark] .portalr-user-email{color:var(--color-text-primary)}[data-theme=light] .portalr-main-content{background:var(--color-bg-secondary)}[data-theme=light] .portalr-header{background:var(--color-topbar-bg);border-bottom-color:var(--color-border)}[data-theme=dark] .mobile-menu-toggle{background:#0000;border-color:var(--color-border);color:var(--color-text-secondary)}[data-theme=dark] .mobile-menu-toggle:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}@media (max-width:767px){.mobile-menu-toggle{display:flex;min-height:44px;min-width:44px}.mobile-menu-backdrop{display:block}.mobile-menu-close{display:flex;min-height:44px;min-width:44px}.portalr-sidebar{box-shadow:2px 0 10px #0000004d;height:100vh;left:0;position:fixed;top:0;transform:translateX(-100%);z-index:1000}.portalr-sidebar.mobile-open{transform:translateX(0)}.portalr-main-content{width:100%}.portalr-header{padding:1rem}.portalr-page-title{font-size:1.25rem}.portalr-header-right{gap:.75rem}.portalr-tenant-name,.portalr-user-email{display:none}.portalr-content{padding:1rem}.btn-logout,.btn-theme-toggle{min-height:44px;min-width:44px}}@media (min-width:768px) and (max-width:1023px){.portalr-sidebar{width:236px}.portalr-header{padding:1rem 1.5rem}.portalr-content{padding:1.5rem}.portalr-tenant-name{font-size:.8rem}}.dashboard-page{margin:0;padding:0}.dashboard-hero{margin-bottom:.45rem;padding:.25rem 0 1.25rem;position:relative}.dashboard-hero:after{background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent) 85%,#0000),#0000);border-radius:999px;bottom:0;content:"";height:2px;left:0;position:absolute;width:min(220px,40%)}.dashboard-heroGlow{background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--color-accent) 18%,#0000),#0000 62%);height:140px;left:-40px;opacity:.9;pointer-events:none;position:absolute;top:-10px;width:280px}.dashboard-heroTitle{color:var(--color-text-primary);font-size:2rem;font-weight:820;letter-spacing:-.03em;margin:0}.dashboard-heroSubtitle{color:var(--color-text-secondary);font-size:1rem;margin:.65rem 0 0}.dashboard-error{background:#ff6b6b26;border:1px solid var(--color-danger);border-radius:14px;color:var(--color-danger);margin:0 0 1rem;padding:1rem 1.15rem}.dashboard-stats{margin-bottom:1rem;margin-top:.25rem}.dashboard-twoCol{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:1.35fr .9fr;margin-top:1rem}.dashboard-previewStack{display:flex;flex-direction:column;gap:1rem}.dashboard-panelHeader{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.dashboard-panelTitle{color:var(--color-text-primary);font-size:1.1rem;font-weight:800;letter-spacing:-.01em;margin:0}.dashboard-panelSubtitle{color:var(--color-text-secondary);font-size:.9rem;margin:.35rem 0 0}.dashboard-miniCta{border-radius:12px;padding:.55rem 1rem}.dashboard-loadingInline{color:var(--color-text-secondary);padding:.75rem 0}.dashboard-loadingInline--center{text-align:center}.dashboard-miniList{display:flex;flex-direction:column;gap:.75rem}.dashboard-miniItem{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;cursor:pointer;padding:.9rem .95rem;transition:transform .15s ease,background .2s ease,border-color .2s ease}.dashboard-miniItem:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);transform:translateY(-1px)}.dashboard-miniItem--accent{border-color:color-mix(in srgb,var(--color-accent) 42%,var(--color-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 28%,#0000)}.dashboard-miniItem:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,#0000);outline:none}.dashboard-miniItemTop{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.35rem}.dashboard-miniItemTitle{color:var(--color-text-primary);font-size:.98rem;font-weight:800}.dashboard-miniItemMeta{color:var(--color-text-secondary);font-size:.9rem;line-height:1.45}.dashboard-actionTile{-webkit-appearance:none;appearance:none;text-align:left;width:100%}.dashboard-actionTile:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,#0000);outline:none}.dashboard-activity{margin-top:1.2rem}@media (max-width:1100px){.dashboard-twoCol{grid-template-columns:1fr}}@media (max-width:767px){.dashboard-heroTitle{font-size:1.6rem}.dashboard-twoCol{margin-top:.75rem}}.subscriptions-page{margin:0 auto;max-width:1200px}.subscriptions-header{margin-bottom:2rem}.subscriptions-header h1{font-size:2rem;margin-bottom:.5rem}.subscriptions-header p{color:#666}.subscriptions-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:2rem}.subscriptions-section h2{color:#1a1a1a;font-size:1.5rem;margin-bottom:1.5rem}.section-header{flex-wrap:wrap;gap:1rem;justify-content:space-between}.billing-cycle-toggle{background:#f0f0f0;border-radius:8px;display:flex;gap:.5rem;padding:.25rem}.toggle-option{background:#0000;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.toggle-option.active{background:var(--color-primary);color:#fff}.toggle-option:hover:not(.active){background:rgba(var(--color-accent-rgb),.1);color:var(--color-primary)}.savings-badge{background:#4caf50;border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;margin-left:.25rem;padding:.15rem .4rem}.subscription-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.subscription-card.empty{color:#666;text-align:center}.subscription-card.active{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.subscription-actions{display:flex;gap:.75rem}.cancel-notice{color:#ff9800;font-weight:600;margin-top:.5rem}.subscription-info h3{font-size:1.25rem;margin-bottom:.5rem}.status-badge{border-radius:4px}.status-active,.status-enabled{background:#4caf50;color:#fff}.status-canceled,.status-disabled{background:#f44336;color:#fff}.status-trial{background:#ff9800;color:#fff}.plans-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.plan-card{border:2px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:1rem;text-align:left;transition:border-color .2s,transform .2s}.plan-card:hover:not(.current-plan){border-color:var(--color-primary);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.plan-card.current-plan{background:#f0fff0;border-color:#4caf50}.current-plan-badge{background:#4caf50;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.25rem .75rem;position:absolute;right:10px;text-transform:uppercase;top:-10px}.plan-icon{font-size:2rem;text-align:center}.plan-card h3{font-size:1.5rem;margin:0;text-align:center}.plan-card h4{color:#666;font-size:.875rem;letter-spacing:.5px;margin:.5rem 0;text-transform:uppercase}.plan-price{border-bottom:1px solid #e0e0e0;border-top:1px solid #e0e0e0;margin:0;padding:.75rem 0;text-align:center}.plan-amount{color:#1a1a1a;font-size:2rem;font-weight:700}.plan-period{color:#666;font-size:1rem}.plan-description{color:#666;font-size:.95rem;line-height:1.5;margin:0}.plan-best-for{margin:0}.plan-best-for ul{list-style:none;margin:.5rem 0 0;padding:0}.plan-best-for li{color:#666;font-size:.9rem;padding:.25rem 0}.plan-best-for li:before{color:var(--color-primary);content:"• ";font-weight:700;margin-right:.5rem}.plan-features-section{margin:0}.plan-features{margin:.5rem 0 0}.plan-features li{color:#666;font-size:.9rem;padding:.35rem 0}.plan-features li:before{color:#4caf50}.plan-outcome{background:#f0f7ff;border-left:3px solid var(--color-primary);border-radius:6px;margin:0;padding:.75rem}.plan-outcome p{color:#333;font-size:.9rem;font-style:italic;line-height:1.5;margin:.5rem 0 0}.module-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.module-card.module-cta{background:#f0f7ff;border-color:var(--color-primary)}.module-info h3{font-size:1.25rem;margin-bottom:.5rem}.module-status{color:#666}.toggle-switch{width:50px}.toggle-slider{background-color:#ccc;transition:.4s}.toggle-slider:before{transition:.4s}.toggle-switch input:checked+.toggle-slider{background-color:#4caf50}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(26px)}.btn{border-radius:6px;transition:background .2s}.btn-primary{background:var(--color-primary)}.plan-card .btn-primary,.subscriptions-page .btn-primary{width:100%}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-primary:disabled{background:#ccc;opacity:.7}.btn-secondary{background:#6c757d}.btn-secondary:hover{background:#5a6268}.alert-error{background:#ffebee;border:1px solid #ef5350;color:#c62828}.alert-success{background:#e8f5e9;border:1px solid #4caf50;color:#2e7d32}.subscriptions-loading{align-items:center;display:flex;justify-content:center;min-height:400px}[data-theme=dark] .subscriptions-page{color:var(--color-text-primary)}[data-theme=dark] .subscriptions-header p{color:var(--color-text-secondary)}[data-theme=dark] .subscriptions-section{background:var(--color-bg-tertiary);box-shadow:0 2px 8px #0000004d}[data-theme=dark] .subscriptions-section h2{color:var(--color-text-primary)}[data-theme=dark] .subscription-card{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .subscription-card.empty{color:var(--color-text-secondary)}[data-theme=dark] .subscription-info h3{color:var(--color-text-primary)}[data-theme=dark] .subscription-info p{color:var(--color-text-secondary)}[data-theme=dark] .plan-card:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent)}[data-theme=dark] .plan-card h3{color:var(--color-text-primary)}[data-theme=dark] .plan-card h4{color:var(--color-text-secondary)}[data-theme=dark] .plan-price{border-bottom-color:var(--color-border);border-top-color:var(--color-border)}[data-theme=dark] .plan-amount{color:var(--color-text-primary)}[data-theme=dark] .plan-best-for li,[data-theme=dark] .plan-description,[data-theme=dark] .plan-features li,[data-theme=dark] .plan-period{color:var(--color-text-secondary)}[data-theme=dark] .plan-outcome{background:rgba(var(--color-accent-rgb),.15);border-left-color:var(--color-accent)}[data-theme=dark] .plan-outcome p{color:var(--color-text-secondary)}[data-theme=dark] .module-card{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .module-card.module-cta{background:rgba(var(--color-accent-rgb),.1);border-color:var(--color-accent)}[data-theme=dark] .module-info h3{color:var(--color-text-primary)}[data-theme=dark] .module-info p,[data-theme=dark] .module-status{color:var(--color-text-secondary)}[data-theme=dark] .toggle-slider{background-color:#555}[data-theme=dark] .btn-primary:hover{background:var(--color-primary-dark)}[data-theme=dark] .alert-success{background:#4caf5026;border-color:#4caf50;color:#51cf66}[data-theme=dark] .billing-cycle-toggle{background:var(--color-bg-primary)}[data-theme=dark] .toggle-option{color:var(--color-text-secondary)}[data-theme=dark] .toggle-option.active{background:var(--color-accent);color:#fff}[data-theme=dark] .toggle-option:hover:not(.active){background:rgba(var(--color-accent-rgb),.2);color:var(--color-accent)}[data-theme=dark] .subscription-card.active{background:var(--color-bg-primary)}[data-theme=dark] .plan-card.current-plan{background:#4caf501a;border-color:#4caf50}[data-theme=dark] .cancel-notice{color:#ff9800}[data-theme=dark] .btn-secondary{background:#6c757d}[data-theme=dark] .btn-secondary:hover{background:#5a6268}@media (max-width:767px){.subscriptions-page{padding:1rem}.subscriptions-header h1{font-size:1.5rem}.subscriptions-section{padding:1.5rem}.subscriptions-section h2{font-size:1.25rem}.plan-grid{grid-template-columns:1fr}.plan-card{padding:1.5rem}.plan-actions button{min-height:44px;width:100%}.billing-cycle-toggle{justify-content:center;width:100%}.toggle-option{flex:1 1;min-height:44px}}@media (min-width:768px) and (max-width:1023px){.subscriptions-page{padding:1.5rem}.plan-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}.mfa-enrollment-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.mfa-enrollment-modal{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;padding:2rem;position:relative;width:90%}.mfa-enrollment-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1.5rem}.mfa-enrollment-header h2{color:#1a1a1a;flex:1 1;font-size:1.5rem;margin:0}.mfa-enrollment-close{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;padding:.25rem}.mfa-enrollment-close:hover{color:#333}.mfa-enrollment-description{color:#666;line-height:1.6;margin-bottom:1.5rem}.mfa-enrollment-error{align-items:center;background:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem}.mfa-enrollment-step{animation:fadeIn .2s ease-in}.mfa-qr-container{margin:1.5rem 0;padding:1rem}.mfa-qr-code{max-width:250px}.mfa-secret-container{margin:1.5rem 0}.mfa-secret-container label{margin-bottom:.5rem}.mfa-secret-display{border-radius:4px;gap:.5rem;padding:.75rem}.mfa-secret-text{font-size:.9rem}.mfa-copy-button{background:none;border:none;padding:.25rem}.mfa-enrollment-instructions{border-left:3px solid var(--color-primary);border-radius:4px;margin:1.5rem 0;padding:1rem}.mfa-enrollment-instructions h4{margin:0 0 .5rem}.mfa-enrollment-instructions li{margin-bottom:.25rem}.mfa-recovery-success{gap:.75rem;margin-bottom:1rem}.mfa-recovery-success h3{color:#22c55e;margin:0}.mfa-recovery-code-item{padding:.5rem}.mfa-recovery-actions{gap:.75rem;margin-bottom:1rem}.mfa-enrollment-actions{justify-content:flex-end;margin-top:1.5rem}.mfa-enrollment-actions .btn-primary,.mfa-enrollment-actions .btn-secondary{border-radius:4px;padding:.75rem 1.5rem}@media (max-width:767px){.mfa-enrollment-modal-overlay{align-items:flex-end;padding:0}.mfa-enrollment-modal{border-radius:1rem 1rem 0 0;max-height:90vh;max-width:100%;padding:1.5rem;width:100%}.mfa-enrollment-header h2{font-size:1.25rem}.mfa-recovery-codes-container{grid-template-columns:1fr}.mfa-enrollment-actions{flex-direction:column-reverse}.mfa-enrollment-actions .btn-primary,.mfa-enrollment-actions .btn-secondary{min-height:44px;width:100%}.form-group input{font-size:16px;min-height:44px}}.settings-page{background:var(--color-bg-primary);color:var(--color-text-primary);margin:0 auto;max-width:1200px;padding:2rem}.settings-header{margin-bottom:2rem}.settings-header h1{color:var(--color-text-primary);font-size:2rem;font-weight:600;margin:0}.settings-tabs{border-bottom:2px solid var(--color-border);display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.settings-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;margin-bottom:-2px;padding:.75rem 1.5rem;transition:all .2s}.settings-tab:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.settings-tab.active{border-bottom-color:var(--color-accent);color:var(--color-accent)}.settings-content{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.5rem;padding:2rem}.settings-tab-content h2{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin-bottom:.5rem;margin-top:0}.settings-description{color:var(--color-text-secondary);font-size:.95rem;margin-bottom:2rem}.settings-form{max-width:600px}.form-section h3{margin-bottom:1rem;margin-top:0}.form-group input,.form-group select,.form-group textarea{transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #4a9eff1a;box-shadow:0 0 0 3px rgba(var(--color-accent-rgb,74,158,255),.1);outline:none}.form-group input:disabled{background:var(--color-bg-secondary);cursor:not-allowed;opacity:.6}.form-group textarea{min-height:100px}.form-help.error{color:var(--color-danger)}.password-strength{font-weight:500}.password-strength.weak{color:var(--color-danger)}.password-strength.fair{color:var(--color-warning)}.password-strength.good{color:var(--color-accent)}.password-strength.strong,.password-strength.very-strong{color:var(--color-success)}.form-actions{border-top:1px solid var(--color-border);margin-top:2rem}.btn{font-weight:500;padding:.75rem 1.5rem}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-secondary:hover:not(:disabled){background:var(--color-bg-secondary)}.btn-sm{padding:.5rem 1rem}.alert-error{background:#ff6b6b1a}.alert-success{background:#51cf661a;border:1px solid var(--color-success);color:var(--color-success)}.alert-warning{background:#ffa94d1a;border:1px solid var(--color-warning);color:var(--color-warning)}.settings-loading{color:var(--color-text-secondary);padding:2rem;text-align:center}.current-plan-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.5rem;margin-bottom:2rem;padding:1.5rem}.current-plan-card h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem;margin-top:0}.plan-info{align-items:center;display:flex;justify-content:space-between}.plan-price{color:var(--color-accent);font-size:1.5rem;font-weight:600}.plan-yearly{color:var(--color-text-secondary)}.modules-section{margin-bottom:2rem}.modules-section h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem;margin-top:0}.modules-list{display:flex;flex-direction:column;gap:1rem}.module-card{align-items:center;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.375rem;display:flex;justify-content:space-between;padding:1rem}.module-info{gap:.25rem}.module-info strong{color:var(--color-text-primary);font-size:1rem}.module-status{border-radius:.25rem;display:inline-block;font-size:.875rem;padding:.25rem .75rem;width:-webkit-fit-content;width:fit-content}.module-status.enabled{background:#51cf661a;border:1px solid var(--color-success);color:var(--color-success)}.module-status.disabled{background:#ff6b6b1a;border:1px solid var(--color-danger);color:var(--color-danger)}.available-plans-section{border-top:1px solid var(--color-border);margin-top:2rem;padding-top:2rem}.available-plans-section h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem;margin-top:0}.plans-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.plan-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.5rem;padding:1.5rem;position:relative}.plan-card h4{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;margin-top:0}.plan-card .plan-price{color:var(--color-accent);font-size:1.25rem;font-weight:600;margin-bottom:1rem}.plan-card p{color:var(--color-text-secondary);margin-bottom:1rem}.plan-features{list-style:none;margin:0;padding:0}.plan-features li{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);padding:.5rem 0}.plan-features li:last-child{border-bottom:none}.plan-features li:before{color:var(--color-success);content:"✓ ";font-weight:700;margin-right:.5rem}.plan-cost-breakdown{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.cost-row{font-size:.9rem;padding:.5rem 0}.cost-row.cost-total{border-top:1px solid var(--color-border);font-size:1rem;font-weight:600;padding-top:.75rem}.module-info{display:flex;flex-direction:column;gap:.5rem}.module-info>div{align-items:center;display:flex;gap:.75rem}.module-price{color:var(--color-text-secondary);font-size:.875rem;font-weight:400}.current-plan-header,.section-header{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.current-plan-header h3,.section-header h3{margin:0}.plan-status{margin-top:.5rem}.status-badge{border:1px solid #0000;font-size:.75rem;padding:.25rem .5rem}.status-badge.status-active{background:var(--color-bg-secondary);border:1px solid var(--color-success);color:var(--color-success)}.status-badge.status-trial{background:var(--color-bg-secondary);border:1px solid var(--color-accent);color:var(--color-accent)}.status-badge.status-canceled{background:var(--color-bg-secondary);border:1px solid var(--color-danger);color:var(--color-danger)}.plan-price-large{font-size:1.5rem;font-weight:600}.plan-yearly{color:var(--color-text-tertiary);font-size:1rem;font-weight:400}.module-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.module-description{color:var(--color-text-tertiary);font-size:.875rem;margin:.5rem 0}.plan-card.current-plan{background:var(--color-bg-secondary);border:2px solid var(--color-accent)}.current-badge{background:var(--color-accent);border-radius:.25rem;color:var(--color-text-primary);font-size:.75rem;font-weight:500;padding:.25rem .75rem;position:absolute;right:1rem;top:1rem}.plan-description{color:var(--color-text-tertiary);font-size:.9rem;line-height:1.6;margin:.75rem 0}.plan-description p{color:var(--color-text-tertiary);margin:.5rem 0}.plan-description-section{margin:1rem 0}.plan-description-section strong{color:var(--color-text-primary);display:block;font-weight:600;margin-bottom:.5rem}.plan-description-list{list-style:none;margin:.5rem 0 0;padding:0}.plan-description-list li{color:var(--color-text-secondary);padding:.25rem 0 .25rem 1rem;position:relative}.plan-description-list li:before{color:var(--color-accent);content:"•";font-weight:700;left:0;position:absolute}.plan-features-section{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.plan-features-section strong{color:var(--color-text-primary);display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.plan-actions{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.modal-content{box-shadow:0 20px 25px -5px #0000001a}.modal-content h3{font-size:1.25rem;font-weight:600;margin:0 0 1rem}.modal-pricing{color:var(--color-accent);font-size:1.125rem;font-weight:500;margin:1rem 0}.modal-warning{background:#ff6b6b1a;border:1px solid var(--color-danger);border-radius:.25rem;color:var(--color-danger);font-size:.875rem;margin:1rem 0;padding:.75rem}.modal-pricing-breakdown{background:var(--color-bg-secondary);border-radius:.25rem;margin:1rem 0;padding:1rem}.pricing-row{display:flex;font-size:.95rem;justify-content:space-between;padding:.5rem 0}.pricing-row.pricing-diff{border-top:1px solid var(--color-border);font-weight:600;margin-top:.5rem;padding-top:.75rem}.pricing-row.pricing-diff.increase{color:var(--color-danger)}.pricing-row.pricing-diff.decrease{color:var(--color-success)}.modal-actions{gap:.75rem}.branding-quick-link{max-width:700px}.quick-link-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.5rem;padding:2rem;text-align:center}.quick-link-header{align-items:center;display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.quick-link-header svg{color:var(--color-accent)}.quick-link-header h3{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin:0}.quick-link-card p{color:var(--color-text-secondary);line-height:1.6;margin-bottom:1.5rem}.branding-features-list{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));list-style:none;margin:1.5rem 0;padding:0}.branding-features-list li{background:var(--color-bg-primary);border-left:3px solid var(--color-accent);border-radius:.25rem;color:var(--color-text-secondary);font-size:.9rem;padding:.5rem .75rem;text-align:left}.btn-large{align-items:center;display:inline-flex;font-size:1rem;gap:.5rem;padding:.875rem 2rem}.current-plan-header{align-items:center;color:var(--color-text-primary);display:flex;gap:.75rem;margin-bottom:1rem}.current-plan-header svg{color:var(--color-accent)}.current-plan-header h3{color:var(--color-text-primary);margin:0}.plan-status{color:var(--color-text-secondary);font-size:.875rem;margin:.5rem 0 0}.status-badge.status-active{background:#10b98126;border:1px solid #10b981;border:1px solid var(--color-success,#10b981);color:#10b981;color:var(--color-success,#10b981)}.status-badge.status-trialing{background:color-mix(in srgb,var(--color-accent) 16%,#0000);border:1px solid color-mix(in srgb,var(--color-accent) 35%,#0000);color:var(--color-accent)}.status-badge.status-canceled,.status-badge.status-cancelled{background:#ef444426;border:1px solid #ef4444;border:1px solid var(--color-danger,#ef4444);color:#ef4444;color:var(--color-danger,#ef4444)}.status-badge.status-past_due{background:#f59e0b26;border:1px solid #f59e0b;border:1px solid var(--color-warning,#f59e0b);color:#f59e0b;color:var(--color-warning,#f59e0b)}.plan-price-large{color:var(--color-accent);font-size:1.75rem;font-weight:700;margin:.5rem 0}.plan-price-large .plan-yearly{color:var(--color-text-secondary);display:block;font-size:.875rem;font-weight:400;margin-top:.25rem}.plan-cost-breakdown{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.375rem;margin-top:1.5rem;padding:1rem}.cost-row{align-items:flex-start;color:var(--color-text-secondary);display:flex;font-size:.95rem;justify-content:space-between;padding:.75rem 0}.cost-row strong{color:var(--color-text-primary);font-weight:600}.cost-row.cost-total{border-top:2px solid var(--color-border);font-size:1.125rem;margin-top:.5rem;padding-top:1rem}.cost-row.cost-total strong{color:var(--color-accent);font-size:1.25rem}.module-costs{display:flex;flex-direction:column;gap:.25rem;text-align:right}.module-cost-item{color:var(--color-text-secondary);font-size:.875rem}.section-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1.5rem}.section-header svg{color:var(--color-accent)}.section-header h3{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0}[data-theme=dark] .quick-link-card{background:var(--color-bg-secondary);border-color:var(--color-border)}[data-theme=dark] .branding-features-list li{background:var(--color-bg-tertiary)}[data-theme=dark] .current-plan-card{background:var(--color-bg-secondary);border-color:var(--color-border)}[data-theme=dark] .plan-cost-breakdown{background:var(--color-bg-tertiary);border-color:var(--color-border)}[data-theme=dark] .plan-card{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .plan-card.current-plan{background:var(--color-bg-secondary);border-color:var(--color-accent)}.btn{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-primary);transition:all .2s ease}.btn-primary{border-color:var(--color-accent)}.btn-primary:hover:not(:disabled){background:var(--color-accent);opacity:.9;transform:translateY(-1px)}.btn-secondary{background:var(--color-bg-secondary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-tertiary);border-color:var(--color-accent)}.btn-disabled{background:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:not-allowed;opacity:.6}[data-theme=dark] .btn-secondary{background:var(--color-bg-secondary);border-color:var(--color-border)}[data-theme=dark] .btn-secondary:hover:not(:disabled){background:var(--color-bg-tertiary)}@media (max-width:767px){.settings-page{padding:1rem}.settings-header h1{font-size:1.5rem}.settings-tabs{-webkit-overflow-scrolling:touch;flex-wrap:wrap;overflow-x:auto}.settings-tab{font-size:.9rem;min-height:44px;padding:.75rem 1rem;white-space:nowrap}.settings-content{padding:1rem 0}.form-group{margin-bottom:1.25rem}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:44px}.form-row{flex-direction:column}.form-row .form-group{width:100%}.plan-grid{gap:1rem;grid-template-columns:1fr}.plan-card{padding:1.5rem}.plan-header h3{font-size:1.25rem}.plan-price{font-size:1.75rem}.plan-features{font-size:.9rem}.plan-actions{flex-direction:column}.plan-actions button{min-height:44px;width:100%}.module-grid{grid-template-columns:1fr}.module-card{padding:1.25rem}.modal-content{margin:1rem;padding:1.5rem;width:95%}.modal-actions{flex-direction:column-reverse}.modal-actions button{min-height:44px;width:100%}.quick-link-card{padding:1.5rem}.quick-link-header h3{font-size:1.25rem}.branding-features-list{grid-template-columns:1fr}.btn-large{min-height:44px;width:100%}.section-header h3{font-size:1.1rem}.current-plan-header{align-items:flex-start;flex-direction:column}}@media (min-width:768px) and (max-width:1023px){.settings-page{padding:1.5rem}.plan-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.module-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}.settings-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.settings-section-header h2{font-size:1.5rem;font-weight:600;margin:0}.payment-methods-list{display:flex;flex-direction:column;gap:1rem}.payment-method-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.5rem;padding:1.5rem;transition:all .2s}.payment-method-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a}.payment-method-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.payment-method-info h3{color:var(--color-text-primary);font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.payment-method-type{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.25rem;color:var(--color-text-secondary);display:inline-block;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.payment-method-actions{align-items:center;display:flex;gap:.75rem}.payment-method-instructions{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.payment-method-instructions strong{color:var(--color-text-primary);display:block;font-size:.875rem;margin-bottom:.5rem}.payment-method-instructions p{color:var(--color-text-secondary);font-size:.95rem;margin:0;white-space:pre-wrap}.payment-method-reference{border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:.875rem;margin-top:.75rem;padding-top:.75rem}.payment-method-reference strong{color:var(--color-text-primary)}.toggle-switch{display:inline-block;height:24px;position:relative;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:var(--color-border);border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.stripe-connection-status{align-items:center;display:flex;gap:.5rem}.status-success{background:rgba(var(--color-success-rgb),.1);border:1px solid rgba(var(--color-success-rgb),.2);color:var(--color-success)}.modal-header{margin-bottom:1.5rem}.modal-close{border-radius:.25rem;color:var(--color-text-secondary);font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.empty-state{padding:3rem 1rem}.empty-state p{font-size:1rem;margin:0 0 1.5rem}[data-theme=dark] .payment-method-card{background:#ffffff0d}[data-theme=dark] .toggle-slider:before{background-color:var(--color-bg-primary)}.form-section{border-top:1px solid var(--color-border);margin-top:2rem;padding-top:2rem}.form-section:first-child{border-top:none;margin-top:0;padding-top:0}.form-section h3{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0 0 1rem}.mfa-devices-section{margin-top:1rem}.mfa-devices-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.mfa-device-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.5rem;padding:1rem;transition:all .2s}.mfa-device-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a}.mfa-device-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.mfa-device-info{flex:1 1}.mfa-device-info h4{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin:0 0 .5rem}.mfa-device-badge{background:var(--color-accent);color:#fff;margin-right:.5rem}.mfa-device-badge,.mfa-device-status{border-radius:.25rem;display:inline-block;font-size:.75rem;font-weight:500;padding:.125rem .5rem}.mfa-device-status.status-enabled{background:rgba(var(--color-success-rgb),.1);border:1px solid rgba(var(--color-success-rgb),.2);color:var(--color-success)}.mfa-device-status.status-disabled{background:rgba(var(--color-text-secondary-rgb),.1);border:1px solid rgba(var(--color-text-secondary-rgb),.2);color:var(--color-text-secondary)}.mfa-device-meta{color:var(--color-text-secondary);font-size:.875rem;margin-top:.5rem}.mfa-devices-actions{margin-top:1rem}.mfa-info-box{align-items:flex-start;background:rgba(var(--color-accent-rgb),.1);border:1px solid rgba(var(--color-accent-rgb),.2);border-radius:.5rem;display:flex;gap:.75rem;margin-top:1.5rem;padding:1rem}.mfa-info-box svg{color:var(--color-accent);flex-shrink:0;margin-top:.125rem}.mfa-info-box p{color:var(--color-text-primary);font-size:.875rem;margin:0}.mfa-info-box strong{font-weight:600}[data-theme=dark] .mfa-device-card{background:var(--color-bg-tertiary)}[data-theme=dark] .mfa-info-box{background:rgba(var(--color-accent-rgb),.15);border-color:rgba(var(--color-accent-rgb),.3)}.tax-entry-page{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:2rem}.tax-entry-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:500px;padding:3rem;text-align:center;width:100%}.tax-entry-card.tax-entry-upsell{border:2px solid var(--color-primary)}.tax-entry-icon{font-size:4rem;margin-bottom:1.5rem}.tax-entry-card h1{color:#1a1a1a;font-size:2rem;margin-bottom:1rem}.tax-entry-card p{color:#666;line-height:1.6;margin-bottom:2rem}.tax-features-list{list-style:none;margin:2rem 0;padding:0;text-align:left}.tax-features-list li{color:#333;font-size:1.1rem;padding:.75rem 0}.tax-features-list li:before{content:"";margin-right:.5rem}.btn-large{font-size:1.1rem;padding:1rem 2rem}.tax-entry-note{color:#999;font-size:.875rem;margin-top:1.5rem}.tax-entry-loading{align-items:center;display:flex;justify-content:center;min-height:60vh}@media (max-width:767px){.tax-entry-page{padding:1rem}.tax-entry-card{padding:2rem 1.5rem}.tax-entry-card h1{font-size:1.5rem}.tax-entry-card p{font-size:.95rem}.tax-features-list li{font-size:1rem}.btn-large{min-height:44px;padding:.875rem 1.5rem;width:100%}}@media (min-width:768px) and (max-width:1023px){.tax-entry-card{padding:2.5rem}}.tasks-page{background:var(--color-bg-secondary);padding:2rem}.tasks-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.tasks-header h1{color:var(--color-text-primary);font-size:2rem;font-weight:600;margin:0}.tasks-loading{color:var(--color-text-secondary);padding:2rem;text-align:center}.tasks-filters{background:var(--color-bg-secondary);border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1rem}.tasks-filters select{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:.9rem;padding:.5rem}.tasks-list{grid-gap:1rem;display:grid;gap:1rem}.task-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.task-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:1rem}.task-header h3{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0}.task-badges{display:flex;gap:.5rem}.task-priority,.task-status{border-radius:.25rem;color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.task-description,.task-meta{color:var(--color-text-secondary);margin-bottom:1rem}.task-meta{display:flex;font-size:.875rem;gap:1.5rem}.task-due.overdue{color:var(--color-accent);font-weight:600}.task-actions{display:flex;gap:.5rem}.tasks-empty{color:var(--color-text-secondary);padding:4rem 2rem;text-align:center}.btn-danger{background:#ef4444;background:var(--color-danger,#ef4444)}.detail-field span.overdue,.task-due.overdue{color:var(--color-accent);font-weight:600}.task-card{transition:all .2s}.task-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}[data-theme=dark] .tasks-page,[data-theme=dark] .tasks-title h1{color:var(--color-text-primary)}[data-theme=dark] .tasks-filters{background:var(--color-bg-primary)}[data-theme=dark] .tasks-table-header{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .tasks-table{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .task-row{border-bottom-color:var(--color-border)}[data-theme=dark] .task-row:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .task-row.high-priority{border-left-color:#ff6b6b}[data-theme=dark] .task-title-cell{color:var(--color-text-primary)}[data-theme=dark] .task-status-badge{background:var(--portalr-accent-soft-2);color:var(--color-accent)}[data-theme=dark] .task-card{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .task-card:hover{box-shadow:0 4px 8px #00000080}[data-theme=dark] .task-card h3{color:var(--color-text-primary)}[data-theme=dark] .task-detail{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .task-detail h2{color:var(--color-text-primary)}[data-theme=dark] .task-detail-description,[data-theme=dark] .task-detail-meta{color:var(--color-text-secondary)}[data-theme=dark] .task-detail-actions{border-top-color:var(--color-border)}[data-theme=dark] .empty-state,[data-theme=dark] .tasks-empty{color:var(--color-text-secondary)}[data-theme=dark] .task-actions{background:var(--color-bg-primary)}[data-theme=dark] .task-actions button{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .task-actions button:hover{background:var(--color-bg-secondary);border-color:var(--color-border-secondary)}@media (max-width:767px){.tasks-page{padding:1rem}.tasks-header{align-items:flex-start;flex-direction:column;gap:1rem}.tasks-header h1{font-size:1.5rem}.tasks-filters{flex-direction:column;gap:1rem}.filter-group{min-width:100%}.filter-group select{font-size:16px;min-height:44px}.task-card{padding:1rem}.task-header{align-items:flex-start;flex-direction:column;gap:.75rem}.task-header h3{font-size:1.1rem}.task-meta{flex-direction:column;gap:.5rem}.task-actions{flex-wrap:wrap}.task-actions button{flex:1 1;min-height:44px;min-width:120px}.modal-content{margin:1rem;padding:1.5rem;width:95%}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:44px}.form-actions{flex-direction:column-reverse}.form-actions .btn{min-height:44px;width:100%}.detail-panel{max-width:100%}.detail-grid{grid-template-columns:1fr}.detail-panel-actions{flex-direction:column}.detail-panel-actions button{min-height:44px;width:100%}}@media (min-width:768px) and (max-width:1023px){.tasks-page{padding:1.5rem}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.appointments-page{color:var(--color-text-primary);padding:2rem}.appointments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.appointments-header h1{color:var(--color-text-primary);font-size:2rem;font-weight:600;margin:0}.appointments-loading{color:var(--color-text-secondary);padding:2rem;text-align:center}.appointments-list{grid-gap:1rem;display:grid;gap:1rem}.appointment-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.appointment-card:hover{box-shadow:0 4px 6px #0000001a}.appointment-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:1rem}.appointment-header h3{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0}.appointment-status{border-radius:.25rem;color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.appointment-description,.appointment-details{color:var(--color-text-secondary);margin-bottom:1rem}.appointment-details{display:flex;flex-direction:column;font-size:.875rem;gap:.75rem}.appointment-time{font-weight:500}.appointment-link a,.detail-panel-link{color:var(--color-accent);text-decoration:none}.appointment-link a:hover,.detail-panel-link:hover{text-decoration:underline}.appointment-actions{display:flex;gap:.5rem}.btn{font-size:.875rem}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover{background:#059669}.modal-description{color:var(--color-text-secondary);font-size:.95rem;line-height:1.5;margin-bottom:1.5rem}.form-group input,.form-group select,.form-group textarea{border-radius:.375rem;font-size:1rem;padding:.5rem}.appointments-empty{color:var(--color-text-secondary);padding:4rem 2rem;text-align:center}[data-theme=dark] .appointments-header h1,[data-theme=dark] .appointments-page{color:var(--color-text-primary)}[data-theme=dark] .appointment-card{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .appointment-card:hover{box-shadow:0 4px 8px #00000080}[data-theme=dark] .appointment-card h3{color:var(--color-text-primary)}[data-theme=dark] .appointment-info{color:var(--color-text-secondary)}[data-theme=dark] .appointments-table{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .appointment-row{border-bottom-color:var(--color-border)}[data-theme=dark] .appointment-row:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .appointments-empty{color:var(--color-text-secondary)}@media (max-width:767px){.appointments-page{padding:1rem}.appointments-header{align-items:flex-start;flex-direction:column;gap:1rem}.appointments-header h1{font-size:1.5rem}.appointment-card{padding:1rem}.appointment-header{align-items:flex-start;flex-direction:column;gap:.75rem}.appointment-header h3{font-size:1.1rem}.appointment-actions{flex-wrap:wrap;width:100%}.appointment-actions button{flex:1 1;min-height:44px;min-width:120px}.detail-panel{max-width:100%}.detail-grid{grid-template-columns:1fr}.detail-panel-actions{flex-direction:column}.detail-panel-actions button{min-height:44px;width:100%}.btn-danger,.btn-success{min-height:44px}.modal-content{margin:1rem;padding:1.5rem;width:95%}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:44px}.form-actions{flex-direction:column-reverse}.form-actions button{min-height:44px;width:100%}}@media (min-width:768px) and (max-width:1023px){.appointments-page{padding:1.5rem}.appointment-card{padding:1.25rem}}.invoices-page{color:var(--color-text-primary);padding:2rem}.invoices-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.invoices-title{align-items:center;display:flex;gap:.75rem}.invoices-header h1,.invoices-title h1{color:var(--color-text-primary);font-size:2rem;font-weight:600;margin:0}.invoices-loading{color:var(--color-text-secondary);padding:2rem;text-align:center}.invoices-filters{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.filter-group label,.invoices-filters select{color:var(--color-text-primary)}.invoices-filters select{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.375rem;cursor:pointer;font-size:.95rem;min-width:150px;padding:.5rem 1rem;transition:border-color .2s}.invoices-filters select:hover{border-color:var(--color-border-secondary)}.invoices-filters select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,#0000);outline:none}.invoices-list{grid-gap:1rem;display:grid;gap:1rem}.invoice-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.invoice-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:1rem}.invoice-header h3{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0}.invoice-client{color:var(--color-text-secondary);font-size:.875rem;margin:.25rem 0 0}.invoice-status{border-radius:.25rem;color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.invoice-description{color:var(--color-text-secondary);margin-bottom:1rem}.invoice-amounts{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.375rem;margin-bottom:1rem;padding:1rem}.invoice-amount-row{color:var(--color-text-secondary);display:flex;justify-content:space-between;margin-bottom:.5rem}.invoice-amount-row:last-child{margin-bottom:0}.invoice-total{border-top:1px solid var(--color-border);color:var(--color-text-primary);font-size:1.125rem;margin-top:.5rem;padding-top:.5rem}.invoice-meta{color:var(--color-text-secondary);display:flex;font-size:.875rem;gap:1.5rem;margin-bottom:1rem}.invoice-meta .overdue{color:var(--color-danger);font-weight:600}.invoice-actions{display:flex;gap:.5rem}.invoices-empty{color:var(--color-text-secondary);padding:4rem 2rem;text-align:center}.form-group input,.form-group select,.form-group textarea{background:var(--color-bg-primary);border:1px solid var(--color-border);color:var(--color-text-primary)}.form-group select:disabled{background:var(--color-bg-secondary);color:var(--color-text-tertiary);cursor:not-allowed}.invoice-preview{background:var(--portalr-accent-soft-2);border:1px solid color-mix(in srgb,var(--color-accent) 35%,var(--color-border));border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}.invoice-preview label{color:var(--color-accent);font-weight:600;margin-bottom:.75rem}.invoice-preview-amounts{margin-top:.5rem}.preview-row{color:var(--color-text-primary);display:flex;font-size:.95rem;justify-content:space-between;padding:.5rem 0}.preview-row span{color:var(--color-text-secondary)}.preview-row strong{color:var(--color-text-primary);font-weight:600}.preview-total{border-top:2px solid var(--color-accent);font-size:1.1rem;font-weight:600;margin-top:.5rem;padding-top:.75rem}.preview-total span,.preview-total strong{color:var(--color-accent)}.btn{font-size:1rem}[data-theme=dark] .invoices-page,[data-theme=dark] .invoices-title h1{color:var(--color-text-primary)}[data-theme=dark] .invoice-card{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .invoice-card:hover{box-shadow:0 4px 8px #00000080}[data-theme=dark] .invoice-card h3{color:var(--color-text-primary)}[data-theme=dark] .invoice-info{color:var(--color-text-secondary)}[data-theme=dark] .invoice-amount{color:var(--color-text-primary)}[data-theme=dark] .invoice-amounts{background:var(--color-bg-primary)}[data-theme=dark] .invoice-amount-row{color:var(--color-text-secondary)}[data-theme=dark] .invoice-total{border-top-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .invoice-actions{color:var(--color-text-secondary)}[data-theme=dark] .invoices-table{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .invoices-table-header{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .invoice-row{border-bottom-color:var(--color-border)}[data-theme=dark] .invoice-row:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .invoice-status-badge{background:var(--portalr-accent-soft-2);color:var(--color-accent)}[data-theme=dark] .modal-content{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .form-group label{color:var(--color-text-primary)}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:var(--color-bg-primary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .form-help{color:var(--color-text-secondary)}[data-theme=dark] .invoices-filters select{background:var(--color-bg-primary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .alert-error{background:#f4433626;border-color:#c62828}[data-theme=dark] .invoice-preview{background:#3b82f61a;border-color:#3b82f64d}[data-theme=dark] .invoice-preview label{color:var(--color-accent)}[data-theme=dark] .preview-row{color:var(--color-text-primary)}[data-theme=dark] .preview-row span{color:var(--color-text-secondary)}[data-theme=dark] .preview-row strong{color:var(--color-text-primary)}[data-theme=dark] .preview-total{border-top-color:var(--color-accent)}[data-theme=dark] .preview-total span,[data-theme=dark] .preview-total strong{color:var(--color-accent)}@media (max-width:767px){.invoices-page{padding:1rem}.invoices-header{align-items:flex-start;flex-direction:column;gap:1rem}.invoices-header h1{font-size:1.5rem}.invoices-filters{align-items:stretch;flex-direction:column}.filter-group{width:100%}.filter-group select{font-size:16px;min-height:44px;width:100%}.invoice-card{padding:1rem}.invoice-header{align-items:flex-start;flex-direction:column;gap:.75rem}.invoice-header h3{font-size:1.1rem}.invoice-meta{flex-direction:column;gap:.5rem}.invoice-actions{flex-wrap:wrap}.invoice-actions button{flex:1 1;min-height:44px;min-width:120px}.modal-content{margin:1rem;padding:1.5rem;width:95%}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:44px}.form-actions{flex-direction:column-reverse}.form-actions .btn{min-height:44px;width:100%}}@media (min-width:768px) and (max-width:1023px){.invoices-page{padding:1.5rem}.invoice-card{padding:1.25rem}}.payment-methods-selection{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.payment-method-checkbox{align-items:center;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.25rem;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:all .2s}.payment-method-checkbox:hover{background:var(--color-bg-primary);border-color:var(--color-accent)}.payment-method-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.payment-method-checkbox-content{align-items:center;display:flex;flex:1 1;gap:.5rem}.payment-method-checkbox-content strong{color:var(--color-text-primary);font-weight:500}.payment-method-type-badge{background:var(--color-bg-primary);color:var(--color-text-secondary);display:inline-block;font-size:.75rem;padding:.125rem .5rem;text-transform:capitalize}.payment-method-type-badge,.payment-methods-empty{border:1px solid var(--color-border);border-radius:.25rem}.payment-methods-empty{background:var(--color-bg-secondary);padding:1rem;text-align:center}.payment-methods-empty p{color:var(--color-text-secondary);font-size:.875rem;margin:0}.payment-methods-empty a{color:var(--color-accent);text-decoration:underline}.form-error{color:var(--color-danger)}.invoice-payment-methods{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1.5rem}.invoice-payment-methods h4{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.payment-method-option{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.5rem;margin-bottom:1rem;padding:1rem}.payment-method-option-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.payment-method-option-header h5{color:var(--color-text-primary);font-size:.95rem;font-weight:600;margin:0}.payment-method-option-instructions{color:var(--color-text-secondary);font-size:.875rem;white-space:pre-wrap}.payment-method-option-actions,.payment-method-option-instructions{border-top:1px solid var(--color-border);margin-top:.75rem;padding-top:.75rem}[data-theme=dark] .payment-method-checkbox,[data-theme=dark] .payment-method-option{background:#ffffff0d}.team-management-page{color:var(--color-text-primary);padding:2rem}.team-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.team-header h1{color:var(--color-text-primary);font-size:2rem;font-weight:600;margin:0}.team-loading{padding:2rem}.access-denied,.team-loading{color:var(--color-text-secondary);text-align:center}.access-denied{padding:4rem 2rem}.access-denied h2{color:var(--color-danger);margin-bottom:1rem}.team-filters{display:flex;gap:1rem;margin-bottom:2rem}.team-filters select{border:1px solid var(--color-border);border-radius:.375rem;color:var(--color-text-primary);padding:.5rem 1rem}.team-filters select,.team-table{background:var(--color-bg-primary)}.team-table{border:1px solid var(--color-border);border-collapse:collapse;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;width:100%}.team-table thead{background:var(--color-bg-secondary)}.team-table th{color:var(--color-text-primary);font-weight:600;text-align:left}.team-table td,.team-table th{border-bottom:1px solid var(--color-border);padding:1rem}.team-table td{color:var(--color-text-secondary)}.team-table tbody tr:hover{background:var(--color-bg-secondary)}.team-table tbody tr:last-child td{border-bottom:none}.team-member-name-link{background:none;border:none;color:var(--color-accent);cursor:pointer;font:inherit;padding:0;text-align:left;text-decoration:underline}.team-member-name-link:hover{opacity:.9;text-decoration:none}.role-badge{color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.role-badge,.status-badge{border-radius:.25rem;text-transform:capitalize}.status-badge.active{background:#51cf6640;color:var(--color-success)}.status-badge.suspended{background:#ff6b6b33;color:var(--color-danger)}.team-actions{align-items:center;display:flex;gap:.5rem}.role-select{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.25rem;color:var(--color-text-primary);font-size:.875rem;padding:.25rem .5rem}.team-empty{color:var(--color-text-secondary);padding:4rem 2rem;text-align:center}.btn{align-items:center;border:none;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.btn-secondary{background:var(--color-bg-tertiary);border:1px solid var(--color-border);color:var(--color-text-primary)}.btn-secondary:hover{background:var(--color-bg-secondary)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{background:#dc2626}.btn-sm{font-size:.875rem;padding:.25rem .75rem}.alert{border-radius:.375rem;margin-bottom:1rem}.alert-error{background:#ff6b6b26;border:1px solid var(--color-danger);color:var(--color-danger)}.modal-content{border-radius:.5rem}.form-group input,.form-group select{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.375rem;color:var(--color-text-primary);font-size:1rem;padding:.5rem;width:100%}.form-actions{gap:1rem}.form-actions button[type=button]{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary)}.form-actions button[type=button]:hover{background:var(--color-bg-tertiary)}.detail-panel-actions{display:flex;flex-wrap:wrap;gap:.5rem}@media (max-width:767px){.team-management-page{padding:1rem}.team-header{align-items:flex-start;flex-direction:column;gap:1rem}.team-header h1{font-size:1.5rem}.team-filters{flex-direction:column}.team-filters select{font-size:16px;min-height:44px;width:100%}.team-table,.team-table tbody,.team-table td,.team-table th,.team-table thead,.team-table tr{display:block}.team-table thead tr{left:-9999px;position:absolute;top:-9999px}.team-table tr{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;margin-bottom:1rem;padding:1rem}.team-table td{border:none;padding:.5rem 0 .5rem 40%;position:relative}.team-table td:before{color:var(--color-text-secondary);content:attr(data-label);font-size:.875rem;font-weight:600;left:0;padding-right:10px;position:absolute;white-space:nowrap;width:35%}.team-table tr:hover{background:var(--color-bg-secondary)}.detail-panel{max-width:100%}.detail-grid{grid-template-columns:1fr}.detail-panel-actions{flex-direction:column}.detail-panel-actions button,.detail-panel-actions select{min-height:44px;width:100%}.modal-content{margin:1rem;padding:1.5rem;width:95%}.modal-actions{flex-direction:column-reverse}.modal-actions button{min-height:44px;width:100%}}@media (min-width:768px) and (max-width:1023px){.team-management-page{padding:1.5rem}}[data-theme=dark] .team-header h1,[data-theme=dark] .team-management-page{color:var(--color-text-primary)}[data-theme=dark] .team-table{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .team-table thead{background:var(--color-bg-tertiary)}[data-theme=dark] .team-table th{border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .team-table td{border-color:var(--color-border);color:var(--color-text-secondary)}[data-theme=dark] .team-table tbody tr:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .team-member-name-link{color:var(--color-accent)}.clients-page{color:var(--color-text-primary);margin:0 auto;max-width:1400px;padding:2rem}.clients-header{justify-content:space-between;margin-bottom:2rem}.clients-header,.clients-title{align-items:center;display:flex}.clients-title{gap:.75rem}.clients-title h1{color:var(--color-text-primary);font-size:1.75rem;margin:0}.clients-title svg{color:var(--color-text-secondary)}.clients-search{align-items:center;display:flex;flex:1 1;gap:.5rem;margin:0 1rem;max-width:320px;position:relative}.clients-search-icon{color:var(--color-text-secondary);left:.75rem;pointer-events:none;position:absolute}.clients-search-input{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:.95rem;padding:.6rem 1rem .6rem 2.5rem;transition:border-color .2s;width:100%}.clients-search-input::placeholder{color:var(--color-text-tertiary)}.clients-search-input:hover{border-color:var(--color-border-secondary)}.clients-search-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,#0000);outline:none}.btn-primary{display:flex}.btn-primary:hover{background:var(--color-primary-dark)}.error-banner{background:#ff6b6b26;border:1px solid var(--color-danger)}.error-banner,.error-banner button{color:var(--color-danger)}.clients-list{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.clients-table{border-collapse:collapse;width:100%}.clients-table thead{background:var(--color-bg-secondary)}.clients-table th{border-bottom:2px solid var(--color-border);color:var(--color-text-primary);font-weight:600;padding:1rem;text-align:left}.clients-table td{border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);padding:1rem}.clients-table tr:hover{background:var(--color-bg-secondary)}.client-name-link{background:none;border:none;color:var(--color-accent);cursor:pointer;font:inherit;padding:0;text-align:left;text-decoration:underline}.client-name-link:hover{opacity:.9;text-decoration:none}.status-badge{font-size:.85rem}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.status-badge.enabled{background:#d1fae5;color:#065f46}.status-badge.disabled{background:#fee2e2;color:#991b1b}.action-buttons{display:flex;gap:.5rem}.btn-icon{border:1px solid var(--color-border-secondary);border-radius:4px;color:var(--color-text-secondary)}.btn-icon:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.empty-state{color:var(--color-text-secondary)}.modal-content{background:var(--color-bg-primary);border:1px solid var(--color-border)}.modal-content,.modal-content h2{color:var(--color-text-primary)}.form-group{margin-bottom:1rem}.form-group label{color:var(--color-text-primary)}.form-group input[type=email],.form-group input[type=tel],.form-group input[type=text]{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);font-size:.95rem;padding:.75rem;width:100%}.form-help{color:var(--color-text-secondary)}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.modal-actions{margin-top:1.5rem}.modal-actions button{border:1px solid var(--color-border-secondary);border-radius:4px;cursor:pointer;font-size:.95rem;padding:.75rem 1.5rem}.modal-actions button[type=button]{background:var(--color-bg-secondary);color:var(--color-text-secondary)}.modal-actions button[type=button]:hover{background:var(--color-bg-tertiary)}.error-message{align-items:center;background:#ff6b6b26;border:1px solid var(--color-danger);border-radius:8px;color:var(--color-danger);display:flex;gap:1rem;padding:2rem}.loading{color:var(--color-text-secondary)}.detail-panel-overlay{background:#0006;bottom:0;display:flex;justify-content:flex-end;left:0;position:fixed;right:0;top:0;z-index:1000}.detail-panel{background:var(--color-bg-primary);border-left:1px solid var(--color-border);box-shadow:-4px 0 24px #00000026;color:var(--color-text-primary);display:flex;flex-direction:column;max-height:100vh;max-width:480px;overflow:hidden;width:100%}.detail-panel-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.detail-panel-header h2{color:var(--color-text-primary);font-size:1.25rem;margin:0}.detail-panel-close{background:none;border:none;border-radius:4px;color:var(--color-text-secondary);cursor:pointer;padding:.5rem}.detail-panel-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.detail-panel-body{flex:1 1;overflow-y:auto;padding:1.5rem}.detail-section{margin-bottom:1.5rem}.detail-section h3{color:var(--color-text-secondary);font-size:.95rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.detail-field{display:flex;flex-direction:column;gap:.25rem}.detail-field-full{grid-column:1/-1}.detail-field label{color:var(--color-text-secondary);font-size:.8rem;font-weight:500}.detail-field span{color:var(--color-text-primary);font-size:.95rem}.detail-panel-actions{margin-top:1rem}.detail-notes-section{border-top:1px solid var(--color-border);padding-top:1.5rem}.notes-empty,.notes-loading{color:var(--color-text-tertiary);font-size:.9rem;padding:1rem;text-align:center}.notes-list{margin-bottom:1rem;max-height:240px;overflow-y:auto}.note-item{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:6px;margin-bottom:.75rem;padding:1rem}.note-item:last-child{margin-bottom:0}.note-content{color:var(--color-text-primary);font-size:.95rem;margin-bottom:.5rem;white-space:pre-wrap}.note-meta{align-items:center;color:var(--color-text-secondary);display:flex;flex-wrap:wrap;font-size:.8rem;gap:.5rem}.note-author{font-weight:500}.note-date{color:var(--color-text-tertiary)}.note-delete{margin-left:auto;padding:.25rem}.notes-add-form{display:flex;flex-direction:column;gap:.75rem}.notes-add-form textarea{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);font-family:inherit;font-size:.95rem;min-height:72px;padding:.75rem;resize:vertical;width:100%}.notes-add-form textarea:focus{border-color:var(--color-accent);outline:none}@media (max-width:767px){.clients-page{padding:1rem}.clients-header{align-items:flex-start;flex-direction:column;gap:1rem}.clients-search{margin:0;max-width:100%;width:100%}.clients-title h1{font-size:1.5rem}.btn-primary{justify-content:center;min-height:44px;width:100%}.clients-table,.clients-table tbody,.clients-table td,.clients-table th,.clients-table thead,.clients-table tr{display:block}.clients-table thead tr{left:-9999px;position:absolute;top:-9999px}.clients-table tr{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;margin-bottom:1rem;padding:1rem}.clients-table td{border:none;padding:.5rem 0 .5rem 40%;position:relative}.clients-table td:before{color:var(--color-text-secondary);content:attr(data-label);font-size:.875rem;font-weight:600;left:0;padding-right:10px;position:absolute;white-space:nowrap;width:35%}.clients-table tr:hover{background:var(--color-bg-secondary)}.action-buttons{flex-wrap:wrap;gap:.5rem}.btn-icon{min-height:44px;min-width:44px}.modal-content{margin:1rem;padding:1.5rem;width:95%}.detail-panel{max-width:100%}.detail-grid,.form-row{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.modal-actions button{min-height:44px;width:100%}}@media (min-width:768px) and (max-width:1023px){.clients-page{padding:1.5rem}.clients-table td,.clients-table th{font-size:.9rem;padding:.75rem}.btn-icon{min-height:40px;min-width:40px}}[data-theme=dark] .clients-page,[data-theme=dark] .clients-title h1,[data-theme=dark] .clients-title svg{color:var(--color-text-primary)}[data-theme=dark] .clients-list{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .clients-table thead{background:var(--color-bg-tertiary)}[data-theme=dark] .clients-table th{border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .clients-table td{border-color:var(--color-border);color:var(--color-text-secondary)}[data-theme=dark] .clients-table tr:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .client-name-link{color:var(--color-accent)}[data-theme=dark] .empty-state svg{color:var(--color-text-tertiary)}[data-theme=dark] .detail-panel-overlay{background:#0009}[data-theme=dark] .status-badge.active{background:#51cf6640;color:var(--color-success)}[data-theme=dark] .status-badge.inactive{background:#ff6b6b33;color:var(--color-danger)}[data-theme=dark] .status-badge.enabled{background:#51cf6640;color:var(--color-success)}[data-theme=dark] .status-badge.disabled{background:#ff6b6b33;color:var(--color-danger)}.documents-page{margin:0 auto;max-width:1400px;padding:2rem}.documents-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.documents-title{align-items:center;display:flex;gap:.75rem}.documents-title h1{color:#1a1a1a;font-size:1.75rem;margin:0}.documents-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.document-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;transition:box-shadow .2s}.document-card:hover{box-shadow:0 4px 8px #0000001a}.document-icon{align-items:center;background:#f5f5f5;border-radius:8px;color:#666;display:flex;height:64px;justify-content:center;width:64px}.document-info{flex:1 1}.document-info h3{color:#1a1a1a;font-size:1rem;margin:0 0 .5rem}.document-meta{color:#666;font-size:.85rem;margin:0}.document-uploader{color:#999;font-size:.85rem;margin:.5rem 0 0}.document-actions{display:flex;gap:.5rem;justify-content:flex-end}.error-banner,.upload-banner{align-items:center;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem}.upload-banner{background:var(--portalr-accent-soft-2);border:1px solid color-mix(in srgb,var(--color-accent) 45%,var(--color-border));color:var(--color-accent)}.empty-state,.loading{color:#666}.documents-filters{background:#f9fafb;border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{color:#374151;font-size:.875rem;font-weight:500}.filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;padding:.5rem}.documents-table-header{grid-gap:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px 8px 0 0;color:#374151;display:grid;font-size:.875rem;font-weight:600;gap:1rem;padding:.75rem 1rem}.documents-table-header.with-client{grid-template-columns:2fr 1fr 1fr 1fr 1.5fr 120px}.documents-table-header.no-client{grid-template-columns:2fr 1fr 1fr 1.5fr 120px}.documents-table-header:has(+.documents-table){border-bottom:none}.table-header-cell{align-items:center;cursor:pointer;display:flex;gap:.5rem;transition:color .2s;-webkit-user-select:none;user-select:none}.table-header-cell:hover{color:var(--color-accent)}.documents-table{background:#fff;border:1px solid #e5e7eb;border-radius:0 0 8px 8px;border-top:none;overflow:hidden}.document-row{grid-gap:1rem;border-bottom:1px solid #f3f4f6;display:grid;gap:1rem;padding:1rem;transition:background .2s}.document-row.with-client{grid-template-columns:2fr 1fr 1fr 1fr 1.5fr 120px}.document-row.no-client{grid-template-columns:2fr 1fr 1fr 1.5fr 120px}.document-row:last-child{border-bottom:none}.document-row:hover{background:#f9fafb}.table-cell{align-items:flex-start;color:#374151;display:flex;flex-direction:column;font-size:.9rem;justify-content:center}.document-name-cell{align-items:center;display:flex;font-weight:500;gap:.5rem}.document-description{color:#6b7280;font-size:.85rem;font-style:italic;margin:.25rem 0 0}.document-type-badge{background:var(--portalr-accent-soft-2);border-radius:12px;color:var(--color-accent);display:inline-block;font-size:.85rem;font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.text-muted{color:#9ca3af}.small{font-size:.8rem}.modal-content{max-width:600px;padding:2rem;width:90%}.modal-content h2{color:#1a1a1a;font-size:1.5rem;margin-bottom:1.5rem;margin-top:0}.form-group label{font-size:.9rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.95rem;padding:.75rem;width:100%}.btn-primary{align-items:center;display:inline-flex;font-size:.95rem;gap:.5rem;padding:.75rem 1.5rem;transition:background .2s}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent) 88%,#000 12%)}.btn-primary:disabled{opacity:.6}.btn-icon{align-items:center;background:none;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;justify-content:center;padding:.5rem;transition:all .2s}.btn-icon:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151}[data-theme=dark] .documents-page,[data-theme=dark] .documents-title h1{color:var(--color-text-primary)}[data-theme=dark] .document-card{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .document-card:hover{box-shadow:0 4px 8px #00000080}[data-theme=dark] .document-icon{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}[data-theme=dark] .document-info h3{color:var(--color-text-primary)}[data-theme=dark] .document-meta,[data-theme=dark] .document-uploader{color:var(--color-text-secondary)}[data-theme=dark] .documents-filters{background:var(--color-bg-primary)}[data-theme=dark] .filter-group label{color:var(--color-text-primary)}[data-theme=dark] .documents-table-header,[data-theme=dark] .filter-group select{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .table-header-cell:hover{color:var(--color-accent)}[data-theme=dark] .documents-table{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .document-row{border-bottom-color:var(--color-border)}[data-theme=dark] .document-row:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .table-cell{color:var(--color-text-secondary)}[data-theme=dark] .document-name-cell{color:var(--color-text-primary)}[data-theme=dark] .document-description{color:var(--color-text-tertiary)}[data-theme=dark] .document-type-badge{background:var(--portalr-accent-soft-2);color:var(--color-accent)}[data-theme=dark] .text-muted{color:var(--color-text-tertiary)}[data-theme=dark] .error-banner{background:#f4433626;border-color:#c62828;color:#ff6b6b}[data-theme=dark] .upload-banner{background:var(--portalr-accent-soft);border-color:var(--color-accent);color:var(--color-accent)}[data-theme=dark] .btn-icon,[data-theme=dark] .loading{color:var(--color-text-secondary)}[data-theme=dark] .btn-icon{border-color:var(--color-border)}[data-theme=dark] .btn-icon:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}@media (max-width:768px){.document-row,.documents-table-header{gap:.5rem;grid-template-columns:1fr}.table-header-cell{display:none}.table-cell{padding:.5rem 0}.table-cell:before{color:#6b7280;content:attr(data-label);font-size:.85rem;font-weight:600;margin-bottom:.25rem}[data-theme=dark] .table-cell:before{color:var(--color-text-secondary)}}.messages-page{background:var(--color-bg-secondary);display:flex;flex-direction:column;height:calc(100vh - 120px);margin:0 auto;max-width:1400px;padding:2rem}.messages-header{margin-bottom:2rem}.messages-title{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.messages-title h1{color:var(--color-text-primary);font-size:1.75rem;margin:0}.messages-tabs{border-bottom:2px solid var(--color-border);display:flex;gap:.5rem}.tab-button{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:.95rem;gap:.5rem;margin-bottom:-2px;padding:.75rem 1.5rem;transition:all .2s}.tab-button:hover{color:var(--color-text-primary)}.tab-button.active{border-bottom-color:var(--color-accent);color:var(--color-accent)}.messages-content{flex:1 1;overflow-y:auto}.messages-list{display:flex;flex-direction:column;gap:1rem}.message-item{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;padding:1.5rem;transition:all .2s}.message-item:hover{background:var(--color-bg-tertiary);box-shadow:0 2px 8px #0000001a}.message-item.unread{background:var(--portalr-accent-soft-2);border-left:4px solid var(--color-accent)}.message-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.message-header h3{color:var(--color-text-primary);font-size:1.1rem;margin:0}.message-status{background:var(--color-bg-tertiary);border-radius:12px;font-size:.85rem;padding:.25rem .75rem;text-transform:capitalize}.message-sender,.message-status{color:var(--color-text-secondary)}.message-sender{font-size:.9rem;margin:.5rem 0}.message-preview{color:var(--color-text-primary);line-height:1.5;margin:.5rem 0}.message-date{color:var(--color-text-tertiary);font-size:.85rem;margin:.5rem 0 0}.chat-content{display:flex;flex:1 1;gap:1rem;overflow:hidden}.chat-sidebar{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:8px;overflow-y:auto;width:300px}.chat-conversations{display:flex;flex-direction:column}.chat-conversation-item{align-items:center;border-bottom:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;display:flex;justify-content:space-between;padding:1rem;transition:background .2s}.chat-conversation-item:hover{background:var(--color-bg-secondary)}.chat-conversation-item.active{background:var(--portalr-accent-soft-2);border-left:4px solid var(--color-accent)}.conversation-info h4{color:var(--color-text-primary);font-size:.95rem;margin:0 0 .25rem}.conversation-preview{color:var(--color-text-secondary);font-size:.85rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unread-badge{background:var(--color-accent);border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.chat-main{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.chat-main,.chat-messages{display:flex;flex:1 1;flex-direction:column}.chat-messages{gap:1rem;overflow-y:auto;padding:1.5rem}.chat-message{display:flex;max-width:70%}.chat-message.sent{align-self:flex-end}.chat-message.received{align-self:flex-start}.chat-message-content{background:var(--color-bg-secondary);border-radius:12px;color:var(--color-text-primary);padding:.75rem 1rem}.chat-message.sent .chat-message-content{background:var(--color-accent);color:#fff}.chat-message-time{display:block;font-size:.75rem;margin-top:.25rem;opacity:.7}.chat-input{background:var(--color-bg-primary);border-top:1px solid var(--color-border);display:flex;gap:.5rem;padding:1rem}.chat-input input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:.95rem;padding:.75rem}.chat-empty{align-items:center;color:var(--color-text-secondary);display:flex;flex:1 1;flex-direction:column;justify-content:center}.chat-empty svg{margin-bottom:1rem;opacity:.5}.error-banner{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.error-banner button{background:none;border:none;color:#c33;cursor:pointer;font-size:1.5rem}.empty-state,.loading{color:var(--color-text-secondary);padding:4rem 2rem}.empty-state svg{opacity:.5}.message-detail-view{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;display:flex;flex-direction:column;height:100%;overflow:hidden}.message-detail-header{align-items:center;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:1rem 1.5rem}.btn-back{align-items:center;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.btn-back:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}.message-detail-content{flex:1 1;overflow-y:auto;padding:2rem}.message-detail-header-info{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.message-detail-header-info h2{color:var(--color-text-primary);flex:1 1;font-size:1.5rem;margin:0}.message-status-badge{border-radius:12px;font-size:.85rem;font-weight:500;padding:.375rem .875rem;text-transform:capitalize;white-space:nowrap}.message-status-badge.read{background:#e0e0e0;color:#666}.message-status-badge.unread{background:var(--portalr-accent-soft-2);color:var(--color-accent)}.message-status-badge.sent{background:#e8f5e9;color:#2e7d32}.message-detail-meta{background:var(--color-bg-secondary);border-radius:6px;margin-bottom:1.5rem;padding:1rem}.message-detail-meta p{color:var(--color-text-secondary);font-size:.9rem;margin:.5rem 0}.message-detail-meta strong{color:var(--color-text-primary);margin-right:.5rem}.message-detail-body{word-wrap:break-word;background:var(--color-bg-secondary);border-radius:6px;color:var(--color-text-primary);line-height:1.6;padding:1.5rem;white-space:pre-wrap}.message-detail-body p{margin:.5rem 0}.reply-count{background:var(--portalr-accent-soft-2);border-radius:12px;color:var(--color-accent);display:inline-block;font-size:.85rem;font-weight:500;margin-top:.5rem;padding:.25rem .75rem}.message-replies{border-top:2px solid var(--color-border);margin-top:2rem;padding-top:1.5rem}.message-replies h3{color:var(--color-text-primary);font-size:1.1rem;margin:0 0 1rem}.reply-item{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;margin-bottom:1rem;padding:1rem}.reply-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem}.reply-header strong{color:var(--color-text-primary);font-size:.95rem}.reply-date{color:var(--color-text-tertiary);font-size:.85rem}.reply-subject{font-size:.9rem;font-weight:600;margin-bottom:.5rem}.reply-body,.reply-subject{color:var(--color-text-primary)}.reply-body{font-size:.95rem;line-height:1.6}.reply-body p{margin:.5rem 0}.reply-form-container{background:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding:1.5rem}.reply-form-container h3{color:var(--color-text-primary);font-size:1.1rem;margin:0 0 1rem}.reply-form-container .form-group{margin-bottom:1rem}.reply-form-container label{color:var(--color-text-primary);display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.reply-form-container input,.reply-form-container textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:.95rem;padding:.75rem;width:100%}.reply-form-container textarea{min-height:150px;resize:vertical}.reply-form-container .modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.messages-header-actions{display:flex;gap:.75rem;margin-bottom:1rem}[data-theme=dark] .messages-page,[data-theme=dark] .messages-title h1{color:var(--color-text-primary)}[data-theme=dark] .messages-list{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .message-item{border-bottom-color:var(--color-border)}[data-theme=dark] .message-item:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .message-item.unread{background:var(--portalr-accent-soft-2)}[data-theme=dark] .message-item.unread:hover{background:var(--portalr-accent-soft)}[data-theme=dark] .message-content h3{color:var(--color-text-primary)}[data-theme=dark] .message-meta,[data-theme=dark] .message-preview{color:var(--color-text-secondary)}[data-theme=dark] .message-detail{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .message-detail-header h2{color:var(--color-text-primary)}[data-theme=dark] .message-detail-body,[data-theme=dark] .message-detail-meta{color:var(--color-text-secondary)}[data-theme=dark] .thread-messages{background:var(--color-bg-secondary)}[data-theme=dark] .thread-message{background:var(--color-bg-tertiary);border-color:var(--color-border)}[data-theme=dark] .thread-message-header strong{color:var(--color-text-primary)}[data-theme=dark] .thread-message-header small{color:var(--color-text-tertiary)}[data-theme=dark] .thread-message-body{color:var(--color-text-secondary)}[data-theme=dark] .reply-form-container{background:var(--color-bg-primary);border-top-color:var(--color-border)}[data-theme=dark] .empty-state,[data-theme=dark] .loading-state{color:var(--color-text-secondary)}[data-theme=dark] .modal-content{background:var(--color-bg-tertiary)}[data-theme=dark] .modal-content h2{color:var(--color-text-primary)}[data-theme=dark] .message-item.read{background:var(--color-bg-primary);color:var(--color-text-secondary)}[data-theme=dark] .message-item.read:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .chat-content{background:var(--color-bg-primary);color:var(--color-text-secondary)}[data-theme=dark] .chat-main,[data-theme=dark] .chat-sidebar{background:var(--color-bg-tertiary);border-color:var(--color-border)}[data-theme=dark] .chat-message-content{background:var(--color-bg-secondary);color:var(--color-text-primary)}[data-theme=dark] .chat-conversation-item{border-bottom-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .chat-conversation-item:hover{background:var(--color-bg-secondary)}[data-theme=dark] .chat-conversation-item.active{background:var(--portalr-accent-soft)}[data-theme=dark] .conversation-info h4{color:var(--color-text-primary)}[data-theme=dark] .conversation-preview{color:var(--color-text-secondary)}[data-theme=dark] .message-replies{border-top-color:var(--color-border)}[data-theme=dark] .message-replies h3{color:var(--color-text-primary)}[data-theme=dark] .reply-item{background:var(--color-bg-tertiary);border-color:var(--color-border)}[data-theme=dark] .reply-header{border-bottom-color:var(--color-border)}[data-theme=dark] .reply-header strong,[data-theme=dark] .reply-subject{color:var(--color-text-primary)}[data-theme=dark] .reply-body{color:var(--color-text-secondary)}@media (max-width:767px){.messages-page{height:calc(100vh - 80px);padding:1rem}.messages-title h1{font-size:1.5rem}.messages-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.tab-button{min-height:44px;padding:.75rem 1rem;white-space:nowrap}.message-item{padding:1rem}.message-header h3{font-size:1rem}.chat-content{flex-direction:column;height:100%}.chat-sidebar{border-radius:8px 8px 0 0;max-height:40vh;width:100%}.chat-main{flex:1 1;min-height:0}.chat-message{max-width:85%}.chat-input{padding:.75rem}.chat-input input{font-size:16px;min-height:44px}.chat-input button{min-height:44px;min-width:44px}.message-detail-view{height:calc(100vh - 100px)}.message-detail-header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}.message-detail-content{padding:1rem}.message-detail-header-info{flex-direction:column}.message-detail-header-info h2{font-size:1.25rem}.btn-back{justify-content:center;min-height:44px;width:100%}.reply-form-container{padding:1rem}.reply-form-container input,.reply-form-container textarea{font-size:16px;min-height:44px}.reply-form-container .modal-actions{flex-direction:column-reverse}.reply-form-container .modal-actions button{min-height:44px;width:100%}.messages-header-actions{flex-direction:column}.messages-header-actions button{min-height:44px;width:100%}}@media (min-width:768px) and (max-width:1023px){.messages-page{padding:1.5rem}.chat-sidebar{width:250px}.chat-message{max-width:75%}}.branding-page{margin:0 auto;max-width:1200px;padding:2rem}.branding-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.branding-title{align-items:center;display:flex;gap:.75rem}.branding-header h1{font-size:2rem;font-weight:600;margin:0}.pricing-section{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:.5rem;margin-bottom:2rem;padding:2rem}.pricing-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1.5rem}.pricing-header svg{color:var(--color-accent)}.pricing-header h2{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin:0}.pricing-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.pricing-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.5rem;padding:1.5rem;transition:all .2s}.pricing-card:hover{border-color:var(--color-accent);box-shadow:0 4px 12px #0000001a}.pricing-card-featured{border-color:var(--color-accent);position:relative}.pricing-card-featured:before{background:var(--color-accent);border-radius:.5rem .5rem 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.pricing-card-header{border-bottom:1px solid var(--color-border);margin-bottom:1rem;padding-bottom:1rem}.pricing-card-header h3{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.pricing-card-price{align-items:baseline;display:flex;gap:.25rem}.price-amount{color:var(--color-accent);font-size:2rem;font-weight:700}.price-period{font-size:1rem}.price-period,.pricing-card-body{color:var(--color-text-secondary)}.pricing-card-body{font-size:.95rem}.pricing-card-subtitle{color:var(--color-text-primary);font-weight:600;margin-bottom:.75rem}.pricing-features{list-style:none;margin:0;padding:0}.pricing-features li{padding:.5rem 0 .5rem 1.5rem;position:relative}.pricing-features li:before{color:var(--color-accent);content:"•";font-weight:700;left:.5rem;position:absolute}.branding-form{display:flex;flex-direction:column;gap:2rem}.form-section{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:2rem}.form-section h2{color:#1a1a1a;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.form-group:last-child{margin-bottom:0}.form-group label{color:#374151;font-size:.95rem}.form-group input[type=email],.form-group input[type=text],.form-group textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.95rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,#0000);outline:none}.form-group input:disabled,.form-group textarea:disabled{background:#f3f4f6;cursor:not-allowed}.form-group textarea{min-height:80px;resize:vertical}.form-group textarea.code-input{font-family:Courier New,monospace;font-size:.875rem}.form-help{color:#6b7280;font-size:.85rem;font-style:italic}.field-error,.form-help{display:block;margin-top:.5rem}.field-error{color:#dc2626;font-size:.875rem;font-weight:500}.form-group input.error,.form-group textarea.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}[data-theme=dark] .field-error{color:#ff6b6b}[data-theme=dark] .form-group input.error,[data-theme=dark] .form-group textarea.error{border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b1a}.file-upload-group{display:flex;flex-direction:column;gap:1rem}.favicon-preview,.logo-preview{background:#fff;border:1px solid #e5e7eb;border-radius:4px;max-height:100px;max-width:200px;padding:.5rem}.logo-preview.dark{background:#1a1a1a}.favicon-preview{max-height:64px;max-width:64px}.file-upload-group input[type=file]{border:2px dashed #d1d5db;border-radius:6px;cursor:pointer;padding:.5rem}.file-upload-group .uploading{color:var(--color-accent);font-size:.875rem;font-style:italic}.color-inputs-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.color-input-group{align-items:center;display:flex;gap:.75rem}.color-input-group input[type=color]{border:1px solid #d1d5db;border-radius:6px;cursor:pointer;height:40px;width:60px}.color-input-group .hex-input{flex:1 1;font-family:Courier New,monospace}.color-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:1.5rem}.color-preview h3{font-size:1.125rem;font-weight:600;margin:0 0 1rem}.color-preview-boxes{display:flex;flex-wrap:wrap;gap:1rem}.color-box{border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;flex:1 1;font-weight:600;height:100px;justify-content:center;min-width:150px;text-shadow:0 1px 2px #0000004d}.checkbox-label,.color-box{align-items:center;display:flex}.checkbox-label{cursor:pointer;font-weight:500;gap:.5rem}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.domain-verification-status{align-items:center;border-radius:6px;display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem}.domain-verification-status.verified{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.domain-verification-status.unverified{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.domain-verification-status span{flex:1 1;font-weight:500}.dns-instructions{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;color:#1e40af;display:flex;font-size:.9rem;gap:.75rem;padding:1rem}.dns-instructions code{background:#dbeafe;border-radius:4px;font-family:Courier New,monospace;font-size:.875rem;padding:.25rem .5rem}.dns-instructions strong{display:block;margin-bottom:.5rem}.dns-instructions p{margin:.5rem 0}.form-actions{border-top:1px solid #e5e7eb;display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem}.alert{align-items:center;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1rem}.alert-error{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.alert-success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.alert-warning{align-items:flex-start;background:#fef3c7;border:1px solid #fbbf24;color:#92400e;flex-direction:row;gap:.75rem}.alert-warning svg{flex-shrink:0;margin-top:.125rem}.alert-warning div{flex:1 1}.alert-warning p{font-size:.9rem;margin:.5rem 0 0}.alert button{background:none;border:none;color:inherit;cursor:pointer;font-size:1.5rem;padding:0 .5rem}.empty-state{color:#6b7280;padding:4rem 2rem;text-align:center}.empty-state svg{color:#9ca3af;margin-bottom:1rem}.btn-primary{background:var(--color-accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.625rem 1.25rem;transition:all .2s}.btn-primary:hover{background:color-mix(in srgb,var(--color-accent) 88%,#000 12%)}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-secondary:hover{background:#4b5563}.btn-secondary:disabled{background:#9ca3af;cursor:not-allowed}.form-actions button{border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:1rem;padding:.625rem 1.25rem;transition:all .2s}.form-actions button:hover{background:#f3f4f6}.loading{color:#6b7280;padding:2rem;text-align:center}.error-banner{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626}[data-theme=dark] .branding-page,[data-theme=dark] .branding-title h1{color:var(--color-text-primary)}[data-theme=dark] .form-section{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .form-section h2{color:var(--color-text-primary)}[data-theme=dark] .form-group label{color:var(--color-text-secondary)}[data-theme=dark] .form-group input,[data-theme=dark] .form-group textarea{background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .form-group input:disabled,[data-theme=dark] .form-group textarea:disabled{background:var(--color-bg-tertiary)}[data-theme=dark] .color-preview{background:var(--color-bg-secondary);border-color:var(--color-border)}[data-theme=dark] .color-preview h3{color:var(--color-text-primary)}[data-theme=dark] .alert-error{background:#dc262626;border-color:#dc2626;color:#ff6b6b}[data-theme=dark] .alert-success{background:#065f4626;border-color:#059669;color:#6ee7b7}[data-theme=dark] .alert-warning{background:#f59e0b26;border-color:#f59e0b;color:#fbbf24}[data-theme=dark] .empty-state{color:var(--color-text-secondary)}[data-theme=dark] .dns-instructions{background:#3b82f61a;border-color:#3b82f64d;color:var(--color-accent)}[data-theme=dark] .dns-instructions code{background:#3b82f633}[data-theme=dark] .domain-verification-status.verified{background:#065f4633;border-color:#059669;color:#6ee7b7}[data-theme=dark] .domain-verification-status.unverified{background:#dc262633;border-color:#dc2626;color:#ff6b6b}@media (max-width:767px){.branding-page{padding:1rem}.branding-header{align-items:flex-start;flex-direction:column;gap:1rem}.branding-header h1{font-size:1.5rem}.pricing-section{padding:1.5rem}.pricing-header h2{font-size:1.25rem}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:44px}.form-actions{flex-direction:column-reverse}.form-actions button{min-height:44px;width:100%}.logo-preview{max-width:100%}.color-picker-grid{grid-template-columns:1fr}}@media (min-width:768px) and (max-width:1023px){.branding-page{padding:1.5rem}.color-picker-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.password-reset-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.password-reset-modal{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:500px;padding:2rem;width:90%}.password-reset-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.password-reset-header h2{color:#1a1a1a;font-size:1.5rem;margin:0}.password-reset-description{color:#666;line-height:1.6;margin-bottom:1.5rem}.password-reset-error{align-items:center;background:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem}.password-reset-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.password-reset-actions .btn-primary,.password-reset-actions .btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}.password-reset-actions .btn-primary{background:var(--color-primary);color:#fff}.password-reset-actions .btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.password-reset-actions .btn-primary:disabled{cursor:not-allowed;opacity:.6}.password-reset-actions .btn-secondary{background:#f5f5f5;color:#333}.password-reset-actions .btn-secondary:hover{background:#e5e5e5}@media (max-width:767px){.password-reset-modal-overlay{align-items:flex-end;padding:0}.password-reset-modal{-webkit-overflow-scrolling:touch;border-radius:1rem 1rem 0 0;max-height:90vh;max-width:100%;overflow-y:auto;padding:1.5rem;width:100%}.password-reset-header h2{font-size:1.25rem}.password-reset-actions{flex-direction:column-reverse}.password-reset-actions .btn-primary,.password-reset-actions .btn-secondary{min-height:44px;width:100%}.form-group input{font-size:16px;min-height:44px}}.mfa-verification-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.mfa-verification-modal{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:450px;padding:2rem;position:relative;width:90%}.mfa-verification-header{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:1.5rem}.mfa-verification-header>div{flex:1 1}.mfa-verification-header h2{color:#1a1a1a;font-size:1.5rem;margin:0 0 .25rem}.mfa-verification-subtitle{color:#666;font-size:.875rem;margin:0}.mfa-verification-close{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;flex-shrink:0;padding:.25rem}.mfa-verification-close:hover{color:#333}.mfa-verification-description{color:#666;line-height:1.6;margin-bottom:1.5rem}.mfa-verification-error{align-items:center;background:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem}.mfa-code-input{font-size:1.5rem;letter-spacing:.5rem}.mfa-verification-toggle{margin:1rem 0}.mfa-toggle-label{align-items:center;color:#666;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.mfa-toggle-label input[type=checkbox]{cursor:pointer}.mfa-verification-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.mfa-verification-actions .btn-primary,.mfa-verification-actions .btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}.mfa-verification-actions .btn-primary{background:var(--color-primary);color:#fff}.mfa-verification-actions .btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.mfa-verification-actions .btn-primary:disabled{cursor:not-allowed;opacity:.6}.mfa-verification-actions .btn-secondary{background:#f5f5f5;color:#333}.mfa-verification-actions .btn-secondary:hover{background:#e5e5e5}.form-group{margin-bottom:1.25rem}.form-group input{border-radius:4px;padding:.75rem}@media (max-width:767px){.mfa-verification-modal-overlay{align-items:flex-end;padding:0}.mfa-verification-modal{border-radius:1rem 1rem 0 0;max-height:90vh;max-width:100%;overflow-y:auto;padding:1.5rem;width:100%}.mfa-verification-header h2{font-size:1.25rem}.mfa-verification-actions{flex-direction:column-reverse}.mfa-verification-actions .btn-primary,.mfa-verification-actions .btn-secondary{min-height:44px;width:100%}.form-group input{font-size:16px;min-height:44px}}:root{--bg-primary:var(--color-bg-primary);--bg-secondary:var(--color-bg-secondary);--bg-card:var(--color-bg-primary);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--text-muted:var(--color-text-tertiary);--border-color:var(--color-border);--input-bg:var(--color-bg-primary);--input-border:var(--color-border);--input-border-focus:var(--color-primary);--button-bg:var(--primary-color,var(--color-primary));--button-hover:var(--color-primary-dark);--button-disabled:color-mix(in srgb,var(--color-text-secondary) 45%,var(--color-bg-primary));--error-bg:color-mix(in srgb,var(--color-error) 14%,var(--color-bg-primary));--error-text:var(--color-error);--error-fg:var(--color-error);--login-shadow-card:var(
    --shadow-md,0 4px 24px color-mix(in srgb,var(--color-text-primary) 8%,#0000)
  )}@keyframes login-spin{to{transform:rotate(1turn)}}.login-page{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:stretch;background-color:var(--color-bg-secondary);background-color:var(--bg-secondary);background-position:50%;background-repeat:no-repeat;background-size:cover;color-scheme:light dark;display:flex;flex-direction:column;font-family:Inter,system-ui,sans-serif;font-family:"Inter",var(--font-family-sans,system-ui,sans-serif);font-size:16px;font-size:var(--font-size-base,16px);min-height:100vh;position:relative;transition:background-color .3s ease}.login-page--generic{background-image:radial-gradient(ellipse 120% 80% at 50% -30%,color-mix(in srgb,var(--color-primary) 14%,#0000),#0000 55%),radial-gradient(ellipse 90% 60% at 100% 100%,color-mix(in srgb,var(--color-text-primary) 4%,#0000),#0000 50%)}.login-page--tenant{--login-shadow-card:var(
    --shadow-md,0 8px 40px color-mix(in srgb,var(--color-text-primary) 12%,#0000)
  );background-image:none}.login-page__hero-scrim{background:color-mix(in srgb,var(--color-bg-secondary) 55%,#0000);inset:0;pointer-events:none;position:absolute;z-index:0}.login-page__toolbar{display:flex;justify-content:flex-end;padding:1rem 1rem 0;position:relative;z-index:1}@media (min-width:640px){.login-page__toolbar{padding:1.25rem 1.5rem 0}}.login-page__theme-toggle{align-items:center;background:var(--color-bg-primary);background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;border-radius:var(--radius-md,12px);box-shadow:0 1px 2px color-mix(in srgb,var(--color-text-primary) 6%,#0000);color:var(--color-text-secondary);color:var(--text-secondary);cursor:pointer;display:inline-flex;height:2.75rem;justify-content:center;padding:0;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;width:2.75rem}.login-page__theme-toggle:hover{background:color-mix(in srgb,var(--color-bg-primary) 92%,var(--color-text-primary) 8%);background:color-mix(in srgb,var(--bg-card) 92%,var(--color-text-primary) 8%);color:var(--color-text-primary);color:var(--text-primary)}.login-page__theme-toggle:focus-visible{box-shadow:0 0 0 2px var(--color-bg-secondary),0 0 0 4px var(--color-primary);box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px var(--input-border-focus);outline:none}.login-page__theme-toggle-icon{height:1.25rem;width:1.25rem}.login-page__main{align-items:center;display:flex;flex:1 1;justify-content:center;padding:0 1rem 4rem;position:relative;z-index:1}@media (min-width:640px){.login-page__main{padding:0 1.5rem 4rem}}.login-page__column{align-items:stretch;display:flex;flex-direction:column;gap:2rem;max-width:28rem;width:100%}.login-page__column--loading{align-items:center;justify-content:center;min-height:40vh}.login-page__loading-brand{align-items:center;display:flex;flex-direction:column;gap:1rem}.login-page__loading-spinner{animation:login-spin .9s linear infinite;color:var(--color-primary);color:var(--primary-color,var(--color-primary));height:2rem;width:2rem}.login-page__loading-text{color:var(--color-text-secondary);color:var(--text-secondary);font-size:.9375rem}.login-page__header{gap:0;text-align:center}.login-page__brand,.login-page__header{align-items:center;display:flex;flex-direction:column}.login-page__brand{margin-bottom:1rem}.login-page__mark{align-items:center;background:var(--color-primary);background:var(--button-bg);border-radius:1rem;box-shadow:0 4px 14px color-mix(in srgb,var(--color-primary) 38%,#0000);box-shadow:var(
    --shadow-soft,0 4px 14px color-mix(in srgb,var(--button-bg) 38%,#0000)
  );color:#fff;color:var(--color-white,#fff);display:flex;height:4rem;justify-content:center;width:4rem}.login-page__mark--loading{background:color-mix(in srgb,var(--color-bg-primary) 88%,var(--color-text-primary) 6%);border:1px solid var(--border-color);box-shadow:0 1px 0 color-mix(in srgb,var(--color-text-primary) 6%,#0000)}.login-page__mark-img{height:2.25rem;object-fit:contain;width:2.25rem}.login-page__mark-text{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;line-height:1}.login-page__favicon-wrap{align-items:center;background:color-mix(in srgb,var(--color-bg-primary) 88%,var(--color-text-primary) 6%);border:1px solid var(--border-color);border-radius:1rem;box-shadow:0 1px 0 color-mix(in srgb,var(--color-text-primary) 6%,#0000);display:flex;height:4rem;justify-content:center;width:4rem}.login-page__favicon{height:2.25rem;object-fit:contain;width:2.25rem}.login-logo{display:flex;justify-content:center;width:100%}.login-logo img{max-height:72px;max-width:200px;object-fit:contain}.login-header{text-align:center}.login-header h1{color:var(--color-primary);color:var(--primary-color,var(--color-primary));font-size:1.875rem;font-weight:700;letter-spacing:-.03em;line-height:1.2;line-height:var(--line-height-tight,1.2);margin:0 0 .5rem}.login-header p{color:var(--color-text-secondary);color:var(--text-secondary);font-size:.9375rem;line-height:1.5;margin:0}.login-card{background-color:var(--color-bg-primary);background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:1rem;box-shadow:0 4px 24px color-mix(in srgb,var(--color-text-primary) 8%,#0000);box-shadow:var(--login-shadow-card);padding:2rem;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.login-form{gap:1.5rem}.login-form,.login-form__fields{display:flex;flex-direction:column}.login-form__fields{gap:1rem}.login-form .form-group{display:flex;flex-direction:column;gap:0}.login-form .form-group label{color:var(--color-text-primary);color:var(--text-primary);display:block;font-size:.875rem;font-weight:500;font-weight:var(--font-weight-medium,500);line-height:1.25;margin-bottom:.5rem}.login-input-wrap{align-items:center;display:flex;min-width:0;position:relative}.login-input-wrap__icon{color:var(--color-text-tertiary);color:var(--text-muted);display:flex;left:.875rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:0}.login-input-wrap__input{background-color:var(--color-bg-primary);background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:.75rem;color:var(--color-text-primary);color:var(--text-primary);font-size:.9375rem;min-width:0;padding:.75rem 1rem .75rem 3.25rem;position:relative;transition:border-color .2s ease,box-shadow .2s ease,background-color .3s ease;width:100%;z-index:1}.login-input-wrap__input::placeholder{color:var(--color-text-tertiary);color:var(--text-muted)}.login-input-wrap__input:focus{border-color:var(--input-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 26%,#0000);box-shadow:0 0 0 3px color-mix(in srgb,var(--input-border-focus) 26%,#0000);outline:none}.login-input-wrap__input:disabled{cursor:not-allowed;opacity:.65}.btn-login{align-items:center;background-color:var(--color-primary);background-color:var(--button-bg);border:none;border-radius:.75rem;box-shadow:0 1px 2px color-mix(in srgb,var(--color-text-primary) 8%,#0000);color:#fff;color:var(--color-white,#fff);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;font-weight:var(--font-weight-medium,500);gap:0;justify-content:center;margin-top:0;padding:.75rem 1rem;transition:background-color .2s ease,box-shadow .2s ease,opacity .2s ease;width:100%}.btn-login:hover:not(:disabled){background-color:var(--color-primary-dark);background-color:var(--button-hover)}.btn-login:focus-visible{box-shadow:0 0 0 2px var(--color-bg-secondary),0 0 0 4px var(--color-primary);box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px var(--input-border-focus);outline:none}.btn-login:disabled{background-color:color-mix(in srgb,var(--color-text-secondary) 45%,var(--color-bg-primary));background-color:var(--button-disabled);cursor:not-allowed;opacity:.55}.btn-login__spinner{animation:login-spin .9s linear infinite;flex-shrink:0;height:1.25rem;margin-left:-.25rem;margin-right:.75rem;width:1.25rem}.login-alert{align-items:flex-start;border-radius:.75rem;display:flex;flex-direction:row;font-size:.875rem;gap:.75rem;line-height:1.5;margin-bottom:1.25rem;padding:1rem}.login-alert--danger{background-color:color-mix(in srgb,var(--color-error) 14%,var(--color-bg-primary));background-color:var(--error-bg);border:1px solid color-mix(in srgb,var(--error-text) 45%,var(--bg-card));color:var(--color-error);color:var(--error-fg)}.login-card>.login-alert:only-child{margin-bottom:0}.login-alert__icon{flex-shrink:0;height:1.25rem;margin-top:.125rem;width:1.25rem}.login-alert__text{font-size:.875rem;margin:0}.login-alert__text strong{font-weight:600}.login-form+.login-card__divider{margin-top:1.5rem}.login-card__divider{margin-bottom:1.5rem;margin-top:1.5rem;position:relative}.login-card__divider:before{border-top:1px solid var(--border-color);content:"";left:0;position:absolute;right:0;top:50%}.login-card__divider-label{background:var(--color-bg-primary);background:var(--bg-card);color:var(--color-text-tertiary);color:var(--text-muted);display:block;font-size:.875rem;margin:0 auto;max-width:100%;padding:0 .5rem;position:relative;text-align:center;width:-webkit-max-content;width:max-content}.login-btn-secondary{align-items:center;background:color-mix(in srgb,var(--color-bg-primary) 94%,var(--color-text-primary) 4%);background:color-mix(in srgb,var(--bg-card) 94%,var(--color-text-primary) 4%);border:1px solid var(--border-color);border-radius:.75rem;box-shadow:0 1px 2px color-mix(in srgb,var(--color-text-primary) 6%,#0000);color:var(--color-text-primary);color:var(--text-primary);display:flex;font-size:.875rem;font-weight:500;justify-content:center;padding:.75rem 1rem;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease;width:100%}.login-btn-secondary:hover{background:color-mix(in srgb,var(--color-bg-primary) 88%,var(--color-text-primary) 10%);background:color-mix(in srgb,var(--bg-card) 88%,var(--color-text-primary) 10%)}.login-btn-secondary:focus-visible{box-shadow:0 0 0 2px var(--color-bg-secondary),0 0 0 4px var(--color-primary);box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px var(--input-border-focus);outline:none}.login-page__below-card{color:var(--color-text-secondary);color:var(--text-secondary);font-size:.875rem;text-align:center}.login-page__below-card p{margin:0 0 .75rem}.login-page__below-card p:last-child{margin-bottom:0}.login-support{color:var(--color-text-secondary);color:var(--text-secondary);font-size:.8125rem}.login-support a{color:var(--color-primary);color:var(--primary-color,var(--color-primary));font-weight:500;text-decoration:none}.login-support a:hover{text-decoration:underline}.login-page__privacy a{color:var(--color-primary);color:var(--primary-color,var(--color-primary));font-weight:500;text-decoration:none}.login-page__privacy a:hover{text-decoration:underline}.login-page__privacy a:focus-visible{border-radius:2px;outline:2px solid var(--color-primary);outline:2px solid var(--input-border-focus);outline-offset:2px}.login-page__trust{margin-left:auto;margin-right:auto;max-width:28rem;padding:0 .5rem;text-align:center}.login-page__trust-lead{color:var(--color-text-tertiary);color:var(--text-muted);font-size:.8125rem;font-weight:500;letter-spacing:.02em;line-height:1.45;margin:0 auto .75rem;max-width:22rem}.login-page__trust-badges{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;justify-content:center}.login-page__trust-item{align-items:center;color:var(--color-text-tertiary);color:var(--text-muted);display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem}.login-page__trust-check{flex-shrink:0;height:1rem;opacity:.9;width:1rem}@media (max-width:480px){.login-page__main{padding:0 1rem 3rem}.login-card{padding:1.75rem 1.5rem}.login-header h1{font-size:1.5rem}}[data-theme=dark] .login-page--generic{--login-shadow-card:var(
    --shadow-md,0 8px 32px color-mix(in srgb,var(--color-text-primary) 18%,#0000)
  )}[data-theme=dark] .login-page--tenant{--login-shadow-card:var(
    --shadow-md,0 8px 36px color-mix(in srgb,var(--color-text-primary) 20%,#0000)
  )}[data-theme=dark] .login-page__hero-scrim{background:color-mix(in srgb,#0f0f0f 58%,#0000);background:color-mix(in srgb,var(--brand-jet-black,#0f0f0f) 58%,#0000)}.request-access-page{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:center;background-color:var(--color-bg-secondary);color:var(--color-text-primary);color-scheme:light dark;display:flex;font-family:Inter,system-ui,sans-serif;font-family:"Inter",var(--font-family-sans,system-ui,sans-serif);justify-content:center;min-height:100vh;padding:2rem;transition:background-color .3s ease,color .2s ease}.request-access-container{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:1rem;box-shadow:0 4px 24px color-mix(in srgb,var(--color-text-primary) 8%,#0000);box-shadow:var(
    --shadow-md,0 4px 24px color-mix(in srgb,var(--color-text-primary) 8%,#0000)
  );max-width:600px;padding:2rem;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.request-access-header{margin-bottom:2rem;text-align:center}.request-access-header h1{color:var(--color-primary);color:var(--primary-color,var(--color-primary));font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 .5rem}.request-access-header p{color:var(--color-text-secondary);font-size:.9375rem;line-height:1.5;margin:0}.request-access-page .error-banner{background:color-mix(in srgb,var(--color-danger) 14%,var(--color-bg-primary));border:1px solid color-mix(in srgb,var(--color-danger) 45%,var(--color-bg-primary));border-radius:.75rem;color:var(--color-danger);font-size:.875rem;line-height:1.5;margin-bottom:1.5rem;padding:1rem}.success-message{background:color-mix(in srgb,var(--color-success) 14%,var(--color-bg-primary));border:1px solid color-mix(in srgb,var(--color-success) 40%,var(--color-bg-primary));border-radius:.75rem;color:color-mix(in srgb,var(--color-success) 92%,#111);color:color-mix(in srgb,var(--color-success) 92%,var(--brand-jet-black,#111));font-size:.9375rem;line-height:1.5;margin-bottom:2rem;padding:1.5rem}.success-message p{color:inherit;margin:.5rem 0}.request-access-form{display:flex;flex-direction:column;gap:1.5rem}.request-access-page .form-group{display:flex;flex-direction:column;gap:.5rem}.request-access-page .form-group label{color:var(--color-text-primary);font-size:.875rem;font-weight:500}.request-access-page .form-group label .required{color:var(--color-danger)}.request-access-page .form-group input,.request-access-page .form-group textarea{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.75rem;color:var(--color-text-primary);font-family:inherit;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.request-access-page .form-group input::placeholder,.request-access-page .form-group textarea::placeholder{color:var(--color-text-tertiary)}.request-access-page .form-group input:focus,.request-access-page .form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 26%,#0000);outline:none}.request-access-page .form-group textarea{min-height:100px;resize:vertical}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.info-box{background:color-mix(in srgb,var(--color-info) 12%,var(--color-bg-primary));border:1px solid color-mix(in srgb,var(--color-info) 35%,var(--color-border));border-radius:.75rem;padding:1rem}.info-box p{color:var(--color-text-secondary);font-size:.9rem;line-height:1.45;margin:0}.request-access-page .btn-primary{background:var(--color-primary);background:var(--primary-color,var(--color-primary));border:none;border-radius:.75rem;box-shadow:0 1px 2px color-mix(in srgb,var(--color-text-primary) 8%,#0000);color:#fff;color:var(--color-white,#fff);cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s ease,box-shadow .2s ease,opacity .2s ease;width:100%}.request-access-page .btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.request-access-page .btn-primary:focus-visible{box-shadow:0 0 0 2px var(--color-bg-secondary),0 0 0 4px var(--color-primary);outline:none}.request-access-page .btn-primary:disabled{cursor:not-allowed;opacity:.55}.btn-submit{margin-top:.5rem}.form-footer{color:var(--color-text-secondary);font-size:.875rem;margin-top:1rem;text-align:center}.form-footer a{color:var(--color-primary);color:var(--primary-color,var(--color-primary));font-weight:500;text-decoration:none}.form-footer a:hover{text-decoration:underline}.form-footer a:focus-visible{border-radius:2px;outline:2px solid var(--color-primary);outline-offset:2px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.request-access-container{padding:1.5rem}.request-access-page{padding:1.25rem}}[data-theme=dark] .request-access-page{background-color:var(--color-bg-secondary)}[data-theme=dark] .request-access-container{box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 18%,#0000);box-shadow:var(
    --shadow-md,0 8px 32px color-mix(in srgb,var(--color-text-primary) 18%,#0000)
  )}[data-theme=dark] .request-access-page .error-banner{background:color-mix(in srgb,var(--color-danger) 18%,var(--color-bg-primary));border-color:color-mix(in srgb,var(--color-danger) 50%,var(--color-bg-primary));color:var(--color-danger)}[data-theme=dark] .success-message{background:color-mix(in srgb,var(--color-success) 16%,var(--color-bg-primary));border-color:color-mix(in srgb,var(--color-success) 45%,var(--color-bg-primary));color:color-mix(in srgb,var(--color-success) 88%,var(--color-bg-primary))}[data-theme=dark] .info-box{background:color-mix(in srgb,var(--color-info) 14%,var(--color-bg-primary));border-color:color-mix(in srgb,var(--color-info) 38%,var(--color-border))}[data-theme=dark] .info-box p{color:var(--color-text-secondary)}.privacy-policy-page{align-items:center;background:#f5f7fa;background:var(--bg-primary,var(--color-bg-secondary,#f5f7fa));display:flex;flex-direction:column;min-height:100vh;padding:2rem}.privacy-policy-container{background:#fff;background:var(--bg-secondary,var(--color-bg-primary,#fff));border:1px solid #e0e0e0;border:1px solid var(--border-color,var(--color-border,#e0e0e0));border-radius:12px;box-shadow:0 2px 12px #00000014;max-width:720px;padding:2.5rem 3rem;width:100%}.privacy-policy-header{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,var(--color-border,#e0e0e0));margin-bottom:2.5rem;padding-bottom:2rem;text-align:center}.privacy-policy-header h1{color:#1a1a1a;color:var(--text-primary,var(--color-text-primary,#1a1a1a));font-size:2rem;font-weight:600;margin:0 0 .5rem}.effective-date{color:#666;color:var(--text-secondary,var(--color-text-secondary,#666));font-size:.95rem;margin:0}.privacy-policy-content{line-height:1.65}.privacy-policy-content section{margin-bottom:2rem}.privacy-policy-content section:last-of-type{margin-bottom:0}.privacy-policy-content h2{font-size:1.25rem;margin:0 0 .75rem}.privacy-policy-content h2,.privacy-policy-content h3{color:#1a1a1a;color:var(--text-primary,var(--color-text-primary,#1a1a1a));font-weight:600}.privacy-policy-content h3{font-size:1rem;margin:1rem 0 .5rem}.privacy-policy-content p{color:#666;color:var(--text-secondary,var(--color-text-secondary,#666));font-size:.95rem;margin:0 0 1rem}.privacy-policy-content p:last-child{margin-bottom:0}.privacy-policy-content ul{margin:0 0 1rem;padding-left:1.5rem}.privacy-policy-content li{color:#666;color:var(--text-secondary,var(--color-text-secondary,#666));font-size:.95rem;margin-bottom:.35rem}.privacy-policy-content a{color:var(--color-primary);color:var(--primary-color,var(--color-accent,var(--color-primary)));text-decoration:none}.privacy-policy-content a:hover{text-decoration:underline}.privacy-policy-footer{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,var(--color-border,#e0e0e0));margin-top:2.5rem;padding-top:2rem;text-align:center}.privacy-policy-footer a{color:var(--color-primary);color:var(--primary-color,var(--color-accent,var(--color-primary)));font-size:.95rem;font-weight:500;text-decoration:none}.privacy-policy-footer a:hover{text-decoration:underline}[data-theme=dark] .privacy-policy-page{background:var(--color-bg-secondary)}[data-theme=dark] .privacy-policy-container{background:var(--color-bg-primary);border-color:var(--color-border);box-shadow:0 2px 12px #0000004d}[data-theme=dark] .privacy-policy-content h2,[data-theme=dark] .privacy-policy-content h3,[data-theme=dark] .privacy-policy-header h1{color:var(--color-text-primary)}[data-theme=dark] .effective-date,[data-theme=dark] .privacy-policy-content li,[data-theme=dark] .privacy-policy-content p{color:var(--color-text-secondary)}@media (max-width:768px){.privacy-policy-page{padding:1rem}.privacy-policy-container{padding:1.5rem 1.25rem}.privacy-policy-header h1{font-size:1.5rem}}.access-requests-page{margin:0 auto;max-width:1400px;padding:2rem}.page-header{margin-bottom:2rem}.page-header h1{color:#333;color:var(--text-primary,#333);font-size:2rem;margin:0 0 .5rem}.page-header p{color:#666;color:var(--text-secondary,#666);margin:0}.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.filters button{background:#fff;background:var(--bg-secondary,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:4px;cursor:pointer;padding:.5rem 1rem;transition:all .2s}.filters button:hover{background:#f5f5f5;background:var(--bg-hover,#f5f5f5)}.filters button.active{background:var(--color-primary);background:var(--primary-color,var(--color-primary));border-color:var(--primary-color,var(--color-primary));color:#fff}.error-banner{background:#fee;border:1px solid #fcc;border-radius:4px;color:#c33;margin-bottom:1.5rem;padding:1rem}.empty-state,.error-message,.loading{padding:3rem;text-align:center}.empty-state,.loading{color:#666;color:var(--text-secondary,#666)}.requests-table{background:#fff;background:var(--bg-secondary,#fff);border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.requests-table table{border-collapse:collapse;width:100%}.requests-table td,.requests-table th{border-bottom:1px solid #eee;border-bottom:1px solid var(--border-color,#eee);padding:1rem;text-align:left}.requests-table th{background:#f8f9fa;background:var(--bg-tertiary,#f8f9fa);color:#333;color:var(--text-primary,#333);font-weight:600}.requests-table tr:hover{background:#f5f5f5;background:var(--bg-hover,#f5f5f5)}.status-badge{border-radius:12px;display:inline-block;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.status-badge.status-pending{background:#fff3cd;color:#856404}.status-badge.status-approved{background:#d4edda;color:#155724}.status-badge.status-rejected{background:#f8d7da;color:#721c24}.btn-view{background:var(--color-primary);background:var(--primary-color,var(--color-primary));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background .2s}.btn-view:hover{background:var(--color-primary-dark);background:var(--primary-hover,var(--color-primary-dark))}.modal-overlay{padding:2rem}.modal-content{background:var(--bg-secondary,#fff);box-shadow:0 4px 20px #0000004d;max-width:700px}.modal-header{border-bottom:1px solid #eee;border-bottom:1px solid var(--border-color,#eee)}.modal-header h2{font-size:1.5rem;margin:0}.btn-close{align-items:center;background:none;border:none;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;font-size:2rem;height:2rem;justify-content:center;line-height:1;padding:0;width:2rem}.btn-close:hover{color:#333;color:var(--text-primary,#333)}.modal-body{padding:1.5rem}.detail-section{margin-bottom:2rem}.detail-section h3{color:#333;color:var(--text-primary,#333);font-size:1.25rem;margin:0 0 1rem}.detail-section p{color:#666;color:var(--text-secondary,#666);margin:.5rem 0}.intended-use,.review-notes{background:#f8f9fa;background:var(--bg-tertiary,#f8f9fa);border-radius:4px;margin-top:.5rem;padding:1rem;white-space:pre-wrap}.detail-section textarea{border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:4px;font-family:inherit;font-size:1rem;margin-top:.5rem;padding:.75rem;resize:vertical;width:100%}.detail-section textarea:focus{border-color:var(--primary-color,var(--color-primary));box-shadow:0 0 0 3px #007bff1a;outline:none}.modal-actions{border-top:1px solid #eee;border-top:1px solid var(--border-color,#eee)}.btn-approve,.btn-reject{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.btn-approve{background:#28a745;color:#fff}.btn-approve:hover:not(:disabled){background:#218838}.btn-reject{background:var(--color-error);color:#fff}.btn-reject:hover:not(:disabled){background:#c82333}.btn-approve:disabled,.btn-reject:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.access-requests-page{padding:1rem}.access-requests-header{align-items:flex-start;flex-direction:column;gap:1rem}.access-requests-header h1{font-size:1.5rem}.requests-table,.requests-table tbody,.requests-table td,.requests-table th,.requests-table thead,.requests-table tr{display:block}.requests-table thead tr{left:-9999px;position:absolute;top:-9999px}.requests-table tr{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1rem;padding:1rem}.requests-table td{border:none;padding:.5rem 0 .5rem 40%;position:relative}.requests-table td:before{color:#666;content:attr(data-label);font-size:.875rem;font-weight:600;left:0;padding-right:10px;position:absolute;white-space:nowrap;width:35%}.requests-table tr:hover{background:#fafafa}.btn-view{margin-top:.5rem;min-height:44px;width:100%}.modal-content{margin:1rem;max-height:calc(100vh - 2rem);padding:1.5rem;width:95%}.modal-actions{flex-direction:column-reverse}.modal-actions button{min-height:44px;width:100%}.btn-approve,.btn-reject{min-height:44px}}.feature-flags-section{margin-bottom:3rem}.account-entitlements-section{margin-top:2rem}.feature-flags-subtitle{font-size:1.25rem;font-weight:600;margin-bottom:1rem}.feature-flag-key,.feature-flags-subtitle{color:#333;color:var(--color-text-primary,#333)}.feature-flag-key{background:#f0f0f0;background:var(--color-bg-tertiary,#f0f0f0);border-radius:4px;font-family:Monaco,Courier New,monospace;font-size:.875rem;padding:.25rem .5rem}.feature-flag-description-small{color:#666;color:var(--color-text-secondary,#666);font-size:.75rem;margin-top:.25rem}.feature-flag-toggle{align-items:center;background:#fff;background:var(--color-bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--color-border,#ddd);border-radius:6px;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.feature-flag-toggle:hover{background:#f5f5f5;background:var(--color-bg-secondary,#f5f5f5)}.feature-flag-toggle.enabled{background:#d1fae5;background:var(--color-success-light,#d1fae5);border-color:#10b981;border-color:var(--color-success,#10b981);color:#065f46;color:var(--color-success-dark,#065f46)}.feature-flag-toggle.disabled{background:#fff;background:var(--color-bg-primary,#fff);border-color:#ddd;border-color:var(--color-border,#ddd);color:#666;color:var(--color-text-secondary,#666)}.entitlements-header{flex-wrap:wrap;justify-content:space-between;margin-bottom:1rem}.entitlements-controls,.entitlements-header{align-items:center;display:flex;gap:1rem}.account-select{background:#fff;background:var(--color-bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--color-border,#ddd);border-radius:6px;cursor:pointer;font-size:.875rem;min-width:250px;padding:.5rem 1rem}.account-select:focus{border-color:var(--color-primary,var(--color-primary));box-shadow:0 0 0 3px rgba(var(--color-accent-rgb),.1);outline:none}.entitlement-source-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.entitlement-source-early-access{background:#dbeafe;background:var(--color-info-light,#dbeafe);color:#1e40af;color:var(--color-info-dark,#1e40af)}.entitlement-source-promo{background:#fef3c7;background:var(--color-warning-light,#fef3c7);color:#92400e;color:var(--color-warning-dark,#92400e)}.entitlement-source-paid{background:#d1fae5;background:var(--color-success-light,#d1fae5);color:#065f46;color:var(--color-success-dark,#065f46)}.entitlement-source-admin{background:#f0f0f0;background:var(--color-bg-tertiary,#f0f0f0);color:#666;color:var(--color-text-secondary,#666)}.entitlement-expired{opacity:.6}.entitlement-expired-badge{align-items:center;display:inline-flex;gap:.25rem}.entitlement-expired-badge,.entitlement-expired-text{color:#ef4444;color:var(--color-danger,#ef4444);font-size:.75rem;margin-top:.25rem}.text-muted{color:#666;color:var(--color-text-secondary,#666);font-style:italic}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;background:var(--color-bg-primary,#fff);border-radius:8px;box-shadow:0 10px 25px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #ddd;border-bottom:1px solid var(--color-border,#ddd);display:flex;justify-content:space-between;padding:1.5rem}.modal-header h3{font-size:1.25rem;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;color:#666;color:var(--color-text-secondary,#666);cursor:pointer;display:flex;padding:.25rem;transition:color .2s}.modal-close:hover{color:#333;color:var(--color-text-primary,#333)}.entitlement-form{padding:1.5rem}.form-group label{color:var(--color-text-primary,#333);margin-bottom:.5rem}.form-group label input[type=checkbox]{margin-right:.5rem}.form-group input[type=date],.form-group input[type=text],.form-group select{border:1px solid #ddd;border:1px solid var(--color-border,#ddd);border-radius:6px;font-size:.875rem;padding:.5rem .75rem;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus{border-color:var(--color-primary,var(--color-primary));box-shadow:0 0 0 3px rgba(var(--color-accent-rgb),.1);outline:none}.form-group small{color:var(--color-text-secondary,#666);font-size:.75rem;margin-top:.25rem}.modal-actions{border-top:1px solid #ddd;border-top:1px solid var(--color-border,#ddd);display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}@media (max-width:768px){.entitlements-header{align-items:flex-start;flex-direction:column}.entitlements-controls{flex-direction:column;width:100%}.account-select{min-width:auto;width:100%}.modal-content{margin:1rem;max-width:100%}}.mfa-recovery-codes-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.mfa-recovery-codes-modal{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;padding:2rem;position:relative;width:90%}.mfa-recovery-codes-header{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:1.5rem}.mfa-recovery-codes-header>div{flex:1 1}.mfa-recovery-codes-header h2{color:#1a1a1a;font-size:1.5rem;margin:0 0 .25rem}.mfa-recovery-codes-subtitle{color:#666;font-size:.875rem;margin:0}.mfa-recovery-codes-close{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;flex-shrink:0;padding:.25rem}.mfa-recovery-codes-close:hover{color:#333}.mfa-recovery-codes-warning{background:#fff3cd;border:1px solid var(--color-warning);border-radius:4px;color:#856404;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.mfa-recovery-codes-warning p{line-height:1.5;margin:0}.mfa-recovery-codes-container{grid-gap:.75rem;border-radius:4px;gap:.75rem;margin:1.5rem 0;padding:1rem}.mfa-recovery-code-item{border-radius:4px}.mfa-recovery-code-item code{font-size:.9rem}.mfa-recovery-codes-actions{display:flex;gap:.75rem;margin-bottom:1rem}.mfa-recovery-codes-actions .btn-secondary{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;display:flex;flex:1 1;font-size:.9rem;gap:.5rem;justify-content:center;padding:.75rem 1rem}.mfa-recovery-codes-actions .btn-secondary:hover{background:#e5e5e5}.mfa-recovery-codes-regenerate{border-top:1px solid #eee;margin:1.5rem 0;padding-top:1rem;text-align:center}.mfa-recovery-codes-regenerate .btn-regenerate{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;display:inline-flex;font-size:1rem;gap:.5rem;padding:.75rem 1.5rem}.mfa-recovery-codes-regenerate .btn-regenerate:hover{background:#e5e5e5}.mfa-recovery-codes-regenerate small{color:#666;display:block;font-size:.875rem;margin-top:.5rem}.mfa-recovery-codes-empty{color:#666;padding:2rem;text-align:center}.mfa-recovery-codes-empty p{margin-bottom:1rem}.mfa-recovery-codes-footer{display:flex;justify-content:flex-end;margin-top:1.5rem}.mfa-recovery-codes-footer .btn-primary{background:var(--color-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}.mfa-recovery-codes-footer .btn-primary:hover{background:var(--color-primary-dark)}@media (max-width:767px){.mfa-recovery-codes-modal-overlay{align-items:flex-end;padding:0}.mfa-recovery-codes-modal{border-radius:1rem 1rem 0 0;max-width:100%;padding:1.5rem;width:100%}.mfa-recovery-codes-header h2{font-size:1.25rem}.mfa-recovery-codes-container{grid-template-columns:1fr}.mfa-recovery-codes-actions{flex-direction:column}.mfa-recovery-codes-actions .btn-secondary,.mfa-recovery-codes-footer .btn-primary{min-height:44px;width:100%}}.platform-admin-page{background:#f5f5f5;background:var(--color-bg-secondary,#f5f5f5);display:flex;height:100vh;overflow:hidden}.platform-admin-layout{display:flex;flex:1 1;overflow:hidden;width:100%}.admin-sidebar{background:var(--color-sidebar-bg);border-right:1px solid color-mix(in srgb,var(--color-sidebar-text) 12%,#0000);box-shadow:inset -1px 0 0 #ffffff05;color:var(--color-sidebar-text);display:flex;flex-direction:column;flex-shrink:0;position:relative;width:272px;z-index:1000}.admin-sidebar-header{border-bottom:1px solid var(--color-border);padding:1.15rem 1.2rem}.admin-logo-wrap{align-items:center;display:flex;gap:.8rem}.admin-logo-badge{align-items:center;background:radial-gradient(circle at 32% 32%,color-mix(in srgb,var(--color-accent) 95%,#000),color-mix(in srgb,var(--color-accent) 70%,#000));border-radius:10px;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 45%,#0000),0 8px 20px color-mix(in srgb,var(--color-accent) 25%,#0000);color:var(--color-white);display:inline-flex;flex-shrink:0;font-size:.9rem;font-weight:800;height:32px;justify-content:center;width:32px}.admin-logo-text{min-width:0}.admin-logo{color:var(--color-white);font-size:1.05rem;font-weight:800;letter-spacing:-.015em;margin:0 0 .2rem}.admin-subtitle{color:var(--color-text-tertiary);font-size:.72rem;letter-spacing:.06em;margin:0;text-transform:uppercase}.admin-sidebar-nav{flex:1 1;overflow-y:auto;padding:1rem 0}.admin-nav-list{list-style:none;margin:0;padding:0}.admin-nav-item{margin:.2rem .7rem}.admin-nav-link{align-items:center;background:none;border:1px solid #0000;border-radius:12px;color:color-mix(in srgb,var(--color-sidebar-text) 78%,#0000);cursor:pointer;display:flex;font-size:.95rem;margin:0;padding:.7rem .95rem;position:relative;text-align:left;text-decoration:none;transition:background .2s,border-color .2s,color .2s,box-shadow .2s;width:100%}.admin-nav-link:hover{background:var(--color-sidebar-hover);color:var(--color-white)}.admin-nav-link.active{background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent) 16%,#0000),color-mix(in srgb,var(--color-sidebar-active) 95%,#0000));border-left:2px solid var(--color-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 30%,#0000),0 8px 18px color-mix(in srgb,var(--color-accent) 14%,#0000);color:var(--color-white)}.admin-nav-link:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,#0000);outline:none}.admin-nav-icon{align-items:center;background:color-mix(in srgb,var(--color-sidebar-bg) 78%,var(--color-sidebar-text) 22%);border:1px solid color-mix(in srgb,var(--color-sidebar-text) 22%,#0000);border-radius:10px;color:inherit;display:inline-flex;flex-shrink:0;height:30px;justify-content:center;margin-right:.72rem;width:30px}.admin-nav-label{flex:1 1}.admin-nav-chevron{color:color-mix(in srgb,var(--color-sidebar-text) 78%,#0000);margin-left:auto;opacity:.7}.admin-sidebar-footer{border-top:1px solid var(--color-border);padding:1rem .7rem}.admin-sidebar-footer .admin-nav-link{margin:0}.admin-main-content{background:#f5f5f5;background:var(--color-bg-secondary,#f5f5f5);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.admin-header{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--color-topbar-bg);border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;justify-content:space-between;padding:.95rem 1.5rem}.admin-header-left{flex:1 1}.admin-page-title{color:var(--color-text-primary);font-size:1.2rem;font-weight:700;letter-spacing:-.015em;margin:0}.admin-header-right{align-items:center;display:flex;gap:1.5rem}.admin-user-menu{align-items:center;display:flex;gap:.75rem}.admin-user-email{color:var(--color-text-primary);font-size:.875rem}.platform-admin-page .btn-theme-toggle{align-items:center;background:none;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);cursor:pointer;display:flex;padding:.5rem;transition:all .2s}.platform-admin-page .btn-theme-toggle:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}.platform-admin-page .btn-theme-toggle:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,#0000);outline:none}.platform-admin-page .btn-logout{align-items:center;background:none;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);cursor:pointer;display:flex;padding:.5rem;transition:all .2s}.platform-admin-page .btn-logout:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}.platform-admin-page .btn-logout:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,#0000);outline:none}.admin-content{flex:1 1;overflow-y:auto;padding:1.25rem 1.5rem 1.5rem}.admin-loading{align-items:center;display:flex;justify-content:center;min-height:400px;padding:3rem}.loading-spinner{color:var(--color-text-secondary,#666);font-size:1.25rem}.admin-error-banner{align-items:center;background:color-mix(in srgb,var(--color-danger) 14%,var(--color-bg-primary));border:1px solid color-mix(in srgb,var(--color-danger) 45%,var(--color-bg-primary));border-radius:14px;border-radius:var(--portalr-radius-md,14px);color:var(--color-danger);display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.5rem}.admin-error-message{padding:3rem;text-align:center}.admin-error-message h2{color:#333;color:var(--color-text-primary,#333);margin:0 0 1rem}.admin-section-content{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md,14px);box-shadow:0 2px 8px color-mix(in srgb,var(--color-text-primary) 6%,#0000);box-shadow:var(--shadow-soft,0 2px 8px color-mix(in srgb,var(--color-text-primary) 6%,#0000));padding:2rem}.admin-section-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem}.admin-section-header h2{color:#1a1a1a;color:var(--color-text-primary,#1a1a1a);font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.admin-section-description{color:#666;color:var(--color-text-secondary,#666);font-size:.9rem;margin:0}.admin-filters{display:flex;flex-wrap:wrap;gap:.5rem}.admin-filter-btn{background:#f8f9fa;background:var(--color-bg-tertiary,#f8f9fa);border:1px solid #ddd;border:1px solid var(--color-border,#ddd);border-radius:6px;color:#666;color:var(--color-text-secondary,#666);cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.admin-filter-btn:hover{background:color-mix(in srgb,var(--color-bg-tertiary) 88%,var(--color-text-primary) 12%);border-color:var(--color-border-secondary);color:var(--color-text-primary)}.admin-filter-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.admin-dashboard-section{background:#0000;border:none;box-shadow:none;padding:0}.admin-stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:1rem}.admin-stat-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md,14px);box-shadow:0 2px 8px color-mix(in srgb,var(--color-text-primary) 6%,#0000);box-shadow:var(--shadow-soft,0 2px 8px color-mix(in srgb,var(--color-text-primary) 6%,#0000));padding:1.5rem;transition:transform .2s,box-shadow .2s}.admin-stat-card:hover{box-shadow:0 4px 16px color-mix(in srgb,var(--color-text-primary) 10%,#0000);box-shadow:var(--shadow-md,0 4px 16px color-mix(in srgb,var(--color-text-primary) 10%,#0000));transform:translateY(-2px)}.admin-stat-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.admin-stat-icon{color:var(--color-accent);flex-shrink:0}.admin-stat-header h3{color:#666;color:var(--color-text-secondary,#666);font-size:.875rem;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.admin-stat-value{color:#1a1a1a;color:var(--color-text-primary,#1a1a1a);font-size:2.5rem;font-weight:700;line-height:1;margin-bottom:1rem}.admin-stat-details{display:flex;flex-direction:column;gap:.5rem}.admin-stat-detail-item{align-items:center;border-top:1px solid #e0e0e0;border-top:1px solid var(--color-border,#e0e0e0);display:flex;justify-content:space-between;padding:.5rem 0}.admin-stat-detail-label{color:#666;color:var(--color-text-secondary,#666);font-size:.875rem}.admin-stat-detail-value{color:#333;color:var(--color-text-primary,#333);font-size:.875rem;font-weight:600}.admin-stat-detail-value.success{color:#51cf66;color:var(--color-success,#51cf66)}.admin-stat-detail-value.warning{color:#ffa94d;color:var(--color-warning,#ffa94d)}.admin-stat-detail-value.danger{color:#ff6b6b;color:var(--color-danger,#ff6b6b)}.admin-table-container{margin-top:1rem;overflow-x:auto}.admin-data-table{background:#fff;background:var(--color-bg-primary,#fff);border-collapse:collapse;width:100%}.admin-data-table td,.admin-data-table th{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--color-border,#e0e0e0);padding:1rem;text-align:left}.admin-data-table th{background:#f8f9fa;background:var(--color-bg-tertiary,#f8f9fa);color:#1a1a1a;color:var(--color-text-primary,#1a1a1a);font-size:.875rem;font-weight:600;letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:1}.admin-data-table tbody tr{transition:background .2s}.admin-data-table tbody tr:hover{background:#f5f5f5;background:var(--color-bg-tertiary,#f5f5f5)}.admin-table-cell-primary{color:#1a1a1a;color:var(--color-text-primary,#1a1a1a);font-weight:500}.admin-status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.5rem;padding:.375rem .75rem;text-transform:capitalize}.admin-status-badge.admin-status-pending{background:#ffa94d26;border:1px solid #ffa94d4d;color:#ffa94d;color:var(--color-warning,#ffa94d)}.admin-status-badge.admin-status-active,.admin-status-badge.admin-status-approved,.admin-status-badge.admin-status-enabled{background:#51cf6626;border:1px solid #51cf664d;color:#51cf66;color:var(--color-success,#51cf66)}.admin-status-badge.admin-status-disabled,.admin-status-badge.admin-status-inactive,.admin-status-badge.admin-status-rejected{background:#ff6b6b26;border:1px solid #ff6b6b4d;color:#ff6b6b;color:var(--color-danger,#ff6b6b)}.admin-status-badge.admin-status-suspended{background:#ffa94d26;border:1px solid #ffa94d4d;color:#ffa94d;color:var(--color-warning,#ffa94d)}.admin-role-badge{background:#f8f9fa;background:var(--color-bg-tertiary,#f8f9fa);color:#666;color:var(--color-text-secondary,#666);display:inline-block;text-transform:capitalize}.admin-role-badge,.admin-superuser-badge{border-radius:12px;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.admin-superuser-badge{align-items:center;background:var(--portalr-accent-soft-2);color:var(--color-accent);display:inline-flex;gap:.375rem}.admin-status-text{color:#666;color:var(--color-text-secondary,#666);font-size:.875rem}.admin-module-name{color:#1a1a1a;color:var(--color-text-primary,#1a1a1a);font-weight:500;text-transform:capitalize}.admin-action-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.admin-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.admin-btn-primary{background:var(--color-accent);color:#fff}.admin-btn-primary:hover{background:color-mix(in srgb,var(--color-accent) 88%,#000 12%);box-shadow:0 2px 4px color-mix(in srgb,var(--color-accent) 30%,#0000);transform:translateY(-1px)}.admin-btn-success{background:#51cf66;background:var(--color-success,#51cf66);color:#fff}.admin-btn-success:hover{background:#41bf56;box-shadow:0 2px 4px #51cf664d;transform:translateY(-1px)}.admin-btn-danger{background:#ff6b6b;background:var(--color-danger,#ff6b6b);color:#fff}.admin-btn-danger:hover{background:#ff5b5b;box-shadow:0 2px 4px #ff6b6b4d;transform:translateY(-1px)}.admin-btn-warning{background:#ffa94d;background:var(--color-warning,#ffa94d);color:#fff}.admin-btn-warning:hover{background:#ff994d;box-shadow:0 2px 4px #ffa94d4d;transform:translateY(-1px)}.admin-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.admin-empty-state{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--portalr-radius-md);color:#666;color:var(--color-text-secondary,#666);padding:3rem 1.5rem;text-align:center}.admin-empty-state svg{color:var(--color-accent);margin-bottom:1rem;opacity:.9}.admin-empty-state p{font-size:1rem;margin:0}[data-theme=dark] .admin-sidebar-header{border-bottom-color:var(--color-border)}[data-theme=dark] .admin-sidebar-footer{border-top-color:var(--color-border)}[data-theme=dark] .admin-main-content{background:var(--color-bg-secondary)}[data-theme=dark] .admin-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--color-bg-primary);border-bottom-color:var(--color-border)}[data-theme=dark] .admin-page-title{color:var(--color-text-primary)}[data-theme=dark] .admin-user-email{color:var(--color-text-secondary)}[data-theme=dark] .btn-logout,[data-theme=dark] .btn-theme-toggle{background:#0000;border-color:var(--color-border);color:var(--color-text-secondary)}[data-theme=dark] .btn-logout:hover,[data-theme=dark] .btn-theme-toggle:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}[data-theme=dark] .admin-section-content{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .admin-section-header h2{color:var(--color-text-primary)}[data-theme=dark] .admin-section-description{color:var(--color-text-secondary)}[data-theme=dark] .admin-filter-btn{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-secondary)}[data-theme=dark] .admin-filter-btn:hover{background:color-mix(in srgb,var(--color-bg-tertiary) 88%,var(--color-text-primary) 12%);border-color:var(--color-border-secondary);color:var(--color-text-primary)}[data-theme=dark] .admin-filter-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}[data-theme=dark] .admin-stat-card{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .admin-stat-value{color:var(--color-text-primary)}[data-theme=dark] .admin-stat-detail-item{border-top-color:var(--color-border)}[data-theme=dark] .admin-data-table{background:var(--color-bg-primary)}[data-theme=dark] .admin-data-table th{background:var(--color-bg-tertiary)}[data-theme=dark] .admin-data-table td,[data-theme=dark] .admin-data-table th{border-bottom-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .admin-data-table tbody tr:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .admin-module-name,[data-theme=dark] .admin-table-cell-primary{color:var(--color-text-primary)}[data-theme=dark] .admin-role-badge{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}[data-theme=dark] .admin-empty-state{color:var(--color-text-secondary)}[data-theme=dark] .admin-empty-state svg{color:var(--color-text-tertiary)}[data-theme=dark] .loading-spinner{color:var(--color-text-secondary)}.admin-quick-actions{border-top:1px solid #ddd;border-top:1px solid var(--color-border,#ddd);margin-top:2rem;padding-top:2rem}.admin-section-subtitle{color:#333;color:var(--color-text-primary,#333);font-size:1.125rem;font-weight:600;margin-bottom:1rem}.admin-quick-actions-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.admin-quick-action-card{align-items:center;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md,14px);cursor:pointer;display:flex;flex-direction:column;gap:.75rem;justify-content:center;min-height:120px;padding:1.5rem;text-align:center;transition:all .2s}.admin-quick-action-card:hover{background:var(--color-bg-secondary);border-color:var(--color-accent);box-shadow:0 4px 16px color-mix(in srgb,var(--color-text-primary) 10%,#0000);box-shadow:var(--shadow-md,0 4px 16px color-mix(in srgb,var(--color-text-primary) 10%,#0000));transform:translateY(-2px)}.admin-quick-action-card svg{color:var(--color-accent)}.admin-quick-action-card span{color:#333;color:var(--color-text-primary,#333);font-size:.875rem;font-weight:500}.admin-quick-action-card .lucide-chevron-right{color:#666;color:var(--color-text-secondary,#666);margin-top:.25rem}[data-theme=dark] .admin-quick-action-card{background:#2a2a2a;background:var(--color-bg-secondary,#2a2a2a);border-color:#333;border-color:var(--color-border,#333)}[data-theme=dark] .admin-quick-action-card:hover{background:#3a3a3a;background:var(--color-bg-tertiary,#3a3a3a);border-color:var(--color-accent)}[data-theme=dark] .admin-section-subtitle{color:#fff;color:var(--color-text-primary,#fff)}.admin-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.admin-modal-content{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md,14px);box-shadow:0 8px 32px color-mix(in srgb,var(--color-text-primary) 14%,#0000);box-shadow:var(--shadow-lg,0 8px 32px color-mix(in srgb,var(--color-text-primary) 14%,#0000));display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.admin-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--color-border,#e0e0e0);display:flex;justify-content:space-between;padding:1.5rem}.admin-modal-header h3{color:#1a1a1a;color:var(--color-text-primary,#1a1a1a);font-size:1.25rem;font-weight:600;margin:0}.admin-modal-actions{display:flex;gap:.5rem}.admin-modal-body{flex:1 1;overflow-y:auto;padding:1.5rem}.admin-modal-footer{border-top:1px solid #e0e0e0;border-top:1px solid var(--color-border,#e0e0e0);display:flex;gap:.75rem;justify-content:flex-end;padding:1.5rem}.admin-form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.admin-form-group{display:flex;flex-direction:column;gap:.5rem}.admin-form-group.full-width{grid-column:1/-1}.admin-detail-section-title{color:#666;color:var(--color-text-secondary,#666);font-size:.95rem;font-weight:600;margin:1.5rem 0 .75rem;padding-bottom:.25rem}.admin-detail-section-title:first-child{margin-top:0}.admin-form-value-textblock{background:#f8f9fa;background:var(--color-bg-secondary,#f8f9fa);border-radius:6px;max-height:200px;overflow-y:auto;padding:.75rem;white-space:pre-wrap}.admin-form-group label{color:#666;color:var(--color-text-secondary,#666);font-size:.875rem;font-weight:500}.admin-form-input{background:#fff;background:var(--color-bg-primary,#fff);border:1px solid #ddd;border:1px solid var(--color-border,#ddd);border-radius:6px;color:#1a1a1a;color:var(--color-text-primary,#1a1a1a);font-size:.875rem;padding:.75rem;transition:border-color .2s}.admin-form-input:focus{border-color:var(--color-accent);outline:none}.admin-form-value{color:#1a1a1a;color:var(--color-text-primary,#1a1a1a);font-size:.875rem;padding:.5rem 0}.admin-form-subtext{color:#666;color:var(--color-text-secondary,#666);font-size:.75rem;margin-top:.25rem}.admin-btn-secondary{background:#f8f9fa;background:var(--color-bg-tertiary,#f8f9fa);border:1px solid #ddd;border:1px solid var(--color-border,#ddd);color:#333;color:var(--color-text-primary,#333)}.admin-btn-secondary:hover{background:color-mix(in srgb,var(--color-bg-tertiary) 88%,var(--color-text-primary) 12%);border-color:#ccc;border-color:var(--color-border-secondary,#ccc)}.admin-table-cell-secondary{color:#666;color:var(--color-text-secondary,#666);font-size:.75rem;margin-top:.25rem}[data-theme=dark] .admin-modal-content{background:var(--color-bg-primary);border-color:var(--color-border)}[data-theme=dark] .admin-modal-header{border-bottom-color:var(--color-border)}[data-theme=dark] .admin-modal-header h3{color:var(--color-text-primary)}[data-theme=dark] .admin-modal-footer{border-top-color:var(--color-border)}[data-theme=dark] .admin-form-input{background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .admin-form-value{color:var(--color-text-primary)}[data-theme=dark] .admin-form-subtext{color:var(--color-text-secondary)}[data-theme=dark] .admin-btn-secondary{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .admin-btn-secondary:hover{background:color-mix(in srgb,var(--color-bg-tertiary) 88%,var(--color-text-primary) 12%);border-color:var(--color-border-secondary)}[data-theme=dark] .admin-table-cell-secondary{color:var(--color-text-secondary)}@media (max-width:768px){.platform-admin-layout{flex-direction:column}.admin-sidebar{border-bottom:1px solid var(--color-border);border-right:none;max-height:200px;width:100%}.admin-sidebar-nav{display:flex;overflow-x:auto;overflow-y:hidden;padding:.5rem 0}.admin-nav-list{display:flex;gap:.5rem;padding:0 1rem}.admin-nav-item{flex-shrink:0;margin:0}.admin-nav-link{border-radius:6px;padding:.5rem 1rem;white-space:nowrap}.admin-nav-link.active{background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent) 16%,#0000),color-mix(in srgb,var(--color-sidebar-active) 95%,#0000));border-left:none}.admin-nav-chevron,.admin-sidebar-footer{display:none}.admin-content{padding:1rem}.admin-stats-grid{grid-template-columns:1fr}.admin-section-header{flex-direction:column;gap:1rem}.admin-filters{padding-bottom:.5rem;width:100%}.admin-filters,.admin-table-container{overflow-x:auto}}.mfa-enrollment-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.mfa-enrollment-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:700px;padding:3rem;width:100%}.mfa-enrollment-header{margin-bottom:2rem;text-align:center}.mfa-enrollment-header svg{color:var(--color-primary);margin-bottom:1rem}.mfa-enrollment-header h1{color:#1a1a1a;font-size:2rem;margin:0 0 .5rem}.mfa-enrollment-subtitle{color:#666;font-size:1rem;line-height:1.6;margin:0}.mfa-enrollment-error-banner{align-items:center;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;display:flex;gap:.75rem;margin-bottom:2rem;padding:1rem}.mfa-enrollment-step{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mfa-enrollment-step-header{margin-bottom:2rem;text-align:center}.mfa-enrollment-step-header h2{color:#1a1a1a;font-size:1.5rem;margin:0 0 .5rem}.mfa-enrollment-step-header h3{color:#1a1a1a;font-size:1.25rem;margin:0 0 .5rem}.mfa-enrollment-step-header p{color:#666;line-height:1.6;margin:0}.mfa-enrollment-form{margin-top:2rem}.mfa-qr-container{background:#f9f9f9;border-radius:8px;display:flex;justify-content:center;margin:2rem 0;padding:1.5rem}.mfa-qr-code{height:auto;max-width:300px;width:100%}.mfa-secret-container{margin:2rem 0}.mfa-secret-container label{color:#333;display:block;font-weight:500;margin-bottom:.75rem}.mfa-secret-display{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:8px;display:flex;gap:.75rem;padding:1rem}.mfa-secret-text{color:#333;flex:1 1;font-family:Courier New,monospace;font-size:1rem;word-break:break-all}.mfa-copy-button{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;color:#666;cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;gap:.5rem;padding:.5rem 1rem}.mfa-copy-button:hover{background:#f5f5f5;color:#333}.mfa-enrollment-instructions{background:#f0f7ff;border-left:4px solid var(--color-primary);border-radius:8px;margin:2rem 0;padding:1.5rem}.mfa-enrollment-instructions h4{color:#333;margin:0 0 1rem}.mfa-enrollment-instructions ol{color:#666;margin:0;padding-left:1.5rem}.mfa-enrollment-instructions li{line-height:1.6;margin-bottom:.5rem}.mfa-code-input{font-family:Courier New,monospace;font-size:1.75rem;letter-spacing:.75rem;padding:1rem;text-align:center}.mfa-recovery-success{align-items:center;color:#22c55e;display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.mfa-recovery-success h2{color:#22c55e;margin:0}.mfa-recovery-codes-container{grid-gap:1rem;background:#f9f9f9;border-radius:8px;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin:2rem 0;padding:1.5rem}.mfa-recovery-code-item{background:#fff;border:1px solid #ddd;border-radius:6px;padding:.75rem;text-align:center}.mfa-recovery-code-item code{color:#333;font-family:Courier New,monospace;font-size:1rem;word-break:break-all}.mfa-recovery-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.mfa-enrollment-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.mfa-enrollment-actions .btn-primary,.mfa-enrollment-actions .btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:.875rem 2rem;transition:all .2s}.mfa-enrollment-actions .btn-primary{background:var(--color-primary);color:#fff}.mfa-enrollment-actions .btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:0 4px 12px rgba(var(--color-accent-rgb),.3);transform:translateY(-1px)}.mfa-enrollment-actions .btn-primary:disabled{cursor:not-allowed;opacity:.6}.mfa-enrollment-actions .btn-secondary{background:#f5f5f5;border:1px solid #ddd;color:#333}.mfa-enrollment-actions .btn-secondary:hover{background:#e5e5e5}.mfa-recovery-actions .btn-secondary{align-items:center;background:#fff;border:1px solid #ddd;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:.95rem;gap:.5rem;padding:.75rem 1.5rem}.mfa-recovery-actions .btn-secondary:hover{background:#f5f5f5}.form-group{margin-bottom:1.5rem}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:.75rem}.form-group input{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:.875rem;transition:border-color .2s;width:100%}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-accent-rgb),.1);outline:none}.form-group small{color:#666;display:block;font-size:.875rem;margin-top:.5rem}.loading-spinner{color:#666}.loading-spinner,.mfa-enrollment-error{padding:2rem;text-align:center}.mfa-enrollment-error h2{color:#c33;margin:0 0 1rem}.mfa-enrollment-error p{color:#666;margin:0 0 1.5rem}@media (max-width:767px){.mfa-enrollment-page{padding:1rem}.mfa-enrollment-container{padding:2rem 1.5rem}.mfa-enrollment-header h1{font-size:1.5rem}.mfa-enrollment-step-header h2{font-size:1.25rem}.mfa-recovery-codes-container{grid-template-columns:1fr}.mfa-enrollment-actions{flex-direction:column}.mfa-enrollment-actions .btn-primary,.mfa-enrollment-actions .btn-secondary{min-height:44px;width:100%}.mfa-recovery-actions{flex-direction:column}.mfa-recovery-actions .btn-secondary{width:100%}.form-group input{font-size:16px;min-height:44px}}.App{text-align:center}body{font-feature-settings:"cv02","cv03","cv04","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg-secondary);color:var(--color-text-primary);margin:0;padding:0;transition:background .3s,color .3s}input,select,textarea{border:1px solid var(--color-border)}input,select,table,textarea{background:var(--color-bg-primary);color:var(--color-text-primary)}th{background:var(--color-bg-secondary)}td,th{border-color:var(--color-border)}[data-theme=dark] table,td,th{color:var(--color-text-primary)}[data-theme=dark] table{background:var(--color-bg-primary)}[data-theme=dark] th{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] td{border-color:var(--color-border);color:var(--color-text-secondary)}[data-theme=dark] tr:hover{background:var(--color-bg-tertiary)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--color-bg-primary);border-color:var(--color-border);color:var(--color-text-secondary)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--color-text-tertiary)}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{background:var(--color-bg-tertiary);border-color:var(--color-accent);color:var(--color-text-primary);outline:none}[data-theme=dark] button,[data-theme=dark] label{color:var(--color-text-primary)}[data-theme=dark] .btn-primary{background:var(--color-accent);color:#fff;color:var(--brand-white,#fff)}[data-theme=dark] .btn-secondary{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);color:var(--color-text-primary)}[data-theme=dark] .btn-danger{background:var(--color-danger);color:#fff;color:var(--brand-white,#fff)}[data-theme=dark] .card,[data-theme=dark] .modal-content,[data-theme=dark] .panel{background:var(--color-bg-primary);border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .alert{background:var(--color-bg-tertiary);border-color:var(--color-border)}[data-theme=dark] .alert-success{background:rgba(var(--color-success-rgb),.12);border-color:var(--color-success);color:var(--color-success)}[data-theme=dark] .alert-error{background:rgba(var(--color-danger-rgb),.12);border-color:var(--color-danger);color:var(--color-danger)}[data-theme=dark] .alert-warning{background:rgba(var(--color-warning-rgb),.12);border-color:var(--color-warning);color:var(--color-warning)}[data-theme=dark] ::-webkit-scrollbar{height:12px;width:12px}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--color-bg-secondary)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:6px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--color-text-tertiary) 35%,var(--color-bg-tertiary))}@media (max-width:767px){.modal-overlay{align-items:flex-end;padding:0}.modal-content{-webkit-overflow-scrolling:touch;border-radius:1rem 1rem 0 0;margin:0;max-height:90vh;max-width:100%;overflow-y:auto;padding:1.5rem;width:100%}.modal-content h2{font-size:1.25rem}.modal-actions{flex-direction:column-reverse;gap:.75rem}.modal-actions button{min-height:44px;width:100%}.modal-content form{max-height:calc(90vh - 150px);overflow-y:auto}}:root{--portalr-radius-sm:10px;--portalr-radius-md:14px;--portalr-radius-lg:18px;--portalr-border:color-mix(in srgb,var(--color-border) 94%,#0000);--portalr-border-2:color-mix(in srgb,var(--color-border) 78%,var(--color-text-primary) 8%);--portalr-shadow-sm:0 1px 0 #00000059,0 8px 24px #0000002e;--portalr-shadow-md:0 12px 32px #00000047;--portalr-accent-soft:color-mix(in srgb,var(--color-accent) 18%,#0000);--portalr-accent-soft-2:color-mix(in srgb,var(--color-accent) 10%,#0000)}.portalr-container{margin:0 auto;max-width:1200px}.portalr-section{margin:0 0 1.5rem;padding:0}.portalr-sectionHeader{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.portalr-sectionTitle{color:var(--color-text-primary);font-size:1.25rem;font-weight:650;letter-spacing:-.01em;margin:0}.portalr-sectionSubtitle{color:var(--color-text-secondary);font-size:.95rem;margin:.35rem 0 0}.portalr-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md);box-shadow:0 1px 0 #ffffff05;overflow:hidden}.portalr-cardInner{padding:1.25rem}.portalr-card:hover{border-color:var(--color-border-secondary)}.portalr-card--elevated{box-shadow:0 1px 0 #00000059,0 8px 24px #0000002e;box-shadow:var(--portalr-shadow-sm)}.portalr-divider{background:var(--color-border);height:1px;margin:1rem 0}.portalr-btn{align-items:center;background:#0000;border:1px solid var(--color-border-secondary);border-radius:12px;color:var(--color-text-primary);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.25rem;text-decoration:none;transition:transform .15s ease,background .2s ease,border-color .2s ease}.portalr-btn:hover:not(:disabled){border-color:var(--color-border);transform:translateY(-1px)}.portalr-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 20%,#0000);outline:none}.portalr-btn--primary{background:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 65%,#0000);color:#fff}.portalr-btn--primary:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent) 88%,#000 12%)}.portalr-btn--secondary{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-primary)}.portalr-btn--danger{background:var(--color-danger);border-color:color-mix(in srgb,var(--color-danger) 65%,#0000);color:#fff}.portalr-statGrid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:1100px){.portalr-statGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}.portalr-statCard{background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg-primary) 96%,#0000),var(--color-bg-primary));border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md);min-height:108px;padding:1.1rem 1.15rem;position:relative;transition:border-color .2s ease,transform .15s ease}.portalr-statCard:hover{border-color:var(--color-border-secondary);transform:translateY(-2px)}.portalr-statTop{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.portalr-statIcon{align-items:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-primary);display:inline-flex;height:40px;justify-content:center;width:40px}.portalr-statLabel{color:var(--color-text-secondary);font-size:.95rem;font-weight:600;margin:0}.portalr-statMetric{color:var(--color-text-primary);font-size:1.65rem;font-weight:720;letter-spacing:-.02em;margin-top:.55rem}.portalr-statSecondary{color:var(--color-text-secondary);font-size:.9rem;margin-top:.35rem}.portalr-statCard--accentGlow:before{background:radial-gradient(420px 120px at 10% 0,color-mix(in srgb,var(--color-accent) 18%,#0000) 0,#0000 55%);background:radial-gradient(420px 120px at 10% 0,var(--portalr-accent-soft) 0,#0000 55%);border-radius:15px;border-radius:calc(var(--portalr-radius-md) + 1px);content:"";inset:-1px;pointer-events:none;position:absolute}.portalr-statCard--accentBorder{border-color:color-mix(in srgb,var(--color-accent) 38%,var(--color-border))}.portalr-actionGrid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.portalr-actionTile{align-items:center;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md);cursor:pointer;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.1rem;transition:transform .15s ease,border-color .2s ease,background .2s ease}.portalr-actionTile:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);transform:translateY(-2px)}.portalr-actionLeft{align-items:center;display:flex;gap:.9rem}.portalr-actionIcon{align-items:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:14px;display:inline-flex;height:42px;justify-content:center;width:42px}.portalr-actionTitle{color:var(--color-text-primary);font-size:1rem;font-weight:650;margin:0}.portalr-actionDesc{color:var(--color-text-secondary);font-size:.9rem;margin:.25rem 0 0}.portalr-timeline{display:flex;flex-direction:column;gap:0}.portalr-timelineItem{grid-gap:.75rem;border-top:1px solid var(--color-border);display:grid;gap:.75rem;grid-template-columns:18px 1fr;padding:.95rem 0}.portalr-timelineItem:first-child{border-top:none;padding-top:0}.portalr-timelineDot{background:color-mix(in srgb,var(--color-accent) 10%,#0000);background:var(--portalr-accent-soft-2);border:1px solid var(--color-border-secondary);border-radius:999px;height:12px;margin-top:.35rem;width:12px}.portalr-timelineItem--accent .portalr-timelineDot{background:color-mix(in srgb,var(--color-accent) 18%,#0000);background:var(--portalr-accent-soft);border-color:color-mix(in srgb,var(--color-accent) 45%,var(--color-border))}.portalr-timelineMain{display:flex;flex-direction:column;gap:.25rem}.portalr-timelineTitle{align-items:center;color:var(--color-text-primary);display:flex;font-weight:650;gap:.6rem}.portalr-timelineMeta{color:var(--color-text-secondary);font-size:.9rem}.portalr-badge{align-items:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-secondary);display:inline-flex;font-size:.8rem;font-weight:650;gap:.4rem;padding:.25rem .65rem;text-transform:capitalize}.portalr-badge--accent{background:color-mix(in srgb,var(--color-accent) 16%,#0000);border-color:color-mix(in srgb,var(--color-accent) 40%,var(--color-border));color:var(--color-accent)}.portalr-badge--success{background:color-mix(in srgb,var(--color-success) 16%,#0000);border-color:color-mix(in srgb,var(--color-success) 40%,var(--color-border));color:var(--color-success)}.portalr-badge--warning{background:color-mix(in srgb,var(--color-warning) 16%,#0000);border-color:color-mix(in srgb,var(--color-warning) 40%,var(--color-border));color:var(--color-warning)}.portalr-badge--danger{background:color-mix(in srgb,var(--color-danger) 16%,#0000);border-color:color-mix(in srgb,var(--color-danger) 40%,var(--color-border));color:var(--color-danger)}.portalr-emptyState{color:var(--color-text-secondary);padding:3rem 1.5rem;text-align:center}.portalr-emptyStateIcon{align-items:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:18px;display:inline-flex;height:56px;justify-content:center;margin-bottom:1rem;opacity:.95;width:56px}.portalr-emptyStateTitle{color:var(--color-text-primary);font-size:1.1rem;font-weight:700;margin:.25rem 0 .4rem}.portalr-emptyStateDesc{color:var(--color-text-secondary);font-size:.95rem;margin:0 auto;max-width:460px}.portalr-input,.portalr-select,.portalr-textarea{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-primary);font-size:.95rem;padding:.75rem .9rem;transition:box-shadow .2s ease,border-color .2s ease;width:100%}.portalr-input::placeholder,.portalr-textarea::placeholder{color:var(--color-text-tertiary)}.portalr-input:focus,.portalr-select:focus,.portalr-textarea:focus{border-color:color-mix(in srgb,var(--color-accent) 55%,var(--color-border));box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,#0000);outline:none}.appointments-page,.branding-page,.clients-page,.dashboard-page,.documents-page,.invoices-page,.messages-page,.settings-page,.tasks-page,.team-management-page{margin:0 auto;max-width:1220px;padding:.25rem 0 0}.appointments-header,.branding-header,.clients-header,.documents-header,.invoices-header,.messages-header,.settings-header,.tasks-header,.team-header{margin-bottom:1.1rem}.appointments-header h1,.branding-header h1,.clients-title h1,.documents-title h1,.invoices-title h1,.messages-title h1,.settings-header h1,.tasks-header h1,.team-header h1{color:var(--color-text-primary);font-size:1.65rem;font-weight:760;letter-spacing:-.02em;margin:0}.btn,.btn-danger,.btn-primary,.btn-secondary,.btn-success{border-radius:12px!important}.btn-primary,.btn.btn-primary{background:var(--color-accent)!important;border-color:color-mix(in srgb,var(--color-accent) 65%,#0000)!important;box-shadow:0 10px 20px color-mix(in srgb,var(--color-accent) 18%,#0000);color:#fff!important}.btn-secondary,.btn.btn-secondary{background:var(--color-bg-tertiary)!important;border:1px solid var(--color-border)!important;color:var(--color-text-primary)!important}.btn-icon{border-radius:10px!important}.appointments-calendar,.chat-main,.chat-sidebar,.clients-list,.documents-list,.invoices-list,.messages-content,.settings-content,.tasks-list,.team-list{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md);box-shadow:0 1px 0 #00000059,0 8px 24px #0000002e;box-shadow:var(--portalr-shadow-sm)}.appointments-list,.clients-list,.documents-list,.invoices-list,.messages-list,.tasks-list,.team-list{padding:.9rem}.clients-table th,.team-table th{background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.clients-table td,.team-table td{color:var(--color-text-secondary)}.documents-filters,.invoices-filters,.tasks-filters,.team-filters{background:var(--color-bg-primary)!important;border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md);margin-bottom:1rem!important;padding:.9rem!important}.clients-search-input,.filter-group input,.filter-group select{background:var(--color-bg-primary)!important;border:1px solid var(--color-border)!important;border-radius:10px!important;color:var(--color-text-primary)!important}.appointment-status,.invoice-status,.message-status,.module-status,.status-badge,.task-priority,.task-status{border-radius:999px!important;font-size:.76rem!important;font-weight:650!important;padding:.2rem .62rem!important}.appointment-card,.document-row,.invoice-card,.message-item,.payment-method-card,.task-card{background:var(--color-bg-primary)!important;border:1px solid var(--color-border)!important;border-radius:12px!important;transition:transform .16s ease,border-color .2s ease,box-shadow .2s ease}.appointment-card:hover,.document-row:hover,.invoice-card:hover,.message-item:hover,.payment-method-card:hover,.task-card:hover{border-color:var(--color-border-secondary)!important;box-shadow:0 12px 24px #00000038;transform:translateY(-1px)}.messages-page{height:auto!important;min-height:calc(100vh - 160px)}.messages-tabs{border-bottom:1px solid var(--color-border)!important;margin-bottom:1rem}.tab-button.active{background:color-mix(in srgb,var(--color-accent) 14%,#0000);border-radius:10px 10px 0 0}.current-plan-card,.form-section,.module-card,.plan-card,.pricing-section,.quick-link-card{background:var(--color-bg-primary)!important;border:1px solid var(--color-border)!important;border-radius:14px!important;border-radius:var(--portalr-radius-md)!important}.settings-content{padding:1.1rem!important}.portalr-pageHeader{margin-bottom:1rem}.portalr-pageHeaderMain{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.portalr-pageHeaderTitleWrap{align-items:center;display:flex;gap:.75rem}.portalr-pageHeaderIcon{align-items:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:11px;color:var(--color-text-secondary);display:inline-flex;height:34px;justify-content:center;width:34px}.portalr-pageHeaderTitle{color:var(--color-text-primary);font-size:1.65rem;font-weight:760;letter-spacing:-.02em;margin:0}.portalr-pageHeaderSubtitle{color:var(--color-text-secondary);font-size:.93rem;margin:.32rem 0 0}.portalr-pageHeaderActions{align-items:center;display:flex;gap:.65rem}.portalr-pageHeaderControls{margin-top:.85rem}.portalr-dataTable{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:14px;border-radius:var(--portalr-radius-md);box-shadow:0 1px 0 #00000059,0 8px 24px #0000002e;box-shadow:var(--portalr-shadow-sm);overflow:hidden;overflow-x:auto}.portalr-dataTableEmpty{padding:.75rem}@media (max-width:900px){.portalr-pageHeaderMain{align-items:flex-start;flex-direction:column}.portalr-pageHeaderActions{flex-wrap:wrap;width:100%}.portalr-pageHeaderActions>*{min-height:42px}.portalr-pageHeaderActions .btn,.portalr-pageHeaderActions .btn-primary,.portalr-pageHeaderActions .btn-secondary{flex:1 1;justify-content:center}}@media (max-width:767px){.portalr-pageHeaderTitle{font-size:1.42rem}.portalr-pageHeaderControls{width:100%}.portalr-pageHeaderControls .clients-search{margin:0;max-width:100%;width:100%}.portalr-dataTable{border-radius:12px}.chat-content,.messages-content{min-height:420px}}
/*# sourceMappingURL=main.e58e0921.css.map*/