:root { --hub-accent:#5b82f8; --hub-violet:#9671ff; --hub-radius:18px; }
body { font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif; letter-spacing:-.015em; }
body.app-bg { min-height:100vh; background:var(--bs-body-bg); }
.install-bg {min-height:100vh;background:radial-gradient(circle at 85% 10%,rgba(100,112,255,.17),transparent 32%),radial-gradient(circle at 10% 70%,rgba(0,180,180,.10),transparent 35%),var(--bs-body-bg);}
.hub-shell {display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}
.hub-sidebar {position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid var(--bs-border-color);padding:22px 13px;background:var(--bs-tertiary-bg)}
.hub-brand {display:flex;gap:12px;align-items:center;padding:10px 10px 24px;font-weight:780;font-size:1.1rem;line-height:1.15}
.brand-symbol {display:grid;place-items:center;width:43px;height:43px;color:white;border-radius:14px;background:linear-gradient(135deg,#607dff,#7d60ee);box-shadow:0 9px 24px #4e5cf055;font-size:1.55rem}
.hub-side-section {padding:18px 12px 6px;font-size:.69rem;font-weight:780;letter-spacing:.10em;color:var(--bs-secondary-color);text-transform:uppercase}
.hub-navlink {display:flex;align-items:center;justify-content:space-between;padding:10px 12px;color:var(--bs-secondary-color);text-decoration:none;border-radius:11px;font-size:.9rem;font-weight:570;transition:background .15s}
.hub-navlink:hover {background:var(--bs-secondary-bg);color:var(--bs-body-color)}
.hub-navlink.active {background:color-mix(in srgb,var(--hub-accent) 14%,transparent);color:var(--hub-accent);font-weight:720}
.hub-header {min-height:76px;padding:16px 30px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--bs-border-color);background:var(--bs-body-bg)}
.hub-content {padding:30px;max-width:1620px;margin:auto}
.hub-heading {font-size:clamp(1.6rem,2vw,2.25rem);font-weight:790;letter-spacing:-.04em;margin-bottom:5px}
.hub-subtitle {color:var(--bs-secondary-color);margin-bottom:24px;font-size:.93rem}
.card {border-radius:var(--hub-radius);border-color:var(--bs-border-color);}
.card-body {padding:1.35rem;}
.hub-stat {font-size:clamp(1.7rem,3vw,2.5rem);font-weight:790;letter-spacing:-.045em}
.hub-kicker {color:var(--bs-secondary-color);font-size:.78rem;text-transform:uppercase;letter-spacing:.075em;font-weight:750}
.table {--bs-table-bg:transparent;font-size:.9rem;vertical-align:middle;}
.table td {padding-block:12px;}
.btn,.form-control,.form-select {border-radius:10px;}
.btn-primary {--bs-btn-bg:#586ff5;--bs-btn-border-color:#586ff5;--bs-btn-hover-bg:#4660e0;--bs-btn-hover-border-color:#4660e0;}
.hub-chip {display:inline-block;font-size:.71rem;padding:5px 9px;border-radius:30px;background:var(--bs-secondary-bg);font-weight:700;}
.hub-data {font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.83rem;overflow-wrap:anywhere}
.hub-badge-dot {display:inline-block;width:7px;height:7px;background:#35c993;border-radius:50%;margin-right:5px}
.hub-empty {border:1px dashed var(--bs-border-color);border-radius:16px;padding:32px;text-align:center;color:var(--bs-secondary-color)}
.hub-table-card {overflow:auto}
.hub-sidebar-mobile {display:none}
.text-gradient {background:linear-gradient(110deg,var(--hub-accent),var(--hub-violet));color:transparent;background-clip:text}
@media(max-width:1050px){.hub-shell{display:block}.hub-sidebar{display:none}.hub-sidebar-mobile{display:block}.hub-content{padding:20px}.hub-header{padding:13px 20px}}
