/* ─── IDBotic MLS Console — Unified Dark Theme ─── */
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  background:#0d1117;color:#e6edf3;display:flex;min-height:100vh;}

/* ─── Sidebar ─── */
.sidebar{width:240px;background:#161b22;border-right:1px solid #30363d;display:flex;flex-direction:column;
  justify-content:space-between;position:fixed;top:0;left:0;bottom:0;z-index:100;}
.sidebar-top{padding:16px 12px;}
.sidebar-bottom{padding:12px;border-top:1px solid #30363d;}
.logo{display:flex;align-items:center;gap:10px;padding:8px;margin-bottom:20px;}
.logo-icon{font-size:28px;}
.logo-text{color:#e6edf3;font-size:16px;font-weight:600;line-height:1.2;}
.logo-text small{font-size:10px;color:#8b949e;font-weight:400;}
nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;color:#8b949e;text-decoration:none;
  border-radius:6px;font-size:13px;margin-bottom:2px;transition:all .15s;}
nav a:hover{background:#21262d;color:#e6edf3;}
nav a.active{background:#1f6feb22;color:#58a6ff;font-weight:600;}
.nav-icon{font-size:16px;width:20px;text-align:center;}
.user-badge{display:flex;align-items:center;gap:8px;padding:8px;margin-bottom:8px;}
.user-avatar{width:32px;height:32px;background:#1f6feb;color:#fff;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-weight:bold;font-size:14px;}
.user-name{color:#e6edf3;font-size:13px;font-weight:600;}
.user-role{color:#8b949e;font-size:11px;}
.logout-btn{display:block;text-align:center;padding:8px;background:#21262d;border:1px solid #30363d;
  border-radius:6px;color:#f85149;text-decoration:none;font-size:12px;transition:.15s;}
.logout-btn:hover{background:#da363322;border-color:#da3633;}
.footer-logos{text-align:center;margin-top:8px;}
.footer-img{max-width:100%;height:auto;border-radius:4px;opacity:.85;transition:opacity .2s;}
.footer-img:hover{opacity:1;}

/* ─── Content ─── */
.content{margin-left:240px;padding:24px;flex:1;min-height:100vh;}
.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}
.page-header h1{color:#e6edf3;font-size:22px;font-weight:600;}

/* ─── Buttons ─── */
.btn{padding:8px 16px;border:1px solid #30363d;border-radius:6px;cursor:pointer;font-size:13px;
  transition:.15s;background:#21262d;color:#c9d1d9;text-decoration:none;display:inline-block;}
.btn:hover{background:#30363d;}
.btn-primary{background:#1f6feb;color:#fff;border-color:#1f6feb;}
.btn-primary:hover{background:#388bfd;}
.btn-danger{background:#da3633;color:#fff;border-color:#da3633;}
.btn-danger:hover{background:#f85149;}
.btn-sm{padding:4px 10px;font-size:11px;}

/* ─── MLS Table ─── */
.mls-matrix-card{background:#161b22;border:1px solid #30363d;border-radius:8px;overflow-x:auto;}
.mls-table{width:100%;border-collapse:collapse;font-size:13px;}
.mls-table th,.mls-table td{padding:10px 14px;border-bottom:1px solid #21262d;text-align:left;}
.mls-table th{color:#8b949e;background:#0d1117;font-weight:600;position:sticky;top:0;font-size:12px;}
.mls-table td{color:#c9d1d9;}
.mls-table tr:hover{background:#1f6feb0a;}
.mono{font-family:'SF Mono',Consolas,'Liberation Mono',Menlo,monospace;font-size:12px;}
.toggle-cell{text-align:center;}
.level-col{text-align:center;min-width:90px;}

/* ─── Toggle Switch ─── */
.switch{position:relative;display:inline-block;width:36px;height:20px;}
.switch input{opacity:0;width:0;height:0;}
.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#30363d;
  border-radius:20px;transition:.3s;}
.slider::before{content:'';position:absolute;height:14px;width:14px;left:3px;bottom:3px;
  background:#8b949e;border-radius:50%;transition:.3s;}
input:checked+.slider{background:#238636;}
input:checked+.slider::before{transform:translateX(16px);background:#fff;}

/* ─── Login ─── */
.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#0d1117;}
.login-card{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:40px;
  max-width:420px;width:100%;text-align:center;}
.login-logo{font-size:48px;margin-bottom:12px;}
.login-card h1{color:#e6edf3;font-size:20px;margin-bottom:4px;}
.login-creds{border-collapse:collapse;margin-top:16px;}
.login-creds th,.login-creds td{padding:4px 12px;border:1px solid #21262d;font-size:12px;}
.login-creds th{background:#0d1117;color:#8b949e;}
.alert{padding:10px;border-radius:6px;margin-bottom:12px;font-size:13px;}
.alert-danger{background:#da363322;color:#f85149;border:1px solid #da363366;}

/* ─── Header Actions ─── */
.header-actions{display:flex;gap:8px;}

/* ─── Responsive ─── */
@media(max-width:768px){
  .sidebar{width:60px;}
  .sidebar .logo-text,.sidebar .user-name,.sidebar .user-role,.sidebar .footer-logos,
  .sidebar nav a span:not(.nav-icon),.sidebar .logout-btn{display:none;}
  .sidebar nav a{justify-content:center;padding:12px;}
  .content{margin-left:60px;}
}
