:root{
--bg:#0c1114;--surface:#131b1f;--surface-2:#1a2529;--surface-3:#213036;
--line:#28383f;--ink:#e7eef1;--muted:#95a9b1;
--brand:#14b8a6;--brand-2:#2dd4bf;--brand-dark:#0f766e;--brand-deep:#115e59;
--green:#34d399;--amber:#fbbf24;--red:#f87171;--slate:#94a3b8;
--radius:14px;--shadow:0 1px 2px rgba(0,0,0,.4),0 10px 30px rgba(0,0,0,.35);
--topbar-h:63px;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--bg);color:var(--ink);
font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;}
a{color:var(--brand-2);}
code{color:#9ff2e7;background:rgba(20,184,166,.12);padding:1px 6px;border-radius:5px;}
.text-secondary{color:var(--muted)!important;}
.brand-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-weight:800;font-size:20px;color:#fff;background:linear-gradient(135deg,var(--brand-2),var(--brand-dark));box-shadow:0 6px 16px rgba(20,184,166,.4);}
.brand-text{font-weight:700;font-size:20px;color:#fff;line-height:1;}
.brand-text small{display:block;font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;}
.app-main{min-width:0;display:flex;flex-direction:column;min-height:100vh;}
.topbar{display:flex;align-items:center;gap:14px;padding:12px 28px;background:var(--surface);border-bottom:1px solid var(--line);position:fixed;top:0;left:0;right:0;z-index:1030;}
.app-main{padding-top:var(--topbar-h);}
.topbar-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0;}
.topbar-nav{display:flex;align-items:center;gap:6px;}
.topbar-nav a{display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:10px;color:var(--muted);text-decoration:none;font-weight:600;font-size:14.5px;transition:background .15s,color .15s;}
.topbar-nav a i{font-size:17px;}
.topbar-nav a:hover{background:var(--surface-2);color:var(--ink);}
.topbar-nav a.active{background:linear-gradient(135deg,var(--brand-dark),var(--brand-deep));color:#fff;box-shadow:0 6px 16px rgba(20,184,166,.3);}
.topbar-title{font-weight:700;font-size:18px;min-width:0;}
.user-chip{display:flex;align-items:center;gap:10px;background:var(--surface-2);border:1px solid var(--line);border-radius:40px;padding:5px 12px 5px 5px;color:var(--ink);font-weight:600;font-size:14px;}
.avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:700;font-size:13px;text-transform:uppercase;background:linear-gradient(135deg,var(--brand-2),var(--brand-dark));}
.content{padding:28px;}
.lst-wrap{display:grid;grid-template-columns:250px 1fr;gap:20px;align-items:start;}
.lst-rail{position:sticky;top:calc(var(--topbar-h) + 20px);max-height:calc(100vh - var(--topbar-h) - 32px);overflow-y:auto;scrollbar-width:thin;}
.lst-rail .panel{padding:14px;}
.lst-statuses .lst-status{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:9px;color:var(--muted);text-decoration:none;font-size:14px;font-weight:500;}
.lst-statuses .lst-status:hover{background:var(--surface-2);color:var(--ink);}
.lst-statuses .lst-status.active{background:linear-gradient(135deg,var(--brand-dark),var(--brand-deep));color:#fff;}
.lst-count{font-size:12px;font-weight:700;background:var(--surface-3);border:1px solid var(--line);border-radius:20px;padding:1px 9px;color:var(--ink);}
.lst-statuses .lst-status.active .lst-count{background:rgba(255,255,255,.18);border-color:transparent;color:#fff;}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;}
.panel-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.panel-head h2{font-size:16px;font-weight:700;margin:0;}
.table{color:var(--ink);--bs-table-bg:transparent;--bs-table-color:var(--ink);border-color:var(--line);}
.table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--line);font-weight:600;}
.table td,.table th{border-color:var(--line);}
.table tbody tr:hover{background:var(--surface-2);}
.table td{vertical-align:middle;}
.stat-card{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px;}
.stat-label{color:var(--muted);font-size:13px;font-weight:600;}
.stat-value{font-size:30px;font-weight:800;margin-top:4px;color:var(--ink);}
.stat-icon{position:absolute;right:14px;top:16px;font-size:30px;opacity:.16;}
.badge-status{text-transform:capitalize;font-weight:600;padding:.4em .7em;border-radius:7px;border:1px solid transparent;}
.status-connected,.status-active{background:rgba(52,211,153,.16);color:#6ee7b7;border-color:rgba(52,211,153,.3);}
.status-draft{background:rgba(251,191,36,.16);color:#fcd34d;border-color:rgba(251,191,36,.3);}
.status-error{background:rgba(248,113,113,.16);color:#fca5a5;border-color:rgba(248,113,113,.3);}
.status-disconnected{background:rgba(148,163,184,.16);color:#cbd5e1;border-color:rgba(148,163,184,.3);}
.badge-app{background:rgba(20,184,166,.18);color:#8beadd;border:1px solid rgba(20,184,166,.35);font-weight:700;}
.badge.bg-secondary{background:var(--surface-3)!important;color:var(--ink);border:1px solid var(--line);}
.search-box{position:relative;}
.search-box i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);}
.search-box input{padding-left:34px;}
.form-control,.form-select{background:var(--surface-2);border-color:var(--line);color:var(--ink);}
.form-control:focus,.form-select:focus{background:var(--surface-2);color:var(--ink);border-color:var(--brand-2);box-shadow:0 0 0 .2rem rgba(20,184,166,.2);}
.form-control::placeholder{color:#6b7d84;}
.form-control:disabled{background:var(--surface);color:var(--muted);}
.input-group-text{background:var(--surface-3);border-color:var(--line);color:var(--muted);}
.form-switch .form-check-input:checked{background-color:var(--brand);border-color:var(--brand);}
.modal-content{background:var(--surface);border:1px solid var(--line);border-radius:16px;color:var(--ink);}
.modal-header,.modal-footer{border-color:var(--line);}
.dropdown-menu{background:var(--surface-2);border:1px solid var(--line);}
.dropdown-item{color:var(--ink);}
.dropdown-item:hover{background:var(--surface-3);color:var(--ink);}
.dropdown-item-text{color:var(--muted);}
.btn-primary{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff;}
.btn-primary:hover{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff;}
.btn-outline-primary{color:var(--brand-2);border-color:rgba(20,184,166,.5);}
.btn-outline-primary:hover{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff;}
.btn-outline-secondary{color:var(--ink);border-color:var(--line);}
.btn-outline-secondary:hover{background:var(--surface-3);border-color:var(--line);color:var(--ink);}
.btn-success{background:var(--green);border-color:var(--green);color:#052e1a;}
.btn-success:hover{background:#28b98a;border-color:#28b98a;color:#052e1a;}
.toast{background:var(--surface-3);color:var(--ink);border:1px solid var(--line);}
.tooltip-inner{background:#000;color:#fff;}
hr{border-color:var(--line);}
@media (max-width:991.98px){
.topbar{padding:10px 16px;gap:10px;}
.topbar-title{font-size:16px;}
.content{padding:18px;}
.lst-wrap{grid-template-columns:1fr;}
.lst-rail{position:static;max-height:none;overflow-y:visible;}
}
