:root{
  --bg:#0c1424;
  --panel:#182437;
  --panel-deep:#111b2c;
  --panel-soft:#1d2a3d;
  --line:#2a374a;
  --text:#f5f7fb;
  --muted:#9aa9bf;
  --purple:#6657f5;
  --purple2:#5748e8;
  --mint:#34d399;
  --danger:#f07a91;
}

html{background:var(--bg)}
body{
  background:linear-gradient(180deg,#0c1424 0%,#0b1322 100%);
  color:var(--text);
}
.orb{display:none!important}
.page{padding:24px}

.panel{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:15px;
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}

.brand strong{color:#fff;font-weight:800}
.brand small,.muted{color:var(--muted)}
.eyebrow{
  color:#8fa8c8;
  letter-spacing:1.35px;
}

.app{gap:22px;max-width:1500px}
.sidebar{
  background:#0f1929;
  border-color:#223047;
  box-shadow:none;
  padding:20px;
}
.sidebar nav{gap:7px;margin-top:34px}
.nav{
  color:#b6c1d1;
  border:1px solid transparent;
  border-radius:10px;
  padding:11px 13px;
  transition:background .16s ease,color .16s ease,border-color .16s ease;
}
.nav:hover{
  color:#fff;
  background:#172337;
  border-color:#24334a;
}
.nav.active{
  color:#111827;
  background:#f3f4f6;
  border-color:#f3f4f6;
  box-shadow:none;
}
.sidebar>.ghost{background:#141f31}

.topbar{padding:7px 2px 20px}
.topbar h2{font-weight:750;letter-spacing:-.02em}
.account{color:#aebacd}
.avatar{
  background:#19263a;
  border:1px solid #31415a;
  color:#eef2ff;
}

.primary,.ghost,.actions button,.actions a{
  border-radius:9px;
  box-shadow:none;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.primary{
  background:#5c4fe8;
  border:1px solid #6b5df5;
  box-shadow:none;
}
.primary:hover{
  background:#6a5bf3;
  transform:translateY(-1px);
}
.ghost,
.actions button,.actions a{
  background:#142033;
  border:1px solid #2a394f;
  color:#eef2f8;
}
.ghost:hover,
.actions button:hover,.actions a:hover{
  background:#1a293e;
  border-color:#3a4b64;
}
.actions .danger,.danger{
  color:#ff9bad;
  border-color:rgba(240,122,145,.35);
  background:rgba(240,122,145,.08);
}

input,select,textarea,#resellerNoteModalInput{
  background:#101a2a;
  border:1px solid #2b3a50;
  color:#f4f7fb;
  border-radius:9px;
  box-shadow:none;
}
input::placeholder,textarea::placeholder{color:#718098}
input:focus,select:focus,textarea:focus,#resellerNoteModalInput:focus{
  border-color:#6c63e9;
  box-shadow:0 0 0 3px rgba(102,87,245,.13);
}
.form-grid label,.settings-row label,.reseller-renew-row label{color:#c8d1df}

.stat,.stream-summary-card,.admin-view-card{
  background:#172337;
  box-shadow:none;
}
.stat strong,.stream-summary-card strong,.admin-view-card strong{color:#fff}

.hero{
  min-height:200px;
  padding:30px;
  background:#172337;
  border-color:#2a394f;
}
.hero:after{display:none}
.hero h3{letter-spacing:-.025em}
.pulse{color:#55d9aa}
.pulse span{
  background:#34d399;
  box-shadow:0 0 0 5px rgba(52,211,153,.09);
}

.customer,.addon-card,.reseller-card,.active-stream-card,.log-entry,
.reseller-settings-card,.reseller-trial-panel,.admin-view-details,
#addonPrimarySource,.addon-source-card{
  background:#182437;
  border-color:#2a374a;
  box-shadow:none;
}
.addon-card{border-left:1px solid var(--line)}
.customer h4,.addon-card h4,.reseller-card h4{color:#f8fafc}

.badge{
  background:rgba(52,211,153,.09);
  border-color:rgba(52,211,153,.28);
  color:#58dcae;
}
.badge.suspended,.badge.cancelled,.badge.expired{
  color:#ff9bad;
  background:rgba(240,122,145,.08);
  border-color:rgba(240,122,145,.26);
}

.meta{color:#9aa9bf}
.manifest,.reseller-note-preview{
  background:#101a2a;
  border:1px solid #28374d;
  color:#aebbd0;
}
.result{
  background:rgba(52,211,153,.06);
  border-color:rgba(52,211,153,.22);
}
.toast{
  background:#172337;
  border-color:#314057;
  box-shadow:0 16px 38px rgba(0,0,0,.3);
}

.settings-row,.stream-device,.stream-details span,.user-agent,
.reseller-metrics span,.reseller-recent-ledger,.reseller-renew-row,
.reseller-brand-preview,.customer-reseller-brand,.admin-package-panel,
.admin-package-row,.managed-reseller-network-summary>div,
.customer-health-grid span,.customer-health-message{
  background:#141f31;
  border-color:#29384e;
}

.stream-empty-icon{
  background:#19263a;
  color:#9f97ff;
}
.live-dot{
  background:#34d399;
  box-shadow:0 0 0 5px rgba(52,211,153,.08);
}
.stream-expiry,.positive{color:#55d9aa}
.negative,.negative-balance{color:#ff92a7}
.user-agent code{color:#b8c4d6}

.reseller-balance-line{
  background:#162235;
  border-color:#2a394f;
}
.reseller-note-box,.managed-network-note,.customer-health-fixes{
  background:#142033;
  border-color:#2b3a50;
}
.reseller-note-top strong{color:#f4f7fb}
.reseller-note-modal-backdrop{background:rgba(3,8,17,.76)}
.reseller-note-modal-panel{
  background:#182437;
  border-color:#314057;
  box-shadow:0 28px 80px rgba(0,0,0,.48);
}
.sidebar-provider-logo,.reseller-brand-preview img,.customer-reseller-brand img{
  background:#101a2a;
  border-color:#2a394f;
  box-shadow:none;
}
.reseller-trial-summary{
  background:rgba(52,211,153,.06);
  border-color:rgba(52,211,153,.2);
}
.managed-reseller-tree-card[data-direct="false"]{border-left-color:#596783}

.customer-health-pill{
  background:#141f31;
  border-color:#314057;
}
.customer-health-pill.good{
  color:#74e3bb;
  background:rgba(52,211,153,.07);
  border-color:rgba(52,211,153,.25);
}
.customer-health-pill.warning{
  color:#f7c783;
  background:rgba(245,174,76,.07);
  border-color:rgba(245,174,76,.25);
}
.customer-health-message.good{
  background:rgba(52,211,153,.05);
  border-color:rgba(52,211,153,.18);
}
.customer-health-message.warning{
  background:rgba(245,174,76,.05);
  border-color:rgba(245,174,76,.18);
}
.customer-health-fixes ul{color:#c7d1df}
.customer-health-fixes li::marker{color:#5c6ff1}

.reseller-alert-dropdown summary{
  box-shadow:none;
  background:rgba(240,122,145,.07);
}
.reseller-alert-menu{
  background:#111b2c;
  border-color:#2a394f;
  box-shadow:0 18px 45px rgba(0,0,0,.28);
}
.reseller-alert{background:#151f31}
.reseller-alert.warning{background:rgba(245,174,76,.07)}
.reseller-alert.danger{background:rgba(240,122,145,.07)}

@media(max-width:760px){
  .page{padding:10px 12px 20px}
  .panel{border-radius:14px}
  .sidebar{
    background:#0f1929;
    border-radius:0 16px 16px 0;
    box-shadow:24px 0 60px rgba(0,0,0,.42);
  }
  .mobile-nav-overlay{background:rgba(3,8,17,.72)}
  .mobile-menu-button,.mobile-menu-close{
    background:#142033;
    border-color:#2d3c52;
  }
  .topbar{
    background:linear-gradient(to bottom,rgba(12,20,36,.97) 72%,rgba(12,20,36,0));
  }
  .hero{padding:21px}
  .nav.active{background:#f3f4f6;color:#111827}
  .check{background:#141f31;border-color:#29384e}
}
