
body{background:#fff;color:#333;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143}
.sb-page-header .headColor{background:linear-gradient(135deg,#1b1f2b,#242938);color:#fff;padding:10px 18px;overflow:hidden;display:flex;align-items:center;position:relative}
.sb-page-header .logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1}
.sb-page-header .site_logo{max-height:60px;vertical-align:middle}
.sb-page-header .welcome{margin-left:18px;font-size:14.5px;display:flex;align-items:center;gap:4px}
.sb-page-header .welcome a{color:#8bd0f0;margin-left:8px;text-decoration:none;font-weight:600}
.sb-page-header .welcome a:hover{color:#fff}
.hdr-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#5b6fe8,#7c4dff);display:inline-flex;align-items:center;justify-content:center;margin-right:8px;font-size:14px}
.sb-page-header .credit{margin-left:auto;background:rgba(255,255,255,.08);border-radius:20px;padding:6px 16px;color:#3ddc84;font-size:15px;font-weight:600;display:flex;align-items:center;gap:6px}
.sb-page-header .lang-switch{margin-left:14px;font-size:13px}
.sb-page-header .lang-switch a{color:#9aa1b5;text-decoration:none;font-weight:600;padding:2px 4px}
.sb-page-header .lang-switch a.active{color:#fff;border-bottom:2px solid #5b6fe8}
.sb-page-header .lang-switch a:hover{color:#fff}
.login-box .lang-switch a{text-decoration:none;font-weight:600}
.login-box .lang-switch a.active{text-decoration:underline}
.navbar-default{border:none;border-radius:0;margin-bottom:15px}
.navbar-default .navbar-nav>li>a{color:#dfe4ee;font-weight:500;padding:16px 14px}
.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>.open>a{background:rgba(255,255,255,.1);color:#fff}
.navbar-default .navbar-toggle .icon-bar{background:#ecf0f1}
.nav-threat-badge{display:inline-block;min-width:18px;padding:1px 6px;border-radius:20px;background:#e02020;color:#fff;font-size:10.5px;font-weight:700;line-height:1.4;text-align:center;vertical-align:2px;box-shadow:0 0 0 rgba(224,32,32,.6);animation:navThreatPulse 1.6s infinite}
@keyframes navThreatPulse{0%{box-shadow:0 0 0 0 rgba(224,32,32,.6)}70%{box-shadow:0 0 0 6px rgba(224,32,32,0)}100%{box-shadow:0 0 0 0 rgba(224,32,32,0)}}
.hdr-logout{background:rgba(236,72,153,.18);border-radius:6px!important;margin:8px 4px;padding:8px 16px!important}
.hdr-logout:hover{background:rgba(236,72,153,.32)!important}
.stat-card{text-align:center}.stat-card h3{margin:6px 0;font-size:16px}
.table>thead>tr>th{background:#2c3e50;color:#fff;border:none}
.table-actions a{margin-right:5px}
.pill{padding:2px 8px;border-radius:10px;color:#fff;font-size:14px}
.pill-on{background:#5cb85c}.pill-off{background:#d9534f}.pill-exp{background:#f0ad4e}
.login-page{min-height:100vh;background:radial-gradient(1200px 600px at 15% 10%,#2a3350 0%,transparent 60%),radial-gradient(1000px 500px at 90% 90%,#3d1f52 0%,transparent 55%),linear-gradient(135deg,#151823,#1b2030 60%,#20263a);position:relative;overflow-x:hidden}
.login-page::before,.login-page::after{content:"";position:absolute;border-radius:50%;filter:blur(60px);opacity:.35;pointer-events:none}
.login-page::before{width:340px;height:340px;background:linear-gradient(135deg,#5b6fe8,#7c4dff);top:-80px;left:-100px}
.login-page::after{width:300px;height:300px;background:linear-gradient(135deg,#16a085,#0fb8ad);bottom:-90px;right:-80px}
.login-box{width:380px;margin:70px auto;position:relative;z-index:1}
.login-logo{text-align:center;margin-bottom:18px}.login-logo img{max-height:64px;filter:drop-shadow(0 4px 14px rgba(0,0,0,.35))}
.login-card{background:rgba(255,255,255,.98);border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.35);overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.login-card-head{background:linear-gradient(135deg,#2c3345,#3d4560);color:#fff;padding:20px 26px;font-size:19px;font-weight:700;display:flex;align-items:center;gap:10px}
.login-card-head .bi{font-size:20px;color:#8fa2ff}
.login-card-body{padding:28px 26px 24px}
.login-alert{background:#fdeaea;color:#c0392b;border:1px solid #f7c6c6;border-radius:10px;padding:10px 14px;font-size:13.5px;font-weight:600;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.login-field{margin-bottom:18px}
.login-field label{display:block;font-size:13px;font-weight:700;color:#3d4560;margin-bottom:7px;letter-spacing:.2px}
.login-input-wrap{position:relative}
.login-input-wrap .bi{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9aa1b5;font-size:15px}
.login-input-wrap input{width:100%;padding:11px 14px 11px 40px;border:1.5px solid #e4e6f0;border-radius:10px;font-size:14.5px;color:#2c3345;background:#f9fafc;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.login-input-wrap input:focus{outline:none;border-color:#7c8cf0;background:#fff;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.login-input-wrap .toggle-pass{left:auto;right:14px;cursor:pointer}
.login-btn{width:100%;border:none;border-radius:10px;padding:12px 14px;font-size:15px;font-weight:700;color:#fff;letter-spacing:.3px;background:linear-gradient(135deg,#16a085,#0fb8ad);box-shadow:0 8px 20px rgba(15,184,173,.35);transition:transform .12s ease,box-shadow .12s ease}
.login-btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(15,184,173,.45);color:#fff}
.login-btn:active{transform:translateY(0)}
.login-btn .bi{margin-right:7px}
#footer{margin-top:30px;color:#999}
.addstream-tabs .btn{margin:2px}
.users-topbar .btn{font-size:14px}
/* ---- modern Users list (scoped, does not affect other pages) ---- */
.users-topbar{margin-bottom:14px}
.users-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.users-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.users-topbar .btn-default{background:#eef0f7;color:#4a5064}
.users-topbar .btn-default:hover{color:#2c3345}
.users-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.users-topbar .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.users-topbar .btn-info{background:linear-gradient(135deg,#4facfe,#38bdf8);color:#fff}
.users-topbar .btn-danger{background:linear-gradient(135deg,#ec4899,#e0526e);color:#fff}
.users-topbar .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.users-search{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden;margin-bottom:20px}
.users-search>.panel-heading{background:#fbfbfd;color:#2c3345;font-weight:600;font-size:15px;border-bottom:1px solid #f1f2f5;padding:14px 18px}
.users-search>.panel-body{padding:18px}
.users-search .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none}
.users-search .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.users-search label{color:#4a5064;font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.users-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.users-table{margin-bottom:0}
.users-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.users-table>thead>tr>th{color:#fff;font-weight:600;font-size:16px;border-bottom:none;padding:12px 10px;white-space:nowrap}
.users-table>tbody>tr{transition:background .1s ease}
.users-table>tbody>tr:hover{background:#f5f6fb}
.users-table>tbody>tr>td{vertical-align:middle;padding:10px;font-size:14px}
.users-status-dot{display:inline-block;width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 3px rgba(0,0,0,.05)}
.users-status-dot.is-online{background:#16a085;box-shadow:0 0 0 3px rgba(22,160,133,.18),0 0 6px rgba(22,160,133,.7)}
.users-status-dot.is-offline{background:#d7dbe2}
.users-pkg-badge{display:inline-block;background:#eef2ff;color:#4a5fd9;border-radius:20px;padding:3px 10px;font-size:11.5px;font-weight:600}
.users-opts-btn{border-radius:8px!important;background:linear-gradient(135deg,#5b6fe8,#7c4dff)!important;border:none!important}
/* ---- classic Users list: /users/index only ---- */
.users-list-classic,.users-list-classic *,.users-list-menu,.users-list-menu *{font-size:14px!important}
.users-list-classic{color:#333;line-height:1.42857143}
.users-list-classic a{color:#337ab7}
.users-list-classic .users-topbar{line-height:1.42857143}
.users-list-classic .btn{border-radius:3px!important;box-shadow:none!important;transform:none!important;transition:background-color .12s ease;padding:4px 9px;font-weight:400;line-height:1.42857143}
.users-list-classic .users-topbar .btn{border:1px solid transparent!important;padding:5px 10px;margin:2px 1px}
.users-list-classic .btn-default{background:#fff;color:#333;border:1px solid #ccc!important}
.users-list-classic .users-topbar .btn-default{border-color:#ccc!important}
.users-list-classic .btn-default:hover{background:#e6e6e6;color:#333}
.users-list-classic .btn-primary,.users-list-classic .users-opts-btn{background:#337ab7!important;border:1px solid #2e6da4!important;color:#fff}
.users-list-classic .btn-primary:hover,.users-list-classic .users-opts-btn:hover{background:#286090!important;border-color:#204d74!important}
.users-list-classic .btn-success{background:#5cb85c;color:#fff;border:1px solid #4cae4c!important}
.users-list-classic .btn-success:hover{background:#449d44;border-color:#398439!important}
.users-list-classic .btn-info{background:#5bc0de;color:#fff;border:1px solid #46b8da!important}
.users-list-classic .btn-info:hover{background:#31b0d5;border-color:#269abc!important}
.users-list-classic .btn-danger{background:#d9534f;color:#fff;border:1px solid #d43f3a!important}
.users-list-classic .btn-danger:hover{background:#c9302c;border-color:#ac2925!important}
.users-list-classic .btn-warning{background:#f0ad4e;color:#fff;border:1px solid #eea236!important}
.users-list-classic .btn-warning:hover{background:#ec971f;border-color:#d58512!important}
.users-list-classic .users-topbar a[href="/users/index?st=expired"]:not(.btn-primary){background:#f0ad4e;color:#fff;border-color:#eea236!important}
.users-list-classic .users-topbar a[href="/users/index?st=expired"]:not(.btn-primary):hover{background:#ec971f;border-color:#d58512!important}
.users-list-classic .users-topbar a[href="/traffic/index"]{background:#fff;color:#333;border-color:#ccc!important}
.users-list-classic .users-topbar a[href="/traffic/index"]:hover{background:#e6e6e6}
.users-list-classic .users-search{margin:0;border:1px solid #337ab7;border-radius:3px;box-shadow:none;overflow:visible;background:#fff}
.users-list-classic .users-search>.panel-heading{background:#337ab7;color:#fff;border:0;border-radius:2px 2px 0 0!important;padding:8px 10px;font-weight:400}
.users-list-classic .users-search>.panel-body{padding:12px}
.users-list-classic .users-filter-form{margin:0 0 16px}
.users-list-classic .users-filter-table{width:100%;border-collapse:collapse;table-layout:fixed;background:#fff}
.users-list-classic .users-filter-table th,.users-list-classic .users-filter-table td{padding:5px 7px;border:1px solid #ddd;vertical-align:middle}
.users-list-classic .users-filter-table th{width:12%;background:#fff;text-align:left;font-weight:400;white-space:nowrap}
.users-list-classic .users-filter-table td{width:38%}
.users-list-classic .users-filter-table label{margin:0;color:#333;font-weight:400;text-transform:none;letter-spacing:0}
.users-list-classic .form-control{height:30px;padding:4px 7px;border:1px solid #ccc;border-radius:3px;box-shadow:none;background:#fff;color:#555;line-height:1.42857143}
.users-list-classic .form-control:focus{border-color:#66afe9;box-shadow:0 0 4px rgba(102,175,233,.45)}
.users-list-classic .users-date-range,.users-list-classic .users-notes-search{display:flex;align-items:center;gap:6px}
.users-list-classic .users-date-range .form-control{min-width:0;width:50%}
.users-list-classic .users-notes-search .form-control{min-width:80px;flex:1;width:auto}
.users-list-classic .users-search-actions{display:flex;gap:4px;flex-shrink:0}
.users-list-classic .users-search-actions .btn{height:30px;padding:4px 8px;white-space:nowrap}
.users-list-classic .users-table-wrap{border:0;border-radius:0;box-shadow:none;background:#fff;overflow:visible}
.users-list-classic .table-responsive{margin:0;border:0}
.users-list-classic .users-table{border-collapse:collapse;border-radius:0;margin:0;background:#fff}
.users-list-classic .users-table>thead>tr{background:#333}
.users-list-classic .users-table>thead>tr>th{background:#333!important;color:#aaa!important;border:1px solid #444;border-bottom:2px solid #444;padding:6px 7px;font-weight:400;letter-spacing:0;line-height:1.42857143;vertical-align:middle}
.users-list-classic .users-table>tbody>tr>td{border:1px solid #ddd;padding:4px 7px;line-height:1.42857143;vertical-align:middle}
.users-list-classic .users-table>tbody>tr:nth-child(odd){background:#f9f9f9}
.users-list-classic .users-table>tbody>tr:nth-child(even){background:#fff}
.users-list-classic .users-table>tbody>tr:hover{background:#eaf3f9}
.users-list-classic .users-table>tbody>tr.users-row-inactive>td,.users-list-classic .users-table>tbody>tr.users-row-inactive>td>a{color:#c00}
.users-list-classic .users-table>tbody>tr.users-row-inactive>td:nth-child(3)>a{color:#337ab7}
.users-list-classic .users-table .users-nowrap{white-space:nowrap}
.users-list-classic .users-table .users-notes{min-width:90px;max-width:200px;overflow-wrap:anywhere}
.users-list-classic .users-table code{padding:0;background:transparent;color:inherit;border-radius:0;font-family:inherit}
.users-list-classic .users-pkg-badge{background:transparent;color:inherit;padding:0;border-radius:0;font-weight:400;white-space:nowrap}
.users-list-classic .users-status-dot{width:9px;height:9px;box-shadow:none}
.users-list-classic .users-status-dot.is-online{background:#5cb85c;box-shadow:none}
.users-list-classic .users-status-dot.is-offline{background:#b5b5b5}
.users-list-classic .users-table>tbody>tr>td.users-connections{text-align:center;white-space:nowrap}
.users-list-classic .users-table>tbody>tr>td.users-connections.is-connected{background:#e9e9e9;color:#159447;font-weight:700}
.users-list-classic .users-table>tbody>tr>td.users-options{white-space:nowrap;color:#333;text-align:center}
.users-list-classic .users-options>.btn{padding:3px 7px;min-height:28px;color:#fff}
.users-list-classic .dropdown-menu,.dropdown-menu.users-list-menu{border:1px solid #ccc;border-radius:3px;padding:3px 0;margin-top:3px;box-shadow:0 5px 10px rgba(0,0,0,.18)}
.users-list-classic .dropdown-menu>li>a,.dropdown-menu.users-list-menu>li>a{padding:4px 12px;border-radius:0;color:#333;white-space:nowrap}
.users-list-classic .dropdown-menu .divider,.dropdown-menu.users-list-menu .divider{margin:4px 0}
.users-list-classic .users-search>.panel-footer{background:#f5f5f5;border-top:1px solid #ddd;border-radius:0 0 2px 2px;padding:8px;text-align:center;min-height:46px}
.users-list-classic .pagination{display:inline-block;margin:0;vertical-align:middle}
.users-list-classic .pagination>li>a{padding:5px 10px;line-height:1.42857143;color:#337ab7;border-color:#ddd;background:#fff}
.users-list-classic .pagination>li.active>a{color:#fff;background:#337ab7;border-color:#337ab7}
.users-list-classic .users-page-summary{color:#777;line-height:28px}
.users-list-classic .modal-content{border-radius:4px;color:#333;background:#fff}
.users-list-classic .modal-header h4{font-weight:600}
.users-list-classic .modal-body pre{white-space:pre-wrap;overflow-wrap:anywhere}
[data-theme="dark"] .users-list-classic{color:#ddd}
[data-theme="dark"] .users-list-classic .users-search,[data-theme="dark"] .users-list-classic .users-filter-table,[data-theme="dark"] .users-list-classic .users-table{background:#1e2333}
[data-theme="dark"] .users-list-classic .users-filter-table th,[data-theme="dark"] .users-list-classic .users-search>.panel-footer{background:#272d3d;color:#ddd}
[data-theme="dark"] .users-list-classic .users-filter-table label{color:#ddd}
[data-theme="dark"] .users-list-classic .users-filter-table th,[data-theme="dark"] .users-list-classic .users-filter-table td,[data-theme="dark"] .users-list-classic .users-table>tbody>tr>td{border-color:#3a4160}
[data-theme="dark"] .users-list-classic .form-control{background:#242938;color:#eef1f8;border-color:#3a4160}
[data-theme="dark"] .users-list-classic .users-table>tbody>tr:nth-child(odd){background:#242938}
[data-theme="dark"] .users-list-classic .users-table>tbody>tr:nth-child(even){background:#1e2333}
[data-theme="dark"] .users-list-classic .users-table>tbody>tr:hover{background:#2d3549}
[data-theme="dark"] .users-list-classic .users-table>tbody>tr.users-row-inactive>td,[data-theme="dark"] .users-list-classic .users-table>tbody>tr.users-row-inactive>td>a{color:#ff7777}
[data-theme="dark"] .users-list-classic .users-table>tbody>tr.users-row-inactive>td:nth-child(3)>a{color:#5fa6dd}
[data-theme="dark"] .users-list-classic .users-table>tbody>tr>td.users-connections.is-connected{background:#303748;color:#5ed18c}
@media(max-width:767px){.users-list-classic .users-filter-table,.users-list-classic .users-filter-table tbody,.users-list-classic .users-filter-table tr{display:block}.users-list-classic .users-filter-table tr{display:grid;grid-template-columns:105px minmax(0,1fr)}.users-list-classic .users-filter-table th,.users-list-classic .users-filter-table td{display:block;width:auto}.users-list-classic .users-filter-table th{display:flex;align-items:center;justify-content:flex-start;white-space:normal}.users-list-classic .users-notes-search{flex-wrap:wrap}.users-list-classic .users-notes-search .form-control{flex-basis:100%}.users-list-classic .users-search-actions{margin-left:auto}.users-list-classic .users-topbar .btn{padding:4px 7px}}
@media(max-width:767px){.users-list-classic .users-date-range{flex-direction:column;align-items:stretch}.users-list-classic .users-date-range .form-control{width:100%}}
/* ---- end classic Users list ---- */
/* ---- modern Add/Edit User form (scoped, does not affect other addstream-* forms) ---- */
.user-form-modern{margin-top:4px}
.user-form-modern .addstream-info{background:linear-gradient(135deg,#eef2ff,#f5f3ff);border:none;color:#4a5fd9;border-radius:12px;padding:12px 18px;font-weight:600;margin-bottom:16px;box-shadow:0 4px 12px rgba(91,111,232,.08)}
.user-form-modern .panel{border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.user-form-modern .addstream-table{border:none}
.user-form-modern .addstream-table>tbody>tr>td{padding:15px 22px;border-bottom:1px solid #f4f5f7}
.user-form-modern .addstream-table>tbody>tr:last-child>td{border-bottom:none}
.user-form-modern .addstream-table .lbl{font-weight:600;color:#4a5064;font-size:13px;letter-spacing:.2px}
.user-form-modern .addstream-table .hint{color:#9aa0ad}
.user-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none;transition:border-color .12s ease,box-shadow .12s ease}
.user-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.user-form-modern .toggle-btn{border-radius:6px!important;font-weight:600;min-width:70px;border:none!important}
.user-form-modern .toggle-btn.btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.user-form-modern .toggle-btn.btn-default{background:#eef0f7;color:#69707f}
.user-form-modern .bq-panel{border-radius:12px;border:none;box-shadow:0 3px 10px rgba(20,20,40,.06);padding:14px}
.user-form-modern .bq-panel b{color:#2c3345;font-size:12.5px;letter-spacing:.4px;text-transform:uppercase}
.user-form-modern .bq-panel .btn{border-radius:16px;border:none;font-weight:600}
.user-form-modern .bq-panel .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.user-form-modern .bq-panel .btn-default{background:#fff;color:#69707f}
.user-form-modern .bq-panel .btn-danger{background:linear-gradient(135deg,#ec4899,#e0526e);color:#fff}
.user-form-modern .bq-panel .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.user-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
.user-form-modern .btn-default{border-radius:6px;padding:8px 20px;font-weight:600;background:#eef0f7;border:none}
/* ---- modern Add/Edit Reseller form (scoped) ---- */
.reseller-form-modern{margin-top:4px}
.reseller-form-modern .panel{border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.reseller-form-modern .addstream-table{border:none}
.reseller-form-modern .addstream-table>tbody>tr>td{padding:14px 22px;border-bottom:1px solid #f4f5f7;font-size:13.5px;color:#2c3345}
.reseller-form-modern .addstream-table>tbody>tr:last-child>td{border-bottom:none}
.reseller-form-modern .addstream-table .lbl{font-weight:600;color:#4a5064;font-size:13px;letter-spacing:.2px;width:280px}
.reseller-form-modern .addstream-table .sec{background:linear-gradient(135deg,#2c3345,#3d4560)!important;color:#fff!important;font-weight:600;font-size:13px;letter-spacing:.5px;text-transform:uppercase;border-radius:8px;padding:10px 16px!important}
.reseller-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none;font-size:13.5px;transition:border-color .12s ease,box-shadow .12s ease}
.reseller-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.reseller-form-modern .hint{color:#9aa0ad;font-size:12px}
.reseller-form-modern .toggle-btn{border-radius:6px!important;font-weight:600;min-width:70px;border:none!important}
.reseller-form-modern .toggle-btn.btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.reseller-form-modern .toggle-btn.btn-default{background:#eef0f7;color:#69707f}
.reseller-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
.reseller-form-modern .btn-default{border-radius:6px;padding:8px 20px;font-weight:600;background:#eef0f7;border:none}
.reseller-form-modern .pkg-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #eef0f3;border-radius:10px;overflow:hidden;max-width:640px}
.reseller-form-modern .pkg-table th{background:#f4f5fb;color:#4a5064;font-size:12px;text-transform:uppercase;letter-spacing:.3px;padding:9px 14px;text-align:left}
.reseller-form-modern .pkg-table td{padding:8px 14px;border-top:1px solid #f4f5f7;font-size:13px;color:#2c3345}
.reseller-form-modern .pkg-table tr:hover td{background:#f9fafc}
.reseller-form-modern .pkg-table input[type=number]{border-radius:6px;border:1px solid #dde2e8;padding:4px 8px;width:90px;font-size:12.5px}
.reseller-form-modern .pkg-table label{font-weight:500;margin:0;display:flex;align-items:center;gap:8px;cursor:pointer}
/* ---- modern Categories section (tabs/list/add-edit form, scoped) ---- */
.categories-topbar{margin-bottom:14px;text-align:center}
.categories-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;font-size:13px;margin:2px;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.categories-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.categories-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.categories-topbar .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.categories-topbar .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.categories-topbar .btn-default{background:#eef0f7;color:#4a5064}
.categories-panel{border:1px solid #eef0f3!important;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(20,20,40,.06)}
.categories-panel>.panel-heading{background:linear-gradient(135deg,#2c3345,#3d4560)!important;color:#fff!important;font-weight:600;font-size:15px;padding:14px 18px;border:none}
.categories-search .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none}
.categories-search label{color:#4a5064;font-size:12.5px;font-weight:600;margin-right:4px}
.categories-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.categories-table{margin-bottom:0;font-size:13px}
.categories-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.categories-table>thead>tr>th{color:#fff;font-weight:600;font-size:13px;border-bottom:none;padding:11px 10px;white-space:nowrap}
.categories-table>tbody>tr:hover{background:#f5f6fb}
.categories-table>tbody>tr>td{vertical-align:middle;padding:9px 10px;color:#2c3345}
.categories-count-badge{display:inline-block;background:#eef2ff;color:#4a5fd9;border-radius:20px;padding:3px 12px;font-size:12px;font-weight:700}
.categories-for-pill{display:inline-block;background:#f1f2f5;color:#69707f;border-radius:20px;padding:2px 10px;font-size:11.5px;font-weight:600}
.categories-opts-btn{border-radius:8px!important;border:none!important;color:#fff!important}
.categories-edit-btn{background:linear-gradient(135deg,#4facfe,#38bdf8)!important}
.categories-del-btn{background:linear-gradient(135deg,#ec4899,#e0526e)!important}
.category-form-modern .addstream-table>tbody>tr>td{padding:14px 20px;border-bottom:1px solid #f4f5f7;font-size:13.5px;color:#2c3345}
.category-form-modern .addstream-table .lbl{font-weight:600;color:#4a5064;font-size:13px;letter-spacing:.2px}
.category-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none;font-size:13.5px}
.category-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.category-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
.category-form-modern .btn-default{border-radius:6px;padding:8px 20px;font-weight:600;background:#eef0f7;border:none}
/* ---- modern Codes section (scoped: topbar/list/forms/trans/report/etc.) ---- */
.codes-topbar{margin-bottom:14px}
.codes-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.codes-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.codes-topbar .btn-default{background:#eef0f7;color:#4a5064}
.codes-topbar .btn-default:hover{color:#2c3345}
.codes-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.codes-topbar .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.codes-topbar .btn-info{background:linear-gradient(135deg,#4facfe,#38bdf8);color:#fff}
.codes-topbar .btn-danger{background:linear-gradient(135deg,#ec4899,#e0526e);color:#fff}
.codes-topbar .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.codes-panel{border:1px solid #eef0f3!important}
.codes-panel>.panel-heading{background:#fbfbfd!important;color:#2c3345!important;font-weight:600;font-size:15px;border-bottom:1px solid #f1f2f5;padding:14px 18px}
.codes-panel>.panel-body{padding:18px}
.codes-search .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none}
.codes-search .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.codes-search label{color:#4a5064;font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.codes-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.codes-table{margin-bottom:0}
.codes-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.codes-table>thead>tr>th{color:#fff;font-weight:600;font-size:16px;border-bottom:none;padding:12px 10px;white-space:nowrap}
.codes-table>tbody>tr{transition:background .1s ease}
.codes-table>tbody>tr:hover{background:#f5f6fb}
.codes-table>tbody>tr>td{vertical-align:middle;padding:10px;font-size:14px}
.codes-status-dot{display:inline-block;width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 3px rgba(0,0,0,.05)}
.codes-status-dot.is-online{background:#16a085;box-shadow:0 0 0 3px rgba(22,160,133,.18),0 0 6px rgba(22,160,133,.7)}
.codes-status-dot.is-offline{background:#d7dbe2}
.codes-code-badge{background:#fdeaea;color:#d9455f;border-radius:8px;padding:3px 10px;font-weight:600;font-size:12px;letter-spacing:.3px}
.codes-opts-btn{border-radius:8px!important;background:linear-gradient(135deg,#5b6fe8,#7c4dff)!important;border:none!important}
/* rectangular (not pill) solid status badges for the Codes list Status column, matching the
   reference panel's exact colors: New=dark, Active=green, Suspended=light-blue, Expired=orange,
   Deleted=red — deliberately its own class, not a reuse of the rounded shared .dash-pill, since
   that class is used pill-shaped elsewhere (Billing/Home/etc.) and must stay untouched there. */
.codes-status-badge{display:inline-block;padding:4px 12px;border-radius:3px;font-size:12px;font-weight:700;color:#fff;text-transform:capitalize;letter-spacing:.2px}
.codes-status-badge.st-new{background:#2c3345}
.codes-status-badge.st-active{background:#16a085}
.codes-status-badge.st-suspended{background:#3ca7dd}
.codes-status-badge.st-expired{background:#f7971e}
.codes-status-badge.st-deleted{background:#e0526e}
/* ---- classic Codes list: /codes/index only ---- */
.codes-list-classic,.codes-list-classic *,.codes-list-menu,.codes-list-menu *{font-size:14px!important}
.codes-list-classic{color:#333;line-height:1.42857143}
.codes-list-classic a{color:#337ab7}
.codes-list-classic .btn{border-radius:3px!important;box-shadow:none!important;transform:none!important;transition:background-color .12s ease;padding:4px 9px;font-weight:400;line-height:1.42857143}
.codes-list-classic .codes-topbar{margin-bottom:4px;line-height:1.42857143}
.codes-list-classic .codes-topbar .btn{border:1px solid transparent!important;padding:5px 10px;margin:2px 1px}
.codes-list-classic .btn-default{background:#fff;color:#333;border:1px solid #ccc!important}
.codes-list-classic .codes-topbar .btn-default{border-color:#ccc!important}
.codes-list-classic .btn-default:hover{background:#e6e6e6;color:#333}
.codes-list-classic .btn-primary,.codes-list-classic .codes-opts-btn{background:#337ab7!important;border:1px solid #2e6da4!important;color:#fff}
.codes-list-classic .btn-primary:hover,.codes-list-classic .codes-opts-btn:hover{background:#286090!important;border-color:#204d74!important}
.codes-list-classic .btn-success{background:#5cb85c;color:#fff;border:1px solid #4cae4c!important}
.codes-list-classic .btn-success:hover{background:#449d44;border-color:#398439!important;color:#fff}
.codes-list-classic .btn-info{background:#5bc0de;color:#fff;border:1px solid #46b8da!important}
.codes-list-classic .btn-info:hover{background:#31b0d5;border-color:#269abc!important;color:#fff}
.codes-list-classic .btn-danger{background:#d9534f;color:#fff;border:1px solid #d43f3a!important}
.codes-list-classic .btn-danger:hover{background:#c9302c;border-color:#ac2925!important;color:#fff}
.codes-list-classic .btn-warning{background:#f0ad4e;color:#fff;border:1px solid #eea236!important}
.codes-list-classic .btn-warning:hover{background:#ec971f;border-color:#d58512!important;color:#fff}
.codes-list-classic .codes-topbar .btn[aria-current="page"]{box-shadow:inset 0 0 0 1px rgba(0,0,0,.2)!important}
.codes-list-classic .codes-more-tools{margin:0 0 8px;text-align:center}
.codes-list-classic .codes-more-tools>summary{display:list-item;list-style-position:inside;width:fit-content;margin:0 auto;padding:2px 6px;cursor:pointer;color:#777}
.codes-list-classic .codes-more-tools[open]>.codes-topbar{margin-top:5px}
.codes-list-classic .codes-search{margin:0;border:1px solid #337ab7!important;border-radius:3px;box-shadow:none;overflow:visible;background:#fff}
.codes-list-classic .codes-search>.panel-heading{background:#337ab7!important;color:#fff!important;border:0;border-radius:2px 2px 0 0!important;padding:8px 10px;font-weight:400}
.codes-list-classic .codes-search>.panel-body{padding:12px}
.codes-list-classic .codes-filter-form{margin:0 0 16px}
.codes-list-classic .codes-filter-table{width:100%;border-collapse:collapse;table-layout:fixed;background:#fff}
.codes-list-classic .codes-filter-table th,.codes-list-classic .codes-filter-table td{padding:5px 7px;border:1px solid #ddd;vertical-align:middle}
.codes-list-classic .codes-filter-table th{width:8%;background:#fff;text-align:left;font-weight:400;white-space:nowrap}
.codes-list-classic .codes-filter-table td{width:25.3333%}
.codes-list-classic .codes-filter-table label{margin:0;color:#333;font-weight:400;text-transform:none;letter-spacing:0}
.codes-list-classic .form-control{height:30px;padding:4px 7px;border:1px solid #ccc;border-radius:3px;box-shadow:none;background:#fff;color:#555;line-height:1.42857143;min-width:0}
.codes-list-classic .form-control:focus{border-color:#66afe9;box-shadow:0 0 4px rgba(102,175,233,.45)}
.codes-list-classic .codes-search-actions{display:flex;gap:4px;align-items:center}
.codes-list-classic .codes-search-actions .btn{height:30px;padding:4px 8px;white-space:nowrap}
.codes-list-classic .codes-table-wrap{border:0;border-radius:0;box-shadow:none;background:#fff;overflow:visible}
.codes-list-classic .table-responsive{margin:0;border:0;overflow-x:auto}
.codes-list-classic .codes-table{border-collapse:collapse;border-radius:0;margin:0;background:#fff}
.codes-list-classic .codes-table>thead>tr{background:#333}
.codes-list-classic .codes-table>thead>tr>th{background:#333!important;color:#aaa!important;border:1px solid #444;border-bottom:2px solid #444;padding:6px 7px;font-weight:400;letter-spacing:0;line-height:1.42857143;vertical-align:middle}
.codes-list-classic .codes-table>tbody>tr>td{border:1px solid #ddd;padding:4px 7px;line-height:1.42857143;vertical-align:middle;white-space:nowrap}
.codes-list-classic .codes-table>tbody>tr:nth-child(odd){background:#f9f9f9}
.codes-list-classic .codes-table>tbody>tr:nth-child(even){background:#fff}
.codes-list-classic .codes-table>tbody>tr:hover{background:#eaf3f9}
.codes-list-classic .codes-table>tbody>tr.codes-row-inactive>td{color:#c00}
.codes-list-classic .codes-table>tbody>tr>td.codes-owner{color:#337ab7}
.codes-list-classic .codes-table>tbody>tr>td.codes-device{max-width:160px;overflow:hidden;text-overflow:ellipsis}
.codes-list-classic .codes-code-badge{padding:0;background:transparent;color:inherit;border-radius:0;font-weight:400;letter-spacing:0}
.codes-list-classic .codes-status-dot{width:9px;height:9px;box-shadow:none}
.codes-list-classic .codes-status-dot.is-online{background:#5cb85c;box-shadow:none}
.codes-list-classic .codes-status-dot.is-offline{background:#b5b5b5}
.codes-list-classic .codes-status-badge{padding:2px 5px;border-radius:2px;font-weight:600;letter-spacing:0;line-height:1.2}
.codes-list-classic .codes-status-badge.st-new{background:#777}
.codes-list-classic .codes-status-badge.st-active{background:#5cb85c}
.codes-list-classic .codes-status-badge.st-suspended{background:#5bc0de}
.codes-list-classic .codes-status-badge.st-expired{background:#f0ad4e}
.codes-list-classic .codes-status-badge.st-deleted{background:#d9534f}
.codes-list-classic .codes-opts-btn{padding:2px 6px;min-height:26px;white-space:nowrap}
.codes-list-classic .dropdown-menu,.dropdown-menu.codes-list-menu{border:1px solid #ccc;border-radius:3px;padding:3px 0;margin-top:3px;box-shadow:0 5px 10px rgba(0,0,0,.18)}
.codes-list-classic .dropdown-menu>li>a,.dropdown-menu.codes-list-menu>li>a{padding:4px 12px;border-radius:0;color:#333;white-space:nowrap}
.codes-list-classic .dropdown-menu .divider,.dropdown-menu.codes-list-menu .divider{margin:4px 0}
.codes-list-classic .codes-search>.panel-footer{background:#f5f5f5;border-top:1px solid #ddd;border-radius:0 0 2px 2px;padding:12px;text-align:center;min-height:64px}
.codes-list-classic .pagination{display:inline-block;margin:0;vertical-align:middle}
.codes-list-classic .pagination>li>a,.codes-list-classic .pagination>li>span{padding:5px 10px;line-height:1.42857143;color:#337ab7;border-color:#ddd;background:#fff}
.codes-list-classic .pagination>li.active>a{color:#fff;background:#337ab7;border-color:#337ab7}
.codes-list-classic .codes-page-summary{color:#777;margin-top:5px;line-height:1.42857143}
[data-theme="dark"] .codes-list-classic{color:#ddd}
[data-theme="dark"] .codes-list-classic .codes-search,[data-theme="dark"] .codes-list-classic .codes-filter-table,[data-theme="dark"] .codes-list-classic .codes-table{background:#1e2333}
[data-theme="dark"] .codes-list-classic .codes-filter-table th,[data-theme="dark"] .codes-list-classic .codes-search>.panel-footer{background:#272d3d;color:#ddd}
[data-theme="dark"] .codes-list-classic .codes-filter-table label{color:#ddd}
[data-theme="dark"] .codes-list-classic .codes-filter-table th,[data-theme="dark"] .codes-list-classic .codes-filter-table td,[data-theme="dark"] .codes-list-classic .codes-table>tbody>tr>td{border-color:#3a4160}
[data-theme="dark"] .codes-list-classic .form-control{background:#242938;color:#eef1f8;border-color:#3a4160}
[data-theme="dark"] .codes-list-classic .codes-table>tbody>tr:nth-child(odd){background:#242938}
[data-theme="dark"] .codes-list-classic .codes-table>tbody>tr:nth-child(even){background:#1e2333}
[data-theme="dark"] .codes-list-classic .codes-table>tbody>tr:hover{background:#2d3549}
[data-theme="dark"] .codes-list-classic .codes-table>tbody>tr.codes-row-inactive>td{color:#ff7777}
[data-theme="dark"] .codes-list-classic .codes-table>tbody>tr>td.codes-owner{color:#5fa6dd}
@media(max-width:991px){.codes-list-classic .codes-filter-table,.codes-list-classic .codes-filter-table tbody,.codes-list-classic .codes-filter-table tr{display:block}.codes-list-classic .codes-filter-table tr{display:grid;grid-template-columns:110px minmax(0,1fr)}.codes-list-classic .codes-filter-table th,.codes-list-classic .codes-filter-table td{display:block;width:auto}.codes-list-classic .codes-filter-table th{display:flex;align-items:center;white-space:normal}.codes-list-classic .codes-filter-table .codes-filter-blank{display:none}.codes-list-classic .codes-filter-table .codes-search-actions-cell{grid-column:1/-1}.codes-list-classic .codes-search-actions{justify-content:flex-end}}
@media(max-width:767px){.codes-list-classic .codes-topbar .btn{padding:4px 7px}.codes-list-classic .codes-search>.panel-body{padding:8px}.codes-list-classic .codes-filter-table tr{grid-template-columns:90px minmax(0,1fr)}}
/* ---- end classic Codes list ---- */
/* shared form styling for Add Codes / Add By MAC / Add By Serial / Edit Code */
.code-form-modern .addstream-info{background:linear-gradient(135deg,#eef2ff,#f5f3ff);border:none;color:#4a5fd9;border-radius:12px;padding:12px 18px;font-weight:600;margin-bottom:16px;box-shadow:0 4px 12px rgba(91,111,232,.08)}
.code-form-modern .addstream-table>tbody>tr>td{padding:15px 22px;border-bottom:1px solid #f4f5f7}
.code-form-modern .addstream-table>tbody>tr:last-child>td{border-bottom:none}
.code-form-modern .addstream-table .lbl{font-weight:600;color:#4a5064;font-size:13px;letter-spacing:.2px}
.code-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none;font-size:14.5px;color:#2c3345}
.code-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.code-form-modern .control-label{color:#4a5064;font-weight:600;font-size:13px}
.code-form-modern .select2-container--default .select2-selection--single,
.code-form-modern .select2-container--default .select2-selection--multiple{border-radius:8px;border-color:#dde2e8;font-size:14.5px}
.code-form-modern .select2-container--default .select2-selection--single .select2-selection__rendered{color:#2c3345;font-weight:500}
.code-form-modern .select2-container--default.select2-container--open .select2-selection--single,
.code-form-modern .select2-container--default.select2-container--focus .select2-selection--multiple{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.code-form-modern .select2-results__option{font-size:14px;color:#2c3345}
.code-form-modern .bq-panel{border-radius:12px;border:none;box-shadow:0 3px 10px rgba(20,20,40,.06);padding:14px}
.code-form-modern .bq-panel b{color:#2c3345;font-size:12.5px;letter-spacing:.4px;text-transform:uppercase}
.code-form-modern .bq-panel .btn{border-radius:16px;border:none;font-weight:600}
.code-form-modern .bq-panel .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.code-form-modern .bq-panel .btn-default{background:#fff;color:#69707f}
.code-form-modern .bq-panel .btn-danger{background:linear-gradient(135deg,#ec4899,#e0526e);color:#fff}
.code-form-modern .bq-panel .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.code-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
.code-form-modern .btn-default{border-radius:6px;padding:8px 20px;font-weight:600;background:#eef0f7;border:none}
.code-form-modern .panel-heading{background:linear-gradient(135deg,#2c3345,#3d4560);color:#fff}
/* ---- Tools > Options hub (General Settings / Codes Options), scoped ---- */
.settings-topbar{margin-bottom:14px}
.settings-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.settings-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.settings-topbar .btn-default{background:#eef0f7;color:#4a5064}
.settings-topbar .btn-default:hover{color:#2c3345}
.settings-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.settings-form-modern .panel{border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.settings-form-modern .panel-heading{background:linear-gradient(135deg,#2c3345,#3d4560)!important;color:#fff!important;font-weight:600;font-size:15px;padding:14px 18px;border:none}
.settings-form-modern .addstream-table{border:none}
.settings-form-modern .addstream-table>tbody>tr>td{padding:14px 20px;border-bottom:1px solid #f4f5f7;color:#2c3345;font-size:13.5px}
.settings-form-modern .addstream-table>tbody>tr:last-child>td{border-bottom:none}
.settings-form-modern .addstream-table .lbl{font-weight:600;color:#2c3345;font-size:13.5px;letter-spacing:.2px}
.settings-form-modern .addstream-table .hint{display:block;color:#7a8194;font-size:12.5px;margin-top:4px}
.settings-form-modern .addstream-table .sec{background:linear-gradient(135deg,#2c3345,#3d4560)!important;color:#fff!important;border-radius:8px;font-size:13px;letter-spacing:.6px}
.settings-form-modern .radio-inline,.settings-form-modern .radio-inline label{color:#2c3345;font-weight:500}
.settings-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none;color:#2c3345;font-size:13.5px;transition:border-color .12s ease,box-shadow .12s ease}
.settings-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.settings-form-modern .form-control::placeholder{color:#a7adb9}
.settings-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
/* ---- Tools > Quick Tools, scoped ---- */
.qt-panel{border:1px solid #eef0f3!important;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(20,20,40,.06);margin-bottom:20px}
.qt-panel>.panel-heading{background:linear-gradient(135deg,#2c3345,#3d4560)!important;color:#fff!important;font-weight:600;font-size:15px;padding:14px 18px;border:none}
.qt-table{width:100%;background:#fff;margin-bottom:0}
.qt-table>tbody>tr>td{padding:16px 20px;border-bottom:1px solid #f4f5f7;vertical-align:middle}
.qt-table>tbody>tr:last-child>td{border-bottom:none}
.qt-table>tbody>tr:hover{background:#f9fafc}
.qt-table .qt-label{font-weight:600;color:#2c3345;font-size:13.5px;white-space:nowrap;width:26%}
.qt-table .qt-desc{color:#7a8194;font-size:12.5px;line-height:1.6;width:36%}
.qt-table input[type=number]{border-radius:8px;border:1px solid #dde2e8;max-width:90px;font-size:13.5px;padding:6px 10px}
.qt-table select{border-radius:8px;border:1px solid #dde2e8;max-width:170px;font-size:13.5px;padding:6px 10px;background:#fff}
.qt-icon{margin-right:8px;color:#5b6fe8}
.qt-btn{border-radius:6px!important;border:none!important;font-weight:600;padding:8px 18px;font-size:13px;box-shadow:0 2px 6px rgba(20,20,40,.12);transition:transform .12s ease,box-shadow .12s ease;display:inline-flex;align-items:center;gap:6px}
.qt-btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.18);color:#fff}
.qt-btn-danger{background:linear-gradient(135deg,#ec4899,#e0526e)!important;color:#fff!important}
.qt-btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e)!important;color:#fff!important}
.qt-btn-warning-outline{background:#fff!important;color:#f4511e!important;border:2px solid #f7971e!important;box-shadow:none}
.qt-btn-info{background:linear-gradient(135deg,#4facfe,#38bdf8)!important;color:#fff!important}
.qt-btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff)!important;color:#fff!important}
.qt-btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;color:#fff!important}
.qt-btn-default{background:#eef0f7!important;color:#4a5064!important}
/* ---- Tools > Fix Codes, scoped ---- */
.fixcodes-topbar{margin-bottom:14px}
.fixcodes-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;font-size:13px;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.fixcodes-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.fixcodes-topbar .btn-default{background:#eef0f7;color:#4a5064}
.fixcodes-topbar .btn-default:hover{color:#2c3345}
.fixcodes-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.fixcodes-topbar .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.fixcodes-topbar .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.fixcodes-modern .fc-panel{border:1px solid #eef0f3!important;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(20,20,40,.06)}
.fixcodes-modern .fc-panel>.panel-heading{background:linear-gradient(135deg,#2c3345,#3d4560)!important;color:#fff!important;font-weight:600;font-size:15px;padding:14px 18px;border:none}
.fixcodes-modern .fc-table{margin-bottom:0;font-size:13px}
.fixcodes-modern .fc-table>thead>tr{background:#2c3345}
.fixcodes-modern .fc-table>thead>tr>th{color:#fff;font-weight:600;border-bottom:none;padding:12px 10px}
.fixcodes-modern .fc-table>tbody>tr>td{vertical-align:middle;padding:12px 10px;color:#2c3345}
.fixcodes-modern .fc-table>tbody>tr:hover{background:#f9fafc}
.fixcodes-modern .fc-btn-fix{border-radius:16px!important;border:none!important;background:linear-gradient(135deg,#16a085,#0fb8ad)!important;color:#fff!important;font-weight:600;padding:4px 12px}
.fixcodes-modern .fc-btn-fixall{border-radius:16px!important;border:none!important;background:linear-gradient(135deg,#16a085,#0fb8ad)!important;color:#fff!important;font-weight:700;padding:5px 14px}
/* ---- modern Billing section (Payments/Invoices/Statement/Transfer Credit, scoped) ---- */
.billing-topbar{margin-bottom:14px}
.billing-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.billing-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.billing-topbar .btn-default{background:#eef0f7;color:#4a5064}
.billing-topbar .btn-default:hover{color:#2c3345}
.billing-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.billing-panel{border:1px solid #eef0f3!important}
.billing-panel>.panel-heading{background:#fbfbfd!important;color:#2c3345!important;font-weight:600;font-size:15px;border-bottom:1px solid #f1f2f5;padding:14px 18px}
.billing-panel>.panel-body{padding:18px}
.billing-search .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none}
.billing-search .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.billing-search label{color:#4a5064;font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.billing-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.billing-table{margin-bottom:0}
.billing-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.billing-table>thead>tr>th{color:#fff;font-weight:600;border-bottom:none;padding:12px 10px}
.billing-table>tbody>tr{transition:background .1s ease}
.billing-table>tbody>tr:hover{background:#f5f6fb}
.billing-table>tbody>tr>td{vertical-align:middle;padding:10px}
.billing-form-modern .addstream-info{background:linear-gradient(135deg,#eef2ff,#f5f3ff);border:none;color:#4a5fd9;border-radius:12px;padding:12px 18px;font-weight:600;margin-bottom:16px;box-shadow:0 4px 12px rgba(91,111,232,.08)}
.billing-form-modern .addstream-table>tbody>tr>td{padding:15px 22px;border-bottom:1px solid #f4f5f7}
.billing-form-modern .addstream-table>tbody>tr:last-child>td{border-bottom:none}
.billing-form-modern .addstream-table .lbl{font-weight:600;color:#4a5064;font-size:13px;letter-spacing:.2px}
.billing-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none}
.billing-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.billing-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
.billing-form-modern .btn-default{border-radius:6px;padding:8px 20px;font-weight:600;background:#eef0f7;border:none}
/* ---- modern Servers section (list/monitoring/add-edit/keypass/domains/dbsync/install, scoped) ---- */
.servers-topbar{margin-bottom:14px}
.servers-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.servers-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.servers-topbar .btn-default{background:#eef0f7;color:#4a5064}
.servers-topbar .btn-default:hover{color:#2c3345}
.servers-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.servers-topbar .btn-info{background:linear-gradient(135deg,#4facfe,#38bdf8);color:#fff}
.servers-topbar .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.servers-topbar .btn-danger{background:linear-gradient(135deg,#ec4899,#e0526e);color:#fff}
.servers-topbar .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.servers-panel{border:1px solid #eef0f3!important}
.servers-panel>.panel-heading{background:#fbfbfd!important;color:#2c3345!important;font-weight:600;font-size:15px;border-bottom:1px solid #f1f2f5;padding:14px 18px}
.servers-panel>.panel-body{padding:18px}
.servers-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.servers-table{margin-bottom:0}
.servers-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.servers-table>thead>tr>th{color:#fff;font-weight:600;border-bottom:none;padding:12px 10px}
.servers-table>tbody>tr{transition:background .1s ease}
.servers-table>tbody>tr:hover{background:#f5f6fb}
.servers-table>tbody>tr>td{vertical-align:middle;padding:10px}
.servers-opts-btn{border-radius:8px!important;background:linear-gradient(135deg,#5b6fe8,#7c4dff)!important;border:none!important}
.servers-form-modern .control-label{color:#4a5064;font-weight:600;font-size:13px}
.servers-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none}
.servers-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.servers-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
.servers-form-modern .btn-default{border-radius:6px;padding:8px 20px;font-weight:600;background:#eef0f7;border:none}
.servers-form-modern .btn-info{border-radius:6px!important;background:linear-gradient(135deg,#4facfe,#38bdf8)!important;border:none!important;color:#fff}
.servers-form-modern .section-hdr{background:linear-gradient(135deg,#2c3345,#3d4560);color:#fff;border-radius:8px;padding:8px 14px;font-weight:600;letter-spacing:.3px}
.servers-mon-card{background:#fff;border:2px solid #e4e7f5;border-radius:18px;box-shadow:0 10px 26px rgba(20,20,40,.09);overflow:hidden;transition:box-shadow .2s}
.servers-mon-card:hover{box-shadow:0 14px 34px rgba(20,20,40,.14)}
.servers-mon-card.is-main{border-color:#8a5cf6;box-shadow:0 0 0 4px rgba(138,92,246,.12),0 14px 34px rgba(138,92,246,.35)}
.servers-mon-head{padding:12px 16px;font-weight:600;font-size:14px;color:#fff;display:flex;align-items:center;gap:8px}
.servers-mon-head.on{background:linear-gradient(135deg,#16a085,#0fb8ad)}
.servers-mon-head.off{background:linear-gradient(135deg,#e05263,#c0392b)}
.servers-mon-card.is-main .servers-mon-head.on{background:linear-gradient(135deg,#5b6fe8,#8a5cf6)}
.servers-mon-body{padding:12px 16px}
.servers-bw-total{background:linear-gradient(135deg,#2c3345,#3d4560);color:#fff;border-radius:10px;padding:12px 18px;font-size:14px;font-weight:600;margin-bottom:16px}
.servers-bw-total b{font-size:18px;color:#5ce6c9}
/* ---- Servers Monitoring page redesign (clean card layout) ---- */
.srvmon-page{background:#f7f8fb;margin:-15px -15px 0;padding:22px}
.srvmon-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px}
.srvmon-header h2{margin:0;font-size:26px;font-weight:700;color:#1f2430}
.srvmon-header .sub{margin:4px 0 0;color:#8b93a7;font-size:13.5px}
.srvmon-header-right{display:flex;align-items:center;gap:14px}
.srvmon-updated{color:#9aa1b5;font-size:12.5px}
.srvmon-refresh-btn{background:#fff;border:1px solid #e4e7f0;border-radius:10px;padding:9px 16px;font-weight:600;font-size:13.5px;color:#2c3345;display:inline-flex;align-items:center;gap:7px;cursor:pointer;box-shadow:0 1px 3px rgba(20,20,40,.05);transition:box-shadow .15s ease}
.srvmon-refresh-btn:hover{box-shadow:0 4px 12px rgba(20,20,40,.1)}
.srvmon-summary{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.srvmon-summary-card{flex:1 1 260px;background:#fff;border-radius:12px;border-left:4px solid var(--sc,#16a085);box-shadow:0 2px 10px rgba(20,20,40,.05);padding:16px 20px;display:flex;align-items:center;gap:14px}
.srvmon-summary-ic{width:44px;height:44px;border-radius:50%;background:var(--sc-soft,#e8f7f0);color:var(--sc,#16a085);display:flex;align-items:center;justify-content:center;font-size:19px;flex:none}
.srvmon-summary-num{font-size:19px;font-weight:700;color:#1f2430;line-height:1.2}
.srvmon-summary-lbl{font-size:12.5px;color:#9aa1b5;margin-top:1px}
.srvmon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:18px}
.srvmon-card{background:#fff;border-radius:14px;border:2px solid #e4e7f0;box-shadow:0 2px 10px rgba(20,20,40,.05);padding:20px 22px}
.srvmon-card.is-main{border-color:#8a5cf6;box-shadow:0 0 0 3px rgba(138,92,246,.12),0 4px 14px rgba(138,92,246,.15)}
.srvmon-card.is-lb{border-color:#5b6fe8}
.srvmon-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.srvmon-card-head .name{font-size:16px;font-weight:700;color:#1f2430;display:flex;align-items:center;gap:9px}
.srvmon-pill{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:2px 11px;font-size:11.5px;font-weight:700}
.srvmon-pill.on{background:#e6f7ee;color:#16a085}
.srvmon-pill.off{background:#fdeaea;color:#e05263}
.srvmon-pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.srvmon-uptime{color:#9aa1b5;font-size:12.5px}
.srvmon-metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;margin-bottom:16px}
.srvmon-metric-row{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;color:#5c6478;margin-bottom:5px}
.srvmon-metric-val{color:#1f2430;font-weight:600}
.srvmon-bar-track{background:#eef0f5;border-radius:20px;height:6px;overflow:hidden}
.srvmon-bar-fill{height:6px;border-radius:20px}
.srvmon-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;border-top:1px solid #f1f2f7;padding-top:14px;margin-bottom:14px}
.srvmon-stat{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;color:#5c6478}
.srvmon-stat b{color:#1f2430;font-weight:600}
.srvmon-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f1f2f7;padding-top:14px}
.srvmon-view-link{color:#4a5fd9;font-size:13px;font-weight:600;text-decoration:none}
.srvmon-view-link:hover{text-decoration:underline}
.srvmon-speedtest-btn{background:#fff;border:1px solid #e4e7f0;border-radius:9px;padding:6px 14px;font-size:12.5px;font-weight:600;color:#2c3345;cursor:pointer}
.srvmon-speedtest-btn:hover{box-shadow:0 2px 8px rgba(20,20,40,.08)}
/* ---- modern Streams section (list/add-edit/abusers/replace-id, scoped) ---- */
.streams-topbar{margin-bottom:14px}
.streams-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.streams-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.streams-topbar .btn-default{background:#eef0f7;color:#4a5064}
.streams-topbar .btn-default:hover{color:#2c3345}
.streams-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.streams-topbar .btn-info{background:linear-gradient(135deg,#4facfe,#38bdf8);color:#fff}
.streams-topbar .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.streams-topbar .btn-danger{background:linear-gradient(135deg,#ec4899,#e0526e);color:#fff}
.streams-topbar .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.streams-panel{border:1px solid #eef0f3!important}
.streams-panel>.panel-heading{background:#fbfbfd!important;color:#2c3345!important;font-weight:600;font-size:15px;border-bottom:1px solid #f1f2f5;padding:14px 18px}
.streams-panel>.panel-body{padding:18px}
.streams-panel label{color:#4a5064;font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.streams-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.streams-table{margin-bottom:0}
.streams-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)!important}
.streams-table>thead>tr>th{color:#fff;font-weight:600;border-bottom:none;padding:12px 10px}
.streams-table>tbody>tr{transition:background .1s ease}
.streams-table>tbody>tr:hover{background:#f5f6fb}
.streams-table>tbody>tr>td{vertical-align:middle;padding:10px}
.streams-status-dot{display:inline-block;width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 3px rgba(0,0,0,.05)}
.streams-action-btn{border-radius:8px!important;border:none!important}
/* shared form styling for Add/Edit Stream */
.stream-form-modern .addstream-info{background:linear-gradient(135deg,#eef2ff,#f5f3ff);border:none;color:#4a5fd9;border-radius:12px;padding:12px 18px;font-weight:600;margin-bottom:16px;box-shadow:0 4px 12px rgba(91,111,232,.08)}
.stream-form-modern .addstream-table>tbody>tr>td{padding:14px 20px;border-bottom:1px solid #f4f5f7}
.stream-form-modern .addstream-table .lbl{font-weight:600;color:#4a5064;font-size:13px;letter-spacing:.2px}
.stream-form-modern .addstream-table .sec{background:linear-gradient(135deg,#2c3345,#3d4560);border-radius:8px}
.stream-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none}
.stream-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.stream-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
.stream-form-modern .btn-default{border-radius:6px;padding:8px 20px;font-weight:600;background:#eef0f7;border:none}
.m3u-result{border-radius:8px;padding:10px 16px;margin-bottom:6px;font-weight:600;font-size:13.5px}
.m3u-ok{background:#dcf5ec;color:#0f8a68}
.m3u-dup{background:#fdf3d9;color:#a9740a}
/* ---- modern Series/Episodes section (scoped) ---- */
.series-topbar{margin-bottom:14px;text-align:center}
.series-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;font-size:13px;margin:2px;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.series-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.series-topbar .btn-default{background:#eef0f7;color:#4a5064}
.series-topbar .btn-default:hover{color:#2c3345}
.series-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.series-panel{border:1px solid #eef0f3!important;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(20,20,40,.06)}
.series-panel>.panel-heading{background:linear-gradient(135deg,#2c3345,#3d4560)!important;color:#fff!important;font-weight:600;font-size:15px;padding:14px 18px;border:none}
.series-search .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none}
.series-search label{color:#4a5064;font-size:12.5px;font-weight:600;margin-right:4px}
.series-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.series-table{margin-bottom:0;font-size:13px}
.series-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.series-table>thead>tr>th{color:#fff;font-weight:600;font-size:14px;border-bottom:none;padding:12px 10px;white-space:nowrap}
.series-table>tbody>tr:hover{background:#f5f6fb}
.series-table>tbody>tr>td{vertical-align:middle;padding:10px}
.series-status-dot{display:inline-block;width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 3px rgba(0,0,0,.05)}
.series-status-dot.is-ok{background:#16a085}
.series-status-dot.is-missing{background:#d7dbe2}
.series-opts-btn,.series-m3u-btn,.series-mass-btn{border-radius:8px!important;border:none!important;color:#fff!important}
.series-opts-btn{background:linear-gradient(135deg,#5b6fe8,#7c4dff)!important}
.series-m3u-btn{background:linear-gradient(135deg,#16a085,#0fb8ad)!important}
.series-mass-btn{background:linear-gradient(135deg,#f7971e,#f4511e)!important}
/* shared form styling for Add/Edit Series & Episode */
.series-form-modern .addstream-info{background:linear-gradient(135deg,#eef2ff,#f5f3ff);border:none;color:#4a5fd9;border-radius:12px;padding:12px 18px;font-weight:600;margin-bottom:16px;box-shadow:0 4px 12px rgba(91,111,232,.08)}
.series-form-modern .addstream-table>tbody>tr>td{padding:14px 20px;border-bottom:1px solid #f4f5f7}
.series-form-modern .addstream-table .lbl{font-weight:600;color:#4a5064;font-size:13px;letter-spacing:.2px}
.series-form-modern .addstream-table .sec{background:linear-gradient(135deg,#2c3345,#3d4560);border-radius:8px;color:#fff}
.series-form-modern .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none;font-size:13.5px}
.series-form-modern .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.series-form-modern .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad)!important;border:none!important;border-radius:6px;padding:8px 24px;font-weight:600;box-shadow:0 4px 12px rgba(15,184,173,.3)}
.series-form-modern .btn-default{border-radius:6px;padding:8px 20px;font-weight:600;background:#eef0f7;border:none}
.series-form-modern .ep-pick-btn{background:linear-gradient(135deg,#f7971e,#f4511e)!important;color:#fff!important;border:none!important;border-radius:0 8px 8px 0!important}
.series-form-modern .yn label{margin-right:16px;font-weight:400;font-size:13px}
/* ---- modern Resellers section (list/report/copy bouquets/etc, scoped) ---- */
.resellers-topbar{margin-bottom:14px}
.resellers-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.resellers-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.resellers-topbar .btn-default{background:#eef0f7;color:#4a5064}
.resellers-topbar .btn-default:hover{color:#2c3345}
.resellers-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.resellers-topbar .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.resellers-topbar .btn-info{background:linear-gradient(135deg,#4facfe,#38bdf8);color:#fff}
.resellers-topbar .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.resellers-panel{border:1px solid #eef0f3!important}
.resellers-panel>.panel-heading{background:#fbfbfd!important;color:#2c3345!important;font-weight:600;font-size:15px;border-bottom:1px solid #f1f2f5;padding:14px 18px}
.resellers-panel>.panel-body{padding:18px}
.resellers-search .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none;margin-right:8px}
.resellers-search .form-control:focus{border-color:#5b6fe8;box-shadow:0 0 0 3px rgba(91,111,232,.15)}
.resellers-search .btn{border-radius:6px;font-weight:600}
.resellers-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.resellers-table{margin-bottom:0;font-size:12.5px}
.resellers-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.resellers-table>thead>tr>th{color:#fff;font-weight:600;border-bottom:none;padding:12px 10px}
.resellers-table>tbody>tr{transition:background .1s ease}
.resellers-table>tbody>tr:hover{background:#f5f6fb}
.resellers-table>tbody>tr>td{vertical-align:middle;padding:10px}
.resellers-avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;color:#fff;font-weight:700;font-size:11.5px;margin-right:4px;vertical-align:middle}
.resellers-group-pill{display:inline-block;border-radius:20px;padding:3px 10px;font-size:11.5px;font-weight:600}
.resellers-sub-badge{display:inline-block;background:#eef2ff;color:#4a5fd9;border-radius:10px;padding:0 7px;font-size:11px;font-weight:700;margin-left:4px}
.resellers-balance{color:#16a085;font-weight:700}
.resellers-opts-btn{border-radius:8px!important;background:linear-gradient(135deg,#5b6fe8,#7c4dff)!important;border:none!important;color:#fff}
/* ---- Threat Intel + Admin Management (RBAC) sections, scoped ---- */
.threatintel-topbar,.adminmgmt-topbar{margin-bottom:14px}
.threatintel-topbar .btn,.adminmgmt-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.threatintel-topbar .btn:hover,.adminmgmt-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.threatintel-topbar .btn-default,.adminmgmt-topbar .btn-default{background:#eef0f7;color:#4a5064}
.threatintel-topbar .btn-default:hover,.adminmgmt-topbar .btn-default:hover{color:#2c3345}
.threatintel-topbar .btn-primary,.adminmgmt-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.threatintel-topbar .btn-success,.adminmgmt-topbar .btn-success{background:linear-gradient(135deg,#16a085,#0fb8ad);color:#fff}
.threatintel-topbar .btn-warning{background:linear-gradient(135deg,#f7971e,#f4511e);color:#fff}
.threatintel-panel,.adminmgmt-panel{border:1px solid #eef0f3!important}
.threatintel-panel>.panel-heading,.adminmgmt-panel>.panel-heading{background:#fbfbfd!important;color:#2c3345!important;font-weight:600;font-size:15px;border-bottom:1px solid #f1f2f5;padding:14px 18px}
.threatintel-panel>.panel-body{padding:18px}
.threatintel-search .form-control{border-radius:8px;border:1px solid #dde2e8;box-shadow:none;margin-right:8px}
.threatintel-table-wrap,.adminmgmt-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.threatintel-table,.adminmgmt-table{margin-bottom:0;font-size:12.5px}
.threatintel-table>thead>tr,.adminmgmt-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.threatintel-table>thead>tr>th,.adminmgmt-table>thead>tr>th{color:#fff;font-weight:600;border-bottom:none;padding:12px 10px}
.threatintel-table>tbody>tr:hover,.adminmgmt-table>tbody>tr:hover{background:#f5f6fb}
.threatintel-table>tbody>tr>td,.adminmgmt-table>tbody>tr>td{vertical-align:middle;padding:10px}
/* ---- Traffic & Abuse Monitor, scoped ---- */
.traffic-topbar{margin-bottom:14px}
.traffic-topbar .btn{border-radius:6px;border:none!important;padding:7px 16px;font-weight:600;box-shadow:0 2px 6px rgba(20,20,40,.08);transition:transform .12s ease,box-shadow .12s ease}
.traffic-topbar .btn:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(20,20,40,.16);color:#fff}
.traffic-topbar .btn-default{background:#eef0f7;color:#4a5064}
.traffic-topbar .btn-primary{background:linear-gradient(135deg,#5b6fe8,#7c4dff);color:#fff}
.traffic-topbar .btn-danger{background:linear-gradient(135deg,#ec4899,#e0526e);color:#fff}
.traffic-panel{border:1px solid #eef0f3!important;margin-bottom:18px}
.traffic-panel>.panel-heading{background:#fbfbfd!important;color:#2c3345!important;font-weight:600;font-size:15px;border-bottom:1px solid #f1f2f5;padding:14px 18px}
.traffic-panel>.panel-body{padding:18px}
.traffic-table-wrap{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden}
.traffic-table{margin-bottom:0;font-size:12.5px}
.traffic-table>thead>tr{background:linear-gradient(135deg,#2c3345,#3d4560)}
.traffic-table>thead>tr>th{color:#fff;font-weight:600;border-bottom:none;padding:12px 10px}
.traffic-table>tbody>tr:hover{background:#f5f6fb}
.traffic-table>tbody>tr>td{vertical-align:middle;padding:10px}
.traffic-row-flagged{background:#fdeaea!important}

.addstream-info{background:#d9edf7;border:1px solid #bce8f1;color:#31708f;padding:8px 12px;margin-bottom:10px}
.addstream-table{width:100%;background:#fff;border:1px solid #ddd}
.addstream-table>tbody>tr>td{padding:10px 14px;border-bottom:1px solid #eee;vertical-align:middle}
.addstream-table .lbl{width:280px;font-weight:400}
.addstream-table .req{color:#d9534f;margin-left:2px}
.addstream-table .sec{background:#2c3e50;color:#fff;font-weight:bold;text-transform:uppercase;font-size:14px;letter-spacing:.5px;padding:8px 14px}
.addstream-table .hint{display:block;color:#999;font-size:14px;margin-top:4px}
.src-row{display:flex;gap:6px;margin-bottom:6px;align-items:center}
.src-row .src-idx{width:26px;color:#337ab7;font-weight:bold}
.yn label{margin-right:16px;font-weight:normal}
.srv-tree{border:1px solid #ddd;border-radius:3px;padding:8px;max-height:260px;overflow:auto;background:#fafafa}
.srv-tree .grp{margin:4px 0 4px 0}
.srv-tree .grp-label{padding:2px 8px;border-radius:3px;color:#fff;font-size:14px;font-weight:bold}
.srv-tree .grp-online{background:#5cb85c}.srv-tree .grp-offline{background:#d9534f}
.srv-tree ul{list-style:none;margin:4px 0 8px 14px;padding:0}
.srv-tree li{padding:2px 0}
.srv-tree li label{font-weight:normal}
.toggle-btn{min-width:56px}
.bq-panel{display:inline-block;vertical-align:top;width:48%;border:1px solid #ddd;border-radius:8px;padding:10px;max-height:280px;overflow:auto;margin-right:1%}
.bq-live{background:#dff0d8}
.bq-vod{background:#fcf8e3}
.bq-panel label{font-weight:normal;margin-bottom:2px;padding:5px 8px;border-radius:6px;display:block;cursor:pointer;transition:background .12s ease}
.bq-panel label:hover{background:rgba(91,111,232,.1)}
.bq-panel input[type=checkbox]{margin-right:6px}

/* ---------------------------- modern refresh ---------------------------- *
 * Purely cosmetic: rounded cards/buttons/inputs, soft shadows, smoother
 * dropdown menus, comfortable spacing. No structural/behavioral changes. */
*{box-sizing:border-box}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}
a{transition:color .15s ease}
.table-condensed{font-size:14px!important}
.panel{border:none;border-radius:10px;box-shadow:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.05);overflow:hidden}
.panel-heading{border-radius:10px 10px 0 0!important;font-weight:600}
.panel-default>.panel-heading{background:#f8f9fb;border-bottom:1px solid #eef0f3;color:#333}
.panel-primary>.panel-heading{background:#2c3e50;border-color:#2c3e50}
.table{border-radius:8px}
.table>thead>tr>th{font-weight:600;letter-spacing:.3px;font-size:14px;padding:10px 12px}
.table>tbody>tr>td{padding:9px 12px;vertical-align:middle}
.table-striped>tbody>tr:hover{background-color:#f2f6fb}
.btn{border-radius:6px;font-weight:500;font-size:14px;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn-xs,.btn-sm{border-radius:5px;font-size:14px}
.form-control{border-radius:6px;border:1px solid #dde2e8;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}
.form-control:focus{border-color:#5b9bd5;box-shadow:0 0 0 3px rgba(91,155,213,.18)}
.label{border-radius:5px;font-weight:600;padding:4px 8px}
.stat-card{border-radius:10px;transition:box-shadow .15s ease}
.stat-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.1)}
/* modern dropdown menus (nav + per-row action gears) */
.dropdown-menu{border:none;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:6px;margin-top:8px;animation:ddfade .12s ease-out}
.dropdown-menu>li>a{border-radius:6px;padding:8px 14px;font-size:14px;transition:background .12s ease}
.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{background:#eef2f7;color:#222}
.dropdown-menu .divider{margin:6px 4px;background-color:#eee}
@keyframes ddfade{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.navbar-default{box-shadow:0 2px 8px rgba(0,0,0,.15)}
.navbar-default .navbar-nav>li>a{transition:background-color .15s ease}
.sb-page-header .headColor{box-shadow:0 1px 4px rgba(0,0,0,.25)}
/* select2 dropdowns styled to match the modern rounded/comfortable form controls */
.select2-container--default .select2-selection--single{height:34px;border:1px solid #dde2e8;border-radius:6px;padding:1px 0}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:32px;padding-left:12px;color:#333}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:32px;right:6px}
.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#999}
.select2-container--default .select2-selection--multiple{min-height:34px;border:1px solid #dde2e8;border-radius:6px}
.select2-selection__choice{border-radius:5px!important;background:#eef2f7!important;border:1px solid #dde2e8!important;padding:2px 8px!important}
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default .select2-selection--single:focus,
.select2-container--default.select2-container--open .select2-selection--single{border-color:#5b9bd5;box-shadow:0 0 0 3px rgba(91,155,213,.18)}
.select2-dropdown{border-color:#dde2e8;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.15);overflow:hidden}
.select2-results__option--highlighted[aria-selected]{background-color:#5b9bd5!important}
.select2-search--dropdown .select2-search__field{border-radius:6px;border:1px solid #dde2e8}
/* ---- modern Home dashboard ---- */
/* flat, plain-bordered stat cards (label on top, colored arrow icon + big number below) — matches
   the reference panel's Home page exactly (no gradient border/colored icon-circle/hover-lift). */
.dash-stats-row{display:flex;flex-wrap:wrap;margin:0 -6px}
.dash-stat-col{flex:0 0 20%;max-width:20%;padding:0 6px;margin-bottom:18px;box-sizing:border-box}
@media (max-width:991px){.dash-stat-col{flex:0 0 50%;max-width:50%}}
@media (max-width:576px){.dash-stat-col{flex:0 0 100%;max-width:100%}}
.dash-stat{background:#fff;border:1px solid #dfe3ea;border-radius:4px;padding:14px 18px;color:#000;box-shadow:none;display:block;height:100%}
.dash-stat .dash-lbl{font-size:13.5px;color:#4a5064;font-weight:500;text-transform:none;letter-spacing:0;white-space:nowrap;margin-bottom:6px}
.dash-num-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dash-stat .dash-ic{font-size:19px;color:var(--dash-c,#3d8b40);background:none;width:auto;height:auto;min-width:0;border-radius:0}
.dash-stat .dash-num{font-size:22px;font-weight:700;color:#000}
.dash-net-pct{display:inline-block;margin-top:3px;padding:1px 7px;border-radius:4px;color:#fff;font-size:9.5px;font-weight:700;letter-spacing:.2px}
.dash-net-sub{display:block;margin-top:2px;color:#8b93a7;font-size:9px;font-weight:600;text-transform:none;letter-spacing:0}
.dash-stat a{color:#000;text-decoration:none}
.dash-stat a:hover{color:var(--dash-c,#3d8b40)}
.dash-stat .dash-sub{font-size:11px;color:#8b93a7;margin-top:2px}
.dash-g-blue{--dash-c:#2f6fd6}
.dash-g-teal{--dash-c:#3d8b40}
.dash-g-orange{--dash-c:#2f6fd6}
.dash-g-pink{--dash-c:#3d8b40}
/* ---- classic Home top statistics only ---- */
.dash-summary{margin-bottom:18px}
.dash-summary-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
.dash-summary-card{background:#fff;border:1px solid #e5e5e5;border-radius:4px;min-height:136px;padding:16px 10px;color:#333;text-align:center;box-shadow:none;display:flex;flex-direction:column;justify-content:center}
.dash-summary-card .dash-summary-label{font-size:26px;line-height:1.25;font-weight:400;margin:0 0 4px;color:#333;letter-spacing:0}
.dash-summary-values{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;min-height:40px}
.dash-summary .dash-summary-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:4px 10px;border:1px solid transparent;border-radius:4px;color:#fff;text-decoration:none;font-size:20px;font-weight:600;line-height:1.2;white-space:nowrap}
.dash-summary .dash-summary-pill .bi{font-size:18px}
.dash-summary .dash-summary-green{background:#5cb85c;border-color:#4cae4c}
.dash-summary a.dash-summary-green:hover{background:#449d44;border-color:#398439;color:#fff}
.dash-summary .dash-summary-red{background:#d9534f;border-color:#d43f3a}
.dash-summary a.dash-summary-red:hover{background:#c9302c;border-color:#ac2925;color:#fff}
.dash-summary .dash-summary-info{background:#5bc0de;border-color:#46b8da}
.dash-summary .dash-summary-server-btn{display:inline-flex;align-items:center;gap:4px;background:#777;border:1px solid #666;border-radius:4px;padding:4px 10px;color:#fff;font-size:20px;font-weight:600;line-height:1.2;text-decoration:none}
.dash-summary .dash-summary-server-btn:hover{background:#666;color:#fff}
.dash-summary .dash-summary-network{display:flex;gap:10px}
.dash-summary-network-heading{display:flex;align-items:baseline;justify-content:center;gap:5px}
.dash-summary-network-heading small{background:transparent;color:#5bc0de;padding:0;font-size:12px;font-weight:400;line-height:1.2}
.dash-summary .dash-bandwidth-details{margin-top:10px;border:1px solid #ddd;border-radius:3px;background:#fff;color:#333}
.dash-summary .dash-bandwidth-details>summary{padding:6px 10px;cursor:pointer;font-size:13px;color:#666}
.dash-summary .dash-bandwidth-details[open]>summary{border-bottom:1px solid #ddd}
.dash-summary .dash-bandwidth-grid{display:flex;flex-wrap:wrap;padding:10px 4px 0}
.dash-summary .dash-bandwidth-grid .dash-stat-col{flex:0 0 50%;max-width:50%;margin-bottom:10px}
.dash-summary .dash-bandwidth-grid .dash-stat{padding:10px 12px}
.dash-summary .dash-bandwidth-grid .dash-lbl{white-space:normal}
[data-theme="dark"] .dash-summary-card,[data-theme="dark"] .dash-summary .dash-bandwidth-details{background:#1e2333;border-color:#3a4160;color:#eef1f8}
[data-theme="dark"] .dash-summary-card .dash-summary-label{color:#eef1f8}
[data-theme="dark"] .dash-summary .dash-bandwidth-details>summary{color:#b5bdd0}
@media(max-width:991px){.dash-summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:576px){.dash-summary-row{grid-template-columns:minmax(0,1fr)}.dash-summary .dash-bandwidth-grid .dash-stat-col{flex:0 0 100%;max-width:100%}}
/* ---- end classic Home top statistics ---- */
.dash-card{background:#fff;border:1px solid #eef0f3;border-radius:14px;box-shadow:0 6px 18px rgba(20,20,40,.06);overflow:hidden;margin-bottom:22px}
.dash-card .dash-card-head{padding:14px 18px;font-size:15px;font-weight:600;color:#2c3345;display:flex;align-items:center;gap:8px;border-bottom:1px solid #f1f2f5;background:#fbfbfd}
.dash-card .dash-card-body{padding:16px 18px}
.dash-row{display:flex;align-items:center;justify-content:space-between;padding:10px 4px;border-bottom:1px solid #f4f5f7}
.dash-row:last-child{border-bottom:none}
.dash-row .dash-row-lbl{display:flex;align-items:center;gap:10px;color:#4a5064;font-size:13.5px}
.dash-row .dash-row-lbl .bi{width:26px;height:26px;border-radius:8px;background:#f1f3fb;color:#5b6fe8;display:flex;align-items:center;justify-content:center;font-size:13px}
.dash-pill{border-radius:20px;padding:4px 12px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.dash-pill-info{background:#eaf2ff;color:#3667d6}
.dash-pill-warn{background:#fff4e0;color:#c8790a}
.dash-pill-danger{background:#fdeaea;color:#d9455f}
.dash-pill-muted{background:#f1f2f5;color:#69707f}
.dash-pill-solid-green{background:#16a085;color:#fff}
.dash-pill-solid-info{background:#3667d6;color:#fff}
.dash-pill-solid-dark{background:#2c3345;color:#fff}
/* Compact Home server cards. All selectors stay separate from /servers/monitoring. */
.hdcard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 24px;align-items:start}
.hdcard{min-width:0;background:#fff;border:1px solid #e5e5e5;border-radius:0;overflow:hidden;color:#444;font-size:12px}
.hdcard-head{background:#dff0d8;color:#444;font-weight:400;text-align:center;padding:5px 8px;font-size:12px;border-bottom:1px solid #e5e5e5;overflow-wrap:anywhere}
.hdcard.is-offline .hdcard-head{background:#f2dede;border-bottom-color:#ebcccc}
.hdcard-status{display:inline-block;margin-left:5px;padding:1px 4px;border:1px solid #d7c797;border-radius:3px;background:#fcf8e3;color:#8a6d3b;font-size:10px;font-weight:400;vertical-align:middle}
.hdcard-table{width:100%;border-collapse:collapse;table-layout:fixed}
.hdcard-table td{padding:4px 5px;border-bottom:1px solid #e5e5e5;color:#444;font-size:11px;line-height:1.35;vertical-align:middle;overflow-wrap:anywhere}
.hdcard-table td:first-child{width:58%;font-weight:400;border-right:1px solid #e5e5e5;text-align:left}
.hdcard-table td:last-child{text-align:left;background:#fff}
.hdcard-row-ram td:first-child{background:#d9edf7}
.hdcard-row-clients td:first-child{background:#fcf8e3}
.hdcard-bar-track{height:18px;background:#f5f5f5;border-radius:3px;overflow:hidden;position:relative;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}
.hdcard-bar-fill{height:100%;background:#5cb85c}
.hdcard-bar-val{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;white-space:nowrap;color:#222;font-size:11px;line-height:18px;font-weight:600}
.hdcard-bar-disk .hdcard-bar-fill{background:#5bc0de}
.hdcard-count,.hdcard-clients{color:#337ab7;font-weight:400;font-size:11px}
.hdcard-live{display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#337ab7}
.hdcard-net{display:flex;gap:2px;justify-content:flex-start;margin-bottom:3px}
.hdcard-net-chip{min-width:0;background:transparent;color:#444;padding:0;font-size:11px;white-space:nowrap}
.hdcard-net-chip.down{background:transparent}
.hdcard-net-gauge{height:13px}
.hdcard-net-gauge .hdcard-bar-val{font-size:10px;line-height:13px}
.hdcard-ip{text-align:center;font-size:12px;padding:7px 5px;color:#777}
.hdcard-ip .srv-ip-text{font-variant-numeric:tabular-nums}
.hdcard-ip .srv-ip-eye{margin-left:5px;color:#777}
.hdcard-footer{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:5px 7px;border-top:1px solid #eee;background:#fafafa}
.hdcard-speedtest-btn{background:transparent;border:0;padding:2px 0;color:#337ab7;font-size:11px;cursor:pointer}
.hdcard-speedtest-btn:hover{text-decoration:underline}
.hdcard-speedtest-btn:disabled{color:#888;cursor:wait}
.hdcard-details{font-size:11px;color:#777;text-align:center}
.hdcard-details summary{cursor:pointer;color:#777}
.hdcard-details[open]{flex-basis:100%}
.hdcard-details small{display:block;padding:5px 0 2px;line-height:1.5}
@media(max-width:1199px){.hdcard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.hdcard-grid{grid-template-columns:minmax(0,1fr)}}
.bq-picker{border:1px solid #e4e7f5;border-radius:12px;padding:12px;background:#fafbff}
.bq-picker .form-control{border-radius:8px}
.bq-picker select[multiple]{border-radius:8px;box-shadow:none}
.bq-btns{display:flex;flex-direction:column;gap:6px;justify-content:center;height:100%;padding-top:44px}
.bq-btns .btn{border-radius:8px!important}
.bq-sortbar{margin-top:8px;display:flex;gap:6px}
.bq-sortbar .btn{border-radius:8px!important}
.dash-srv-card{background:#fff;border:2px solid #e4e7f5;border-radius:18px;box-shadow:0 10px 26px rgba(20,20,40,.09);overflow:hidden;height:100%;transition:box-shadow .2s,transform .2s}
.dash-srv-card:hover{box-shadow:0 14px 34px rgba(20,20,40,.14)}
.dash-srv-card.is-main{border-color:#8a5cf6;box-shadow:0 0 0 4px rgba(138,92,246,.12),0 14px 34px rgba(138,92,246,.35)}
.dash-srv-head{padding:12px 16px;font-weight:600;font-size:14px;color:#fff;display:flex;align-items:center;gap:8px}
.dash-srv-head.on{background:linear-gradient(135deg,#16a085,#0fb8ad)}
.dash-srv-head.off{background:linear-gradient(135deg,#e05263,#c0392b)}
.dash-srv-card.is-main .dash-srv-head.on{background:linear-gradient(135deg,#5b6fe8,#8a5cf6)}
.dash-srv-body{padding:12px 16px}
.dash-bar-track{background:#eef0f5;border-radius:20px;height:8px;overflow:hidden;width:64px;flex:none;margin:0 8px}
.dash-bar-fill{height:8px;border-radius:20px}
.dash-viewed-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.dash-viewed-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #eef0f5;border-radius:12px;background:#fbfbfd;transition:background .15s,box-shadow .15s}
.dash-viewed-item:hover{background:#fff;box-shadow:0 4px 14px rgba(20,20,40,.08)}
.dash-viewed-rank{flex:none;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#5b6fe8,#8a5cf6);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
.dash-viewed-icon{flex:none;width:34px;height:34px;border-radius:9px;object-fit:cover;background:#fff;box-shadow:0 2px 6px rgba(20,20,40,.1)}
.dash-viewed-icon-ph{display:flex;align-items:center;justify-content:center;background:#eef0f7;color:#9aa1b5;font-size:16px}
.dash-viewed-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:13.5px;color:#2c3345;text-decoration:none}
.dash-viewed-name:hover{color:#5b6fe8;text-decoration:none}
.dash-viewed-count{flex:none;display:inline-flex;align-items:center;gap:5px;background:#eef2ff;color:#5b6fe8;border-radius:20px;padding:3px 10px;font-size:11.5px;font-weight:700}
.dash-geo-title{font-weight:700;font-size:15px;color:#2c3345;margin-bottom:10px}
.dash-geo-list{list-style:none;margin:0;padding:0}
.dash-geo-list li{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid #f1f2f7;font-size:13.5px;color:#3d4560}
.dash-geo-list li:last-child{border-bottom:none}
.dash-geo-list li b{margin-left:auto;color:#2c3345}
.dash-geo-name{flex:1}
.jvm-tooltip{background:#2c3345!important;font-size:12.5px!important;padding:6px 10px!important;border-radius:6px!important}
