:root{--color-primary:#2563eb;--color-secondary:#64748b;--color-accent:#06b6d4;--color-sidebar-bg:#fff;--color-sidebar-text:#475569;--color-sidebar-active-bg:#eff4ff;--color-sidebar-active-text:#2563eb;--color-topbar-bg:#fff;--color-page-bg:#f6f7f9;--color-card-bg:#fff;--color-border:#e2e8f0;--color-button-text:#fff;--color-text:#0f172a;--color-muted-text:#94a3b8;--color-input-bg:#fff;--color-success:#16a34a;--color-warning:#d97706;--color-danger:#dc2626;--surface-app:var(--color-page-bg);--surface-card:var(--color-card-bg);--surface-sidebar:var(--color-sidebar-bg);--surface-sidebar-hover:color-mix(in srgb, var(--color-sidebar-text) 8%, transparent);--surface-sidebar-active:var(--color-sidebar-active-bg);--surface-popover:var(--color-card-bg);--surface-overlay:#0f172a80;--text-primary:var(--color-text);--text-secondary:var(--color-sidebar-text);--text-muted:var(--color-muted-text);--text-accent:var(--color-sidebar-active-text);--text-on-accent:var(--color-button-text);--border-default:var(--color-border);--border-strong:color-mix(in srgb, var(--color-border) 60%, #000 0%);--border-focus:color-mix(in srgb, var(--color-primary) 35%, transparent);--accent-500:color-mix(in srgb, var(--color-primary) 85%, white 15%);--accent-600:var(--color-primary);--accent-700:color-mix(in srgb, var(--color-primary) 80%, black 20%);--accent-soft:color-mix(in srgb, var(--color-primary) 8%, transparent);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-pill:999px;--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 4px 6px -1px #0f172a12, 0 2px 4px -2px #0f172a0a;--shadow-popover:0 12px 24px -6px #0f172a2e, 0 4px 8px -2px #0f172a14;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--sidebar-w:240px;--sidebar-w-rail:64px;--header-h:56px;--ease:cubic-bezier(.4, 0, .2, 1);--dur-fast:.12s;--dur-base:.18s}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif;font-size:var(--text-md);color:var(--text-primary);background:var(--surface-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4{margin:0;font-weight:600}button{font-family:inherit}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:var(--radius-sm)}grammarly-extension,grammarly-desktop-integration,[class^=grammarly-],[id^=grammarly-],.lpFormFiller,.lpFormFiller-floating,[class*=\ lpFormFiller],[data-lastpass-icon-root],[class*=dashlane],[class*=bitwarden-],[class*=onepassword-],[data-honey-extension],[data-extension-id]{display:none!important}.app-shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:grid-template-columns var(--dur-base) var(--ease);display:grid}.app-shell.is-rail{grid-template-columns:var(--sidebar-w-rail) 1fr}.app-main{flex-direction:column;min-width:0;display:flex}.app-content{padding:var(--space-6) var(--space-8);background:var(--surface-app);flex:1}@media (max-width:768px){.app-shell,.app-shell.is-rail{grid-template-columns:var(--sidebar-w-rail) 1fr}.app-content{padding:var(--space-4) var(--space-4)}}.app-sidebar{background:var(--surface-sidebar);border-right:1px solid var(--border-default);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.app-sidebar-brand{height:var(--header-h);align-items:center;gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid var(--border-default);display:flex}.app-brand-mark{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--accent-600), #6366f1);color:#fff;width:28px;height:28px;font-weight:700;font-size:var(--text-base);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.app-brand-mark.has-logo{border:1px solid var(--border-default);background:0 0}.app-brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.app-brand-text{font-size:var(--text-md);color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:600;overflow:hidden}.app-sidebar-toggle{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--surface-card);width:22px;height:22px;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);justify-content:center;align-items:center;display:inline-flex}.app-sidebar-toggle:hover{background:var(--surface-sidebar-hover);color:var(--text-primary)}.app-sidebar.is-collapsed .app-sidebar-brand{justify-content:center;padding:0;position:relative}.app-sidebar.is-collapsed .app-sidebar-toggle{background:var(--surface-card);box-shadow:var(--shadow-sm);position:absolute;top:17px;right:-10px}.app-sidebar-nav{padding:var(--space-3) var(--space-2);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.app-nav-section+.app-nav-section{margin-top:var(--space-1)}.app-nav-section-label{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:var(--space-2) var(--space-3) var(--space-1);font-weight:600}.app-nav-section-divider{background:var(--border-default);height:1px;margin:var(--space-2) var(--space-3)}.app-sidebar.is-collapsed .app-nav-section-divider{margin:var(--space-2) var(--space-2)}.app-nav-link{align-items:center;gap:var(--space-3);padding:7px var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-base);transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);margin:1px 0;font-weight:500;line-height:20px;display:flex;position:relative}.app-nav-link:hover{background:var(--surface-sidebar-hover);color:var(--text-primary)}.app-nav-link.is-active{background:var(--surface-sidebar-active);color:var(--text-accent)}.app-nav-link.is-active:before{content:"";background:var(--accent-600);border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:3px;position:absolute;top:6px;bottom:6px;left:-2px}.app-nav-link-icon{width:18px;height:18px;color:var(--text-muted);transition:color var(--dur-fast) var(--ease);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.app-nav-link:hover .app-nav-link-icon{color:var(--text-secondary)}.app-nav-link.is-active .app-nav-link-icon{color:var(--text-accent)}.app-nav-link-label{white-space:nowrap;flex:1}.app-sidebar.is-collapsed .app-nav-link{justify-content:center;padding:8px}.app-sidebar.is-collapsed .app-nav-link.is-active:before{top:8px;bottom:8px;left:-2px}.app-sidebar-footer{padding:var(--space-3);border-top:1px solid var(--border-default)}.user-menu{position:relative}.user-menu-trigger{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;display:flex}.user-menu-trigger:hover,.user-menu-trigger.is-open{background:var(--surface-sidebar-hover);border-color:var(--border-default)}.user-avatar{border-radius:var(--radius-pill);color:#fff;width:32px;height:32px;font-size:var(--text-sm);letter-spacing:.02em;background:linear-gradient(135deg,#6366f1,#8b5cf6);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.user-avatar-lg{width:40px;height:40px;font-size:var(--text-base)}.user-meta{flex-direction:column;flex:1;min-width:0;display:flex}.user-meta-name{font-size:var(--text-base);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.user-meta-email{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.user-menu-caret{color:var(--text-muted)}.app-sidebar.is-collapsed .user-menu-trigger{padding:var(--space-1);justify-content:center}.user-menu-popover{background:var(--surface-popover);border:1px solid var(--border-default);border-radius:var(--radius-lg);min-width:240px;box-shadow:var(--shadow-popover);padding:var(--space-3);z-index:30;position:absolute;bottom:calc(100% + 6px);left:0;right:0}.app-sidebar.is-collapsed .user-menu-popover{margin-left:var(--space-2);min-width:260px;bottom:0;left:100%;right:auto}.user-menu-popover-header{align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-default);margin-bottom:var(--space-2);display:flex}.user-menu-popover-list{flex-direction:column;gap:2px;display:flex}.user-menu-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);text-align:left;border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-base);cursor:pointer;transition:background var(--dur-fast) var(--ease);background:0 0;border:none;display:flex}.user-menu-item:hover:not(:disabled){background:var(--surface-sidebar-hover)}.user-menu-item:disabled{color:var(--text-muted);cursor:not-allowed}.user-menu-item-aside{font-size:var(--text-xs);color:var(--text-muted);margin-left:auto}.app-header{height:var(--header-h);background:var(--color-topbar-bg);border-bottom:1px solid var(--border-default);padding:0 var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.app-header-left,.app-header-right{align-items:center;gap:var(--space-3);display:flex}.app-header-icon-button{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.app-header-icon-button:hover:not(:disabled){background:var(--surface-sidebar-hover);border-color:var(--border-default);color:var(--text-primary)}.app-header-icon-button:disabled{color:var(--text-muted);cursor:not-allowed}.assoc-switcher{align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-primary);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);font-family:inherit;display:inline-flex}.assoc-switcher:hover:not(:disabled){background:var(--surface-sidebar-hover);border-color:var(--border-strong)}.assoc-switcher:disabled{cursor:not-allowed}.assoc-switcher-mark{border-radius:var(--radius-sm);color:#fff;width:24px;height:24px;font-weight:700;font-size:var(--text-sm);background:linear-gradient(135deg,#14b8a6,#0ea5e9);justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.assoc-switcher-mark.has-logo{border:1px solid var(--border-default);background:0 0}.assoc-switcher-mark img{object-fit:contain;width:100%;height:100%;display:block}.assoc-switcher-wrap{position:relative}.assoc-switcher-popover{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:240px;padding:var(--space-1) 0;z-index:60;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #0f172a2e}.assoc-switcher-heading{padding:var(--space-1) var(--space-3);font-size:var(--text-xs,11px);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.assoc-switcher-item{justify-content:space-between;align-items:center;gap:var(--space-3);text-align:left;width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;background:0 0;border:0;font-family:inherit;text-decoration:none;display:flex}.assoc-switcher-item:hover:not(:disabled){background:var(--surface-sidebar-hover)}.assoc-switcher-item.is-active{font-weight:600}.assoc-switcher-check{color:var(--color-primary)}.assoc-switcher-create{border-top:1px solid var(--border-default);color:var(--color-primary);font-weight:500}.logo-uploader-row{gap:var(--space-4);align-items:flex-start;display:flex}.logo-uploader-preview{border-radius:var(--radius-lg);border:1px solid var(--border-default);background:color-mix(in srgb, var(--surface-card) 96%, var(--text-primary) 4%);flex-shrink:0;justify-content:center;align-items:center;width:96px;height:96px;display:flex;overflow:hidden}.logo-uploader-preview img{object-fit:contain;max-width:100%;max-height:100%;display:block}.logo-uploader-placeholder{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.logo-uploader-controls{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.logo-uploader-actions{align-items:center;gap:var(--space-3);display:flex}.builder-lines-wrap{border:1px solid var(--border-default);border-radius:var(--radius-lg);margin-top:var(--space-3);overflow:hidden}.builder-lines{border-collapse:collapse;width:100%;font-size:var(--text-base);background:var(--surface-card)}.builder-lines thead{background:color-mix(in srgb, var(--surface-card) 92%, var(--text-primary) 8%);border-bottom:1px solid var(--border-default)}.builder-lines th{text-align:left;color:var(--text-muted);font-weight:600;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;padding:10px 12px}.builder-lines td{border-top:1px solid var(--border-default);vertical-align:top;color:var(--text-primary);padding:8px 12px}.builder-lines .form-input{margin:0}.builder-line-total{white-space:nowrap;font-weight:600}.builder-line-chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-primary) 8%, transparent);border:1px solid color-mix(in srgb, var(--color-primary) 20%, transparent);max-width:100%;padding:6px 10px;display:inline-flex}.builder-line-chip-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.builder-line-add{align-items:center;gap:var(--space-3);display:inline-flex}.builder-line-remove{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.builder-line-remove:hover{background:color-mix(in srgb, var(--color-danger) 12%, transparent);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent);color:var(--color-danger)}.builder-line-remove:focus-visible{border-color:var(--color-danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-danger) 25%, transparent);outline:none}.recipient-picker{position:relative}.recipient-popover{background:var(--surface-popover);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-popover);z-index:40;padding:var(--space-2);max-height:320px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.recipient-selected{justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-primary) 6%, var(--surface-card));padding:10px 12px;display:flex}.recipient-selected-line{align-items:center;gap:var(--space-2);color:var(--text-primary);font-size:var(--text-base);flex-wrap:wrap;display:inline-flex}.recipient-selected-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:inline-flex}.mismatch-warning{margin-top:var(--space-3);border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--color-warning) 35%, transparent);background:color-mix(in srgb, var(--color-warning) 12%, var(--surface-card));color:var(--text-primary);font-size:var(--text-base);padding:10px 12px;line-height:1.45}.detail-back{margin-bottom:var(--space-3)}.detail-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);margin-bottom:var(--space-4);display:flex}.detail-header-main{flex:1;min-width:0}.detail-header-name{font-size:var(--text-xl);color:var(--text-primary);margin:0 0 var(--space-2);font-weight:700}.detail-header-meta{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);font-size:var(--text-base);color:var(--text-muted);flex-wrap:wrap;display:flex}.detail-header-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:0;display:grid}.detail-header-grid>div{flex-direction:column;gap:2px;display:flex}.detail-header-grid dt{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:600}.detail-header-grid dd{font-size:var(--text-base);color:var(--text-primary);word-break:break-word;margin:0;font-weight:500}.detail-header-side{flex-shrink:0}.detail-tabs{border-bottom:1px solid var(--border-default);margin-bottom:var(--space-4);gap:2px;display:flex;overflow-x:auto}.detail-tab{font-size:var(--text-base);color:var(--text-muted);white-space:nowrap;transition:color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:500}.detail-tab:hover{color:var(--text-primary)}.detail-tab.is-active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.actions-menu{position:relative}.actions-menu-popover{background:var(--surface-popover);border:1px solid var(--border-default);border-radius:var(--radius-lg);min-width:240px;box-shadow:var(--shadow-popover);padding:var(--space-2);z-index:50;position:absolute;top:calc(100% + 4px);right:0}.actions-menu-form{margin:0}.actions-menu-item{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-base);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease);background:0 0;border:none;font-family:inherit;display:flex}.actions-menu-item:hover:not(:disabled){background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.actions-menu-item:disabled{color:var(--text-muted);cursor:not-allowed}.actions-menu-item-aside{font-size:var(--text-xs);color:var(--text-muted)}.actions-menu-item-danger{color:var(--color-danger)}.actions-menu-item-danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.overview-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.overview-activity{grid-column:1/-1}.overview-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.overview-list-row{justify-content:space-between;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border-default);font-size:var(--text-base);color:var(--text-primary);padding:6px 0;display:flex}.overview-list-row:last-child{border-bottom:none}.overview-list-meta{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.overview-headline{font-size:var(--text-xl);color:var(--text-primary);margin-bottom:6px;font-weight:700}.overview-headline-warning{color:var(--color-warning)}.seat-bar{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--text-muted) 25%, transparent);height:8px;margin-top:4px;overflow:hidden}.seat-bar-fill{border-radius:var(--radius-pill);height:100%;transition:width var(--dur-base) var(--ease)}.seat-bar-ok .seat-bar-fill{background:var(--color-success)}.seat-bar-warn .seat-bar-fill{background:var(--color-warning)}.seat-bar-exceeded .seat-bar-fill{background:var(--color-danger)}.builder-totals{align-items:flex-end;gap:var(--space-2);flex-direction:column;display:flex}.builder-totals-rows{flex-direction:column;gap:6px;width:320px;max-width:100%;display:flex}.builder-totals-row{font-size:var(--text-base);color:var(--text-primary);justify-content:space-between;align-items:center;display:flex}.builder-totals-total{border-top:1px solid var(--border-default);font-size:var(--text-md);margin-top:2px;padding-top:8px;font-weight:700}.builder-tax-input{text-align:right;width:120px}.builder-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);display:flex}.catalog-picker{position:relative}.catalog-popover{background:var(--surface-popover);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:380px;max-width:90vw;box-shadow:var(--shadow-popover);z-index:40;padding:var(--space-2);gap:var(--space-2);flex-direction:column;display:flex;position:absolute;top:calc(100% + 4px);right:0}.catalog-list{flex-direction:column;gap:2px;max-height:320px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.catalog-empty{padding:var(--space-3);color:var(--text-muted);text-align:center;font-size:var(--text-base)}.catalog-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;color:var(--text-primary);display:flex}.catalog-row.is-active,.catalog-row:hover{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.catalog-row-main{flex:1;min-width:0}.catalog-row-name{font-size:var(--text-base);font-weight:600}.catalog-row-desc{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.catalog-row-side{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.catalog-row-price{font-size:var(--text-base);color:var(--text-primary);font-weight:600}.modal-backdrop{background:var(--surface-overlay);z-index:100;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-popover);padding:var(--space-5);gap:var(--space-3);flex-direction:column;width:100%;max-width:440px;display:flex}.modal-title{font-size:var(--text-lg);color:var(--text-primary);font-weight:700}.modal-body{color:var(--text-primary);font-size:var(--text-base);margin:0;line-height:1.5}.modal-recipient{border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-3);background:color-mix(in srgb, var(--surface-card) 96%, var(--text-primary) 4%)}.modal-recipient-name{color:var(--text-primary);font-weight:600}.modal-recipient-email{font-size:var(--text-base);color:var(--text-muted);margin-top:2px}.modal-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);display:flex}.assoc-switcher-text{flex-direction:column;align-items:flex-start;line-height:1.15;display:flex}.assoc-switcher-name{font-size:var(--text-base);font-weight:600}.assoc-switcher-sub{font-size:var(--text-xs);color:var(--text-muted)}.assoc-switcher-caret{color:var(--text-muted)}.page-header{margin-bottom:20px}.page-title{color:var(--text-primary);font-size:22px;font-weight:600}.page-subtitle{color:var(--text-muted);margin:4px 0 0;font-size:13px}.page-placeholder{background:var(--surface-card);border:1px dashed var(--border-default);color:var(--text-muted);text-align:center;border-radius:8px;padding:40px;font-size:13px}.stat-card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.stat-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:8px;flex-direction:column;gap:6px;padding:18px 20px;display:flex}.stat-card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.stat-card-value{color:var(--text-primary);font-size:28px;font-weight:600;line-height:1.1}.dashboard-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.daterange{display:inline-flex;position:relative}.daterange-trigger{background:var(--surface-card);border:1px solid var(--border-default);color:var(--text-primary);cursor:pointer;transition:border-color var(--dur-base) var(--ease), background-color var(--dur-base) var(--ease);border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:500;display:inline-flex}.daterange-trigger:hover{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--border-default))}.daterange-trigger[aria-expanded=true]{border-color:var(--color-primary)}.daterange-trigger-label{font-variant-numeric:tabular-nums}.daterange-popover{z-index:100;background:var(--surface-popover,var(--surface-card));border:1px solid var(--border-default);border-radius:10px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 6px 16px #0f172a14,0 12px 32px #0f172a1f}.daterange-presets{background:color-mix(in srgb, var(--text-primary) 4%, var(--surface-card));border-right:1px solid var(--border-default);flex-direction:column;gap:2px;min-width:160px;padding:8px;display:flex}.daterange-preset{text-align:left;color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 12px;font-size:13px}.daterange-preset:hover{background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.daterange-preset.is-active{background:var(--color-primary);color:#fff}.daterange-calendar{flex-direction:column;gap:8px;padding:12px 14px 10px;display:flex}.daterange-footer{border-top:1px solid var(--border-default);align-items:center;gap:16px;padding-top:8px;display:flex}.daterange-compare{color:var(--text-primary);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.daterange-summary{color:var(--text-muted);font-variant-numeric:tabular-nums;flex:1;font-size:12px}.daterange-actions{gap:6px;display:inline-flex}.daterange-actions .button{padding:6px 12px;font-size:13px}.daterange-calendar .rdp-root{--rdp-accent-color:var(--color-primary);--rdp-accent-background-color:color-mix(in srgb, var(--color-primary) 16%, transparent);--rdp-day-height:36px;--rdp-day-width:36px;--rdp-day_button-height:36px;--rdp-day_button-width:36px;--rdp-day_button-border-radius:6px;--rdp-selected-border:0;--rdp-range_middle-background-color:color-mix(in srgb, var(--color-primary) 12%, transparent);--rdp-range_middle-color:var(--text-primary);--rdp-today-color:var(--color-primary);color:var(--text-primary);font-size:13px}.daterange-calendar .rdp-caption_label,.daterange-calendar .rdp-weekday{color:var(--text-muted);font-weight:500}.daterange-calendar .rdp-day_button{color:var(--text-primary)}.daterange-calendar .rdp-day_button:hover:not([disabled]){background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.daterange-calendar .rdp-day_outside .rdp-day_button{color:var(--text-muted);opacity:.6}@media (max-width:720px){.daterange-popover{flex-direction:column;max-width:92vw;left:0;right:auto}.daterange-presets{border-right:0;border-bottom:1px solid var(--border-default);flex-direction:row;min-width:0;overflow-x:auto}.daterange-preset{white-space:nowrap}}.kpi-band{margin-bottom:24px}.kpi-band-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:10px;font-size:11px;font-weight:600}.kpi-band-financial{background:color-mix(in srgb, var(--color-primary) 4%, var(--surface-card));border:1px solid color-mix(in srgb, var(--color-primary) 20%, var(--border-default));border-radius:12px;padding:18px}.kpi-band-financial .kpi-band-label{color:var(--color-primary)}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.kpi-card{background:var(--surface-card);border:1px solid var(--border-default);color:inherit;transition:border-color var(--dur-base) var(--ease), transform var(--dur-base) var(--ease), box-shadow var(--dur-base) var(--ease);border-radius:10px;flex-direction:column;gap:6px;min-height:110px;padding:16px 18px 18px;text-decoration:none;display:flex;position:relative}.kpi-card:hover{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--border-default));box-shadow:0 4px 12px #0f172a0f}.kpi-card-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:12px;font-weight:600}.kpi-card-value{letter-spacing:-.01em;color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:26px;font-weight:650;line-height:1.1}.kpi-card-secondary{color:var(--text-secondary);font-size:12px}.kpi-card-hint{color:var(--text-muted);font-size:12px;font-style:italic}.kpi-card-warn{border-color:color-mix(in srgb, var(--color-warning,#f59e0b) 40%, var(--border-default))}.kpi-card-danger{border-color:color-mix(in srgb, var(--color-danger) 50%, var(--border-default))}.kpi-delta{align-items:center;gap:6px;margin-top:auto;padding-top:4px;font-size:12px;font-weight:500;display:inline-flex}.kpi-delta-arrow{font-size:10px;line-height:1}.kpi-delta-value{font-variant-numeric:tabular-nums}.kpi-delta-label{color:var(--text-muted);font-weight:400}.kpi-delta-up{color:var(--color-success,#16a34a)}.kpi-delta-down{color:var(--color-danger)}.kpi-delta-flat{color:var(--text-muted)}.filter-chips{background:color-mix(in srgb, var(--color-primary) 6%, var(--surface-card));border:1px solid color-mix(in srgb, var(--color-primary) 25%, var(--border-default));border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;font-size:13px;display:flex}.filter-chips-label{color:var(--text-muted);font-weight:500}.filter-chips-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.filter-chip{background:var(--surface-card);border:1px solid var(--border-default);color:var(--text-primary);border-radius:999px;align-items:center;gap:6px;padding:3px 4px 3px 10px;font-size:12px;display:inline-flex}.filter-chip-text{font-variant-numeric:tabular-nums}.filter-chip-remove{width:18px;height:18px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:14px;line-height:1;text-decoration:none;display:inline-flex}.filter-chip-remove:hover{background:color-mix(in srgb, var(--color-danger) 14%, transparent);color:var(--color-danger)}.filter-chips-clear{color:var(--color-primary);margin-left:auto;font-size:12px;text-decoration:none}.filter-chips-clear:hover{text-decoration:underline}.dashboard-charts{margin-bottom:24px}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:14px;display:grid}.chart-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:10px;flex-direction:column;gap:12px;padding:16px 18px 12px;display:flex}.chart-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.chart-card-title{color:var(--text-primary);margin:0;font-size:13px;font-weight:600}.chart-card-subtitle{color:var(--text-muted);margin-top:2px;font-size:12px}.chart-card-link{color:var(--color-primary);white-space:nowrap;font-size:12px;text-decoration:none}.chart-card-link:hover{text-decoration:underline}.chart-card-body{min-height:260px}.chart-empty{text-align:center;height:260px;color:var(--text-muted);justify-content:center;align-items:center;padding:0 20px;font-size:13px;display:flex}.dashboard-actions{margin-top:8px}.dashboard-actions-title{color:var(--text-primary);margin:0 0 12px;font-size:14px;font-weight:600}.action-panel{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.action-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:10px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.action-card-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.action-card-title{color:var(--text-primary);margin:0;font-size:13px;font-weight:600}.action-card-link{color:var(--color-primary);font-size:12px;text-decoration:none}.action-card-link:hover{text-decoration:underline}.action-card-empty{color:var(--text-muted);padding:12px 0;font-size:13px}.aging-total{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:baseline;padding-bottom:8px;display:flex}.aging-total-label{color:var(--text-muted);font-size:12px}.aging-total-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:18px;font-weight:650}.aging-list,.expiring-list,.activity-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.aging-row{grid-template-columns:1fr auto auto;align-items:center;gap:12px;font-size:13px;display:grid}.aging-row-bucket{color:var(--text-secondary)}.aging-row-count{color:var(--text-muted);font-size:12px}.aging-row-total{color:var(--text-primary);font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.aging-row-60plus .aging-row-total,.aging-row-60plus .aging-row-bucket{color:var(--color-danger)}.expiring-row{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:baseline;gap:12px;padding:4px 0;display:flex}.expiring-row:last-child{border-bottom:none}.expiring-row-subject{color:var(--text-primary);font-size:13px;font-weight:500}.expiring-row-level{color:var(--text-muted);margin-top:1px;font-size:12px}.expiring-row-date{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.activity-row{justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;display:flex}.activity-row-summary{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.activity-row-time{color:var(--text-muted);white-space:nowrap;font-size:12px}@media (max-width:720px){.dashboard-header{flex-direction:column}.kpi-band-financial{padding:14px}}.page-header-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:8px 14px;font-size:13px;font-weight:500;line-height:1;text-decoration:none;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.button:disabled{opacity:.6;cursor:not-allowed}.button-primary{background:var(--color-primary);color:var(--color-button-text);border-color:var(--color-primary)}.button-primary:hover:not(:disabled){background:var(--accent-700);border-color:var(--accent-700)}.button-secondary{background:var(--surface-card);color:var(--text-primary);border-color:var(--border-default)}.button-secondary:hover:not(:disabled){background:var(--surface-sidebar-hover);border-color:var(--border-strong)}.toolbar{background:var(--surface-card);border:1px solid var(--border-default);border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:10px 12px;display:flex}.toolbar-input{border:1px solid var(--border-default);background:var(--color-input-bg);color:var(--text-primary);border-radius:6px;min-width:220px;padding:7px 10px;font-size:13px}.toolbar-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--border-focus);outline:none}.toolbar-select{min-width:160px}.toolbar-clear{color:var(--text-muted);margin-left:4px;font-size:12px;text-decoration:underline}.toolbar-clear:hover{color:var(--text-primary)}.data-table-wrap{background:var(--surface-card);border:1px solid var(--border-default);border-radius:8px;overflow:hidden}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table thead{background:color-mix(in srgb, var(--surface-card) 92%, var(--text-primary) 8%);border-bottom:1px solid var(--border-default)}.data-table th{text-align:left;color:var(--text-muted);letter-spacing:.4px;text-transform:uppercase;padding:10px 14px;font-size:11px;font-weight:600}.data-table td{border-top:1px solid var(--border-default);color:var(--text-primary);vertical-align:middle;padding:12px 14px}.data-table tbody tr:hover{background:color-mix(in srgb, var(--surface-card) 92%, var(--text-primary) 8%)}.data-table-link{color:var(--color-primary);font-weight:500}.data-table-link:hover{text-decoration:underline}.data-table th.num,.data-table td.num{text-align:right;font-variant-numeric:tabular-nums}.data-table th.actions-col,.data-table td.actions-col{text-align:right;white-space:nowrap;width:1%}.data-table-sub{color:var(--text-muted);margin-top:2px;font-size:12px;line-height:1.4}.pill{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.pill-active{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, transparent)}.pill-inactive{color:#6b7280;background:#f3f4f6;border-color:#e5e7eb}.pill-prospect{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 35%, transparent)}.pill-lapsed{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}.pill-new{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.pill-contacted{color:#0e7490;background:#ecfeff;border-color:#a5f3fc}.pill-qualified{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.pill-proposal{color:#b45309;background:#fffbeb;border-color:#fde68a}.pill-won{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, transparent)}.pill-lost{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}.pill-converted{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.pill-pending{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 35%, transparent)}.pill-expired{color:#6b7280;background:#f3f4f6;border-color:#e5e7eb}.pill-cancelled{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}.pill-pending-invoice{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.pill-pending-payment{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 35%, transparent)}.pill-no-invoice,.pill-draft{color:#6b7280;background:#f3f4f6;border-color:#e5e7eb}.pill-sent{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.pill-partial{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 35%, transparent)}.pill-paid{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, transparent)}.pill-void{color:#374151;background:#f3f4f6;border-color:#d1d5db}.pill-refunded{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.pill-completed{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, transparent)}.pill-failed{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}.pill-published,.pill-registered,.pill-attended{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, transparent)}.pill-waitlisted{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 35%, transparent)}.pill-no_show{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}.pill-invited{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.pill-disabled{color:#6b7280;background:#f3f4f6;border-color:#e5e7eb}.settings-tabs{border-bottom:1px solid var(--border-default);gap:4px;margin-top:8px;display:flex}.settings-tab{color:var(--text-muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-size:13px}.settings-tab:hover{color:var(--text-primary)}.settings-tab.is-active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.form-success-banner{background:color-mix(in srgb, var(--color-success) 12%, var(--surface-card));border:1px solid color-mix(in srgb, var(--color-success) 35%, transparent);color:var(--color-success);border-radius:6px;padding:10px 12px;font-size:13px}.card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:8px;padding:20px}.card-title{color:var(--text-primary);margin-bottom:16px;font-size:14px;font-weight:600}.card-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.card-header .card-title{margin-bottom:0}.meta-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:20px;display:grid}.meta-item{background:var(--surface-card);border:1px solid var(--border-default);border-radius:8px;padding:12px 14px}.meta-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);font-size:11px}.meta-value{color:var(--text-primary);margin-top:4px;font-size:14px;font-weight:500}.form{flex-direction:column;gap:16px;display:flex}.form-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.form-field{flex-direction:column;gap:4px;display:flex}.form-label{color:var(--text-primary);font-size:12px;font-weight:500}.form-required{color:var(--color-danger)}.form-input{border:1px solid var(--border-default);background:var(--color-input-bg);color:var(--text-primary);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:13px}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--border-focus);outline:none}.form-textarea{resize:vertical;min-height:64px;line-height:1.5}.form-error{color:var(--color-danger);font-size:12px}.form-error-banner{background:color-mix(in srgb, var(--color-danger) 12%, var(--surface-card));border:1px solid color-mix(in srgb, var(--color-danger) 35%, transparent);color:var(--color-danger);border-radius:6px;padding:10px 12px}.form-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.form-fieldset{border:1px solid var(--border-default);background:color-mix(in srgb, var(--surface-card) 96%, var(--text-primary) 4%);border-radius:8px;flex-direction:column;gap:16px;margin:0;padding:14px 16px;display:flex}.form-fieldset-legend{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;padding:0 4px;font-size:12px;font-weight:600}.form-helper{color:var(--text-muted);font-size:12px}.convert-mode-row{flex-wrap:wrap;gap:16px;display:flex}.convert-mode-option{color:var(--text-primary);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.conversion-links{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.member-import-dropzone{border:1.5px dashed var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:36px 24px;transition:border-color .15s,background-color .15s;display:flex}.member-import-dropzone:hover,.member-import-dropzone.is-drag-over{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 6%, var(--surface-card));color:var(--text-primary)}.member-import-dropzone.is-uploading{opacity:.7;cursor:progress}.member-import-dropzone-icon{color:var(--color-primary);font-size:24px}.member-import-dropzone-title{color:var(--text-primary);font-size:15px;font-weight:600}.member-import-dropzone-sub{color:var(--text-muted);font-size:12px}.member-import-steps{grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid}.member-import-steps li{border:1px solid var(--border-default);background:var(--bg-subtle,color-mix(in srgb, var(--text-primary) 3%, transparent));border-radius:10px;align-items:flex-start;gap:12px;padding:14px;display:flex}.member-import-step-num{background:var(--color-accent,#2563eb);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:600;display:inline-flex}.member-import-step-title{color:var(--text-primary);margin-bottom:3px;font-size:14px;font-weight:600}.member-import-step-sub{color:var(--text-muted);font-size:12px;line-height:1.4}@media (max-width:720px){.member-import-steps{grid-template-columns:1fr}}.member-import-upload-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.member-import-example-link{white-space:nowrap;flex-shrink:0}.member-import-fields-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;display:grid}.member-import-field-chip{border:1px solid var(--border-default);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.member-import-field-name{color:var(--text-primary);font-weight:500}.member-import-required-tag{text-transform:uppercase;letter-spacing:.03em;background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.member-import-drafts{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.member-import-draft-row{border:1px solid var(--border-default);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.member-import-draft-name{color:var(--text-primary);font-weight:600}.member-import-draft-meta{color:var(--text-muted);margin-top:2px;font-size:12px}.member-import-map-table{border-collapse:collapse;width:100%;margin-bottom:16px;font-size:13px}.member-import-map-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border-default);padding:8px 10px;font-size:11px;font-weight:600}.member-import-map-table td{border-bottom:1px solid var(--border-default);vertical-align:middle;padding:8px 10px}.member-import-map-table tr:last-child td{border-bottom:none}.member-import-source{color:var(--text-primary);font-weight:600}.member-import-sample{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.member-import-conf{border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.member-import-conf-high{color:#15803d;background:#16a34a24}.member-import-conf-med{color:#b45309;background:#f59e0b29}.member-import-conf-low{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary)}.member-import-conf-manual{background:color-mix(in srgb, var(--text-primary) 6%, transparent);color:var(--text-muted)}.member-import-mapping-foot{border-top:1px solid var(--border-default);justify-content:space-between;align-items:center;gap:16px;padding-top:12px;display:flex}.form-checkbox{color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.member-import-filter-pills{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.member-import-pill{border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-primary);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:500}.member-import-pill.is-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.member-import-pill-error.is-active{background:var(--color-danger);border-color:var(--color-danger)}.member-import-pill-warning.is-active{background:#d97706;border-color:#d97706}.member-import-pill-ok.is-active{background:#15803d;border-color:#15803d}.member-import-preview-table .member-import-row-error{background:color-mix(in srgb, var(--color-danger) 4%, transparent)}.member-import-preview-table .member-import-row-warning{background:#f59e0b0d}.member-import-tag{border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.member-import-tag-ok{color:#15803d;background:#16a34a1f}.member-import-tag-warning{color:#b45309;background:#f59e0b29}.member-import-tag-error{background:color-mix(in srgb, var(--color-danger) 14%, transparent);color:var(--color-danger)}.member-import-row-action{min-width:92px;height:28px;padding:4px 8px;font-size:12px}.member-import-issues{flex-direction:column;gap:2px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.member-import-issues li.is-error{color:var(--color-danger)}.member-import-issues li.is-warning{color:#b45309}.member-import-commit-card{justify-content:space-between;align-items:center;gap:16px;display:flex}.member-import-commit-title{color:var(--text-primary);margin-bottom:2px;font-size:14px;font-weight:600}.member-import-result-list{color:var(--text-secondary);gap:24px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.member-import-result-list strong{color:var(--text-primary);letter-spacing:-.01em;font-size:28px;font-weight:650;display:block}.empty-state{background:var(--surface-card);border:1px dashed var(--border-default);text-align:center;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:40px;display:flex}.empty-state-title{color:var(--text-primary);font-size:15px;font-weight:600}.empty-state-subtitle{color:var(--text-muted);margin-bottom:12px;font-size:13px}.timeline{flex-direction:column;gap:10px;margin:16px 0 0;padding:0;list-style:none;display:flex}.timeline-item{border:1px solid var(--border-default);background:var(--surface-card);border-radius:8px;padding:12px 14px}.timeline-meta{align-items:center;gap:10px;margin-bottom:6px;display:flex}.timeline-meta-text{color:var(--text-muted);font-size:12px}.timeline-subject{color:var(--text-primary);font-size:13px;font-weight:600}.timeline-body{color:var(--text-primary);white-space:pre-wrap;margin-top:4px;font-size:13px}.note-list{flex-direction:column;gap:10px;margin:16px 0 0;padding:0;list-style:none;display:flex}.note-item{border:1px solid var(--border-default);background:var(--surface-card);border-radius:8px;padding:12px 14px}.note-body{color:var(--text-primary);white-space:pre-wrap;font-size:13px}.note-meta{color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;margin-top:8px;font-size:12px;display:flex}.note-actions{align-items:center;gap:12px;display:inline-flex}.button-text{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:12px;text-decoration:underline}.button-text:hover{color:var(--accent-700)}.button-text-danger{color:var(--color-danger)}.button-text-danger:hover{color:color-mix(in srgb, var(--color-danger) 70%, black)}.button-text:disabled{color:var(--text-muted);cursor:not-allowed;text-decoration:none}.toggle-cell{align-items:center;gap:8px;display:inline-flex}.toggle-switch{background:var(--border-default);border:1px solid var(--border-default);cursor:pointer;width:34px;height:20px;transition:background-color var(--dur-base) var(--ease), border-color var(--dur-base) var(--ease);border-radius:999px;flex-shrink:0;padding:0;position:relative}.toggle-switch:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.toggle-switch:disabled{opacity:.6;cursor:not-allowed}.toggle-switch.is-on{background:var(--color-primary);border-color:var(--color-primary)}.toggle-switch-thumb{width:16px;height:16px;transition:transform var(--dur-base) var(--ease);background:#fff;border-radius:50%;position:absolute;top:1px;left:1px;box-shadow:0 1px 2px #00000040}.toggle-switch.is-on .toggle-switch-thumb{transform:translate(14px)}.toggle-label{color:var(--text-primary);font-size:13px}.toggle-label.is-off{color:var(--text-muted)}.toggle-error{color:var(--color-danger);margin-left:8px;font-size:12px}.row-kebab{flex-direction:column;align-items:flex-end;display:inline-flex}.row-kebab-trigger{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur-base) var(--ease), color var(--dur-base) var(--ease), border-color var(--dur-base) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.row-kebab-trigger:hover:not(:disabled){background:color-mix(in srgb, var(--color-primary) 8%, transparent);color:var(--text-primary)}.row-kebab-trigger[aria-expanded=true]{background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:var(--border-default);color:var(--text-primary)}.row-kebab-trigger:disabled{opacity:.5;cursor:not-allowed}.row-kebab-error{color:var(--color-danger);text-align:right;max-width:240px;margin-top:4px;font-size:12px}.theme-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(360px,480px);align-items:start;display:grid}@media (max-width:1100px){.theme-grid{grid-template-columns:1fr}}.theme-editor-actions{gap:var(--space-2);display:flex}.theme-fields{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (max-width:720px){.theme-fields{grid-template-columns:1fr}}.theme-field{gap:var(--space-1);flex-direction:column;display:flex}.theme-field-controls{gap:var(--space-2);align-items:center;display:flex}.theme-color-picker{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--color-card-bg);cursor:pointer;flex-shrink:0;width:38px;height:32px;padding:2px}.theme-color-picker::-webkit-color-swatch-wrapper{padding:0}.theme-color-picker::-webkit-color-swatch{border:none;border-radius:4px}.theme-hex-input{text-transform:lowercase;flex:1;font-family:ui-monospace,Menlo,Consolas,monospace}.theme-preview-card{top:var(--space-4);position:sticky}.theme-preview{border:1px solid var(--border-default);border-radius:var(--radius-lg);margin-top:var(--space-2);overflow:hidden}.pp-shell{background:var(--portal-page-bg);min-height:320px;color:var(--portal-text);grid-template-columns:150px 1fr;display:grid}.pp-sidebar{background:var(--portal-sidebar-bg);color:var(--portal-sidebar-text);border-right:1px solid var(--portal-border);flex-direction:column;gap:12px;padding:12px 10px;display:flex}.pp-brand{color:var(--portal-sidebar-text);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.pp-brand-mark{background:var(--portal-primary);width:22px;height:22px;color:var(--portal-button-text);border-radius:5px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.pp-nav{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.pp-nav-item{color:var(--portal-sidebar-text);border-radius:6px;padding:7px 10px;font-size:13px}.pp-nav-item.is-active{background:var(--portal-sidebar-active-bg);color:var(--portal-sidebar-active-text);font-weight:600}.pp-main{background:var(--portal-page-bg);flex-direction:column;display:flex}.pp-topbar{border-bottom:1px solid var(--portal-border);background:var(--portal-topbar-bg);align-items:center;gap:8px;padding:10px 14px;display:flex}.pp-topbar-spacer{flex:1}.pp-avatar{background:var(--portal-primary);width:26px;height:26px;color:var(--portal-button-text);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.pp-content{padding:16px}.pp-greeting{color:var(--portal-text);margin-bottom:12px;font-size:18px;font-weight:600}.pp-card{background:var(--portal-card-bg);border:1px solid var(--portal-border);border-radius:8px;padding:14px}.pp-card-title{text-transform:uppercase;letter-spacing:.04em;color:var(--portal-muted-text);margin-bottom:6px;font-size:11px;font-weight:600}.pp-stat{color:var(--portal-text);font-size:18px;font-weight:600}.pp-card-helper{color:var(--portal-muted-text);margin-top:2px;font-size:12px}.pp-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.pp-pill{border:1px solid #0000;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:500;display:inline-block}.pp-pill-success{background:color-mix(in srgb, var(--portal-success) 14%, transparent);color:var(--portal-success);border-color:color-mix(in srgb, var(--portal-success) 35%, transparent)}.pp-pill-warn{background:color-mix(in srgb, var(--portal-warning) 14%, transparent);color:var(--portal-warning);border-color:color-mix(in srgb, var(--portal-warning) 35%, transparent)}.pp-btn{background:var(--portal-primary);color:var(--portal-button-text);cursor:default;border:0;border-radius:6px;padding:7px 14px;font-size:13px;font-weight:500}.pp-input{background:var(--portal-input-bg);min-width:120px;color:var(--portal-text);border:1px solid var(--portal-border);border-radius:6px;flex:1;padding:7px 10px;font-size:13px}.tp-shell{background:var(--color-page-bg);grid-template-columns:140px 1fr;min-height:320px;display:grid}.tp-sidebar{background:var(--color-sidebar-bg);color:var(--color-sidebar-text);border-right:1px solid var(--color-border);flex-direction:column;gap:10px;padding:12px 8px;display:flex}.tp-brand{color:var(--text-primary);align-items:center;gap:8px;padding:4px 6px;font-size:12px;font-weight:600;display:flex}.tp-brand-mark{background:linear-gradient(135deg, var(--color-primary), var(--color-accent));width:22px;height:22px;color:var(--color-button-text);border-radius:4px;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.tp-nav{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.tp-nav-item{color:var(--color-sidebar-text);border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex;position:relative}.tp-nav-item.is-active{background:var(--color-sidebar-active-bg);color:var(--color-sidebar-active-text)}.tp-nav-item.is-active:before{content:"";background:var(--color-sidebar-active-text);border-radius:2px;width:2px;position:absolute;top:6px;bottom:6px;left:0}.tp-nav-dot{opacity:.55;background:currentColor;border-radius:50%;width:8px;height:8px}.tp-main{flex-direction:column;min-width:0;display:flex}.tp-topbar{background:var(--color-topbar-bg);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.tp-topbar-pill{border:1px solid var(--color-border);color:var(--text-primary);background:var(--color-card-bg);border-radius:6px;padding:4px 8px;font-size:11px}.tp-topbar-icon{color:var(--color-secondary);font-size:14px}.tp-content{background:var(--color-page-bg);flex:1;padding:12px}.tp-card{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.tp-card-title{color:var(--text-primary);font-size:12px;font-weight:600}.tp-card-body{color:var(--color-muted-text);font-size:11px}.tp-row{flex-wrap:wrap;gap:6px;display:flex}.tp-btn{cursor:default;border:1px solid #0000;border-radius:5px;padding:5px 10px;font-size:11px}.tp-btn-primary{background:var(--color-primary);color:var(--color-button-text);border-color:var(--color-primary)}.tp-btn-secondary{background:var(--color-card-bg);color:var(--text-primary);border-color:var(--color-border)}.tp-input{border:1px solid var(--color-border);background:var(--color-input-bg);color:var(--text-primary);border-radius:5px;padding:5px 8px;font-size:11px}.tp-pill{border:1px solid;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:500}.tp-pill-success{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, transparent)}.tp-pill-warning{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 35%, transparent)}.tp-pill-danger{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}.theme-status{font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.02em;text-transform:uppercase;margin-top:2px;font-weight:600}.theme-status.is-customized{color:var(--color-warning)}.preset-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.preset-card{text-align:left;padding:var(--space-3);border-radius:var(--radius-lg);border:1.5px solid var(--border-default);background:var(--surface-card);cursor:pointer;transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);gap:var(--space-3);flex-direction:column;font-family:inherit;display:flex}.preset-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.preset-card:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--border-focus);outline:none}.preset-card.is-active{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--border-focus)}.preset-card-mini{border-radius:var(--radius-md);border:1px solid var(--border-default);grid-template-columns:30% 70%;height:64px;display:grid;overflow:hidden}.preset-card-mini-sidebar{border-right:1px solid;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px 4px;display:flex}.preset-card-mini-dot{opacity:.7;border-radius:2px;width:18px;height:4px}.preset-card-mini-active{border-radius:3px;width:22px;height:6px}.preset-card-mini-content{border-left:0;flex-direction:column;display:flex}.preset-card-mini-topbar{border-bottom:1px solid;height:16px}.preset-card-mini-btn{border-radius:4px;width:50%;height:14px;margin:10px}.preset-card-meta{flex-direction:column;gap:4px;display:flex}.preset-card-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.preset-card-name{font-size:var(--text-base);color:var(--text-primary);font-weight:600}.preset-card-check{border-radius:var(--radius-pill);background:var(--color-primary);width:18px;height:18px;color:var(--color-button-text);justify-content:center;align-items:center;display:inline-flex}.preset-card-desc{font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.preset-card-swatches{gap:4px;margin-top:2px;display:flex}.preset-card-swatch{border-radius:var(--radius-pill);border:1px solid var(--border-default);flex-shrink:0;width:14px;height:14px}[data-pill-style=solid] .pill-active,[data-pill-style=solid] .pill-paid,[data-pill-style=solid] .pill-completed,[data-pill-style=solid] .pill-won{background:var(--color-success);color:var(--color-button-text);border-color:var(--color-success)}[data-pill-style=solid] .pill-pending,[data-pill-style=solid] .pill-partial{background:var(--color-warning);color:var(--color-button-text);border-color:var(--color-warning)}[data-pill-style=solid] .pill-failed,[data-pill-style=solid] .pill-cancelled,[data-pill-style=solid] .pill-lost,[data-pill-style=solid] .pill-lapsed{background:var(--color-danger);color:var(--color-button-text);border-color:var(--color-danger)}[data-pill-style=solid] .pill-prospect{background:var(--color-primary);color:var(--color-button-text);border-color:var(--color-primary)}[data-pill-style=solid] .tp-pill-success{background:var(--color-success);color:var(--color-button-text);border-color:var(--color-success)}[data-pill-style=solid] .tp-pill-warning{background:var(--color-warning);color:var(--color-button-text);border-color:var(--color-warning)}[data-pill-style=solid] .tp-pill-danger{background:var(--color-danger);color:var(--color-button-text);border-color:var(--color-danger)}.contrast-badge{letter-spacing:.02em;border-radius:var(--radius-pill);white-space:nowrap;border:1px solid;align-items:center;gap:4px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-flex}.contrast-badge-pass{color:#15803d;background:#16a34a1f;border-color:#16a34a59}.contrast-badge-large{color:#b45309;background:#d9770624;border-color:#d9770666}.contrast-badge-fail{color:#b91c1c;background:#dc26261f;border-color:#dc262659}.theme-field-meta{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.portal-root{--portal-primary:#2563eb;--portal-secondary:#475569;--portal-accent:#0891b2;--portal-sidebar-bg:#fff;--portal-sidebar-text:#475569;--portal-sidebar-active-bg:#eff4ff;--portal-sidebar-active-text:#2563eb;--portal-topbar-bg:#fff;--portal-page-bg:#f6f7f9;--portal-card-bg:#fff;--portal-border:#e2e8f0;--portal-button-text:#fff;--portal-text:#0f172a;--portal-muted-text:#94a3b8;--portal-input-bg:#fff;--portal-success:#16a34a;--portal-warning:#d97706;--portal-danger:#dc2626;--color-primary:var(--portal-primary);--color-secondary:var(--portal-secondary);--color-accent:var(--portal-accent);--color-sidebar-bg:var(--portal-sidebar-bg);--color-sidebar-text:var(--portal-sidebar-text);--color-sidebar-active-bg:var(--portal-sidebar-active-bg);--color-sidebar-active-text:var(--portal-sidebar-active-text);--color-topbar-bg:var(--portal-topbar-bg);--color-page-bg:var(--portal-page-bg);--color-card-bg:var(--portal-card-bg);--color-border:var(--portal-border);--color-button-text:var(--portal-button-text);--color-text:var(--portal-text);--color-muted-text:var(--portal-muted-text);--color-input-bg:var(--portal-input-bg);--color-success:var(--portal-success);--color-warning:var(--portal-warning);--color-danger:var(--portal-danger);--surface-app:var(--portal-page-bg);--surface-card:var(--portal-card-bg);--surface-popover:var(--portal-card-bg);--surface-sidebar:var(--portal-sidebar-bg);--surface-sidebar-active:var(--portal-sidebar-active-bg);--text-primary:var(--portal-text);--text-secondary:var(--portal-sidebar-text);--text-muted:var(--portal-muted-text);--text-accent:var(--portal-sidebar-active-text);--text-on-accent:var(--portal-button-text);--border-default:var(--portal-border);--border-strong:var(--portal-border);--text-color:var(--portal-text);--muted-text-color:var(--portal-muted-text);--border-subtle:var(--portal-border);--input-bg:var(--portal-input-bg);background:var(--portal-page-bg);color:var(--portal-text)}.portal-root .pill-inactive,.portal-root .pill-expired,.portal-root .pill-void{background:color-mix(in srgb, var(--portal-muted-text) 14%, var(--portal-card-bg));color:var(--portal-muted-text);border-color:var(--portal-border)}.portal-shell{background:var(--surface-app);flex-direction:column;min-height:100vh;display:flex}.portal-shell-header{border-bottom:1px solid var(--border-subtle);background:var(--surface-card);padding:20px 24px}.portal-shell-brand{color:var(--text-color);align-items:center;gap:10px;font-weight:600;text-decoration:none;display:inline-flex}.portal-shell-logo{object-fit:contain;width:28px;height:28px}.portal-shell-mark{background:var(--portal-primary);width:28px;height:28px;color:var(--portal-button-text);border-radius:6px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.portal-shell-name{font-size:15px}.portal-shell-main{flex:1;justify-content:center;align-items:flex-start;padding:48px 24px;display:flex}.auth-split{color:#0f172a;background:#f6f7fb;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);min-height:100vh;display:grid}.auth-split-form{background:#fff;border-radius:0;flex-direction:column;padding:32px 48px 24px;display:flex;position:relative}.auth-split-brand{color:#0f172a;align-self:flex-start;align-items:center;gap:10px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.auth-split-brand-mark{color:#fff;background:linear-gradient(135deg,#2563eb 0%,#3b82f6 100%);border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;font-weight:700;display:inline-flex}.auth-split-brand-name{letter-spacing:-.01em}.auth-split-form-body{flex-direction:column;flex:1;justify-content:center;width:100%;max-width:380px;margin:0 auto;padding:32px 0;display:flex}.auth-split-title{letter-spacing:-.01em;color:#0f172a;margin:0 0 6px;font-size:28px;font-weight:650;line-height:1.2}.auth-split-subtitle{color:#64748b;margin:0 0 24px;font-size:14px;line-height:1.55}.auth-split-footnote{color:#0f172a;margin:22px 0 0;font-size:13px;line-height:1.5}.auth-split-muted{color:#64748b}.auth-split-form-foot{color:#94a3b8;justify-content:space-between;align-items:center;padding-top:16px;font-size:12px;display:flex}.auth-split-foot-link{color:#94a3b8;text-decoration:none}.auth-split-foot-link:hover{color:#0f172a}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-field{color:#334155;flex-direction:column;gap:6px;font-size:13px;display:flex}.auth-field-label{color:#0f172a;font-weight:500}.auth-field-input{width:100%;font:inherit;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:11px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.auth-field-input::placeholder{color:#cbd5e1}.auth-field-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f633}.auth-field-with-action{display:flex;position:relative}.auth-field-with-action .auth-field-input{padding-right:40px}.auth-field-reveal{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.auth-field-reveal:hover{color:#0f172a;background:#0f172a0d}.auth-field-extras{justify-content:space-between;align-items:center;font-size:12px;display:flex}.auth-field-link{color:#2563eb;font-weight:500;text-decoration:none}.auth-field-link:hover{text-decoration:underline}.auth-error{color:#b91c1c;background:#dc262614;border:1px solid #dc26262e;border-radius:8px;padding:10px 12px;font-size:13px}.auth-success{color:#15803d;background:#16a34a14;border:1px solid #16a34a2e;border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.55}.auth-submit{color:#fff;font:inherit;cursor:pointer;background:linear-gradient(135deg,#2563eb 0%,#3b82f6 100%);border:none;border-radius:8px;margin-top:4px;padding:12px 16px;font-size:14px;font-weight:600;transition:filter .15s,transform .15s;box-shadow:0 1px #0f172a0a,0 4px 14px #2563eb47}.auth-submit:hover:not(:disabled){filter:brightness(1.05)}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:disabled{opacity:.7;cursor:not-allowed}.auth-split-panel{color:#fff;isolation:isolate;background:radial-gradient(800px 600px at 75% -10%,#ffffff2e 0%,#0000 60%),radial-gradient(700px 500px at -10% 110%,#ffffff1f 0%,#0000 55%),linear-gradient(140deg,#1e3a8a 0%,#2563eb 50%,#3b82f6 100%);border-radius:20px;min-height:600px;margin:16px;position:relative;overflow:hidden}.auth-split-panel-shapes{pointer-events:none;z-index:0;background-image:radial-gradient(circle at 18% 22%,#ffffff1a 0 70px,#0000 71px),radial-gradient(circle at 92% 88%,#ffffff12 0 220px,#0000 221px),linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:auto,auto,32px 32px,32px 32px;position:absolute;inset:0}.auth-split-panel-content{z-index:1;max-width:540px;padding:56px 56px 0;position:relative}.auth-split-panel-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#ffffffb8;margin:0 0 18px;font-size:12px;font-weight:600}.auth-split-panel-title{letter-spacing:-.02em;margin:0 0 18px;font-size:38px;font-weight:650;line-height:1.1}.auth-split-panel-lede{color:#ffffffc7;max-width:440px;margin:0;font-size:15px;line-height:1.6}.auth-mock{z-index:1;pointer-events:none;width:70%;max-width:520px;height:60%;position:absolute;bottom:0;right:0}.auth-mock-card{color:#0f172a;background:#fff;border-radius:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:absolute;box-shadow:inset 0 1px #fff9,0 12px 32px -8px #0f172a59,0 30px 60px -20px #0f172a66}.auth-mock-card-primary{width:78%;padding:18px 18px 14px;top:6%;left:4%;transform:rotate(-1.5deg)}.auth-mock-card-head{justify-content:space-between;align-items:flex-start;margin-bottom:14px;display:flex}.auth-mock-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#94a3b8;margin-bottom:4px;font-size:10px;font-weight:600}.auth-mock-amount{letter-spacing:-.01em;color:#0f172a;font-variant-numeric:tabular-nums;font-size:22px;font-weight:650}.auth-mock-strong{color:#0f172a;font-size:14px;font-weight:600}.auth-mock-meta{color:#64748b;margin-top:2px;font-size:11px}.auth-mock-pill{letter-spacing:.02em;border-radius:999px;align-items:center;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.auth-mock-pill-warn{color:#b45309;background:#f59e0b1f}.auth-mock-rows{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.auth-mock-rows li{color:#334155;font-variant-numeric:tabular-nums;border-top:1px solid #f1f5f9;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:6px 0;font-size:12px;display:grid}.auth-mock-rows li:first-child{border-top:none}.auth-mock-row-pill{border-radius:999px;padding:2px 6px;font-size:10px;font-weight:600}.auth-mock-row-pill-due{color:#c2410c;background:#fff7ed}.auth-mock-row-pill-paid{color:#047857;background:#ecfdf5}.auth-mock-card-secondary{width:50%;padding:14px 16px 16px;top:38%;right:6%;transform:rotate(2deg)}.auth-mock-progress{background:#f1f5f9;border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.auth-mock-progress-bar{background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:999px;width:68%;height:100%}.auth-mock-card-event{align-items:center;gap:12px;width:56%;padding:12px 14px;display:flex;bottom:4%;left:0;transform:rotate(-2deg)}.auth-mock-event-date{color:#1d4ed8;background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.auth-mock-event-month{letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700}.auth-mock-event-day{font-size:18px;font-weight:700;line-height:1}@media (max-width:880px){.auth-split{grid-template-columns:1fr}.auth-split-panel{display:none}.auth-split-form{padding:24px 24px 16px}.auth-split-form-body{padding:16px 0}}.portal-auth-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:12px;width:100%;max-width:420px;padding:28px;box-shadow:0 1px 2px #0f172a0a}.portal-auth-card-title{color:var(--text-color);margin:0 0 6px;font-size:20px;font-weight:600}.portal-auth-card-subtitle{color:var(--muted-text-color);margin:0 0 20px;font-size:14px;line-height:1.5}.portal-auth-card-footer{color:var(--muted-text-color);text-align:center;margin:20px 0 0;font-size:13px}.portal-auth-card-footer a{color:var(--color-primary);text-decoration:none}.portal-auth-card-footer a:hover{text-decoration:underline}.portal-login-forgot{text-align:right;margin-top:6px;font-size:12px}.portal-login-forgot a{color:var(--color-primary);text-decoration:none}.portal-login-forgot a:hover{text-decoration:underline}.form-grid{flex-direction:column;gap:14px;display:flex}.et-overlay{z-index:1000;background:var(--surface-app);color:var(--text-color);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.et-topbar,.et-banner,.et-test-drawer,.et-settings-strip{flex:none}.et-panes{flex:auto;min-height:0}.et-topbar{border-bottom:1px solid var(--border-subtle);background:var(--surface-card);justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;display:flex}.et-topbar-left{align-items:center;gap:16px;min-width:0;display:flex}.et-topbar-back{color:var(--muted-text-color);white-space:nowrap;font-size:14px;text-decoration:none}.et-topbar-back:hover{color:var(--text-color)}.et-topbar-title{align-items:baseline;gap:12px;min-width:0;display:flex}.et-topbar-name{color:var(--text-color);white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600;overflow:hidden}.et-topbar-status{color:var(--muted-text-color);font-size:12px}.et-topbar-status.is-saved:before{content:"● ";color:#16a34a}.et-topbar-right{align-items:center;gap:8px;display:flex}.et-topbar-right form{display:inline}.et-banner{background:color-mix(in srgb, #f59e0b 12%, var(--surface-card));border-bottom:1px solid #f59e0b4d;flex-wrap:wrap;gap:12px;padding:8px 20px;font-size:13px;display:flex}.et-banner-warn{color:#b45309}.et-banner-error{color:#b91c1c}.et-banner-success{color:#15803d;font-size:13px}.et-test-drawer{border-bottom:1px solid var(--border-subtle);background:var(--surface-card);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 20px;display:flex}.et-test-drawer .form-label{margin:0;font-size:13px}.et-panes{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;min-height:0;display:grid;overflow:hidden}.et-pane-code,.et-pane-preview{background:var(--surface-card);flex-direction:column;min-height:0;display:flex}.et-pane-code{border-right:1px solid var(--border-subtle)}.et-pane-header{border-bottom:1px solid var(--border-subtle);background:var(--surface-app);justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex}.et-pane-label{letter-spacing:.06em;color:var(--muted-text-color);text-transform:uppercase;font-size:11px;font-weight:600}.et-pane-tabs{gap:4px;display:flex}.et-pane-tab{color:var(--muted-text-color);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:4px 10px;font-size:13px}.et-pane-tab:hover{color:var(--text-color)}.et-pane-tab.is-active{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--text-color);border-color:color-mix(in srgb, var(--color-primary) 30%, transparent)}.et-subject-wrap{flex:1;align-items:flex-start;padding:16px;display:flex}.et-subject-input{background:var(--input-bg);width:100%;color:var(--text-color);border:1px solid var(--border-subtle);border-radius:6px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:14px}.et-subject-input:focus{outline:2px solid var(--color-primary);outline-offset:-2px}.et-code-body{flex:1;grid-template-columns:48px 1fr;min-height:0;display:grid;overflow:hidden}.et-gutter{background:var(--surface-app);border-right:1px solid var(--border-subtle);color:var(--muted-text-color);-webkit-user-select:none;user-select:none;text-align:right;padding:12px 8px 12px 0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;overflow:hidden}.et-gutter pre{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;margin:0}.et-code-area{resize:none;background:var(--input-bg);width:100%;height:100%;color:var(--text-color);white-space:pre;tab-size:2;border:0;outline:0;padding:12px 16px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.55;overflow:auto}.et-code-area:focus{outline:0}.et-var-strip{border-top:1px solid var(--border-subtle);background:var(--surface-app);white-space:nowrap;align-items:center;gap:6px;padding:8px 16px;display:flex;overflow-x:auto}.et-var-strip-label{color:var(--muted-text-color);margin-right:4px;font-size:12px;font-weight:500}.variable-chip{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--text-color);border:1px solid color-mix(in srgb, var(--color-primary) 30%, transparent);cursor:pointer;white-space:nowrap;border-radius:4px;padding:3px 7px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:12px}.variable-chip:hover{background:color-mix(in srgb, var(--color-primary) 22%, transparent)}.et-preview-subject{background:var(--surface-app);border-bottom:1px solid var(--border-subtle);color:var(--text-color);padding:10px 16px;font-size:13px}.et-preview-subject-label{color:var(--muted-text-color);margin-right:6px;font-weight:500}.et-preview-iframe{background:#fff;border:0;flex:1;width:100%}.et-preview-text{border-top:1px solid var(--border-subtle);background:var(--surface-app);max-height:200px;padding:8px 16px;overflow:auto}.et-preview-text summary{cursor:pointer;color:var(--muted-text-color);font-size:13px}.et-preview-text pre{white-space:pre-wrap;color:var(--text-color);margin:8px 0 0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:12px}.et-settings-strip{border-top:1px solid var(--border-subtle);background:var(--surface-card);flex-wrap:wrap;align-items:center;gap:16px;padding:10px 20px;display:flex}.et-settings-field{color:var(--muted-text-color);align-items:center;gap:8px;font-size:13px;display:flex}.et-settings-field span{white-space:nowrap}.et-settings-field .form-input{min-width:220px;padding:6px 10px;font-size:13px}.et-settings-toggle{color:var(--text-color);cursor:pointer;align-items:center;gap:8px;margin-left:auto;font-size:13px;display:inline-flex}@media (max-width:960px){.et-panes{grid-template-columns:1fr;grid-auto-rows:minmax(0,1fr)}.et-pane-code{border-right:none;border-bottom:1px solid var(--border-subtle)}.et-settings-strip{flex-direction:column;align-items:flex-start}.et-settings-toggle{margin-left:0}}.send-email-overlay{z-index:1100;justify-content:flex-end;display:flex;position:fixed;inset:0}.send-email-backdrop{background:#0f172a80;position:absolute;inset:0}.send-email-panel{background:var(--surface-card);width:100%;max-width:600px;height:100%;color:var(--text-color);border-left:1px solid var(--border-subtle);flex-direction:column;display:flex;position:relative;box-shadow:-8px 0 24px #0f172a40}.send-email-header{border-bottom:1px solid var(--border-subtle);background:var(--surface-card);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.send-email-header-title{align-items:baseline;gap:12px;display:flex}.send-email-header-title h2{color:var(--text-color);margin:0;font-size:16px;font-weight:600}.send-email-status{color:var(--muted-text-color);font-size:12px}.send-email-close{color:var(--muted-text-color);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:18px;line-height:1}.send-email-close:hover{color:var(--text-color)}.send-email-body{flex-direction:column;flex:1;gap:14px;min-height:0;padding:16px 20px;display:flex;overflow:auto}.send-email-meta{background:var(--surface-app);border:1px solid var(--border-subtle);border-radius:6px;flex-direction:column;gap:8px;padding:8px 12px;display:flex}.send-email-meta-row{grid-template-columns:70px 1fr;align-items:center;gap:12px;min-height:28px;display:grid}.send-email-meta-label{color:var(--muted-text-color);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.send-email-meta-value{color:var(--text-color);font-size:14px}.send-email-meta-muted{color:var(--muted-text-color);font-size:13px}.send-email-input{padding:6px 10px;font-size:13px}.send-email-link{color:var(--color-primary);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:13px}.send-email-link:hover{text-decoration:underline}.send-email-subject{flex-direction:column;gap:4px;display:flex}.send-email-toolbar{border:1px solid var(--border-subtle);background:var(--surface-app);border-bottom:0;border-radius:6px 6px 0 0;align-items:center;gap:4px;padding:6px 8px;display:flex}.send-email-tool{color:var(--text-color);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:4px 8px;font-size:13px}.send-email-tool:hover{background:color-mix(in srgb, var(--color-primary) 12%, transparent);border-color:color-mix(in srgb, var(--color-primary) 30%, transparent)}.send-email-tool-sep{background:var(--border-subtle);width:1px;height:18px;margin:0 4px}.send-email-editor{border:1px solid var(--border-subtle);background:var(--input-bg);min-height:220px;max-height:360px;color:var(--text-color);border-radius:0 0 6px 6px;padding:12px 14px;font-size:14px;line-height:1.5;overflow:auto}.send-email-editor:focus{outline:2px solid var(--color-primary);outline-offset:-2px}.send-email-editor:empty:before{content:attr(data-placeholder);color:var(--muted-text-color);pointer-events:none}.send-email-attach{flex-direction:column;gap:8px;display:flex}.send-email-attach-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.send-email-attach-helper{color:var(--muted-text-color);font-size:12px}.send-email-attach-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.send-email-attach-list li{background:var(--surface-app);border:1px solid var(--border-subtle);border-radius:4px;align-items:center;gap:12px;padding:6px 10px;font-size:13px;display:flex}.send-email-attach-list li>span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.send-email-attach-size{color:var(--muted-text-color);font-size:12px}.send-email-attach-remove{color:var(--muted-text-color);cursor:pointer;background:0 0;border:0;padding:0 4px}.send-email-attach-remove:hover{color:#b91c1c}.send-email-validation{margin:0}.send-email-server-error{background:#dc26261f;border:1px solid #dc26264d;border-radius:6px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.send-email-server-error strong{color:#b91c1c}.send-email-server-error p{color:var(--text-color);margin:0;font-size:13px}.send-email-toast{color:#15803d;background:#16a34a24;border:1px solid #16a34a59;border-radius:6px;padding:10px 12px;font-size:13px}.send-email-footer{border-top:1px solid var(--border-subtle);background:var(--surface-card);justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex}.send-email-footer-right{gap:8px;display:flex}.comms-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.comms-row{border:1px solid var(--border-subtle);background:var(--surface-app);border-radius:6px;overflow:hidden}.comms-row-header{text-align:left;cursor:pointer;width:100%;color:var(--text-color);background:0 0;border:0;grid-template-columns:90px 1fr auto 16px;align-items:center;gap:12px;padding:10px 12px;display:grid}.comms-row-header:hover{background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.comms-row-status .pill{font-size:11px}.comms-row-subject{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.comms-row-meta{color:var(--muted-text-color);align-items:center;gap:10px;font-size:12px;display:flex}.comms-row-template{font-weight:500}.comms-row-caret{color:var(--muted-text-color);text-align:center}.comms-row-body{border-top:1px solid var(--border-subtle);background:var(--surface-card);flex-direction:column;gap:12px;padding:12px 14px;display:flex}.comms-detail{flex-direction:column;gap:6px;margin:0;display:flex}.comms-detail>div{grid-template-columns:120px 1fr;align-items:baseline;gap:12px;display:grid}.comms-detail dt{color:var(--muted-text-color);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:12px}.comms-detail dd{color:var(--text-color);margin:0;font-size:13px}.comms-body-html{flex-direction:column;gap:4px;display:flex}.comms-body-iframe{border:1px solid var(--border-subtle);background:#fff;border-radius:4px;width:100%;min-height:360px}.comms-body-text{background:var(--surface-app);border:1px solid var(--border-subtle);border-radius:4px;padding:8px 12px}.comms-body-text summary{cursor:pointer;color:var(--muted-text-color);font-size:13px}.comms-body-text pre{white-space:pre-wrap;color:var(--text-color);margin:8px 0 0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:12px}.org-picker{position:relative}.org-picker-input-wrap{align-items:center;display:flex;position:relative}.org-picker-input{width:100%;padding-right:56px}.org-picker-input-clear{color:var(--muted-text-color);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:4px 6px;font-size:16px;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.org-picker-input-clear:hover{color:var(--text-color);background:color-mix(in srgb, var(--text-color) 8%, transparent)}.org-picker-spinner{border:2px solid color-mix(in srgb, var(--color-primary) 25%, transparent);border-top-color:var(--color-primary);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite org-picker-spin;position:absolute;top:50%;right:32px;transform:translateY(-50%)}@keyframes org-picker-spin{to{transform:translateY(-50%)rotate(360deg)}}.org-picker-dropdown{z-index:50;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:6px;max-height:320px;padding:4px 0;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a2e}.org-picker-status{color:var(--muted-text-color);padding:10px 12px;font-size:13px}.org-picker-error{color:#b91c1c}.org-picker-option{text-align:left;cursor:pointer;width:100%;color:var(--text-color);background:0 0;border:0;padding:8px 12px;font-size:14px;display:block}.org-picker-option:hover,.org-picker-option.is-active{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.org-picker-option-main{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.org-picker-option-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.org-picker-option-meta{align-items:center;gap:4px;display:inline-flex}.org-picker-mark{background:color-mix(in srgb, var(--color-primary) 26%, transparent);color:inherit;border-radius:2px;padding:0 1px}.org-picker-tag{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--text-color);border:1px solid color-mix(in srgb, var(--color-primary) 30%, transparent);border-radius:3px;padding:1px 5px;font-size:10px;font-weight:600}.org-picker-tag-muted{background:color-mix(in srgb, var(--muted-text-color) 12%, transparent);border-color:color-mix(in srgb, var(--muted-text-color) 30%, transparent);color:var(--muted-text-color)}.org-picker-tag-warn{color:#b45309;background:#f59e0b29;border-color:#f59e0b66}.org-picker-option-create{border-top:1px solid var(--border-subtle);color:var(--color-primary);font-weight:500}.org-picker-option-create:hover,.org-picker-option-create.is-active{background:color-mix(in srgb, var(--color-primary) 14%, transparent)}.org-picker-option-create strong{color:var(--text-color)}.org-picker-selected{background:var(--input-bg);border:1px solid var(--border-subtle);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.org-picker-selected-name{color:var(--text-color);text-overflow:ellipsis;align-items:center;gap:8px;min-width:0;font-weight:500;display:inline-flex;overflow:hidden}.org-picker-archived-tag{letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb, var(--muted-text-color) 14%, transparent);color:var(--muted-text-color);border-radius:3px;padding:1px 6px;font-size:10px;font-weight:600}.org-picker-selected-actions{align-items:center;gap:4px;display:inline-flex}.org-picker-change,.org-picker-clear{cursor:pointer;color:var(--muted-text-color);background:0 0;border:0;border-radius:4px;padding:4px 8px;font-size:13px}.org-picker-change:hover,.org-picker-clear:hover{background:color-mix(in srgb, var(--text-color) 8%, transparent);color:var(--text-color)}.org-picker-clear{font-size:16px;line-height:1}.portal-app{background:var(--surface-app);min-height:100vh;color:var(--text-color);grid-template-columns:224px 1fr;transition:grid-template-columns .18s;display:grid}body.portal-sidebar-rail .portal-app{grid-template-columns:60px 1fr}.portal-sidebar{background:var(--surface-card);border-right:1px solid var(--border-subtle);flex-direction:column;gap:16px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow:hidden auto}body.portal-sidebar-rail .portal-sidebar{padding:18px 8px}body.portal-sidebar-rail .portal-shell-name{display:none}body.portal-sidebar-rail .portal-sidebar-brand{justify-content:center;padding:6px 0 16px}.portal-sidebar-brand{color:var(--text-color);border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:6px 8px 16px;font-size:15px;font-weight:650;text-decoration:none;display:flex}.portal-nav{flex-direction:column;flex:1;gap:18px;min-height:0;display:flex}.portal-nav-groups{flex-direction:column;flex:1;gap:18px;display:flex}.portal-nav-group{flex-direction:column;gap:6px;display:flex}.portal-nav-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-text-color);-webkit-user-select:none;user-select:none;margin-top:4px;padding:0 12px;font-size:11px;font-weight:600}body.portal-sidebar-rail .portal-nav-group-label{display:none}body.portal-sidebar-rail .portal-nav-group+.portal-nav-group{border-top:1px solid var(--border-subtle);padding-top:8px}.portal-nav ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.portal-nav-link{color:var(--muted-text-color);border-radius:8px;align-items:center;gap:12px;padding:9px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:flex;position:relative}.portal-nav-link-icon{color:currentColor;opacity:.85;flex-shrink:0;justify-content:center;align-items:center;width:22px;display:inline-flex}.portal-nav-link-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.portal-nav-link:hover{background:color-mix(in srgb, var(--portal-primary) 7%, transparent);color:var(--text-color)}.portal-nav-link:focus-visible{outline:2px solid var(--portal-primary);outline-offset:2px}.portal-nav-link.is-active{background:color-mix(in srgb, var(--portal-primary) 12%, transparent);color:var(--portal-primary);font-weight:600}.portal-nav-link.is-active .portal-nav-link-icon{opacity:1}.portal-nav-link.is-disabled{color:var(--muted-text-color);cursor:not-allowed}.portal-nav-aside{text-transform:uppercase;letter-spacing:.05em;color:var(--muted-text-color);font-size:11px}body.portal-sidebar-rail .portal-nav-link{justify-content:center;gap:0;padding:10px 8px}body.portal-sidebar-rail .portal-nav-link-label{display:none}.portal-nav-collapse{border:1px solid var(--border-subtle);color:var(--muted-text-color);font:inherit;cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:12px;margin-top:auto;padding:9px 12px;font-size:13px;font-weight:500;transition:background-color .15s,color .15s;display:flex}.portal-nav-collapse:hover{background:color-mix(in srgb, var(--portal-primary) 6%, transparent);color:var(--text-color)}.portal-nav-collapse:focus-visible{outline:2px solid var(--portal-primary);outline-offset:2px}.portal-nav-collapse-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}body.portal-sidebar-rail .portal-nav-collapse{justify-content:center;padding:9px}body.portal-sidebar-rail .portal-nav-collapse .portal-nav-link-label{display:none}body.portal-sidebar-rail .portal-nav-collapse-icon{transform:scaleX(-1)}.portal-content{flex-direction:column;min-width:0;display:flex}.portal-topbar{border-bottom:1px solid var(--border-subtle);background:var(--surface-card);align-items:center;gap:12px;min-height:60px;padding:10px 36px;display:flex}.portal-topbar-right{align-items:center;gap:8px;margin-left:auto;display:flex}.portal-sidebar-toggle{color:var(--text-color);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:20px;display:none}.portal-main{background:var(--portal-page-bg,#f6f7f9);flex:1;min-width:0;padding:32px 36px}.portal-page{max-width:1180px;margin:0 auto}.portal-page-narrow{max-width:880px;margin:0 auto}.portal-user-menu{position:relative}.portal-user-menu-trigger{cursor:pointer;color:var(--text-color);background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:4px 10px 4px 4px;display:inline-flex}.portal-user-menu-trigger:hover{background:color-mix(in srgb, var(--text-color) 6%, transparent)}.portal-user-menu-avatar{background:var(--portal-primary);width:30px;height:30px;color:var(--portal-button-text);letter-spacing:.02em;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.portal-user-menu-name{font-size:14px;font-weight:500}.portal-user-menu-caret{color:var(--muted-text-color);font-size:12px}.portal-user-menu-popover{background:var(--surface-card);border:1px solid var(--border-subtle);z-index:50;border-radius:12px;min-width:252px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 4px 6px #0f172a14,0 12px 28px #0f172a29}.portal-user-menu-header{border-bottom:1px solid var(--border-subtle);margin-bottom:4px;padding:10px 12px 12px}.portal-user-menu-name-strong{color:var(--text-color);font-weight:600}.portal-user-menu-email{color:var(--muted-text-color);font-size:12px}.portal-user-menu-role{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text-color);margin-top:4px;font-size:11px}.portal-user-menu-item{text-align:left;width:100%;color:var(--text-color);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 12px;font-size:14px;text-decoration:none;display:block}.portal-user-menu-item:hover{background:color-mix(in srgb, var(--portal-primary) 10%, transparent)}.portal-user-menu-item-danger{color:var(--portal-danger)}.portal-user-menu-section{border-top:1px solid var(--portal-border);margin:4px 0;padding:8px 12px 10px}.portal-user-menu-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--portal-muted-text);margin:4px 0 8px;font-size:11px;font-weight:600}.portal-appearance-toggle{background:color-mix(in srgb, var(--portal-muted-text) 12%, transparent);border:1px solid var(--portal-border);border-radius:8px;gap:3px;width:100%;padding:3px;display:flex}.portal-appearance-option{text-align:center;color:var(--portal-muted-text);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;padding:6px 8px;font-size:12px;font-weight:500;transition:background .12s,color .12s}.portal-appearance-option:hover:not(:disabled):not(.is-active){color:var(--portal-text)}.portal-appearance-option.is-active{background:var(--portal-card-bg);color:var(--portal-text);box-shadow:0 1px 2px #0f172a1f}.portal-switcher{position:relative}.portal-switcher-trigger{background:var(--surface-card);border:1px solid var(--border-subtle);cursor:pointer;color:var(--text-color);border-radius:999px;align-items:center;gap:8px;max-width:260px;padding:6px 10px 6px 8px;font-size:13px;font-weight:500;transition:border-color .15s,background-color .15s;display:inline-flex}.portal-switcher-trigger:hover{border-color:color-mix(in srgb, var(--portal-primary) 35%, var(--border-subtle));background:color-mix(in srgb, var(--portal-primary) 5%, var(--surface-card))}.portal-switcher-trigger:focus-visible{outline:2px solid var(--portal-primary);outline-offset:2px}.portal-switcher-trigger[aria-expanded=true]{border-color:var(--portal-primary)}.portal-switcher-icon{background:color-mix(in srgb, var(--portal-primary) 14%, transparent);width:22px;height:22px;color:var(--portal-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.portal-switcher-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-switcher-caret{color:var(--muted-text-color);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.portal-switcher-popover{background:var(--surface-card);border:1px solid var(--border-subtle);z-index:50;border-radius:8px;min-width:240px;padding:6px 0;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #0f172a2e}.portal-switcher-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--muted-text-color);padding:6px 14px;font-size:11px}.portal-switcher-item{text-align:left;width:100%;color:var(--text-color);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:8px 14px;font-size:14px;display:flex}.portal-switcher-item:hover{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.portal-switcher-item.is-active{font-weight:600}.portal-switcher-check{color:var(--color-primary)}.portal-select-list{flex-direction:column;gap:8px;display:flex}.portal-select-item{text-align:left;background:var(--input-bg);border:1px solid var(--border-subtle);width:100%;color:var(--text-color);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;padding:14px 16px;font-size:15px;font-weight:500;display:flex}.portal-select-item:hover:not(:disabled){border-color:color-mix(in srgb, var(--color-primary) 50%, transparent);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.portal-page-header{margin-bottom:24px}.portal-page-header h1{letter-spacing:-.02em;color:var(--text-color);margin:0;font-size:30px;font-weight:650;line-height:1.15}.portal-page-subtitle{color:var(--muted-text-color);margin:8px 0 0;font-size:14px;line-height:1.5}.portal-dashboard-header h1{letter-spacing:-.01em;font-size:22px;font-weight:600}.portal-dashboard-header .portal-page-subtitle{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:inline-flex}.portal-page-subtitle-sep{color:color-mix(in srgb, var(--muted-text-color) 60%, transparent)}.portal-card{background:var(--surface-card);border:1px solid #0000;border-radius:14px;margin-bottom:16px;padding:24px 26px;transition:box-shadow .2s,transform .2s,border-color .2s;box-shadow:0 1px 2px #0f172a0a,0 4px 12px -2px #0f172a0f,0 8px 24px -8px #0f172a0f}.portal-card-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-color);opacity:.72;margin:0 0 12px;font-size:12px;font-weight:700}.portal-card-subtitle{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text-color);margin:12px 0 4px;font-size:13px;font-weight:600}.portal-card-body{color:var(--text-color);margin:0 0 4px;font-size:14px;line-height:1.5}.portal-stat{letter-spacing:-.01em;color:var(--text-color);margin-bottom:4px;font-size:26px;font-weight:650}.portal-stat-warn{color:var(--portal-warning)}.portal-card-helper{color:var(--muted-text-color);margin:0;font-size:13px;line-height:1.5}.portal-card-row{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.portal-card-list{flex-direction:column;gap:6px;margin:8px 0 0;display:flex}.portal-card-list>div{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;display:flex}.portal-card-list>div:last-child{border-bottom:none}.portal-card-list dt{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text-color);margin:0;font-size:12px}.portal-card-list dd{color:var(--text-color);text-align:right;margin:0;font-weight:500}.portal-card-list-2col{grid-template-columns:1fr 1fr;gap:4px 24px;display:grid}.portal-card-list-2col>div{border-bottom:1px solid var(--border-subtle)}.portal-card-link{color:var(--color-primary);margin-top:8px;font-size:13px;text-decoration:none;display:inline-block}.portal-card-link:hover{text-decoration:underline}.portal-card-link-foot{border-top:1px solid color-mix(in srgb, var(--text-color) 6%, transparent);color:var(--muted-text-color);margin-top:14px;padding-top:12px;font-size:12px;display:block}.portal-card-link-foot:hover{color:var(--color-primary);text-decoration:none}.portal-empty{flex-direction:column;gap:8px;padding:6px 0 2px;display:flex}.portal-empty-title{color:var(--text-color);font-size:16px;font-weight:600}.portal-empty-body{color:var(--muted-text-color);margin:0;font-size:13px;line-height:1.55}.portal-empty-cta{align-self:flex-start;margin-top:8px}.portal-upcoming{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.portal-upcoming-row{border-bottom:1px solid color-mix(in srgb, var(--text-color) 6%, transparent);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:10px 0;display:grid}.portal-upcoming-row:last-child{border-bottom:none}.portal-upcoming-date{background:color-mix(in srgb, var(--portal-primary) 12%, transparent);width:46px;height:46px;color:var(--portal-primary);border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.portal-upcoming-month{letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.portal-upcoming-day{font-size:18px;font-weight:700;line-height:1}.portal-upcoming-main{min-width:0}.portal-upcoming-name{color:var(--text-color);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.portal-upcoming-meta{color:var(--muted-text-color);margin-top:2px;font-size:12px}.portal-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px;display:grid}.portal-dashboard-grid .portal-card{margin-bottom:0}.portal-card-span-1{grid-column:span 1}.portal-card-span-2{grid-column:span 2}.portal-card-wide{grid-column:1/-1}.portal-card-head{align-items:center;gap:10px;margin-bottom:14px;display:flex}.portal-card-head .portal-card-title{margin:0}.portal-card-icon{background:color-mix(in srgb, var(--color-primary) 14%, transparent);width:30px;height:30px;color:var(--color-primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.portal-card-icon-status{background:color-mix(in srgb, var(--portal-success) 14%, transparent);color:var(--portal-success)}.portal-card-icon-membership{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary)}.portal-card-icon-billing{background:color-mix(in srgb, var(--text-color) 8%, transparent);color:var(--text-color)}.portal-card-icon-warn{background:color-mix(in srgb, var(--portal-warning) 16%, transparent);color:var(--portal-warning)}.portal-card-icon-actions{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary)}.portal-card-icon-activity{background:color-mix(in srgb, var(--text-color) 8%, transparent);color:var(--text-color)}.portal-stat-muted{color:var(--muted-text-color)}.portal-quick-actions{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.portal-quick-actions a{color:var(--text-color);border-radius:8px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s,transform .15s;display:flex}.portal-quick-actions a svg{color:var(--muted-text-color);flex-shrink:0}.portal-quick-actions a:hover{background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.portal-quick-actions a:hover svg{color:var(--color-primary)}.portal-quick-actions a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.portal-activity{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.portal-activity-row{border-bottom:1px solid color-mix(in srgb, var(--text-color) 6%, transparent);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 0;font-size:13px;display:grid}.portal-activity-row:last-child{border-bottom:none}.portal-activity-icon{background:color-mix(in srgb, var(--text-color) 6%, transparent);width:26px;height:26px;color:var(--muted-text-color);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.activity-login .portal-activity-icon{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary)}.activity-security .portal-activity-icon{background:color-mix(in srgb, var(--portal-warning) 14%, transparent);color:var(--portal-warning)}.activity-payment .portal-activity-icon{background:color-mix(in srgb, var(--portal-success) 14%, transparent);color:var(--portal-success)}.activity-membership .portal-activity-icon{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary)}.activity-profile .portal-activity-icon{background:color-mix(in srgb, var(--text-color) 8%, transparent);color:var(--text-color)}.activity-event .portal-activity-icon{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary)}.portal-activity-text{color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-activity-count{color:var(--muted-text-color);font-variant-numeric:tabular-nums;font-weight:600}.portal-activity-when{color:var(--muted-text-color);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.portal-alerts{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.portal-alert{border:1px solid #0000;border-radius:6px;padding:10px 14px;font-size:14px}.portal-alert-info{background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:color-mix(in srgb, var(--color-primary) 28%, transparent);color:var(--text-color)}.portal-alert-warn{background:color-mix(in srgb, var(--portal-warning) 14%, transparent);border-color:color-mix(in srgb, var(--portal-warning) 34%, transparent);color:var(--portal-warning)}.portal-form-fieldset{border:0;margin:0;padding:0}.portal-form-fieldset[disabled]{opacity:.7}.portal-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.portal-form-field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.portal-toggle{border-bottom:1px solid var(--border-subtle);color:var(--text-color);cursor:pointer;align-items:center;gap:10px;padding:8px 0;display:flex}.portal-toggle:last-child{border-bottom:none}.portal-form-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.portal-session-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.portal-session{border-bottom:1px solid var(--portal-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.portal-session:last-child{border-bottom:none}.portal-session-main{min-width:0}.portal-session-device{color:var(--portal-text);align-items:center;gap:8px;font-weight:500;display:flex}.portal-session-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--portal-primary);background:color-mix(in srgb, var(--portal-primary) 14%, transparent);border:1px solid color-mix(in srgb, var(--portal-primary) 30%, transparent);border-radius:4px;padding:1px 6px;font-size:10px;font-weight:600}.portal-session-meta{color:var(--portal-muted-text);margin-top:2px;font-size:12px}.portal-session-revoke{flex-shrink:0;padding:5px 12px;font-size:13px}.portal-seat-usage{flex-direction:column;gap:2px;display:flex}.portal-seat-cap{color:var(--portal-muted-text);font-weight:500}.portal-seat-bar{background:color-mix(in srgb, var(--portal-muted-text) 18%, transparent);border-radius:999px;height:8px;margin-top:12px;overflow:hidden}.portal-seat-bar-fill{background:var(--portal-primary);border-radius:999px;height:100%;transition:width .2s}.portal-seat-bar-fill.is-warn{background:var(--portal-warning)}.portal-seat-bar-fill.is-over{background:var(--portal-danger)}.portal-role-select{max-width:150px;padding:5px 8px;font-size:13px}.portal-seat-actions{justify-content:flex-end;gap:6px;display:flex}.portal-directory-header{justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:22px;display:flex}.portal-directory-header-text{min-width:0}.portal-directory-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--portal-primary);margin-bottom:8px;font-size:11px;font-weight:700}.portal-directory-title{letter-spacing:-.02em;color:var(--text-color);margin:0;font-size:32px;font-weight:650;line-height:1.1}.portal-directory-subtitle{color:var(--muted-text-color);max-width:540px;margin:8px 0 0;font-size:14px;line-height:1.55}.portal-directory-stats{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:12px;flex-shrink:0;align-items:stretch;padding:4px;display:flex}.portal-directory-stat{border-right:1px solid var(--border-subtle);flex-direction:column;justify-content:center;align-items:center;min-width:80px;padding:10px 22px;display:flex}.portal-directory-stat:last-child{border-right:0}.portal-directory-stat-value{color:var(--text-color);font-variant-numeric:tabular-nums;font-size:22px;font-weight:650;line-height:1.1}.portal-directory-stat-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-text-color);margin-top:4px;font-size:10px;font-weight:600}.portal-directory-toolbar{align-items:center;gap:12px;margin-bottom:16px;display:flex}.portal-directory-search{flex:1;margin-bottom:0;position:relative}.portal-directory-search-icon{color:var(--muted-text-color);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.portal-directory-search-input{border:1px solid var(--border-subtle);background:var(--surface-card);width:100%;height:42px;font:inherit;color:var(--text-color);border-radius:999px;padding:0 16px 0 40px;font-size:14px;transition:border-color .15s,box-shadow .15s}.portal-directory-search-input::placeholder{color:var(--muted-text-color)}.portal-directory-search-input:focus{border-color:var(--portal-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--portal-primary) 18%, transparent);outline:none}.portal-directory-toolbar-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.portal-directory-sort{border:1px solid var(--border-subtle);background:var(--surface-card);height:42px;color:var(--text-color);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:13px;display:inline-flex}.portal-directory-sort:disabled{opacity:.55;cursor:not-allowed}.portal-directory-pills{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.portal-directory-pill{border:1px solid var(--border-subtle);background:var(--surface-card);color:var(--text-color);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.portal-directory-pill:hover{border-color:color-mix(in srgb, var(--portal-primary) 35%, var(--border-subtle))}.portal-directory-pill.is-active{background:var(--portal-primary);border-color:var(--portal-primary);color:#fff}.portal-directory-pill-count{background:color-mix(in srgb, var(--text-color) 8%, transparent);color:var(--muted-text-color);font-variant-numeric:tabular-nums;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.portal-directory-pill.is-active .portal-directory-pill-count{color:#fff;background:#ffffff38}.portal-directory-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:20px;display:grid}.portal-directory-filters{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:14px;padding:16px 18px;position:sticky;top:16px}.portal-directory-filters-header{letter-spacing:.16em;text-transform:uppercase;color:var(--muted-text-color);border-bottom:1px solid var(--border-subtle);margin-bottom:6px;padding-bottom:10px;font-size:10px;font-weight:700}.portal-directory-filter-section{border-bottom:1px solid var(--border-subtle);padding:8px 0}.portal-directory-filter-section:last-child{border-bottom:0}.portal-directory-filter-section>summary{cursor:pointer;color:var(--text-color);justify-content:space-between;align-items:center;padding:6px 0;font-size:13px;font-weight:600;list-style:none;display:flex}.portal-directory-filter-section>summary::-webkit-details-marker{display:none}.portal-directory-filter-section[open]>summary svg{transform:rotate(180deg)}.portal-directory-filter-section>summary svg{color:var(--muted-text-color);transition:transform .15s}.portal-directory-filter-section ul{flex-direction:column;gap:2px;margin:6px 0 4px;padding:0;list-style:none;display:flex}.portal-directory-filter-item{color:var(--text-color);border-radius:6px;grid-template-columns:20px 1fr auto;align-items:center;gap:8px;padding:7px 8px;font-size:13px;text-decoration:none;display:grid}.portal-directory-filter-item:hover{background:color-mix(in srgb, var(--portal-primary) 7%, transparent)}.portal-directory-filter-check{border:1px solid var(--border-default);width:16px;height:16px;color:var(--portal-primary);border-radius:4px;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.portal-directory-filter-item.is-checked{background:color-mix(in srgb, var(--portal-primary) 8%, transparent);color:var(--portal-primary);font-weight:600}.portal-directory-filter-item.is-checked .portal-directory-filter-check{background:var(--portal-primary);border-color:var(--portal-primary);color:#fff}.portal-directory-filter-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-directory-filter-count{color:var(--muted-text-color);font-variant-numeric:tabular-nums;font-size:11px}.portal-directory-filter-empty{color:var(--muted-text-color);padding:6px 8px;font-size:12px}.portal-directory-main{min-width:0}.portal-directory-results-line{color:var(--muted-text-color);margin-bottom:14px;font-size:13px}.portal-directory-results-line strong{color:var(--text-color);font-weight:600}.portal-directory-clear{background:color-mix(in srgb, var(--portal-primary) 12%, transparent);color:var(--portal-primary);border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.portal-directory-empty{text-align:center;padding:24px}.portal-directory-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.portal-directory-line{color:var(--muted-text-color);align-items:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.portal-directory-line svg{color:var(--muted-text-color);flex-shrink:0}.portal-directory-line-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-directory-line-tier{justify-content:space-between;align-items:center;gap:8px;display:flex}.portal-directory-line-tier>:first-child{align-items:center;gap:8px;min-width:0;display:inline-flex}.portal-directory-tier{letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.tier-pill-founding{color:#c2410c;background:#fff7ed}.tier-pill-corporate{color:#1d4ed8;background:#eff6ff}.tier-pill-associate{color:#0891b2;background:#ecfeff}.tier-pill-affiliate{color:#7c3aed;background:#f5f3ff}.tier-pill-neutral{background:color-mix(in srgb, var(--text-color) 8%, transparent);color:var(--text-color)}.portal-directory-cta{border-top:1px solid color-mix(in srgb, var(--text-color) 6%, transparent);color:var(--portal-primary);align-items:center;gap:6px;margin-top:14px;padding-top:12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.portal-directory-cta:hover{text-decoration:underline}.portal-directory-card-clickable{cursor:pointer;outline:none}.portal-directory-card-clickable:focus-visible{border-color:color-mix(in srgb, var(--portal-primary) 50%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--portal-primary) 20%, transparent), 0 12px 24px -6px #0f172a1f, 0 24px 48px -16px #0f172a24}.portal-drawer-backdrop{opacity:0;pointer-events:none;z-index:60;background:#0f172a73;transition:opacity .22s;position:fixed;inset:0}.portal-drawer-backdrop.is-open{opacity:1;pointer-events:auto}.portal-drawer{background:var(--surface-card);z-index:61;flex-direction:column;width:440px;max-width:94vw;transition:transform .28s cubic-bezier(.32,.72,.13,1);display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;transform:translate(100%);box-shadow:-8px 0 24px -6px #0f172a1f,-16px 0 48px -16px #0f172a2e}.portal-drawer.is-open{transform:translate(0)}.portal-drawer-head{border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.portal-drawer-eyebrow{letter-spacing:.16em;color:var(--muted-text-color);font-size:11px;font-weight:700}.portal-drawer-close{border:1px solid var(--border-subtle);background:var(--surface-card);width:30px;height:30px;color:var(--text-color);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;transition:background-color .15s,border-color .15s;display:inline-flex}.portal-drawer-close:hover{background:color-mix(in srgb, var(--text-color) 6%, transparent)}.portal-drawer-close:focus-visible{outline:2px solid var(--portal-primary);outline-offset:2px}.portal-drawer-body{flex:1;padding:24px 22px 32px;overflow-y:auto}.portal-drawer-identity{align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.portal-drawer-avatar{letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:22px;font-weight:700;display:inline-flex}.portal-drawer-identity-text{flex-direction:column;gap:4px;min-width:0;display:flex}.portal-drawer-name{letter-spacing:-.01em;color:var(--text-color);margin:0;font-size:22px;font-weight:650;line-height:1.15}.portal-drawer-title{color:var(--muted-text-color);font-size:14px}.portal-drawer-org{color:var(--portal-primary);align-items:center;gap:6px;margin-top:4px;font-size:13px;font-weight:600;display:inline-flex}.portal-drawer-chips{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.portal-drawer-chip{border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.portal-drawer-chip-location{background:color-mix(in srgb, var(--text-color) 6%, transparent);color:var(--text-color)}.portal-drawer-chip svg{flex-shrink:0}.portal-drawer-actions{gap:8px;margin-bottom:24px;display:flex}.portal-drawer-action{flex:1;justify-content:center;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.portal-drawer-section{margin-bottom:22px}.portal-drawer-section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-text-color);margin:0 0 10px;font-size:11px;font-weight:700}.portal-drawer-bio{color:var(--text-color);margin:0;font-size:14px;line-height:1.6}.portal-drawer-contact{grid-template-columns:1fr 1fr;gap:16px;margin:0;display:grid}.portal-drawer-contact-grid{grid-template-columns:1fr 1fr}.portal-drawer-contact-cell{gap:10px;min-width:0;display:flex}.portal-drawer-contact-icon{background:color-mix(in srgb, var(--text-color) 6%, transparent);width:30px;height:30px;color:var(--muted-text-color);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.portal-drawer-contact-cell dt{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-text-color);margin:0 0 2px;font-size:10px;font-weight:700}.portal-drawer-contact-cell dd{color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;overflow:hidden}.portal-drawer-contact-cell a{color:var(--portal-primary);text-decoration:none}.portal-drawer-contact-cell a:hover{text-decoration:underline}.portal-drawer-related{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.portal-drawer-related-row{border:1px solid var(--border-subtle);background:var(--surface-card);width:100%;color:var(--text-color);font:inherit;text-align:left;cursor:pointer;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 12px;transition:background-color .15s,border-color .15s;display:grid}.portal-drawer-related-row:hover{background:color-mix(in srgb, var(--portal-primary) 6%, transparent);border-color:color-mix(in srgb, var(--portal-primary) 35%, var(--border-subtle))}.portal-drawer-related-row:focus-visible{outline:2px solid var(--portal-primary);outline-offset:2px}.portal-drawer-related-avatar{border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:inline-flex}.portal-drawer-related-text{flex-direction:column;min-width:0;display:flex}.portal-drawer-related-name{color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.portal-drawer-related-org{color:var(--muted-text-color);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.portal-drawer-related-row svg{color:var(--muted-text-color);flex-shrink:0}@media (max-width:900px){.portal-directory-header{flex-direction:column}.portal-directory-stats{justify-content:space-between;align-self:stretch}.portal-directory-layout{grid-template-columns:1fr}.portal-directory-filters{position:static}.portal-drawer{width:100%;max-width:100%}}.portal-directory-card{background:var(--portal-card-bg);border:1px solid #0000;border-radius:14px;padding:20px 22px;transition:box-shadow .2s,transform .2s,border-color .2s;box-shadow:0 1px 2px #0f172a0a,0 4px 12px -2px #0f172a0f,0 8px 24px -8px #0f172a0f}.portal-directory-card:hover{border-color:color-mix(in srgb, var(--color-primary) 18%, transparent);transform:translateY(-2px);box-shadow:0 2px 4px #0f172a0d,0 12px 24px -6px #0f172a1f,0 24px 48px -16px #0f172a24}.portal-directory-head{align-items:flex-start;gap:14px;display:flex}.portal-directory-avatar{background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 18%, transparent), color-mix(in srgb, var(--color-primary) 28%, transparent));width:44px;height:44px;color:var(--color-primary);letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:inline-flex}.portal-directory-org{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 12%, transparent);letter-spacing:.02em;border-radius:999px;margin-top:8px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-block}.portal-directory-identity{min-width:0}.portal-directory-name{color:var(--portal-text);font-weight:600}.portal-directory-sub{color:var(--portal-muted-text);margin-top:1px;font-size:13px}.portal-directory-bio{color:var(--portal-text);margin:12px 0 0;font-size:13px;line-height:1.5}.portal-directory-contact{flex-direction:column;gap:4px;margin:12px 0 0;display:flex}.portal-directory-contact>div{gap:8px;font-size:13px;display:flex}.portal-directory-contact dt{color:var(--portal-muted-text);min-width:48px;margin:0}.portal-directory-contact dd{text-overflow:ellipsis;min-width:0;margin:0;overflow:hidden}.portal-events-list{flex-direction:column;gap:12px;display:flex}.portal-event-card{margin-bottom:0}.portal-event-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.portal-event-name{color:var(--portal-text);font-size:16px;font-weight:600}.portal-event-meta{color:var(--portal-muted-text);margin-top:2px;font-size:13px}.portal-event-price{color:var(--portal-text);white-space:nowrap;font-weight:600}.portal-event-desc{color:var(--portal-text);margin:10px 0 0;font-size:14px;line-height:1.5}.portal-event-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.portal-event-actions{flex-shrink:0}.portal-section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--portal-muted-text);margin:0 0 12px;font-size:13px;font-weight:600}.portal-breadcrumb{margin-bottom:12px;font-size:13px}.portal-breadcrumb a{color:var(--portal-muted-text);text-decoration:none}.portal-breadcrumb a:hover{color:var(--portal-text)}.portal-banner{border:1px solid var(--border-subtle);border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:14px}.portal-banner-success{color:var(--portal-text);background:#16a34a1f;border-color:#16a34a66}.portal-banner-info{background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:color-mix(in srgb, var(--color-primary) 35%, transparent);color:var(--portal-text)}.portal-billing-summary{justify-content:space-between;align-items:center;gap:16px;display:flex}.portal-billing-total{letter-spacing:-.01em;color:var(--portal-text);font-size:28px;font-weight:650}.portal-billing-summary-meta{color:var(--portal-muted-text);font-size:13px}.portal-billing-section{margin-bottom:24px}.portal-invoice-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.portal-invoice-row{border-left:4px solid #0000;justify-content:space-between;align-items:center;gap:16px;margin-bottom:0;transition:box-shadow .18s,transform .18s,border-color .18s;display:flex;position:relative}.portal-invoice-row:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0f172a0d,0 10px 22px -6px #0f172a1f,0 22px 44px -16px #0f172a1f}.portal-invoice-row-overdue{border-left-color:var(--portal-danger)}.portal-invoice-row-due-soon{border-left-color:var(--portal-warning)}.portal-invoice-dot{background:color-mix(in srgb, var(--text-color) 18%, transparent);border-radius:50%;flex-shrink:0;width:10px;height:10px}.portal-invoice-dot-overdue{background:var(--portal-danger);box-shadow:0 0 0 4px color-mix(in srgb, var(--portal-danger) 18%, transparent)}.portal-invoice-dot-due-soon{background:var(--portal-warning);box-shadow:0 0 0 4px color-mix(in srgb, var(--portal-warning) 18%, transparent)}.portal-invoice-flag{letter-spacing:.02em;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.portal-invoice-flag-overdue{background:color-mix(in srgb, var(--portal-danger) 14%, transparent);color:var(--portal-danger)}.portal-invoice-flag-soon{background:color-mix(in srgb, var(--portal-warning) 18%, transparent);color:var(--portal-warning)}.portal-invoice-main{color:inherit;flex:1;min-width:0;text-decoration:none}.portal-invoice-number{color:var(--portal-text);font-size:15px;font-weight:600}.portal-invoice-meta{color:var(--portal-muted-text);margin-top:2px;font-size:13px}.portal-invoice-side{flex-shrink:0;align-items:center;gap:16px;display:flex}.portal-invoice-amount{color:var(--portal-text);text-align:right;white-space:nowrap;font-size:15px;font-weight:600}.portal-invoice-detail-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.portal-invoice-table{border-collapse:collapse;width:100%;font-size:14px}.portal-invoice-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--portal-muted-text);border-bottom:1px solid var(--border-subtle);padding:0 0 8px;font-size:12px;font-weight:600}.portal-invoice-table th.num,.portal-invoice-table td.num{text-align:right;white-space:nowrap}.portal-invoice-table td{color:var(--portal-text);border-bottom:1px solid var(--border-subtle);padding:10px 0}.portal-invoice-totals{flex-direction:column;gap:6px;max-width:280px;margin:16px 0 0 auto;display:flex}.portal-invoice-totals>div{justify-content:space-between;gap:16px;display:flex}.portal-invoice-totals dt,.portal-invoice-totals dd{color:var(--portal-muted-text);margin:0;font-size:14px}.portal-invoice-totals dd{color:var(--portal-text);font-variant-numeric:tabular-nums}.portal-invoice-totals-grand{border-top:1px solid var(--border-subtle);padding-top:6px}.portal-invoice-totals-grand dt,.portal-invoice-totals-grand dd{color:var(--portal-text);font-size:15px;font-weight:650}.portal-payment-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.portal-payment-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:16px;padding:8px 0;display:flex}.portal-payment-row:last-child{border-bottom:none}.portal-payment-amount{color:var(--portal-text);font-weight:600}.portal-pay-cta{justify-content:space-between;align-items:center;gap:16px;display:flex}.portal-pay{flex-direction:column;align-items:flex-end;display:inline-flex}.portal-invoice-notes{color:var(--portal-text);white-space:pre-wrap;margin:0;font-size:14px;line-height:1.5}@media (max-width:880px){.portal-app{grid-template-columns:1fr}.portal-sidebar{z-index:60;width:260px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 0 0 9999px #0f172a00}body.portal-sidebar-open .portal-sidebar{transform:translate(0);box-shadow:0 0 0 9999px #0f172a66}.portal-sidebar-toggle{display:inline-flex}.portal-dashboard-grid,.portal-card-list-2col,.portal-form-row{grid-template-columns:1fr}}.membership-builder{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.membership-builder-main{flex-direction:column;gap:16px;min-width:0;display:flex}.membership-builder-side{position:sticky;top:16px}.preview-card{background:var(--bg-subtle,color-mix(in srgb, var(--text-primary) 3%, transparent))}.preview-empty{color:var(--text-muted);padding:12px 0;font-size:13px}.preview-body{flex-direction:column;gap:8px;display:flex}.preview-row{grid-template-columns:130px minmax(0,1fr);gap:10px;font-size:13px;display:grid}.preview-label{color:var(--text-muted)}.preview-value{color:var(--text-primary);word-break:break-word}.preview-warn{color:var(--color-warning);font-style:italic}.preview-divider{border:none;border-top:1px solid var(--border-default);margin:6px 0}.membership-builder-actions{flex-wrap:wrap;justify-content:flex-end;margin-top:16px}@media (max-width:960px){.membership-builder{grid-template-columns:1fr}.membership-builder-side{position:static}}.membership-actions-bar{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.button-small{height:auto;padding:4px 10px;font-size:12px}.member-detail-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}@media (max-width:960px){.member-detail-grid{grid-template-columns:1fr}}.card-head-row{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.billing-block{flex-direction:column;gap:12px;display:flex}.billing-name{color:var(--text-primary);font-size:15px;font-weight:600}.billing-address{color:var(--text-secondary);font-size:13px;line-height:1.45}.billing-contact{grid-template-columns:130px minmax(0,1fr);gap:6px 12px;margin:0;font-size:13px;display:grid}.billing-contact dt{color:var(--text-muted)}.billing-contact dd{color:var(--text-primary);word-break:break-word;margin:0}.billing-link{font-size:13px}.invoice-panel{flex-direction:column;gap:12px;display:flex}.invoice-panel-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.invoice-panel-number{color:var(--text-primary);font-size:16px;font-weight:600}.invoice-panel-totals{border:1px solid var(--border-default);background:var(--bg-subtle,color-mix(in srgb, var(--text-primary) 3%, transparent));border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:12px;display:grid}.invoice-panel-money{color:var(--text-primary);font-size:18px;font-weight:600}.invoice-panel-money-due{color:var(--color-warning)}@media (max-width:720px){.invoice-panel-row{grid-template-columns:1fr 1fr}.invoice-panel-totals{grid-template-columns:1fr}}.activity-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.activity-item{border:1px solid var(--border-default);border-radius:8px;padding:10px 12px}.activity-when{color:var(--text-muted);margin-bottom:2px;font-size:11px}.activity-summary{color:var(--text-primary);font-size:13px}.activity-meta{color:var(--text-muted);margin-top:2px;font-size:11px}.activity-meta code{color:var(--text-muted);font-size:11px}.banner-success{background:color-mix(in srgb, var(--color-success) 8%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 35%, transparent)}.banner-warning{background:color-mix(in srgb, var(--color-warning) 8%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 35%, transparent)}.banner-error{background:color-mix(in srgb, var(--color-danger) 8%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}.modal-backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-surface,#fff);border:1px solid var(--border-default);border-radius:10px;width:100%;max-width:540px;max-height:90vh;overflow:auto;box-shadow:0 20px 40px #0000002e}.modal-head{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.modal-title{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:4px 8px;font-size:16px}.modal-close:hover{background:color-mix(in srgb, var(--text-primary) 6%, transparent)}.modal-body{flex-direction:column;gap:12px;padding:16px;display:flex}.invoice-editor{display:block}.invoice-editor-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.invoice-editor-main{flex-direction:column;gap:16px;min-width:0;display:flex}.invoice-editor-rail{flex-direction:column;gap:16px;display:flex;position:sticky;top:16px}@media (max-width:1024px){.invoice-editor-grid{grid-template-columns:1fr}.invoice-editor-rail{position:static}}.billed-to-summary{border:1px solid var(--border-default);background:var(--bg-subtle,color-mix(in srgb, var(--text-primary) 3%, transparent));border-radius:8px;flex-direction:column;gap:6px;margin-top:12px;padding:12px;display:flex}.billed-to-head{flex-direction:column;gap:2px;display:flex}.billed-to-name{color:var(--text-primary);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.billed-to-primary-tag{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb, var(--color-accent,#2563eb) 12%, transparent);color:var(--color-accent,#2563eb);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.billed-to-role,.billed-to-email,.billed-to-org,.billed-to-address{color:var(--text-secondary);font-size:13px;line-height:1.45}.billed-to-org{color:var(--text-primary);font-weight:500}.line-items-add{display:inline-block;position:relative}.line-items-add-menu{z-index:50;background:var(--bg-surface,#fff);border:1px solid var(--border-default);border-radius:8px;min-width:280px;max-height:360px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;overflow:auto;box-shadow:0 8px 24px #0000001f}.line-items-add-menu-item{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:13px;display:flex}.line-items-add-menu-item:hover{background:color-mix(in srgb, var(--text-primary) 5%, transparent)}.line-items-add-menu-divider{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-top:1px solid var(--border-default);margin-top:4px;padding:10px 10px 4px;font-size:10px;font-weight:600}.line-items-add-menu-empty{color:var(--text-muted);padding:8px 10px;font-size:12px;font-style:italic}.line-items-wrap{margin-top:12px;overflow-x:auto}.line-items-table{border-collapse:collapse;width:100%}.line-items-table th,.line-items-table td{vertical-align:top;border-bottom:1px solid var(--border-default);padding:8px 10px;font-size:13px}.line-items-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--bg-subtle,color-mix(in srgb, var(--text-primary) 2%, transparent));font-size:11px;font-weight:600}.line-items-table th.num,.line-items-table td.num{text-align:right}.li-col-desc{width:auto}.li-col-qty{width:80px}.li-col-price{width:120px}.li-col-discount{width:220px}.li-col-total{width:120px}.li-col-actions{width:44px}.line-item-num{text-align:right;width:100%;max-width:100px}.line-item-desc-input{width:100%}.line-item-total{color:var(--text-primary);font-weight:600}.line-item-strike{text-decoration:line-through}.line-item-desc-locked{color:var(--text-primary);font-weight:500}.line-item-delete{border:1px solid var(--border-default);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:inline-flex}.line-item-delete:hover{background:color-mix(in srgb, var(--color-danger) 8%, transparent);border-color:color-mix(in srgb, var(--color-danger) 30%, transparent);color:var(--color-danger)}.line-discount-control{align-items:center;gap:6px;display:flex}.line-discount-mode{width:110px}.line-discount-value{text-align:right;width:90px}.summary-totals{grid-template-columns:1fr auto;gap:8px 12px;margin:0 0 16px;font-size:13px;display:grid}.summary-totals dt{color:var(--text-muted)}.summary-totals dd{text-align:right;color:var(--text-primary);font-variant-numeric:tabular-nums;margin:0}.summary-tax-input{text-align:right;width:110px;height:28px;padding:4px 8px;font-size:13px}.summary-total-label{color:var(--text-primary);border-top:1px solid var(--border-default);padding-top:8px;font-size:14px;font-weight:600}.summary-total-value{color:var(--text-primary);border-top:1px solid var(--border-default);padding-top:8px;font-size:18px;font-weight:700}.summary-actions{flex-direction:column;gap:8px;display:flex}.summary-actions .button{justify-content:center;width:100%}.recurring-end-group{flex-direction:column;gap:8px;display:flex}.recurring-end-inline{width:90px;height:28px;padding:4px 8px;font-size:13px}.recurring-next{border:1px solid var(--border-default);background:color-mix(in srgb, var(--color-accent,#2563eb) 6%, transparent);color:var(--text-primary);border-radius:8px;margin-top:12px;padding:10px 12px;font-size:13px}.notes-field+.notes-field{border-top:1px solid var(--border-default);margin-top:16px;padding-top:16px}.notes-textarea{resize:vertical;width:100%;min-height:88px;font-family:inherit;line-height:1.45}.notes-internal-tag{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb, var(--color-warning) 14%, transparent);color:var(--color-warning);border-radius:4px;margin-left:8px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-block}.card-internal-notes{border-left:3px solid var(--color-warning)}.internal-notes-body{white-space:pre-wrap;border:1px solid var(--border-default);background:var(--bg-subtle,color-mix(in srgb, var(--text-primary) 3%, transparent));color:var(--text-primary);border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.5}.member-search{flex-direction:column;gap:12px;display:flex}.member-search-toolbar{flex-wrap:wrap;justify-content:space-between;gap:8px}.member-search-toolbar-actions{align-items:center;gap:8px;display:flex}.field-picker{position:relative}.field-picker-menu{z-index:30;background:var(--surface-popover);border:1px solid var(--border-default);border-radius:8px;min-width:220px;max-height:360px;padding:6px;position:absolute;top:calc(100% + 4px);right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.field-picker-group+.field-picker-group{border-top:1px solid var(--border-default);margin-top:4px;padding-top:4px}.field-picker-group-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:4px 8px;font-size:11px;font-weight:600}.field-picker-item{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:7px 8px;font-size:13px;display:block}.field-picker-item:hover,.field-picker-item:focus-visible{background:var(--accent-soft);outline:none}.filter-builder{background:var(--surface-card);border:1px solid var(--border-default);border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-row-field{min-width:120px;color:var(--text-primary);font-size:13px;font-weight:600}.filter-row-operator,.filter-value-input,.filter-value-multiselect{border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-primary);border-radius:6px;padding:6px 8px;font-size:13px}.filter-value-input-sm{width:90px}.filter-value-multiselect{min-width:180px;min-height:64px}.filter-row-value{flex:auto}.filter-value-range{align-items:center;gap:6px;display:inline-flex}.filter-value-sep{color:var(--text-muted)}.filter-value-checks{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.filter-value-check{color:var(--text-primary);align-items:center;gap:4px;font-size:13px;display:inline-flex}.filter-row-operator:focus-visible,.filter-value-input:focus-visible,.filter-value-multiselect:focus-visible{outline:2px solid var(--border-focus);outline-offset:1px}.filter-row-remove{border:1px solid var(--border-default);width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:50%;margin-left:auto;font-size:16px;line-height:1}.filter-row-remove:hover,.filter-row-remove:focus-visible{color:var(--color-danger,#dc2626);border-color:var(--color-danger,#dc2626);outline:none}.filter-builder-clear{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:2px;padding:2px 0;font-size:13px}.filter-builder-clear:hover{text-decoration:underline}.member-search-status{align-items:center;gap:12px;min-height:20px;display:flex}.live-count{color:var(--text-secondary,var(--text-primary));font-size:13px;font-weight:600}.member-search-error{color:var(--color-danger,#dc2626);font-size:13px}.data-table-sort{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:2px;padding:0;font-weight:600;display:inline-flex}.data-table-sort:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.data-table-sort-mark{color:var(--color-primary);font-size:10px}.data-table-num{text-align:right;font-variant-numeric:tabular-nums}.column-toggle{position:relative}.column-toggle-menu{z-index:30;background:var(--surface-popover);border:1px solid var(--border-default);border-radius:8px;min-width:180px;padding:6px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0000001f}.column-toggle-item{color:var(--text-primary);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.column-toggle-item:hover{background:var(--accent-soft)}.pagination{justify-content:space-between;align-items:center;gap:12px;padding-top:4px;display:flex}.pagination-range{color:var(--text-muted);font-size:13px}.pagination-buttons{gap:8px;display:flex}