:root{--bg-body:#f5f7fb;--bg-sidebar:#fff;--bg-main:#f8faff;--bg-card:#fff;--border-color:#e9edf4;--text-primary:#0b1e33;--text-secondary:#1f2a44;--text-muted:#6b7e9c;--text-light:#4a5e7a;--accent:#1a5cff;--accent-bg:#eef3fe;--shadow:0 2px 8px rgba(0,20,50,.04);--hover-bg:#f0f4fc;--table-border:#f0f4fc;--status-active-bg:#e4f0e7;--status-active-text:#0f6e3f;--status-warning-bg:#fff3db;--status-warning-text:#a86800;--status-inactive-bg:#f0f2f5;--status-inactive-text:#5d6f88;--status-danger-bg:#fee2e2;--status-danger-text:#991b1b;--select-bg:#f5f8fe;--select-border:#e2e9f2;--package-bg:#f8faff;--toggle-bg:#d1d5db;--danger:#c23434}html.dark{--bg-body:#121826;--bg-sidebar:#1a2132;--bg-main:#171f2e;--bg-card:#1f283a;--border-color:#2d3649;--text-primary:#e9edf4;--text-secondary:#cfd7e6;--text-muted:#8b9bb5;--text-light:#a0b0c9;--accent:#4a7aff;--accent-bg:#26344b;--shadow:0 2px 8px rgba(0,0,0,.2);--hover-bg:#26344b;--table-border:#2d3649;--status-active-bg:#1e3a2a;--status-active-text:#7bcb9e;--status-warning-bg:#3d2e15;--status-warning-text:#e6b86b;--status-inactive-bg:#2a3346;--status-inactive-text:#9aabbf;--status-danger-bg:#3d1a1a;--status-danger-text:#e68b8b;--select-bg:#1f283a;--select-border:#2d3649;--package-bg:#1f283a;--toggle-bg:#4a5e7a;--danger:#e05d5d}*{margin:0;padding:0;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}body{background:var(--bg-body);color:var(--text-secondary);display:flex;min-height:100vh;transition:background .2s,color .2s}a{color:inherit;text-decoration:none}.sidebar{width:260px;background:var(--bg-sidebar);border-right:1px solid var(--border-color);padding:28px 20px;display:flex;flex-direction:column;flex-shrink:0;min-height:100vh;transition:background .2s,border .2s}.sidebar .logo{font-weight:700;font-size:22px;letter-spacing:-.3px;margin-bottom:32px;color:var(--text-primary);display:flex;align-items:center;gap:8px}.sidebar .logo svg{color:var(--accent)}.sidebar .nav-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin:20px 0 10px 8px;font-weight:600}.sidebar .nav-item{display:flex;align-items:center;gap:14px;padding:10px 14px;border-radius:10px;color:var(--text-secondary);font-weight:500;font-size:14px;transition:.15s;margin-bottom:2px}.sidebar .nav-item svg{flex-shrink:0;color:var(--text-muted)}.sidebar .nav-item.active{background:var(--accent-bg);color:var(--accent)}.sidebar .nav-item.active svg{color:var(--accent)}.sidebar .nav-item:hover:not(.active){background:var(--hover-bg)}.sidebar .bottom-section{margin-top:auto;border-top:1px solid var(--border-color);padding-top:24px}.sidebar .user-card{display:flex;align-items:center;gap:12px;padding:8px 4px}.sidebar .user-card .avatar{width:40px;height:40px;background:var(--accent);border-radius:40px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;flex-shrink:0}.sidebar .user-card .user-info .name{font-weight:600;color:var(--text-primary);font-size:14px}.sidebar .user-card .user-info .email{color:var(--text-muted);font-size:12px;word-break:break-all}.sidebar form{margin-top:4px}.sidebar .logout-btn{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:6px 4px}.sidebar .logout-btn:hover{color:var(--danger)}.theme-toggle{display:flex;gap:4px;margin-top:16px;background:var(--hover-bg);padding:4px;border-radius:40px;width:-moz-fit-content;width:fit-content;font-size:12px;font-weight:500;color:var(--text-secondary)}.theme-toggle button{display:flex;align-items:center;padding:6px 10px;border-radius:30px;cursor:pointer;transition:.1s;background:none;border:none;color:inherit}.theme-toggle button.active{background:var(--bg-card);box-shadow:0 2px 6px rgba(0,0,0,.06);color:var(--text-primary)}.main{flex:1 1;padding:28px 32px 60px;background:var(--bg-main);transition:background .2s;min-width:0}.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;flex-wrap:wrap;gap:12px}.top-bar h1{font-size:26px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px}.top-bar .actions{display:flex;gap:10px;align-items:center}.tray-btn,.tray-item{position:relative}.tray-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:.15s}.tray-btn:hover{color:var(--text-primary);border-color:var(--text-muted)}.flag-icon{display:block;object-fit:cover}.flag-fallback,.flag-icon{flex-shrink:0;border-radius:2px;border:1px solid var(--border-color)}.flag-fallback{display:flex;align-items:center;justify-content:center;background:var(--hover-bg);color:var(--text-muted);font-size:8px;font-weight:700;letter-spacing:.02em}.tray-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 3px;border-radius:8px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center}.tray-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow);padding:6px;z-index:40}[dir=rtl] .tray-dropdown{right:auto;left:0}.lang-dropdown{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));grid-gap:2px;gap:2px;max-height:60vh;overflow-y:auto}.lang-option{display:flex;align-items:center;gap:8px;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:13px;text-align:left;cursor:pointer;white-space:nowrap}.lang-option:hover{background:var(--hover-bg)}.lang-option.active{background:var(--accent);color:#fff}.menu-dropdown{min-width:220px;display:flex;flex-direction:column;gap:2px}.menu-option{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:8px;color:var(--text-primary);font-size:13px;text-decoration:none}.menu-option:hover{background:var(--hover-bg)}.notif-dropdown{min-width:260px}.notif-empty{padding:10px;font-size:13px;color:var(--text-muted)}.callout-icon svg,.chart-header .title svg,.section-title .left svg,.table-header h3 svg{color:var(--accent);flex-shrink:0}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px;margin-bottom:28px}.kpi-grid.cols-3{grid-template-columns:repeat(3,1fr)}.kpi-card{background:var(--bg-card);border-radius:18px;padding:20px 24px;box-shadow:var(--shadow);border:1px solid var(--border-color);transition:background .2s,border .2s}.kpi-card .label{font-size:13px;font-weight:500;color:var(--text-muted);letter-spacing:.2px;margin-bottom:6px}.kpi-card .value{font-size:30px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.kpi-card .sub{font-size:13px;color:var(--text-light);margin-top:6px;font-weight:500}.kpi-card .sub.up{color:#0f8b5e}.kpi-card .sub.down{color:#c23434}.badge-link{font-size:13px;color:var(--accent);font-weight:500;margin-top:8px;display:inline-block}.badge-link:hover{text-decoration:underline}.chart-section{background:var(--bg-card);border-radius:18px;padding:20px 24px 28px;border:1px solid var(--border-color);margin-bottom:28px}.chart-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}.chart-header .title{font-weight:600;font-size:16px;color:var(--text-primary);display:flex;align-items:center;gap:8px}.chart-header .title small{font-weight:400;font-size:13px;color:var(--text-muted)}.chart-controls{display:flex;gap:10px;flex-wrap:wrap}.chart-wrapper{position:relative;height:240px;justify-content:center}.chart-period,.chart-wrapper{display:flex;align-items:center}.chart-period{gap:6px;font-size:13px;color:var(--text-muted);margin-top:8px;justify-content:flex-end}.table-section{background:var(--bg-card);border-radius:18px;padding:16px 20px 24px;border:1px solid var(--border-color);margin-bottom:28px;overflow-x:auto}.table-section .table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:10px}.table-section .table-header h3{font-size:16px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:10px}.table-section .table-header .hint{font-size:13px;color:var(--text-muted)}table{width:100%;border-collapse:collapse;font-size:14px;min-width:600px}table th{text-align:left;padding:12px 8px 10px;font-weight:600;color:var(--text-light);font-size:12px;text-transform:uppercase;letter-spacing:.3px}table td,table th{border-bottom:1px solid var(--table-border)}table td{padding:14px 8px;color:var(--text-secondary);vertical-align:middle}table tr:last-child td{border-bottom:none}.empty-row td{color:var(--text-muted);text-align:center;padding:32px 8px}.status-badge{background:var(--status-active-bg);color:var(--status-active-text);font-weight:500;font-size:12px;padding:4px 12px;border-radius:40px;display:inline-block;white-space:nowrap}.status-badge.warning{background:var(--status-warning-bg);color:var(--status-warning-text)}.status-badge.inactive{background:var(--status-inactive-bg);color:var(--status-inactive-text)}.status-badge.danger{background:var(--status-danger-bg);color:var(--status-danger-text)}.package-section{background:var(--bg-card);border-radius:18px;padding:20px 24px 28px;border:1px solid var(--border-color);margin-bottom:28px}.package-section.bare{border:none;padding:0;background:transparent;margin-bottom:0}.section-title{font-weight:600;font-size:16px;color:var(--text-primary);margin-bottom:16px;justify-content:space-between;flex-wrap:wrap}.section-title,.section-title .left{display:flex;align-items:center;gap:10px}.section-title .actions{display:flex;gap:8px;flex-wrap:wrap}.package-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.package-card{background:var(--package-bg);border-radius:14px;padding:16px 18px;border:1px solid var(--border-color)}.package-card .pkg-name{font-weight:600;font-size:15px;color:var(--text-primary);display:flex;align-items:center;gap:8px}.package-card .pkg-detail{font-size:13px;color:var(--text-light);margin:4px 0 8px}.package-card .pkg-price{font-weight:700;color:var(--text-primary);font-size:16px}.package-card .pkg-price .wholesale{font-weight:400;font-size:13px;color:var(--text-muted)}.package-card .pkg-actions{margin-top:10px;gap:14px;flex-wrap:wrap}.package-card .pkg-actions,.package-card .pkg-actions button{display:flex;font-size:13px;color:var(--accent);font-weight:500}.package-card .pkg-actions button{align-items:center;gap:5px;background:none;border:none;cursor:pointer;padding:0}.package-card .pkg-actions button.danger{color:var(--danger)}.btn-outline,.btn-primary{display:inline-flex;align-items:center;gap:6px;border-radius:40px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap}.btn-outline{background:transparent;border:1px solid var(--border-color);padding:7px 16px;color:var(--text-secondary);transition:border .2s,background .2s}.btn-outline:hover{background:var(--hover-bg)}.btn-primary{background:var(--accent);border:none;padding:8px 18px;color:#fff}.btn-primary:hover{opacity:.92}.btn-outline:disabled,.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:var(--danger);color:#fff;border:none}.icon-btn{background:none;border:none;cursor:pointer;color:var(--accent);display:inline-flex;padding:4px;border-radius:6px}.icon-btn:hover{background:var(--hover-bg)}.icon-btn.danger{color:var(--danger)}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.form-group{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:600;font-size:13px;color:var(--text-light)}.form-input,.form-select,.form-textarea,.omax-input,.omax-select{padding:9px 14px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-body);color:var(--text-primary);font-size:14px;width:100%}.form-textarea{resize:vertical}.form-checkbox{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary)}.form-checkbox input{width:18px;height:18px;accent-color:var(--accent)}.form-actions{display:flex;gap:12px;margin-top:4px}.form-error{color:var(--danger);font-size:13px;margin-top:-8px;margin-bottom:12px}.form-hint{font-size:12px;color:var(--text-muted);margin-top:-2px}.edit-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:20px 24px;margin-bottom:20px}.edit-panel h4{color:var(--text-primary);margin-bottom:14px;font-size:15px}.tab-bar{display:flex;gap:8px;margin-bottom:24px;border-bottom:1px solid var(--border-color);padding-bottom:12px;flex-wrap:wrap}.tab-btn{background:none;border:none;padding:8px 20px;font-weight:600;color:var(--text-secondary);cursor:pointer;border-radius:30px;transition:.2s;font-size:14px}.tab-btn.active{background:var(--accent-bg);color:var(--accent)}.tab-panel{display:none}.tab-panel.active{display:block}.toggle-switch{display:inline-flex;width:46px;height:26px;background:var(--toggle-bg);border-radius:30px;position:relative;cursor:pointer;transition:background .2s;border:none;padding:0}.toggle-switch .knob{position:absolute;top:2px;left:2px;width:22px;height:22px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}.toggle-switch.active{background:var(--accent)}.toggle-switch.active .knob{left:22px}.filters-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.filters-row .form-input,.filters-row .form-select{width:auto;min-width:160px}.filters-row .form-input.grow{flex:1 1;min-width:200px}.muted{color:var(--text-muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;word-break:break-all}.callout{background:var(--accent-bg);color:var(--text-secondary);border-radius:12px;padding:14px 18px;font-size:13px;margin-bottom:16px;border:1px solid var(--border-color)}.callout.success{background:var(--status-active-bg)}.callout.warn{background:var(--status-warning-bg)}.footer-links{display:flex;gap:28px;font-size:14px;color:var(--text-light);padding-top:12px;border-top:1px solid var(--border-color);margin-top:8px;flex-wrap:wrap}.footer-links a{display:inline-flex;align-items:center;gap:6px}.footer-links a:hover{color:var(--accent)}@media (max-width:1024px){.kpi-grid,.kpi-grid.cols-3{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}}@media (max-width:768px){.sidebar{width:72px;padding:20px 12px}.sidebar .logo span,.sidebar .logout-btn span,.sidebar .nav-item span,.sidebar .nav-label,.sidebar .theme-toggle,.sidebar .user-card .user-info{display:none}.sidebar .nav-item{justify-content:center;padding:12px}.main{padding:16px}.kpi-grid,.kpi-grid.cols-3{grid-template-columns:1fr}}