body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.toast-stack{flex-direction:column;max-width:360px;position:fixed;right:var(--space-5);top:var(--space-5);z-index:1000}.toast,.toast-stack{display:flex;gap:var(--space-2)}.toast{align-items:flex-start;animation:toast-in .18s ease;background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);color:var(--text-primary);font-size:14px;padding:12px 14px}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.toast-icon{align-items:center;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:12px;font-weight:700;height:20px;justify-content:center;width:20px}.toast-success .toast-icon{background:var(--status-good)}.toast-error .toast-icon{background:var(--status-critical)}.toast-info .toast-icon{background:var(--brand-400)}.toast-message{flex:1 1;line-height:1.4}.toast-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;line-height:1;padding:0}.toast-close:hover{color:var(--text-primary)}.modal-overlay{align-items:center;animation:overlay-in .15s ease;background:#0b0b0b73;display:flex;inset:0;justify-content:center;padding:var(--space-5);position:fixed;z-index:900}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.modal-panel{animation:panel-in .18s ease;background:var(--surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:88vh;width:100%}@keyframes panel-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:flex-start;border-bottom:1px solid var(--border-hairline);display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-5) var(--space-5) var(--space-4)}.modal-header h2{font-size:18px;font-weight:700}.modal-subtitle{color:var(--text-secondary);font-size:13px;margin-top:4px}.modal-close{background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:22px;line-height:1;padding:4px}.modal-close:hover{background:var(--surface-hover);color:var(--text-primary)}.modal-body{overflow-y:auto;padding:var(--space-5)}.modal-footer{border-top:1px solid var(--border-hairline);display:flex;gap:var(--space-3);justify-content:flex-end;padding:var(--space-4) var(--space-5)}.app-shell{display:flex;min-height:100vh}.sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:color-mix(in srgb,var(--surface-card) 94%,#0000);border-right:1px solid var(--border-hairline);box-shadow:4px 0 24px color-mix(in srgb,var(--text-primary) 4%,#0000);display:flex;flex-direction:column;flex-shrink:0;height:100vh;padding:var(--space-5) var(--space-4);position:-webkit-sticky;position:sticky;top:0;width:var(--sidebar-width)}.brand{align-items:center;display:flex;gap:var(--space-3);margin-bottom:var(--space-6);padding:0 var(--space-2)}.brand-mark{align-items:center;background:var(--brand-gradient);border-radius:var(--radius-sm);box-shadow:var(--brand-glow);color:#fff;display:inline-flex;flex-shrink:0;font-size:16px;font-weight:800;height:36px;justify-content:center;width:36px}.brand-mark img{height:58%;object-fit:contain;width:58%}.brand-name{color:var(--text-primary);font-size:14px;font-weight:700}.brand-sub{color:var(--text-muted);font-size:12px}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.sidebar-link{align-items:center;border-left:3px solid #0000;border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;font-size:14px;font-weight:600;gap:var(--space-3);padding:10px var(--space-3);text-decoration:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.sidebar-link:hover{background:var(--surface-hover);color:var(--text-primary)}.sidebar-link-active{background:linear-gradient(90deg,color-mix(in srgb,var(--brand-400) 16%,#0000),color-mix(in srgb,var(--brand-400) 4%,#0000));border-left-color:var(--brand-400);color:var(--brand-400)}.sidebar-icon{font-size:16px;text-align:center;width:20px}.app-main{display:flex;flex:1 1;flex-direction:column;min-width:0}.topbar{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in srgb,var(--surface-card) 82%,#0000);border-bottom:1px solid var(--border-hairline);display:flex;flex-shrink:0;height:var(--topbar-height);justify-content:space-between;padding:0 var(--space-6);position:-webkit-sticky;position:sticky;top:0;z-index:10}.topbar-title{color:var(--text-primary);font-size:15px;font-weight:700}.topbar-user{align-items:center;display:flex;gap:var(--space-3)}.user-avatar{align-items:center;background:var(--brand-gradient);border-radius:50%;box-shadow:var(--brand-glow);color:#fff;display:inline-flex;font-size:13px;font-weight:700;height:32px;justify-content:center;width:32px}.user-name{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.2}.user-role{color:var(--text-muted);font-size:11px}.app-content{flex:1 1}@media (max-width:860px){.sidebar{align-items:center;border-right:none;border-top:1px solid var(--border-hairline);bottom:0;flex-direction:row;height:auto;left:0;padding:var(--space-2);position:fixed;top:auto;width:100%;z-index:20}.brand{display:none}.sidebar-nav{flex-direction:row;justify-content:space-around;width:100%}.sidebar-link{flex-direction:column;font-size:11px;gap:4px;padding:6px}.app-main{padding-bottom:64px}}.form-field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-4)}.form-field label{color:var(--text-primary);font-size:13px;font-weight:600}.required-mark{color:var(--status-critical)}.field-control{align-items:stretch;display:flex;position:relative}.field-control.with-prefix{align-items:center}.field-prefix{color:var(--text-muted);font-size:14px;left:12px;pointer-events:none;position:absolute}.field-control.with-prefix input{padding-left:28px}.form-field input,.form-field select,.form-field textarea{background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.form-field textarea{min-height:80px;resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--brand-400);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-400) 20%,#0000);outline:none}.form-field input:disabled,.form-field select:disabled,.form-field textarea:disabled{background:var(--surface-sunken);color:var(--text-muted);cursor:not-allowed}.form-field-invalid input,.form-field-invalid select,.form-field-invalid textarea{border-color:var(--status-critical)}.form-field-invalid input:focus,.form-field-invalid select:focus,.form-field-invalid textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--status-critical) 18%,#0000)}.field-message{font-size:12.5px;line-height:1.4}.field-error{color:var(--status-critical);font-weight:600}.field-hint{color:var(--text-muted)}.login-page{align-items:center;background:radial-gradient(700px 500px at 12% 8%,color-mix(in srgb,var(--brand-400) 24%,#0000),#0000 60%),radial-gradient(650px 480px at 88% 12%,color-mix(in srgb,var(--series-3) 20%,#0000),#0000 58%),radial-gradient(750px 560px at 50% 100%,color-mix(in srgb,var(--series-7) 18%,#0000),#0000 58%),var(--surface-page);display:flex;justify-content:center;min-height:100vh;padding:var(--space-5)}.login-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:color-mix(in srgb,var(--surface-card) 82%,#0000);box-shadow:var(--shadow-lg);max-width:400px;width:100%}.login-brand{margin-bottom:var(--space-5);text-align:center}.login-brand .brand-mark{align-items:center;background:var(--brand-gradient);border-radius:var(--radius-md);box-shadow:var(--brand-glow);color:#fff;display:inline-flex;font-size:20px;font-weight:800;height:56px;justify-content:center;margin-bottom:var(--space-3);width:56px}.login-brand .brand-mark img{height:58%;object-fit:contain;width:58%}.login-brand h1{color:var(--text-primary);font-size:20px;font-weight:700}.login-brand p{color:var(--text-secondary);font-size:13px;margin-top:6px}.login-alert{background:color-mix(in srgb,var(--status-critical) 12%,#0000);border:1px solid color-mix(in srgb,var(--status-critical) 30%,#0000);border-radius:var(--radius-sm);color:var(--status-critical);font-size:13px;font-weight:600;margin-bottom:var(--space-4);padding:10px 12px;text-align:center}.login-submit{font-size:15px;margin-top:var(--space-2);padding:12px;width:100%}.stat-card{border-top-width:3px;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.stat-card-top{align-items:center;display:flex;justify-content:space-between}.stat-label{color:var(--text-secondary);font-size:13px;font-weight:600}.stat-icon{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-size:16px;height:32px;justify-content:center;width:32px}.stat-value{font-feature-settings:"pnum";color:var(--text-primary);font-size:30px;font-variant-numeric:proportional-nums;font-weight:700}.stat-hint{color:var(--text-muted);font-size:12.5px}.stat-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(4,1fr);margin-bottom:var(--space-5)}.dashboard-grid{grid-gap:var(--space-5);align-items:stretch;display:grid;gap:var(--space-5);grid-template-columns:2fr 1fr}.chart-card-header{margin-bottom:var(--space-4)}.chart-card-header h2{font-size:16px;font-weight:700}.chart-tooltip{background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);font-size:12.5px;padding:10px 12px}.chart-tooltip-title{color:var(--text-primary);font-weight:700}.chart-tooltip-sub{color:var(--text-muted);margin:2px 0 6px}.chart-tooltip-value{color:var(--brand-400);font-weight:700}.mini-list{display:flex;flex-direction:column;gap:var(--space-2);list-style:none;margin:0;padding:0}.mini-list li{align-items:center;border-bottom:1px solid var(--border-hairline);display:flex;font-size:14px;justify-content:space-between;padding:10px 0}.mini-list li:last-child{border-bottom:none}.mini-list-value{background:var(--surface-sunken);border-radius:999px;color:var(--text-primary);font-size:13px;font-weight:700;padding:2px 10px}.recent-clients{display:flex;flex-direction:column;gap:var(--space-1);list-style:none;margin:0;padding:0}.recent-clients li{align-items:center;border-bottom:1px solid var(--border-hairline);display:flex;gap:var(--space-3);padding:var(--space-3) 0}.recent-clients li:last-child{border-bottom:none}.recent-client-avatar{align-items:center;background:var(--surface-sunken);border-radius:50%;color:var(--text-secondary);display:inline-flex;flex-shrink:0;font-weight:700;height:36px;justify-content:center;width:36px}.recent-client-info{flex:1 1;min-width:0}@media (max-width:960px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media (max-width:520px){.stat-grid{grid-template-columns:1fr}}.data-table{border-collapse:collapse;font-size:14px;min-width:640px;width:100%}.data-table th{color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.data-table td,.data-table th{border-bottom:1px solid var(--border-hairline);padding:var(--space-3) var(--space-4)}.data-table td{color:var(--text-primary);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--surface-hover)}.data-table tbody tr.row-clickable{cursor:pointer}.row-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.cell-title{font-weight:600}.cell-muted{color:var(--text-secondary)}.packages-filter-bar{align-items:center;display:flex;gap:var(--space-3);margin-bottom:var(--space-5)}.packages-filter-bar label{color:var(--text-secondary);font-size:13px;font-weight:600}.packages-filter-bar select{background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;min-width:220px;padding:8px 12px}.packages-filter-bar select:focus{border-color:var(--brand-400);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-400) 20%,#0000);outline:none}.packages-group{margin-bottom:var(--space-6)}.packages-group-title{align-items:center;display:flex;font-size:15px;font-weight:700;gap:var(--space-2);margin-bottom:var(--space-3)}.packages-group-count{background:var(--surface-sunken);border-radius:999px;color:var(--text-secondary);font-size:12px;font-weight:600;padding:2px 9px}.package-detail-back{display:inline-flex;margin-bottom:var(--space-4)}.package-detail-badges{display:flex;gap:var(--space-2);margin-bottom:var(--space-5)}.badge-plan{background:color-mix(in srgb,var(--brand-400) 14%,#0000);color:var(--brand-500)}.package-detail-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(3,1fr);margin-bottom:var(--space-5)}.package-detail-stat{display:flex;flex-direction:column;gap:6px}.package-detail-stat-label{color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.package-detail-stat-value{color:var(--text-primary);font-size:20px;font-weight:700}.package-detail-description{margin-bottom:var(--space-5)}.package-detail-description h2{font-size:16px;font-weight:700;margin-bottom:var(--space-3)}.package-detail-description-text{color:var(--text-primary);font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.package-detail-description-empty{color:var(--text-muted);font-size:14px;margin:0}.package-detail-meta{display:flex;gap:var(--space-7)}.package-detail-meta p{color:var(--text-secondary);font-size:14px;margin-top:4px}@media (max-width:720px){.package-detail-grid{grid-template-columns:1fr}.package-detail-meta{flex-direction:column;gap:var(--space-3)}}:root{--surface-page:#f9f9f7;--surface-card:#fff;--surface-sunken:#f2f1ee;--surface-hover:#eef0f4;--text-primary:#0b0b0b;--text-secondary:#52514e;--text-muted:#898781;--text-on-brand:#fff;--border-hairline:#e1e0d9;--border-strong:#c3c2b7;--brand-50:#ffe1d3;--brand-100:#ffb595;--brand-400:#e8481f;--brand-500:#cf3814;--brand-600:#a52a0d;--brand-700:#7a1f0a;--brand-gradient:linear-gradient(135deg,#ff7a45 0%,var(--brand-400) 45%,var(--brand-600) 100%);--brand-glow:0 8px 24px color-mix(in srgb,var(--brand-400) 35%,#0000);--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#4a3aa7;--series-8:#e34948;--status-good:#0ca30c;--status-warning:#fab219;--status-serious:#ec835a;--status-critical:#d03b3b;--status-neutral:#898781;--gridline:#e1e0d9;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:0 1px 2px #0b0b0b0f;--shadow-md:0 4px 16px #0b0b0b14;--shadow-lg:0 12px 32px #0b0b0b24;--sidebar-width:248px;--topbar-height:64px;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--surface-page:#0d0d0d;--surface-card:#1a1a19;--surface-sunken:#161615;--surface-hover:#232320;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#898781;--text-on-brand:#fff;--border-hairline:#2c2c2a;--border-strong:#383835;--brand-400:#ff6b3d;--brand-500:#e8481f;--brand-600:#b8380f;--brand-700:#8a2a0b;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--status-good:#0ca30c;--status-warning:#fab219;--status-serious:#ec835a;--status-critical:#d03b3b;--status-neutral:#898781;--gridline:#2c2c2a;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #00000059;--shadow-lg:0 12px 32px #00000073;color-scheme:dark}}:root[data-theme=dark]{--surface-page:#0d0d0d;--surface-card:#1a1a19;--surface-sunken:#161615;--surface-hover:#232320;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#898781;--text-on-brand:#fff;--border-hairline:#2c2c2a;--border-strong:#383835;--brand-400:#ff6b3d;--brand-500:#e8481f;--brand-600:#b8380f;--brand-700:#8a2a0b;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--gridline:#2c2c2a;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #00000059;--shadow-lg:0 12px 32px #00000073;color-scheme:dark}*{box-sizing:border-box}body,html{-webkit-font-smoothing:antialiased;color:var(--text-primary);font-family:system-ui,-apple-system,Segoe UI,sans-serif;margin:0;padding:0}body{background:radial-gradient(1100px 620px at 6% -8%,color-mix(in srgb,var(--brand-400) 16%,#0000),#0000 60%),radial-gradient(900px 560px at 104% 0,color-mix(in srgb,var(--series-3) 14%,#0000),#0000 55%),radial-gradient(900px 620px at 50% 115%,color-mix(in srgb,var(--series-7) 11%,#0000),#0000 55%),var(--surface-page);background-attachment:fixed}#root{min-height:100vh}h1,h2,h3,h4,p{margin:0}button{font-family:inherit}a{color:inherit}.btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:var(--space-2);justify-content:center;padding:10px 18px;transition:background-color .15s ease,border-color .15s ease,transform .05s ease;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.55;transform:none}.btn-primary{background:var(--brand-gradient);box-shadow:0 2px 10px color-mix(in srgb,var(--brand-400) 30%,#0000);color:var(--text-on-brand)}.btn-primary:hover:not(:disabled){box-shadow:var(--brand-glow);filter:brightness(1.05)}.btn-secondary{background:var(--surface-card);border-color:var(--border-strong);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--surface-hover)}.btn-danger{background:var(--surface-card);border-color:var(--status-critical);color:var(--status-critical)}.btn-danger:hover:not(:disabled){background:var(--status-critical);color:#fff}.btn-ghost{background:#0000;border-color:#0000;color:var(--text-secondary);padding:8px 12px}.btn-ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.btn-sm{font-size:13px;padding:6px 12px}.badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;line-height:1;padding:4px 10px}.badge:before{background:currentColor;border-radius:50%;content:"";height:6px;width:6px}.badge-active{background:color-mix(in srgb,var(--status-good) 14%,#0000);color:var(--status-good)}.badge-inactive{background:color-mix(in srgb,var(--status-neutral) 16%,#0000);color:var(--status-neutral)}.page{margin:0 auto;max-width:1180px;padding:var(--space-6) var(--space-5) var(--space-8)}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-5)}.page-header h1{font-size:22px;font-weight:700}.page-subtitle{color:var(--text-secondary);font-size:14px;margin-top:4px}.card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:color-mix(in srgb,var(--surface-card) 96%,#0000);border:1px solid var(--border-hairline);border-radius:var(--radius-md);border-top:2px solid color-mix(in srgb,var(--brand-400) 32%,var(--border-hairline));box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,transform .2s ease}.card-padded{padding:var(--space-5)}.empty-state{color:var(--text-secondary);padding:var(--space-7) var(--space-5);text-align:center}.empty-state h3{color:var(--text-primary);font-size:16px;margin-bottom:var(--space-2)}.scroll-x{overflow-x:auto}