:root{--color-canvas:#efeaf2;--color-card:#fff;--color-sidebar:#fff;--color-logo-block:#fceee1;--color-header:#fff;--color-border:#e7e1ee;--color-border-strong:#d9d0e6;--color-text:#384051;--color-text-muted:#7c8296;--color-text-faint:#a7abbb;--color-heading:#2f2740;--color-link:#3f6ad8;--color-sidebar-text:#5b5f70;--color-sidebar-active:#8b3ff0;--color-sidebar-active-bg:#f4ecfd;--color-sidebar-icon:#9a9fb0;--color-yellow:#f5c21b;--color-yellow-dark:#e0ab00;--color-purple-start:#9a34ef;--color-purple-end:#c07cf4;--gradient-purple:linear-gradient(90deg, var(--color-purple-start), var(--color-purple-end));--color-green-btn:#26a996;--color-green-btn-dark:#1f8c7c;--color-icon-edit:#26c4a6;--color-icon-delete:#f77c7c;--color-icon-view:#2e8be6;--color-icon-wallet:#f5c21b;--color-icon-variant:#a855f7;--color-active:#25c07c;--color-inactive:#ee3e56;--color-approved:#22a45d;--color-pending:#ee3e56;--color-subscription:#2e8be6;--color-cod:#22c0a5;--color-completed:#2e6be6;--color-credit:#2e8b57;--color-debit:#a83232;--color-panel-blue:#2e8be6;--color-panel-green:#2e9e5b;--color-panel-cyan:#23c4e6;--color-panel-slate:#5b6470;--color-table-header:#ece6f1;--color-table-row-alt:#f7f4fa;--color-empty-alert:#fbf5d0;--color-empty-alert-text:#8a7a2b;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--shadow-card:0 2px 10px #3c285a0f;--shadow-card-hover:0 6px 18px #3c285a1a;--shadow-header:0 1px 4px #3c285a0f;--font-heading:"Baloo 2", "Comfortaa", "Segoe UI", sans-serif;--font-body:"Open Sans", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--sidebar-width:264px;--sidebar-width-collapsed:84px;--header-height:68px;--transition-fast:.15s ease;--transition-base:.22s ease}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-canvas);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-heading);margin:0;font-weight:700}p{margin:0}a{color:var(--color-link);text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:.92rem}ul,ol{margin:0;padding:0}img{max-width:100%;display:block}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-pill)}::-webkit-scrollbar-track{background:0 0}.app-shell{flex-direction:column;min-height:100vh;display:flex}.btn{border-radius:var(--radius-md);transition:transform var(--transition-fast), box-shadow var(--transition-fast), opacity var(--transition-fast);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.62rem 1.4rem;font-size:.9rem;font-weight:700;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn-yellow{background:var(--color-yellow);color:#4a3400;box-shadow:0 3px 10px #f5c21b66}.btn-yellow:hover{background:var(--color-yellow-dark)}.btn-purple{background:var(--gradient-purple);color:#fff;box-shadow:0 3px 12px #9a34ef59}.btn-purple:hover{box-shadow:0 5px 16px #9a34ef73}.btn-green{background:var(--color-green-btn);color:#fff;box-shadow:0 3px 10px #26a99659}.btn-green:hover{background:var(--color-green-btn-dark)}.btn-outline{border:1.5px solid var(--color-border-strong);color:var(--color-text);background:0 0}.btn-outline:hover{border-color:var(--color-purple-start);color:var(--color-purple-start)}.btn-danger-outline{border:1.5px solid var(--color-inactive);color:var(--color-inactive);background:0 0}.btn-danger-outline:hover{background:var(--color-inactive);color:#fff}.btn-sm{padding:.42rem .9rem;font-size:.8rem}.btn-block{width:100%}.icon-btn{color:#fff;width:34px;height:34px;transition:transform var(--transition-fast), opacity var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{opacity:.92;transform:translateY(-1px)}.icon-btn.is-circle{border-radius:50%}.icon-btn.is-square{border-radius:var(--radius-sm)}.icon-btn svg{width:16px;height:16px}.icon-btn--edit{background:var(--color-icon-edit)}.icon-btn--delete{background:var(--color-icon-delete)}.icon-btn--view{background:var(--color-icon-view)}.icon-btn--wallet{background:var(--color-icon-wallet);color:#4a3400}.icon-btn--variant{background:var(--color-icon-variant)}.icon-btn--list{background:var(--color-icon-wallet);color:#4a3400}.icon-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.form-grid{grid-template-columns:repeat(2,1fr);gap:1.4rem 2rem;display:grid}@media (width<=720px){.form-grid{grid-template-columns:1fr}}.form-field{flex-direction:column;gap:.4rem;min-width:0;display:flex}.form-field.is-full{grid-column:1/-1}.form-label{color:var(--color-heading);font-size:.88rem;font-weight:700}.form-required{color:var(--color-inactive);margin-left:.15rem}.form-control{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-card);width:100%;color:var(--color-text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.62rem .85rem;font-size:.9rem}.form-control::placeholder{color:var(--color-text-faint)}.form-control:focus{border-color:var(--color-purple-start);outline:none;box-shadow:0 0 0 3px #9a34ef24}.form-control:disabled{background:var(--color-canvas);color:var(--color-text-faint)}textarea.form-control{resize:vertical;min-height:90px}.form-hint{color:var(--color-text-muted);font-size:.78rem}.form-error{color:var(--color-inactive);font-size:.78rem;font-weight:600}.form-password-wrap{align-items:stretch;gap:.5rem;display:flex}.form-password-wrap .form-control{flex:1}.form-password-toggle{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-card);color:var(--color-text-muted);flex-shrink:0;justify-content:center;align-items:center;width:46px;display:flex}.form-password-toggle svg{width:17px;height:17px}.form-password-toggle:hover{border-color:var(--color-purple-start);color:var(--color-purple-start)}.form-file{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);align-items:stretch;display:flex;overflow:hidden}.form-file-btn{background:var(--color-table-header);color:var(--color-heading);border-right:1px solid var(--color-border-strong);flex-shrink:0;padding:.6rem 1rem;font-size:.85rem;font-weight:700}.form-file-name{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;padding:.6rem .85rem;font-size:.85rem;overflow:hidden}.form-file input[type=file]{display:none}.form-file-preview{flex-wrap:wrap;gap:.6rem;margin-top:.5rem;display:flex}.form-file-preview img{object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--color-border);width:72px;height:72px}.form-radio-group{align-items:center;gap:1.4rem;min-height:42px;display:flex}.form-radio-option{color:var(--color-text);align-items:center;gap:.45rem;font-size:.88rem;font-weight:600;display:flex}.form-radio-option input{width:16px;height:16px;accent-color:var(--color-purple-start)}.form-checkbox-option{color:var(--color-text);align-items:center;gap:.5rem;font-size:.86rem;font-weight:600;display:flex}.form-checkbox-option input{width:16px;height:16px;accent-color:var(--color-purple-start)}.form-actions{border-top:1px solid var(--color-border);grid-column:1/-1;align-items:center;gap:.85rem;margin-top:1.75rem;padding-top:1.25rem;display:flex}.form-section-title{color:var(--color-heading);text-shadow:0 1px #fff9;grid-column:1/-1;margin:.4rem 0 .2rem;font-size:1rem;font-weight:700}.form-section-divider{border:none;border-top:1px dashed var(--color-border-strong);grid-column:1/-1;margin:.2rem 0 .6rem}.form-banner{border-radius:var(--radius-md);grid-column:1/-1;margin-bottom:1.1rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600}.form-banner--error{color:var(--color-inactive);background:#fdecec;border:1px solid #f7c9c9}.form-banner--success{color:var(--color-approved);background:#e8f8f0;border:1px solid #bfe9d3}.sidebar{width:var(--sidebar-width);background:var(--color-sidebar);border-right:1px solid var(--color-border);height:100vh;transition:width var(--transition-base), transform .3s cubic-bezier(.4, 0, .2, 1);flex-shrink:0;position:sticky;top:0;overflow-y:auto}.sidebar.is-collapsed{width:var(--sidebar-width-collapsed,70px)}.sidebar.is-collapsed .sidebar-link-label,.sidebar.is-collapsed .sidebar-submenu,.sidebar.is-collapsed .sidebar-chevron{display:none!important}.sidebar.is-collapsed .sidebar-logo{font-size:1.1rem}.sidebar-logo-block{height:var(--header-height);background:var(--color-logo-block);border-bottom:1px solid var(--color-border);justify-content:center;align-items:center;display:flex}.sidebar-logo{font-family:var(--font-heading);color:var(--color-purple-start);letter-spacing:.5px;font-size:1.5rem;font-weight:800}.sidebar-nav{flex-direction:column;gap:.15rem;padding:.6rem .75rem 2rem;display:flex}.sidebar-link,.sidebar-group-toggle{text-align:left;border-radius:var(--radius-md);width:100%;color:var(--color-sidebar-text);cursor:pointer;background:0 0;border:none;align-items:center;gap:.7rem;padding:.62rem .75rem;font-size:.9rem;font-weight:600;display:flex}.sidebar-link-icon{width:18px;height:18px;color:var(--color-sidebar-icon);flex-shrink:0}.sidebar-link-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-link:hover,.sidebar-group-toggle:hover{background:var(--color-canvas)}.sidebar-link.is-active{color:var(--color-sidebar-active);background:var(--color-sidebar-active-bg)}.sidebar-link.is-active .sidebar-link-icon,.sidebar-group.is-active>.sidebar-group-toggle,.sidebar-group.is-active>.sidebar-group-toggle .sidebar-link-icon{color:var(--color-sidebar-active)}.sidebar-chevron{width:15px;height:15px;color:var(--color-sidebar-icon);transition:transform var(--transition-base);transform:rotate(-90deg)}.sidebar-chevron.is-open{transform:rotate(0)}.sidebar-submenu{flex-direction:column;gap:.1rem;padding-left:2.1rem;display:none}.sidebar-submenu.is-open{display:flex}.sidebar-sublink{border-radius:var(--radius-sm);color:var(--color-sidebar-text);align-items:center;gap:.45rem;padding:.5rem .6rem;font-size:.87rem;font-weight:500;display:flex}.sidebar-sublink-arrow{color:var(--color-sidebar-icon);font-size:.8rem}.sidebar-sublink:hover{background:var(--color-canvas)}.sidebar-sublink.is-active{color:var(--color-sidebar-active);font-weight:700}.sidebar-sublink.is-active .sidebar-sublink-arrow{color:var(--color-sidebar-active)}@media (width<=768px){aside.sidebar{box-shadow:4px 0 16px #0003;z-index:9999!important;width:260px!important;height:100vh!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;transform:translate(0)!important}aside.sidebar.is-collapsed{width:260px!important;transform:translate(-100%)!important}aside.sidebar.is-collapsed .sidebar-link-label,aside.sidebar.is-collapsed .sidebar-submenu,aside.sidebar.is-collapsed .sidebar-chevron{display:flex}.sidebar-logo-block,.sidebar-link-label{display:flex!important}}.topheader{height:var(--header-height);background:var(--color-header);border-bottom:1px solid var(--color-border);z-index:20;box-shadow:var(--shadow-header);align-items:center;padding:0 1.5rem;display:flex;position:sticky;top:0}.hamburger-btn{border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-muted);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.hamburger-btn:hover{background:var(--color-canvas)}.hamburger-btn svg{width:22px;height:22px}.topheader-spacer{flex:1}.user-menu{position:relative}.user-menu-trigger{border-radius:var(--radius-md);background:0 0;border:none;align-items:center;gap:.55rem;padding:.4rem .6rem;display:flex}.user-menu-trigger:hover{background:var(--color-canvas)}.user-avatar{background:var(--color-table-header);width:34px;height:34px;color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.user-avatar svg{width:18px;height:18px}.user-name{color:var(--color-heading);font-size:.92rem;font-weight:700}.user-caret{width:14px;height:14px;color:var(--color-text-muted)}.user-menu-dropdown{background:var(--color-card);border-radius:var(--radius-md);width:230px;box-shadow:var(--shadow-card-hover);border:1px solid var(--color-border);z-index:30;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.user-menu-header{border-bottom:1px solid var(--color-border);padding:.9rem 1rem}.user-menu-name{color:var(--color-heading);font-size:.9rem;font-weight:700}.user-menu-email{color:var(--color-text-muted);margin-top:.2rem;font-size:.78rem}.user-menu-item{text-align:left;width:100%;color:var(--color-text);background:0 0;border:none;align-items:center;gap:.6rem;padding:.7rem 1rem;font-size:.86rem;font-weight:600;display:flex}.user-menu-item svg{width:16px;height:16px}.user-menu-item:hover{background:var(--color-canvas)}.user-menu-item--danger{color:var(--color-inactive)}.app-layout{background:var(--color-canvas);min-height:100vh;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-content{flex:1;padding:1.75rem 2rem 3rem}@media (width<=900px){.app-content{padding:1.25rem 1rem 2rem}}.async-state{text-align:center;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.9rem;padding:3rem 1.5rem;display:flex}.async-state--error p{color:var(--color-inactive);font-weight:600}.spinner{border:3px solid var(--color-border-strong);border-top-color:var(--color-purple-start);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-alert{background:var(--color-empty-alert);color:var(--color-empty-alert-text);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;font-size:.92rem;font-weight:600;display:flex}.login-screen{background:linear-gradient(135deg, #f6f0fb 0%, var(--color-canvas) 55%, #fdf1e6 100%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{background:var(--color-card);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-card-hover);overflow:hidden}.login-logo-block{background:var(--color-logo-block);justify-content:center;align-items:center;padding:2rem 0 1.5rem;display:flex}.login-logo{font-family:var(--font-heading);color:var(--color-purple-start);letter-spacing:.5px;font-size:2rem;font-weight:800}.login-body{padding:2rem 2.25rem 2.5rem}.login-title{text-align:center;font-size:1.35rem}.login-subtitle{text-align:center;color:var(--color-text-muted);margin-top:.4rem;margin-bottom:1.75rem;font-size:.88rem}.login-form{flex-direction:column;gap:1.15rem;display:flex}.login-submit{margin-top:.5rem;padding:.75rem}.breadcrumb{align-items:center;gap:.35rem;font-size:.88rem;display:flex}.breadcrumb-item{align-items:center;gap:.35rem;display:inline-flex}.breadcrumb-link{color:var(--color-link);font-weight:600;text-decoration:underline}.breadcrumb-sep{color:var(--color-text-faint)}.breadcrumb-current{color:var(--color-text-muted);font-weight:600}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.1rem;display:flex}.page-title{font-size:1.4rem}.stat-card{background:var(--color-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-card);align-items:center;gap:1rem;padding:1.25rem 1.4rem;display:flex}.stat-card-icon{border-radius:var(--radius-md);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:inline-flex}.stat-card-icon svg{width:24px;height:24px}.stat-card--purple .stat-card-icon{background:var(--gradient-purple)}.stat-card--blue .stat-card-icon{background:var(--color-panel-blue)}.stat-card--green .stat-card-icon{background:var(--color-panel-green)}.stat-card--yellow .stat-card-icon{background:var(--color-yellow);color:#4a3400}.stat-card--cyan .stat-card-icon{background:var(--color-panel-cyan)}.stat-card-value{color:var(--color-heading);font-size:1.45rem;font-weight:800;font-family:var(--font-heading);line-height:1.1}.stat-card-label{color:var(--color-text-muted);margin-top:.2rem;font-size:.82rem;font-weight:600}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:1.75rem;display:grid}.dashboard-range{color:var(--color-text-muted);margin-bottom:1.25rem;font-size:.85rem;font-weight:600}.dashboard-placeholder-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.75rem 2rem}.dashboard-placeholder-card h2{margin-bottom:.6rem;font-size:1.15rem}.dashboard-placeholder-card p{color:var(--color-text-muted);max-width:640px;font-size:.9rem;line-height:1.6}.dashboard-placeholder-card code{background:var(--color-table-header);border-radius:4px;padding:.1rem .4rem;font-size:.85em}.ui-card{background:var(--color-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--color-border);overflow:hidden}.ui-card-header{padding:1.25rem 1.5rem .25rem}.ui-card-title{font-size:1.05rem}.ui-card-subtitle{color:var(--color-text-muted);margin-top:.2rem;font-size:.85rem}.ui-card-body{padding:1.25rem 1.5rem 1.5rem}.ui-card-headerbar{color:#fff;padding:.85rem 1.5rem;font-size:.95rem;font-weight:700}.ui-card-headerbar--blue{background:var(--color-panel-blue)}.ui-card-headerbar--green{background:var(--color-panel-green)}.ui-card-headerbar--cyan{background:var(--color-panel-cyan)}.ui-card-headerbar--slate{background:var(--color-panel-slate)}.toolbar-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.1rem;display:flex}.toolbar-left{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.toolbar-right{align-items:center;gap:.75rem;margin-left:auto;display:flex}.pagination{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.pagination-btn{border:1px solid var(--color-border-strong);background:var(--color-card);color:var(--color-text);border-radius:var(--radius-sm);padding:.4rem .85rem;font-size:.85rem;font-weight:600}.pagination-btn:disabled{opacity:.45;cursor:not-allowed}.pagination-btn:not(:disabled):hover{border-color:var(--color-purple-start);color:var(--color-purple-start)}.pagination-page.is-active{background:var(--gradient-purple);color:#fff;border-color:#0000}.pagination-ellipsis{color:var(--color-text-faint);padding:0 .25rem}.datatable-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.1rem;display:flex}.datatable-pagesize{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.88rem;font-weight:600;display:flex}.datatable-pagesize select{border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-card);color:var(--color-text);padding:.35rem .5rem}.datatable-search{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.88rem;font-weight:600;display:flex}.datatable-search-input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-card);align-items:center;gap:.4rem;padding:.32rem .65rem;display:flex}.datatable-search-input svg{width:15px;height:15px;color:var(--color-text-faint)}.datatable-search-input input{border:none;outline:none;width:170px;font-size:.86rem}.datatable-scroll{border-radius:var(--radius-md);border:1px solid var(--color-border);overflow-x:auto}.datatable-table{border-collapse:collapse;width:100%;font-size:.88rem}.datatable-table thead th{background:var(--color-table-header);color:var(--color-heading);text-align:left;white-space:nowrap;-webkit-user-select:none;user-select:none;padding:.75rem 1rem;font-weight:700}.datatable-table thead th.is-sortable{cursor:pointer}.sort-caret{vertical-align:-1px;width:12px;height:12px;color:var(--color-text-faint);transition:transform var(--transition-fast);margin-left:.2rem;display:inline-block}.sort-caret.is-asc{color:var(--color-purple-start);transform:rotate(180deg)}.sort-caret.is-desc{color:var(--color-purple-start)}.datatable-table tbody tr{border-top:1px solid var(--color-border)}.datatable-table tbody tr:nth-child(2n){background:var(--color-table-row-alt)}.datatable-table td{vertical-align:middle;color:var(--color-text);padding:.75rem 1rem}.datatable-empty{text-align:center;color:var(--color-text-muted);font-weight:600;padding:2.2rem 1rem!important}.datatable-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.1rem;display:flex}.datatable-footer-info{color:var(--color-text-muted);font-size:.85rem}.modal-backdrop{z-index:100;background:#1e142d6b;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-panel{background:var(--color-card);border-radius:var(--radius-lg);width:100%;max-width:460px;box-shadow:var(--shadow-card-hover);max-height:90vh;overflow-y:auto}.modal-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:1.1rem 1.4rem;display:flex}.modal-header h3{font-size:1.05rem}.modal-close{color:var(--color-text-muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.modal-close:hover{background:var(--color-canvas)}.modal-close svg{width:16px;height:16px}.modal-body{padding:1.4rem}.status-badge{border-radius:var(--radius-pill);color:#fff;white-space:nowrap;align-items:center;padding:.32rem .85rem;font-size:.76rem;font-weight:700;line-height:1;display:inline-flex}.status-badge.is-active{background:var(--color-active)}.status-badge.is-inactive{background:var(--color-inactive)}.status-badge.is-approved{background:var(--color-approved)}.status-badge.is-pending{background:var(--color-pending)}.status-badge.is-subscription{background:var(--color-subscription)}.status-badge.is-cod{background:var(--color-cod)}.status-badge.is-completed{background:var(--color-completed)}.status-badge.is-credit{background:var(--color-credit)}.status-badge.is-debit{background:var(--color-debit)}.status-badge--toggle{cursor:pointer;transition:opacity var(--transition-fast), transform var(--transition-fast);border:none}.status-badge--toggle:hover:not(:disabled){opacity:.85;transform:translateY(-1px)}.status-badge--toggle:disabled{cursor:not-allowed;opacity:.6}.status-text{font-size:.86rem;font-weight:700}.status-text.is-pending-text{color:var(--color-inactive)}.status-text.is-success-text{color:var(--color-active)}.role-matrix-header{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:1.75rem 0 1rem;padding-top:1.25rem;display:flex}.role-matrix-scroll{border-radius:var(--radius-md);border:1px solid var(--color-border);overflow-x:auto}.role-matrix-table{border-collapse:collapse;width:100%;font-size:.84rem}.role-matrix-table thead th{background:var(--color-table-header);color:var(--color-heading);text-align:center;white-space:nowrap;padding:.65rem .85rem;font-weight:700}.role-matrix-table thead th:first-child{text-align:left}.role-matrix-table tbody tr{border-top:1px solid var(--color-border)}.role-matrix-table tbody tr:nth-child(2n){background:var(--color-table-row-alt)}.role-matrix-table td{text-align:center;padding:.55rem .85rem}.role-matrix-table input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-purple-start)}.role-matrix-module{color:var(--color-text);white-space:nowrap;font-weight:600;text-align:left!important}.card-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;display:grid}.card-grid-item{min-width:0}.card-grid-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.card-grid-pagination-info{color:var(--color-text-muted);font-size:.85rem}.record-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);height:100%;transition:box-shadow var(--transition-base);flex-direction:column;gap:.7rem;padding:1.15rem 1.25rem;display:flex}.record-card:hover{box-shadow:var(--shadow-card-hover)}.record-card.is-selected{border-color:var(--color-purple-start);box-shadow:0 0 0 2px #9a34ef26}.record-card-checkbox{width:18px;height:18px;accent-color:var(--color-purple-start);flex-shrink:0;margin-top:.15rem}.record-card-top{align-items:flex-start;gap:.85rem;display:flex}.record-card-media{background:var(--color-table-header);width:56px;height:56px;color:var(--color-text-faint);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex;overflow:hidden}.record-card-media.is-rect{border-radius:var(--radius-md);width:100%;height:96px}.record-card-media img{object-fit:cover;width:100%;height:100%}.record-card-heading{flex:1;min-width:0}.record-card-title{color:var(--color-heading);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:700;overflow:hidden}.record-card-meta{color:var(--color-text-muted);margin-top:.15rem;font-size:.8rem}.record-card-rows{flex-direction:column;gap:.4rem;font-size:.85rem;display:flex}.record-card-row{justify-content:space-between;gap:.75rem;display:flex}.record-card-row-label{color:var(--color-text-muted);font-weight:600}.record-card-row-value{color:var(--color-text);text-align:right;font-weight:600}.record-card-badges{flex-wrap:wrap;gap:.4rem;display:flex}.record-card-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto;padding-top:.6rem;display:flex}.filter-bar{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:.85rem;margin-bottom:1.25rem;padding:1rem 1.25rem;display:flex}.filter-bar-field{flex-direction:column;gap:.3rem;min-width:170px;display:flex}.filter-bar-field label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:.76rem;font-weight:700}.filter-bar-search{flex:1;min-width:220px}.filter-bar-search-input{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-card);align-items:center;gap:.5rem;padding:.55rem .85rem;display:flex}.filter-bar-search-input svg{width:16px;height:16px;color:var(--color-text-faint);flex-shrink:0}.filter-bar-search-input input{border:none;outline:none;width:100%;font-size:.88rem}.vendor-address-header{justify-content:flex-end;margin-bottom:.75rem;display:flex}.vendor-address-grid{grid-template-columns:repeat(3,1fr);gap:1.1rem 1.5rem;display:grid}@media (width<=900px){.vendor-address-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.vendor-address-grid{grid-template-columns:1fr}}.vendor-address-field{flex-direction:column;gap:.25rem;display:flex}.vendor-address-field.is-full{grid-column:1/-1}.vendor-address-value{color:var(--color-text);font-size:.9rem;font-weight:600}.vendor-address-shop-image{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1.25rem}.vendor-address-shop-image img{border-radius:var(--radius-md);border:1px solid var(--color-border);max-width:260px;margin-top:.5rem}.info-grid{gap:1rem 1.5rem;display:grid}.info-field{flex-direction:column;gap:.25rem;min-width:0;display:flex}.info-field-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:.78rem;font-weight:700}.info-field-value{color:var(--color-text);word-break:break-word;font-size:.92rem;font-weight:600}.order-details-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.order-details-full{grid-column:1/-1}@media (width<=900px){.order-details-grid{grid-template-columns:1fr}}.order-items-scroll{border-radius:var(--radius-md);border:1px solid var(--color-border);overflow-x:auto}.order-items-table{border-collapse:collapse;width:100%;font-size:.86rem}.order-items-table thead th{background:var(--color-table-header);color:var(--color-heading);text-align:left;white-space:nowrap;padding:.65rem .9rem;font-weight:700}.order-items-table tbody tr{border-top:1px solid var(--color-border)}.order-items-table td{vertical-align:middle;color:var(--color-text);padding:.6rem .9rem}.order-schedule-select{padding:.3rem .5rem;font-size:.8rem}.chat-actions{border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem;padding-bottom:1.1rem;display:flex}.chat-thread{flex-direction:column;gap:.75rem;max-height:420px;padding:.25rem .25rem 1rem;display:flex;overflow-y:auto}.chat-bubble-row{display:flex}.chat-bubble-row.is-admin{justify-content:flex-end}.chat-bubble-row.is-vendor,.chat-bubble-row.is-customer{justify-content:flex-start}.chat-bubble{border-radius:var(--radius-md);background:var(--color-table-header);max-width:70%;padding:.65rem .9rem}.chat-bubble-row.is-admin .chat-bubble{background:var(--gradient-purple);color:#fff}.chat-bubble-row.is-vendor .chat-bubble{background:#e5f2fd}.chat-bubble-sender{opacity:.85;margin-bottom:.15rem;font-size:.74rem;font-weight:700}.chat-bubble-message{white-space:pre-wrap;font-size:.88rem}.chat-bubble-price{margin-top:.35rem;font-size:.9rem;font-weight:800}.chat-bubble-time{opacity:.7;margin-top:.3rem;font-size:.7rem}.chat-composer{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.chat-composer-row{align-items:flex-end;gap:.6rem;display:flex}.chat-composer-input{flex:1;min-height:44px}.chat-composer-price{width:160px}.sr-details-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}.sr-details-full{grid-column:1/-1}.sr-images{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:.6rem;margin-top:1.25rem;padding-top:1.1rem;display:flex}.sr-images img{object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--color-border);width:96px;height:96px}.sr-vendor-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.sr-vendor-tab{border:1px solid var(--color-border-strong);background:var(--color-card);color:var(--color-text);border-radius:var(--radius-pill);padding:.5rem 1rem;font-size:.85rem;font-weight:700}.sr-vendor-tab.is-active{background:var(--gradient-purple);color:#fff;border-color:#0000}.lead-details-stack{flex-direction:column;gap:1.25rem;display:flex}.lead-timeline{flex-direction:column;gap:1rem;display:flex}.lead-timeline-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-table-row-alt);padding:.9rem 1.1rem}.lead-timeline-header{align-items:center;gap:.6rem;margin-bottom:.5rem;display:flex}.lead-timeline-date{color:var(--color-text-muted);font-size:.78rem;font-weight:600}.lead-timeline-notes{color:var(--color-text);margin-bottom:.4rem;font-size:.88rem}.lead-timeline-by{color:var(--color-text-faint);font-size:.76rem;font-weight:600}
