@import url(https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap);.login-page{align-items:center;background:var(--color-bg);display:flex;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--space-5)}.login-page__form-side{max-width:400px;width:100%}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6)}.login-card__brand{align-items:center;display:flex;gap:var(--space-3);margin-bottom:var(--space-5)}.login-card__logo{align-items:center;background:var(--color-primary);border-radius:var(--radius-md);color:#fff;display:flex;height:2.25rem;justify-content:center;width:2.25rem}.login-card__brand-text{font-size:.9375rem;font-weight:650}.login-card__header{margin-bottom:var(--space-5)}.login-card__header h1{font-size:1.25rem;font-weight:650;letter-spacing:-.015em}.login-card__header p{color:var(--color-text-secondary);font-size:.875rem;margin-top:var(--space-1)}.login-card .btn--primary{margin-top:var(--space-1);min-height:40px;width:100%}.login-card .form-hint,.login-page__note{margin-top:var(--space-4);text-align:center}.login-page__note{color:var(--color-text-secondary);font-size:.75rem}.password-input{position:relative}.password-input__field{padding-right:2.5rem}.password-input__toggle{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);display:flex;height:2rem;justify-content:center;position:absolute;right:.25rem;top:50%;transform:translateY(-50%);width:2rem}.password-input__toggle:hover:not(:disabled){background:var(--color-neutral-bg);color:var(--color-text)}.password-input__toggle:disabled{cursor:not-allowed;opacity:.5}.app-shell{background:var(--color-bg);display:flex;min-height:100vh}.sidebar{background:var(--color-sidebar);border-right:1px solid var(--color-sidebar-border);display:flex;flex-direction:column;height:100vh;height:100dvh;left:0;position:fixed;top:0;transition:transform var(--transition-slow);width:var(--sidebar-width);z-index:var(--z-sidebar)}.sidebar__brand{gap:var(--space-3);height:var(--header-height);padding:0 var(--space-4)}.sidebar__brand,.sidebar__logo{align-items:center;display:flex;flex-shrink:0}.sidebar__logo{background:var(--color-primary);border-radius:var(--radius-md);color:#fff;height:2rem;justify-content:center;width:2rem}.sidebar__brand-text{display:flex;flex:1 1;flex-direction:column;line-height:1.25;min-width:0}.sidebar__brand-name{color:var(--color-text);font-size:.875rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__brand-tag{color:var(--color-text-sidebar-muted);font-size:.75rem}.sidebar .sidebar__close{display:none}.sidebar__nav{flex:1 1;overflow-y:auto;padding:var(--space-2) var(--space-3) var(--space-4);scrollbar-color:var(--color-border-strong) #0000;scrollbar-width:thin}.sidebar__group+.sidebar__group{margin-top:var(--space-3)}.sidebar__group-label{color:var(--color-text-sidebar-muted);font-size:.6875rem;font-weight:550;margin-bottom:var(--space-1);padding:0 var(--space-2)}.sidebar__link{align-items:center;border-radius:var(--radius-sm);color:var(--color-text-sidebar);display:flex;font-size:.8125rem;font-weight:500;gap:.625rem;margin-bottom:1px;min-height:30px;padding:.25rem var(--space-2);transition:background var(--transition-fast),color var(--transition-fast)}.sidebar__link:hover{background:var(--color-sidebar-hover);color:var(--color-text)}.sidebar__link--active,.sidebar__link--active:hover{background:var(--color-sidebar-active);color:var(--color-primary);font-weight:600}.sidebar__link-icon{flex-shrink:0}.sidebar__footer{align-items:center;border-top:1px solid var(--color-sidebar-border);display:flex;gap:var(--space-2);padding:var(--space-3)}.sidebar__avatar{align-items:center;background:var(--color-neutral-bg);border-radius:var(--radius-full);color:var(--color-text);display:flex;flex-shrink:0;font-size:.75rem;font-weight:600;height:1.75rem;justify-content:center;width:1.75rem}.sidebar__user-email{color:var(--color-text-secondary);flex:1 1;font-size:.75rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .sidebar__logout{flex-shrink:0;min-height:30px;width:30px}.sidebar .sidebar__logout:hover{background:var(--color-danger-bg);color:var(--color-danger-text)}.app-main{display:flex;flex:1 1;flex-direction:column;margin-left:var(--sidebar-width);min-width:0}.topbar{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-3);height:var(--header-height);padding:0 var(--space-6);position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-header)}.topbar .topbar__menu{display:none;flex-shrink:0}.topbar__crumbs{align-items:center;display:flex;flex:1 1;font-size:.8125rem;gap:var(--space-2);min-width:0}.topbar__crumb{color:var(--color-text-secondary);white-space:nowrap}.topbar__crumb--current{color:var(--color-text);font-weight:550;overflow:hidden;text-overflow:ellipsis}.topbar__crumb-sep{color:var(--color-border-strong)}.topbar__search{align-items:center;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);display:inline-flex;flex-shrink:0;font-size:.8125rem;gap:var(--space-2);min-height:34px;padding:0 var(--space-2) 0 var(--space-3);width:240px}.topbar__search:hover{border-color:var(--color-border-strong)}.topbar__search-text{flex:1 1;text-align:left}.topbar__search kbd{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;font:500 .6875rem var(--font-sans);padding:1px 5px}.main-content{flex:1 1;padding:var(--space-6)}.sidebar-backdrop{border:none;cursor:pointer;z-index:calc(var(--z-sidebar) - 1)}.palette-overlay,.sidebar-backdrop{background:#16181d66;inset:0;position:fixed}.palette-overlay{align-items:flex-start;display:flex;justify-content:center;padding:12vh var(--space-4) var(--space-4);z-index:var(--z-modal)}.palette{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:480px;overflow:hidden;width:100%}.palette__search{align-items:center;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);display:flex;gap:var(--space-2);padding:0 var(--space-4)}.palette__search input{background:#0000;border:0;color:var(--color-text);flex:1 1;height:44px;min-width:0;outline:0}.palette__list{list-style:none;margin:0;max-height:50vh;overflow-y:auto;padding:var(--space-2)}.palette__item{align-items:center;background:#0000;border:0;border-radius:var(--radius-sm);color:var(--color-text);display:flex;font-size:.8125rem;gap:var(--space-3);min-height:36px;padding:0 var(--space-3);text-align:left;width:100%}.palette__item--active{background:var(--color-primary-light)}.palette__group{font-size:.75rem;margin-left:auto}.palette__empty,.palette__group{color:var(--color-text-secondary)}.palette__empty{font-size:.8125rem;padding:var(--space-4);text-align:center}@media (max-width:1024px){.sidebar{transform:translateX(-100%)}.sidebar--open{box-shadow:var(--shadow-xl);transform:translateX(0)}.sidebar .sidebar__close{display:flex}.app-main{margin-left:0}.topbar{padding:0 var(--space-3)}.topbar .topbar__menu{display:flex}.topbar__search{justify-content:center;padding:0;width:36px}.topbar__search kbd,.topbar__search-text{display:none}.main-content{padding:var(--space-4)}}:root{--color-primary:#5b34ea;--color-primary-hover:#4a26cc;--color-primary-light:#f0ecff;--color-primary-muted:#a48ff5;--color-bg:#f6f7f9;--color-surface:#fff;--color-surface-elevated:#fff;--color-surface-subtle:#fafbfc;--color-sidebar:#fff;--color-sidebar-hover:#f3f4f6;--color-sidebar-active:var(--color-primary-light);--color-sidebar-border:#e7e9ee;--color-text:#16181d;--color-text-secondary:#565d6b;--color-text-muted:#7a8190;--color-text-inverse:#fff;--color-text-sidebar:#3c424e;--color-text-sidebar-muted:#7a8190;--color-border:#e7e9ee;--color-border-strong:#d3d7de;--shadow-xs:0 1px 2px #16181d0a;--shadow-sm:0 1px 2px #16181d0d;--shadow-md:0 4px 12px #16181d12;--shadow-lg:0 10px 24px #16181d1a;--shadow-xl:0 24px 48px #16181d29;--color-success-bg:#e9f8f0;--color-success-text:#0b6b43;--color-success-border:#b5e6cd;--color-warning-bg:#fdf5e3;--color-warning-text:#8a5a06;--color-warning-border:#f2dca6;--color-danger-bg:#fdeeee;--color-danger-text:#ad2323;--color-danger-border:#f6c9c9;--color-info-bg:#edf3fe;--color-info-text:#1c54b2;--color-info-border:#c7dafa;--color-neutral-bg:#f0f1f4;--color-neutral-text:#4b515e;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","Fira Code",ui-monospace,monospace;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:14px;--radius-full:9999px;--sidebar-width:248px;--header-height:56px;--content-max-width:1320px;--transition-fast:120ms ease;--transition-base:180ms ease;--transition-slow:240ms ease;--z-sidebar:100;--z-header:90;--z-overlay:110;--z-modal:120}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss03";background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:14px;line-height:1.5;margin:0}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.011em;line-height:1.3;margin:0}p{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}code{font-family:var(--font-mono);font-size:.92em}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.alert a,.form-hint a,.text-link,td a:not(.btn){color:var(--color-primary)}.alert a:hover,.form-hint a:hover,.text-link:hover,td a:not(.btn):hover{text-decoration:underline}.page{margin:0 auto;max-width:var(--content-max-width)}.page>.alert,.page>.card,.page>.info-box,.page>.panel-grid,.page>.stats-grid,.page>form.card{margin-bottom:var(--space-5)}.page>:last-child{margin-bottom:0}.page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-6)}.page-header__content{flex:1 1 20rem;min-width:0}.page-header__title{color:var(--color-text);font-size:1.375rem;font-weight:650;letter-spacing:-.018em}.page-header__description{color:var(--color-text-secondary);font-size:.875rem;margin-top:var(--space-1);max-width:46rem}.page-header__action{flex-shrink:0}.page-header__action .form-select{width:auto}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.card.card__body,.card__body{padding:var(--space-5)}.card__header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;padding:var(--space-4) var(--space-5)}.card-heading,.card__title{font-size:.9375rem;font-weight:600}.card-heading{margin-bottom:var(--space-3)}.card__subtitle{color:var(--color-text-secondary);font-size:.8125rem;margin-top:2px}.card--inset{background:var(--color-surface-subtle);box-shadow:none}.panel-grid{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.panel-grid--wide-left{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.panel-grid>.card{min-width:0}.btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-md);display:inline-flex;font-size:.8125rem;font-weight:550;gap:var(--space-2);justify-content:center;line-height:1.25;min-height:36px;padding:.4375rem .875rem;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.55}.btn--primary{background:var(--color-primary);color:#fff}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn--secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn--secondary:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-text-muted)}.btn--danger{background:var(--color-surface);border-color:var(--color-danger-border);color:var(--color-danger-text)}.btn--danger:hover:not(:disabled){background:var(--color-danger-bg)}.btn--danger-solid{background:#c52a2a;border-color:#c52a2a;color:#fff}.btn--danger-solid:hover:not(:disabled){background:#a51f1f;border-color:#a51f1f}.btn--ghost{background:#0000;color:var(--color-text-secondary)}.btn--ghost:hover:not(:disabled){background:var(--color-neutral-bg);color:var(--color-text)}.btn--sm{border-radius:var(--radius-sm);font-size:.75rem;min-height:30px;padding:.25rem .625rem}.btn--icon{min-height:36px;padding:0;width:36px}.btn-group{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2)}.btn-group--end,.btn-group--pad{justify-content:flex-end}.btn-group--pad{border-top:1px solid var(--color-border);padding:var(--space-3) var(--space-5)}.form-group{margin-bottom:var(--space-4);min-width:0}.form-group--flush,.form-group:last-child{margin-bottom:0}.form-group--end{align-items:flex-end;display:flex;margin-bottom:0}.form-label{color:var(--color-text);display:block;font-size:.8125rem;font-weight:550;margin-bottom:.3125rem}.form-label--inline{align-items:center;display:flex;gap:var(--space-2)}.form-label--plain{font-weight:400}.form-label .required{color:var(--color-danger-text);margin-left:2px}.form-input,.form-select,.form-textarea{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text);font-size:.875rem;min-height:36px;padding:.4375rem .6875rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-textarea{line-height:1.5;resize:vertical}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-input:hover:not(:disabled),.form-select:hover:not(:disabled),.form-textarea:hover:not(:disabled){border-color:var(--color-text-muted)}.form-select,select.form-input{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23565d6b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;padding-right:2rem;text-overflow:ellipsis}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 16%,#0000);outline:none}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--color-neutral-bg);color:var(--color-text-secondary);cursor:not-allowed}.form-input--short{max-width:140px}.form-input--narrow{max-width:90px}.form-hint{color:var(--color-text-secondary);display:block;font-size:.75rem;line-height:1.5;margin-top:.3125rem}.form-hint--flush{margin-top:0}.form-hint--spaced{margin-bottom:var(--space-3);margin-top:0}.form-error{color:var(--color-danger-text)}.form-check,.form-checkbox{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:var(--space-2)}.form-check{margin-bottom:var(--space-3)}.form-check input,.form-checkbox input,input[type=checkbox],input[type=radio]{accent-color:var(--color-primary);flex-shrink:0;height:1rem;width:1rem}.form-section{margin-bottom:var(--space-6)}.form-section:last-of-type{margin-bottom:0}.form-section-title,.form-section__title{border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:.875rem;font-weight:600;margin:0 0 var(--space-3);padding-bottom:var(--space-2)}.form-section-title{margin-top:var(--space-6)}.form-section-title:first-child{margin-top:0}.form-grid,.grid-2,.grid-3,.grid-auto{grid-gap:var(--space-4);display:grid;gap:var(--space-4)}.form-grid,.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.form-grid .form-group,.grid-2 .form-group,.grid-3 .form-group{margin-bottom:0}.form-grid,.grid-2,.grid-3{margin-bottom:var(--space-4)}.filter-form .grid-2,.form-grid:last-child,.grid-2:last-child,.grid-3:last-child{margin-bottom:0}.form-actions,.modal__footer{border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-5);padding-top:var(--space-4)}.divider{border:0;border-top:1px solid var(--color-border);margin:var(--space-6) 0}.filter-bar,.filter-form{grid-gap:var(--space-3);align-items:end;display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));padding:var(--space-4)}.filter-form .form-group{margin-bottom:0}.filter-bar__label{color:var(--color-text);display:flex;flex-direction:column;font-size:.8125rem;font-weight:550;gap:.3125rem}.table-toolbar{align-items:center;border-bottom:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;padding:var(--space-3) var(--space-4)}.table-toolbar__count{color:var(--color-text-secondary);font-size:.8125rem}.search-input{flex:1 1 16rem;max-width:22rem;position:relative}.search-input svg{color:var(--color-text-muted);height:16px;left:.625rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:16px}.search-input .form-input{padding-left:2rem}.pagination{align-items:center;border-top:1px solid var(--color-border);color:var(--color-text-secondary);display:flex;flex-wrap:wrap;font-size:.8125rem;gap:var(--space-3);justify-content:flex-end;padding:var(--space-3) var(--space-5)}.alert{border:1px solid #0000;border-radius:var(--radius-md);font-size:.8125rem;margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4)}.alert p+p{margin-top:var(--space-1)}.alert--success{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text)}.alert--error{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger-text)}.alert--warning{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning-text)}.alert--info{background:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-info-text)}.text-muted{color:var(--color-text-secondary);font-size:.8125rem}.badge{align-items:center;background:var(--color-neutral-bg);border-radius:var(--radius-full);color:var(--color-neutral-text);display:inline-flex;font-size:.75rem;font-weight:550;gap:.3125rem;line-height:1.35;padding:.125rem .5rem;white-space:nowrap}.badge--spaced{margin-left:var(--space-2)}.badge--active,.badge--approved,.badge--captured,.badge--connected,.badge--paid,.badge--verified{background:var(--color-success-bg);color:var(--color-success-text)}.badge--authorized,.badge--created,.badge--info,.badge--pending,.badge--trial{background:var(--color-info-bg);color:var(--color-info-text)}.badge--cancelling,.badge--grace,.badge--inactive,.badge--paused,.badge--refunded{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge--cancelled,.badge--deprecated,.badge--expired,.badge--failed,.badge--rejected,.badge--suspended{background:var(--color-danger-bg);color:var(--color-danger-text)}.badge--archived,.badge--draft,.badge--unknown{background:var(--color-neutral-bg);color:var(--color-neutral-text)}.table-wrapper{-webkit-overflow-scrolling:touch;border-radius:var(--radius-lg);overflow-x:auto}.data-table{border-collapse:collapse;font-size:.8125rem;width:100%}.data-table th{background:var(--color-surface-subtle);color:var(--color-text-secondary);font-size:.75rem;font-weight:550;padding:.625rem var(--space-4);text-align:left;white-space:nowrap}.data-table td,.data-table th{border-bottom:1px solid var(--color-border)}.data-table td{color:var(--color-text);padding:.6875rem var(--space-4);vertical-align:middle}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--color-surface-subtle)}.data-table tbody tr:last-child td{border-bottom:none}.data-table .num,.data-table td.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.data-table th.num{text-align:right}.cell-primary{color:var(--color-text);font-weight:550}.cell-sub{margin-top:1px}.cell-mono,.cell-sub,.data-table .cell-mono{color:var(--color-text-secondary);font-size:.75rem}.cell-mono,.data-table .cell-mono{font-family:var(--font-mono)}.data-table .cell-mono{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-muted,.data-table .cell-muted{color:var(--color-text-muted);font-size:.75rem}.cell-wrap{max-width:280px;white-space:pre-wrap}.cell-wide{max-width:420px}.bar-cell{min-width:80px;width:25%}.data-table .cell-actions{text-align:right;white-space:nowrap}.data-table .cell-actions .btn-group{flex-wrap:nowrap;gap:var(--space-1);justify-content:flex-end}.empty-state{padding:var(--space-10) var(--space-6);text-align:center}.empty-state__icon{align-items:center;background:var(--color-neutral-bg);border-radius:var(--radius-full);color:var(--color-text-secondary);display:inline-flex;height:2.75rem;justify-content:center;margin-bottom:var(--space-3);width:2.75rem}.empty-state__icon svg{height:1.25rem;width:1.25rem}.empty-state__title{font-size:.9375rem;margin-bottom:var(--space-1)}.empty-state__description{color:var(--color-text-secondary);font-size:.8125rem;margin:0 auto var(--space-4);max-width:26rem}.empty-state__action{display:inline-flex}.loading-screen{align-items:center;display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;min-height:240px}.loading-screen__spinner{animation:spin .7s linear infinite;border:2px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:1.75rem;width:1.75rem}@keyframes spin{to{transform:rotate(1turn)}}.loading-screen__text{color:var(--color-text-secondary);font-size:.8125rem}.confirm-overlay,.modal-overlay{align-items:center;animation:overlayIn .15s ease;background:#16181d73;display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal)}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal{animation:modalIn .18s ease-out;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:min(92vh,860px);width:100%}@keyframes modalIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.modal--md{max-width:520px}.modal--lg{max-width:720px}.modal--xl{max-width:900px}.modal:focus{outline:none}.modal__header{align-items:flex-start;border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-4) var(--space-5)}.modal__title{font-size:1rem}.modal__subtitle{font-size:.8125rem;margin-top:2px}.modal__close,.modal__subtitle{color:var(--color-text-secondary)}.modal__close{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);display:flex;flex-shrink:0;height:2rem;justify-content:center;width:2rem}.modal__close:hover{background:var(--color-neutral-bg);color:var(--color-text)}.modal__body{overflow-y:auto;padding:var(--space-5)}.modal__body .modal__footer{margin:var(--space-5) calc(var(--space-5)*-1) calc(var(--space-5)*-1)}.modal__body .modal__footer,.modal__sticky-actions{background:var(--color-surface);bottom:calc(var(--space-5)*-1);padding:var(--space-3) var(--space-5);position:-webkit-sticky;position:sticky;z-index:1}.modal__sticky-actions{border-top:1px solid var(--color-border);justify-content:flex-end;margin:var(--space-4) calc(var(--space-5)*-1) calc(var(--space-5)*-1)}.info-box{background:var(--color-info-bg);border:1px solid var(--color-info-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5)}.info-box h3{color:var(--color-info-text);font-size:.875rem;margin-bottom:var(--space-2)}.info-box ul{color:var(--color-text-secondary);font-size:.8125rem;margin:0 0 var(--space-3);padding-left:var(--space-5)}.info-box li{margin-bottom:var(--space-1)}.info-box .note{background:var(--color-surface);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.8125rem;padding:var(--space-2) var(--space-3)}.setup-guide{background:var(--color-info-bg);border:1px solid #bfdbfe;border-radius:var(--radius-lg);margin-bottom:var(--space-6);overflow:hidden}.setup-guide__header{align-items:flex-start;background:#0000;border:none;color:inherit;display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-5) var(--space-6);text-align:left;width:100%}.setup-guide__header:hover{background:#ffffff59}.setup-guide__title{color:var(--color-info-text);font-size:1rem;margin-bottom:var(--space-1)}.setup-guide__subtitle{color:var(--color-text-secondary);font-size:.875rem;line-height:1.5}.setup-guide__chevron{align-items:center;color:var(--color-info-text);display:inline-flex;flex-shrink:0;font-size:1.125rem;font-weight:700;height:1.5rem;justify-content:center;line-height:1;width:1.5rem}.setup-guide__chevron--lg{font-size:1.25rem;height:2rem;width:2rem}.setup-guide__body{padding:0 var(--space-6) var(--space-6)}.setup-guide__field-map{margin-bottom:var(--space-5)}.setup-guide__field-map h3,.setup-guide__section-title{color:var(--color-info-text);font-size:.9375rem;font-weight:600}.setup-guide__field-map h3{margin-bottom:var(--space-3)}.setup-guide__table{background:var(--color-surface);border-collapse:collapse;border-radius:var(--radius-md);font-size:.8125rem;overflow:hidden;width:100%}.setup-guide__table td,.setup-guide__table th{border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-4);text-align:left;vertical-align:top}.setup-guide__table th{background:#3b82f614;color:var(--color-text);font-weight:600;width:28%}.setup-guide__table tr:last-child td,.setup-guide__table tr:last-child th{border-bottom:none}.setup-guide__table code{font-size:.75rem;word-break:break-all}.setup-guide__section{background:#ffffff73;border:1px solid #bfdbfe;border-radius:var(--radius-md);margin-bottom:var(--space-3);overflow:hidden}.setup-guide__section-toggle{align-items:center;background:#0000;border:none;color:inherit;display:flex;gap:var(--space-3);justify-content:space-between;padding:var(--space-3) var(--space-4);text-align:left;width:100%}.setup-guide__section-toggle:hover{background:#ffffff80}.setup-guide__section-body{padding:0 var(--space-4) var(--space-4)}.setup-guide__bullets,.setup-guide__steps{color:var(--color-text-secondary);font-size:.875rem;line-height:1.65;margin:0;padding-left:var(--space-5)}.setup-guide__bullets>li,.setup-guide__steps>li{margin-bottom:var(--space-3)}.setup-guide__steps ul{margin:var(--space-2) 0 0;padding-left:var(--space-5)}.setup-guide__steps ul li{margin-bottom:var(--space-2)}.setup-guide__code-block{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:block;font-size:.75rem;margin:var(--space-2) 0;padding:var(--space-2) var(--space-3);word-break:break-all}.setup-guide__note{background:var(--color-surface);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.8125rem;margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4)}.setup-guide a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.setup-guide code{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.8125em;padding:.1em .35em}@media (max-width:640px){.setup-guide__table th{width:36%}.setup-guide__body,.setup-guide__header{padding-left:var(--space-4);padding-right:var(--space-4)}}.stats-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.stats-grid--tight{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-bottom:var(--space-4)}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:2px;min-width:0;padding:var(--space-4) var(--space-5)}.stat-card--link{transition:border-color var(--transition-fast)}.stat-card--link:hover{border-color:var(--color-border-strong)}.stat-card__label{color:var(--color-text-secondary);font-size:.8125rem;font-weight:500}.stat-card__value{font-feature-settings:"tnum";font-size:1.5rem;font-variant-numeric:tabular-nums;font-weight:650;letter-spacing:-.02em;line-height:1.25;overflow-wrap:anywhere}.stat-card__hint{color:var(--color-text-secondary);font-size:.75rem}.section-title{color:var(--color-text);font-size:.9375rem;font-weight:600;margin:var(--space-6) 0 var(--space-3)}.card__body>.section-title:first-child,.page>.section-title:first-of-type{margin-top:0}.quick-links{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.quick-link{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);display:flex;font-size:.8125rem;font-weight:550;gap:var(--space-3);padding:var(--space-3) var(--space-4);transition:border-color var(--transition-fast)}.quick-link:hover{border-color:var(--color-border-strong)}.quick-link svg:first-child{color:var(--color-text-secondary);flex-shrink:0}.quick-link svg:last-child{color:var(--color-text-muted);margin-left:auto}.attention-list{list-style:none;margin:0;padding:0}.attention-item{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-5);transition:background var(--transition-fast)}.attention-list li:last-child .attention-item{border-bottom:none;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.attention-item:hover{background:var(--color-surface-subtle)}.attention-item__count{font-feature-settings:"tnum";font-size:1rem;font-variant-numeric:tabular-nums;font-weight:650;min-width:2rem}.attention-item__text{flex:1 1;font-size:.8125rem;min-width:0}.attention-item__title{font-weight:550}.attention-item__sub{color:var(--color-text-secondary);font-size:.75rem}.attention-item>svg{color:var(--color-text-muted);flex-shrink:0}.attention-clear{color:var(--color-text-secondary);font-size:.8125rem;padding:var(--space-5)}.bar-chart{padding:var(--space-5) var(--space-5) var(--space-4)}.bar-chart__plot{border-bottom:1px solid var(--color-border-strong);gap:2px;height:232px}.bar-chart__col,.bar-chart__plot{align-items:flex-end;display:flex;position:relative}.bar-chart__col{background:#0000;border:0;cursor:default;flex:1 1;height:100%;justify-content:center;min-width:0;padding:0}.bar-chart__col:hover{background:var(--color-surface-subtle)}.bar-chart__bar{background:var(--color-primary);border-radius:4px 4px 0 0;min-height:2px;width:min(100%,40px)}.bar-chart__tip{background:var(--color-text);border-radius:var(--radius-sm);bottom:calc(100% - 2.5rem);color:#fff;display:none;font-size:.75rem;left:50%;padding:var(--space-1) var(--space-2);pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:2}.bar-chart__col:focus-visible .bar-chart__tip,.bar-chart__col:hover .bar-chart__tip{display:block}.bar-chart__labels{display:flex;gap:2px;margin-top:var(--space-2)}.bar-chart__label{color:var(--color-text-secondary);flex:1 1;font-size:.6875rem;min-width:0;overflow:hidden;text-align:center;white-space:nowrap}.inline-bar{background:var(--color-primary);border-radius:0 3px 3px 0;height:6px;min-width:1px}.wa-preview{background:#eefbf2;border:1px solid #d3f2dd;border-radius:var(--radius-md);margin-top:var(--space-2);max-width:360px;padding:var(--space-2) var(--space-3)}.wa-preview__header{font-size:.8125rem;font-weight:600;margin-bottom:var(--space-1)}.wa-preview__text{font-size:.8125rem;white-space:pre-wrap}.wa-preview__footer{color:var(--color-text-secondary);font-size:.6875rem;margin-top:var(--space-2)}.wa-preview__button{border-top:1px solid #d3f2dd;color:var(--color-info-text);font-size:.8125rem;font-weight:550;margin-top:var(--space-2);padding-top:var(--space-2);text-align:center}.toast-container{display:flex;flex-direction:column;gap:var(--space-2);max-width:min(400px,calc(100vw - 2rem));pointer-events:none;position:fixed;right:var(--space-4);top:var(--space-4);z-index:200}.toast{align-items:flex-start;animation:modalIn .18s ease-out;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);pointer-events:auto}.toast__icon{align-items:center;display:flex;flex-shrink:0;height:1.125rem;justify-content:center;margin-top:1px;width:1.125rem}.toast--success .toast__icon{color:var(--color-success-text)}.toast--error .toast__icon{color:var(--color-danger-text)}.toast--info .toast__icon{color:var(--color-primary)}.toast__icon svg{height:100%;width:100%}.toast__message{color:var(--color-text);flex:1 1;font-size:.8125rem;font-weight:500}.toast__close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);display:flex;flex-shrink:0;height:1.25rem;justify-content:center;padding:0;width:1.25rem}.toast__close:hover{background:var(--color-neutral-bg);color:var(--color-text)}.toast__close svg{height:.75rem;width:.75rem}.confirm-dialog{animation:modalIn .18s ease-out;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:420px;padding:var(--space-5);width:100%}.confirm-dialog__icon{align-items:center;border-radius:var(--radius-full);display:inline-flex;height:2.25rem;justify-content:center;margin-bottom:var(--space-3);width:2.25rem}.confirm-dialog__icon svg{height:1.125rem;width:1.125rem}.confirm-dialog__icon--danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.confirm-dialog__icon--primary{background:var(--color-primary-light);color:var(--color-primary)}.confirm-dialog__title{font-size:1rem;margin-bottom:var(--space-1)}.confirm-dialog__message{color:var(--color-text-secondary);font-size:.875rem;margin-bottom:var(--space-5)}.confirm-dialog__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.portal-url-card{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;padding:var(--space-4) var(--space-5)}.portal-url{font-weight:550;word-break:break-all}.portal-url--small{font-size:.875rem}@media (max-width:1100px){.panel-grid--wide-left{grid-template-columns:minmax(0,1fr)}}@media (max-width:768px){.data-table--responsive thead{display:none}.data-table--responsive tbody tr{border-bottom:1px solid var(--color-border);display:block;padding:var(--space-3) var(--space-4)}.data-table--responsive tbody tr:last-child{border-bottom:none}.data-table--responsive tbody tr:hover{background:#0000}.data-table--responsive td{align-items:flex-start;border-bottom:none;display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-1) 0;text-align:right}.data-table--responsive td:before{color:var(--color-text-secondary);content:attr(data-label);flex-shrink:0;font-size:.75rem;font-weight:500;text-align:left}.data-table--responsive td.cell-actions{justify-content:flex-end;padding-top:var(--space-2)}.data-table--responsive td.cell-actions:before{display:none}.data-table--responsive .cell-actions .btn-group{flex-wrap:wrap}.data-table--responsive .cell-mono{max-width:170px;white-space:normal;word-break:break-all}.table-wrapper{overflow-x:auto}.stats-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:var(--space-3) var(--space-4)}.stat-card__value{font-size:1.25rem}.data-table--responsive td.cell-mono:before{font-family:var(--font-sans)}.page-header__action,.page-header__action>.btn{width:100%}.form-grid,.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}.search-input{max-width:none}.form-actions .btn,.modal__footer .btn{flex:1 1 auto}.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:94vh}.confirm-dialog__actions .btn{flex:1 1 auto}input,select,textarea{font-size:16px}}@media (max-width:480px){.toast-container{left:var(--space-3);max-width:none;right:var(--space-3)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.spaced-top{margin-top:var(--space-3)}.spaced-bottom{margin-bottom:var(--space-3)}.card--narrow{max-width:480px}.inset-form{margin-top:var(--space-4)}.filter-form--bare{padding:0}form.card.card__body:has(>.filter-form--bare:only-child){padding:var(--space-4)}.stack-tight{align-items:flex-start;display:flex;flex-direction:column;gap:var(--space-1)}.stack-tight .form-select{min-width:9rem}.choice-row{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-4)}.form-label--flush{margin:0}.text-button{background:none;border:0;cursor:pointer;font-size:inherit;padding:0}.text-button:hover{text-decoration:underline}.card__header--bare{border-bottom:0;padding:var(--space-4) 0 var(--space-3)}.cell-details{margin-top:var(--space-1)}.cell-details summary{color:var(--color-text-secondary);cursor:pointer;font-size:.75rem}.form-input--template{min-width:200px}.filter-bar--action{grid-template-columns:minmax(0,1fr) auto}.color-field{align-items:center;display:flex;gap:var(--space-2)}.color-field input[type=color]{background:#0000;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);cursor:pointer;flex-shrink:0;height:36px;padding:2px;width:40px}.brand-preview{margin-top:var(--space-3);padding:var(--space-4)}.brand-preview__row{align-items:center;display:flex;gap:var(--space-3);margin-top:var(--space-2)}.brand-preview__logo{height:32px;object-fit:contain}.brand-preview__swatch{border-radius:50%;display:inline-block;height:16px;width:16px}.filter-bar>.btn,.filter-form>.btn{justify-self:start}
/*# sourceMappingURL=main.53d8a943.css.map*/