
  :root {
    --accent: #00d4ff; --accent-dim: rgba(0,212,255,0.1);
    --green: #00c864; --green-dim: rgba(0,200,100,0.1);
    --yellow: #ffd740; --yellow-dim: rgba(255,215,64,0.1);
    --red: #ff5252; --red-dim: rgba(255,82,82,0.1);
    --orange: #ff9100; --purple: #d580ff; --purple-dim: rgba(213,128,255,0.1);
    --mono: 'IBM Plex Mono', monospace; --sans: 'IBM Plex Sans', sans-serif;
  }
  [data-theme="dark"] { --bg:#0f1117; --surface:#181c27; --surface2:#1f2435; --border:#2a3048; --text:#e8eaf0; --text-dim:#7a8099; --text-muted:#4a5270; --shadow:rgba(0,0,0,0.4); }
  [data-theme="light"] { --bg:#f0f2f7; --surface:#ffffff; --surface2:#f5f7fb; --border:#dde1ec; --text:#1a1f2e; --text-dim:#5a6380; --text-muted:#9099b2; --shadow:rgba(0,0,0,0.08); }
  * { box-sizing:border-box; margin:0; padding:0; }
  body { background:var(--bg); color:var(--text); font-family:var(--sans); font-size:13px; min-height:100vh; transition:background 0.2s,color 0.2s; }

  /* TOPBAR */
  .topbar { display:flex; align-items:center; justify-content:space-between; padding:0 20px; height:52px; background:var(--surface); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:100; box-shadow:0 1px 4px var(--shadow); }
  .topbar-left { display:flex; align-items:center; gap:12px; }
  .topbar-logo { height:34px; width:auto; object-fit:contain; }
  .divider-v { width:1px; height:20px; background:var(--border); }
  .board-label { font-size:12px; color:var(--text-dim); letter-spacing:0.08em; text-transform:uppercase; font-weight:500; }
  .topbar-right { display:flex; align-items:center; gap:10px; }
  .user-badge { display:flex; align-items:center; gap:8px; padding:4px 10px 4px 6px; background:var(--surface2); border:1px solid var(--border); border-radius:20px; }
  .user-avatar { width:22px; height:22px; border-radius:50%; background:var(--accent-dim); border:1px solid var(--accent); display:flex; align-items:center; justify-content:center; font-size:10px; color:var(--accent); font-family:var(--mono); font-weight:500; }
  .user-name { font-size:12px; color:var(--text-dim); }
  .role-pill { font-family:var(--mono); font-size:9px; padding:2px 6px; border-radius:3px; background:var(--accent-dim); color:var(--accent); text-transform:uppercase; letter-spacing:0.05em; }
  .icon-btn { width:30px; height:30px; border-radius:6px; background:none; border:1px solid var(--border); color:var(--text-muted); cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:14px; transition:all 0.15s; }
  .icon-btn:hover { border-color:var(--accent); color:var(--accent); }
  .logout-btn { padding:5px 12px; background:none; border:1px solid var(--border); border-radius:4px; color:var(--text-muted); font-family:var(--mono); font-size:11px; cursor:pointer; transition:all 0.15s; }
  .logout-btn:hover { border-color:var(--red); color:var(--red); }

  /* STATS */
  .statsbar { display:flex; gap:1px; background:var(--border); border-bottom:1px solid var(--border); }
  .stat { flex:1; padding:10px 20px; background:var(--surface); display:flex; flex-direction:column; gap:2px; }
  .stat-label { font-size:10px; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.1em; font-family:var(--mono); }
  .stat-value { font-family:var(--mono); font-size:20px; font-weight:500; color:var(--text); }
  .stat-value.accent{color:var(--accent)} .stat-value.green{color:var(--green)} .stat-value.yellow{color:var(--yellow)} .stat-value.red{color:var(--red)}

  /* NAV */
  .nav-tabs { display:flex; background:var(--surface); border-bottom:1px solid var(--border); padding:0 20px; }
  .nav-tab { padding:12px 18px; font-family:var(--mono); font-size:11px; color:var(--text-muted); cursor:pointer; border-bottom:2px solid transparent; transition:all 0.15s; text-transform:uppercase; letter-spacing:0.05em; margin-bottom:-1px; }
  .nav-tab:hover{color:var(--text-dim)} .nav-tab.active{color:var(--accent);border-bottom-color:var(--accent)}

  /* TABS */
  .tabs { display:flex; padding:12px 20px 0; border-bottom:1px solid var(--border); background:var(--bg); overflow-x:auto; }
  .tab { padding:7px 16px; font-size:12px; font-family:var(--mono); color:var(--text-muted); cursor:pointer; border-bottom:2px solid transparent; transition:all 0.15s; display:flex; align-items:center; gap:6px; margin-bottom:-1px; white-space:nowrap; }
  .tab:hover{color:var(--text-dim)} .tab.active{color:var(--accent);border-bottom-color:var(--accent)}
  .tab-count { font-size:10px; padding:1px 5px; border-radius:8px; background:var(--surface); border:1px solid var(--border); }
  .tab.active .tab-count { background:var(--accent-dim); color:var(--accent); border-color:var(--accent); }

  /* TOOLBAR */
  .toolbar { display:flex; align-items:center; justify-content:space-between; padding:10px 20px; background:var(--bg); border-bottom:1px solid var(--border); flex-wrap:wrap; gap:8px; }
  .toolbar-left { display:flex; align-items:center; gap:8px; }
  .search-box { display:flex; align-items:center; gap:8px; padding:6px 12px; background:var(--surface); border:1px solid var(--border); border-radius:4px; width:220px; }
  .search-box input { background:none; border:none; outline:none; color:var(--text); font-family:var(--sans); font-size:12px; width:100%; }
  .search-box input::placeholder{color:var(--text-muted)}
  .refresh-btn { padding:6px 12px; background:var(--surface); border:1px solid var(--border); border-radius:4px; color:var(--text-dim); font-size:12px; cursor:pointer; font-family:var(--mono); transition:all 0.15s; }
  .refresh-btn:hover{border-color:var(--accent);color:var(--accent)}
  .priority-badge { display:flex; align-items:center; gap:6px; padding:5px 10px; background:var(--yellow-dim); border:1px solid var(--yellow); border-radius:4px; font-size:11px; color:var(--yellow); font-family:var(--mono); }
  .pulse { width:6px; height:6px; border-radius:50%; background:var(--yellow); animation:pulse 1.5s infinite; }
  @keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.8)}}
  /* FILTERS */
  .filter-bar { display:flex; align-items:center; gap:8px; padding:8px 20px; background:var(--surface); border-bottom:1px solid var(--border); flex-wrap:wrap; }
  .filter-label { font-family:var(--mono); font-size:10px; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.08em; white-space:nowrap; }
  .filter-select { background:var(--surface2); border:1px solid var(--border); border-radius:4px; color:var(--text); font-family:var(--sans); font-size:12px; padding:5px 8px; outline:none; cursor:pointer; transition:border-color 0.15s; min-width:140px; }
  .filter-select:focus { border-color:var(--accent); }
  .filter-date { background:var(--surface2); border:1px solid var(--border); border-radius:4px; color:var(--text); font-family:var(--mono); font-size:11px; padding:5px 8px; outline:none; transition:border-color 0.15s; width:130px; }
  .filter-date:focus { border-color:var(--accent); }
  .filter-divider { width:1px; height:20px; background:var(--border); margin:0 4px; }
  .filter-clear { padding:5px 10px; background:none; border:1px solid var(--border); border-radius:4px; color:var(--text-muted); font-family:var(--mono); font-size:10px; cursor:pointer; transition:all 0.15s; text-transform:uppercase; letter-spacing:0.05em; }
  .filter-clear:hover { border-color:var(--red); color:var(--red); }
  .filter-active-badge { display:inline-flex; align-items:center; gap:4px; padding:2px 8px; background:var(--accent-dim); border:1px solid var(--accent); border-radius:10px; font-family:var(--mono); font-size:10px; color:var(--accent); }

  /* TABLE */
  .table-wrap { padding:0 20px 24px; overflow-x:auto; }
  table { width:100%; border-collapse:collapse; }
  thead th { padding:10px; text-align:left; font-family:var(--mono); font-size:10px; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.1em; font-weight:400; border-bottom:1px solid var(--border); white-space:nowrap; background:var(--bg); }
  tbody tr { border-bottom:1px solid var(--border); transition:background 0.1s; }
  tbody tr:hover{background:var(--surface)}
  tbody td { padding:9px 10px; vertical-align:middle; }
  .priority-col{width:4px;padding:0 !important}
  .priority-bar{width:3px;height:36px;border-radius:2px}
  .p-urgent{background:var(--red);box-shadow:0 0 6px var(--red)} .p-high{background:var(--orange)} .p-normal{background:var(--yellow)} .p-low{background:var(--text-muted)}
  .lead-name{font-weight:600;color:var(--text);font-size:13px;cursor:pointer} .lead-name:hover{color:var(--accent);text-decoration:underline}
  .lead-phone{font-family:var(--mono);font-size:11px;color:var(--text-dim);margin-top:2px}
  .vendor-pill{display:inline-block;padding:2px 8px;border-radius:3px;font-size:10px;font-family:var(--mono);font-weight:500;background:var(--surface2);border:1px solid var(--border);color:var(--text-dim)}
  .delivered{font-family:var(--mono);font-size:11px;color:var(--text-dim)} .delivered-sub{font-size:10px;color:var(--text-muted);margin-top:1px}
  .col-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
  .col-header{font-family:var(--mono);font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.08em}

  /* BUTTONS */
  .btn{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:4px;font-size:11px;font-family:var(--mono);cursor:pointer;border:1px solid transparent;transition:all 0.15s;white-space:nowrap;font-weight:500;background:none}
  .btn-call{border-color:var(--green);color:var(--green)} .btn-call:hover{background:var(--green);color:#000}
  .btn-sms{border-color:var(--accent);color:var(--accent)} .btn-sms:hover{background:var(--accent);color:#000}
  .btn-booked{border-color:var(--green);color:var(--green)} .btn-booked:hover{background:var(--green);color:#000}
  .btn-dispute{border-color:var(--yellow);color:var(--yellow)} .btn-dispute:hover{background:var(--yellow);color:#000}
  .btn-pause{border-color:var(--purple);color:var(--purple)} .btn-pause:hover{background:var(--purple);color:#000}
  .btn-dnc{border-color:var(--red);color:var(--red)} .btn-dnc:hover{background:var(--red);color:#fff}

  /* LEAD PANEL */
  .comm-panel{display:none;position:fixed;right:0;top:52px;bottom:0;width:340px;background:var(--surface);border-left:1px solid var(--border);z-index:90;flex-direction:column;box-shadow:-4px 0 20px var(--shadow)}
  .comm-panel.open{display:flex}
  .comm-panel-header{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start}
  .comm-panel-name{font-size:15px;font-weight:600;color:var(--text);margin-bottom:2px}
  .comm-panel-phone{font-family:var(--mono);font-size:12px;color:var(--accent)}
  .panel-tabs{display:flex;border-bottom:1px solid var(--border)}
  .panel-tab{flex:1;padding:9px;text-align:center;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:0.06em;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:all 0.15s}
  .panel-tab:hover{color:var(--text-dim)} .panel-tab.active{color:var(--accent);border-bottom-color:var(--accent)}
  .panel-body{flex:1;overflow-y:auto}
  .lead-detail-section{padding:14px 16px;border-bottom:1px solid var(--border)}
  .detail-section-title{font-family:var(--mono);font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:10px}
  .detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .detail-item{display:flex;flex-direction:column;gap:3px}
  .detail-full{grid-column:1/-1}
  .detail-label{font-family:var(--mono);font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.08em}
  .detail-value{font-size:12px;color:var(--text)} .detail-value.mono{font-family:var(--mono);font-size:11px}
  .status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px}
  .dot-new{background:var(--accent)} .dot-active{background:var(--green)} .dot-paused{background:var(--purple)} .dot-disputed{background:var(--yellow)} .dot-booked,.dot-sold{background:var(--green)} .dot-dnc{background:var(--red)}
  .comm-log{padding:12px 16px;display:flex;flex-direction:column;gap:8px}
  .comm-entry{padding:10px 12px;background:var(--surface2);border:1px solid var(--border);border-radius:6px;border-left:3px solid var(--border)}
  .comm-entry.call{border-left-color:var(--green)} .comm-entry.sms{border-left-color:var(--accent)} .comm-entry.email{border-left-color:var(--purple)}
  .comm-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
  .comm-type{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:0.08em;font-weight:500}
  .comm-type.call{color:var(--green)} .comm-type.sms{color:var(--accent)} .comm-type.email{color:var(--purple)}
  .comm-time{font-family:var(--mono);font-size:10px;color:var(--text-muted)}
  .comm-outcome{font-size:11px;color:var(--text-dim)}

  /* LOADING */
  .loading{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--text-muted);font-family:var(--mono);font-size:12px;gap:10px}
  .spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 0.8s linear infinite}
  @keyframes spin{to{transform:rotate(360deg)}}
  .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-muted);gap:8px}
  .empty-icon{font-size:32px;opacity:0.4}

  /* MODAL */
  .modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:1000;align-items:center;justify-content:center;backdrop-filter:blur(3px)}
  .modal-overlay.open{display:flex}
  .modal{background:var(--surface);border:1px solid var(--border);border-radius:10px;width:460px;max-width:95vw;overflow:hidden;animation:slideUp 0.2s ease;box-shadow:0 20px 60px var(--shadow)}
  @keyframes slideUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
  .modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}
  .modal-title{font-family:var(--mono);font-size:13px;font-weight:500;color:var(--text);display:flex;align-items:center;gap:8px}
  .modal-title-icon{width:22px;height:22px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:11px}
  .modal-close{width:26px;height:26px;border-radius:5px;background:none;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all 0.15s}
  .modal-close:hover{border-color:var(--red);color:var(--red)}
  .modal-lead-info{margin:16px 20px 0;padding:10px 14px;background:var(--surface2);border:1px solid var(--border);border-radius:6px}
  .modal-lead-name{font-weight:600;font-size:13px} .modal-lead-phone{font-family:var(--mono);font-size:11px;color:var(--text-dim);margin-top:2px}
  .modal-body{padding:16px 20px 20px;display:flex;flex-direction:column;gap:14px}
  .form-group{display:flex;flex-direction:column;gap:6px}
  .form-label{font-family:var(--mono);font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;display:flex;align-items:center;gap:4px}
  .form-label .req{color:var(--red)}
  .form-select,.form-textarea{background:var(--surface2);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:var(--sans);font-size:13px;padding:8px 10px;outline:none;transition:border-color 0.15s,box-shadow 0.15s;width:100%}
  .form-select:focus,.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}
  .form-textarea{resize:vertical;min-height:80px}
  .modal-footer{display:flex;gap:8px;padding:14px 20px;border-top:1px solid var(--border);justify-content:flex-end}
  .btn-modal-cancel{padding:7px 16px;background:none;border:1px solid var(--border);border-radius:4px;color:var(--text-dim);font-family:var(--mono);font-size:12px;cursor:pointer;transition:all 0.15s}
  .btn-modal-cancel:hover{border-color:var(--text-dim);color:var(--text)}
  .btn-modal-submit{padding:7px 16px;border:none;border-radius:4px;font-family:var(--mono);font-size:12px;font-weight:500;cursor:pointer;transition:all 0.15s}
  .btn-modal-submit:disabled{opacity:0.5;cursor:not-allowed}

  /* CALL OPTIONS */
  .call-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .call-option{padding:18px 14px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;cursor:pointer;text-align:center;transition:all 0.15s}
  .call-option:hover{border-color:var(--green);background:var(--green-dim)}
  .call-option-icon{font-size:24px;margin-bottom:8px}
  .call-option-label{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--text);margin-bottom:4px}
  .call-option-sub{font-size:11px;color:var(--text-muted);line-height:1.5}

  /* PAUSE OPTIONS */
  .pause-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
  .pause-option{padding:10px 6px;background:var(--surface2);border:1px solid var(--border);border-radius:6px;cursor:pointer;text-align:center;transition:all 0.15s;font-family:var(--mono);font-size:11px;color:var(--text-dim)}
  .pause-option:hover,.pause-option.selected{border-color:var(--purple);color:var(--purple);background:var(--purple-dim)}
  .pause-option-days{font-size:16px;font-weight:500;color:var(--text);margin-bottom:2px}
  .pause-option.selected .pause-option-days{color:var(--purple)}

  .warning-box{padding:12px;background:var(--red-dim);border:1px solid var(--red);border-radius:6px;font-size:12px;color:var(--red);line-height:1.6}

  /* DISPUTE/RECON SCREENS */
  .screen-content{padding:24px}
  .screen-title{font-family:var(--mono);font-size:14px;color:var(--text);margin-bottom:4px}
  .screen-sub{font-size:12px;color:var(--text-muted);margin-bottom:20px}
  .dispute-table{width:100%;border-collapse:collapse}
  .dispute-table th{padding:10px 12px;text-align:left;font-family:var(--mono);font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;border-bottom:1px solid var(--border);background:var(--bg)}
  .dispute-table td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}
  .dispute-table tr:hover td{background:var(--surface)}
  .bulk-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--surface2);border:1px solid var(--border);border-radius:6px;margin-bottom:16px}
  .bulk-bar-info{font-size:12px;color:var(--text-dim);font-family:var(--mono)}
  .btn-submit-vendor{padding:7px 16px;background:var(--yellow);border:none;border-radius:4px;color:#000;font-family:var(--mono);font-size:12px;font-weight:500;cursor:pointer;transition:all 0.15s}
  .btn-submit-vendor:hover{opacity:0.85} .btn-submit-vendor:disabled{opacity:0.4;cursor:not-allowed}
  .recon-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}
  .recon-stat{padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:6px}
  .recon-stat-label{font-family:var(--mono);font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:6px}
  .recon-stat-value{font-family:var(--mono);font-size:22px;font-weight:500}
  .status-badge{display:inline-block;padding:2px 8px;border-radius:3px;font-family:var(--mono);font-size:10px;font-weight:500;text-transform:uppercase}
  .badge-pending{background:var(--yellow-dim);color:var(--yellow);border:1px solid var(--yellow)}
  .badge-submitted{background:var(--accent-dim);color:var(--accent);border:1px solid var(--accent)}
  .badge-credited{background:var(--green-dim);color:var(--green);border:1px solid var(--green)}
  .badge-denied{background:var(--red-dim);color:var(--red);border:1px solid var(--red)}

  /* LOGIN */
  #login-screen{display:none;min-height:100vh;align-items:center;justify-content:center;background:var(--bg)}
  #login-screen.active{display:flex}
  .login-card{width:380px;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;animation:slideUp 0.25s ease;box-shadow:0 20px 60px var(--shadow)}
  .login-header{padding:28px 28px 20px;border-bottom:1px solid var(--border);text-align:center}
  .login-logo-img{height:44px;width:auto;margin-bottom:8px}
  .login-subtitle{font-size:12px;color:var(--text-muted);font-family:var(--mono)}
  .login-body{padding:24px 28px;display:flex;flex-direction:column;gap:16px}
  .login-field{display:flex;flex-direction:column;gap:6px}
  .login-label{font-family:var(--mono);font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.1em}
  .login-input{background:var(--surface2);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:var(--sans);font-size:13px;padding:9px 12px;outline:none;transition:border-color 0.15s;width:100%}
  .login-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}
  .login-btn{padding:10px;background:var(--accent);border:none;border-radius:4px;color:#000;font-family:var(--mono);font-size:13px;font-weight:500;cursor:pointer;width:100%;margin-top:4px;transition:all 0.15s}
  .login-btn:hover{opacity:0.85} .login-btn:disabled{opacity:0.5;cursor:not-allowed}
  .login-error{padding:10px 12px;background:var(--red-dim);border:1px solid var(--red);border-radius:4px;font-size:12px;color:var(--red);display:none}
  .login-error.show{display:block}

  .screen{display:none} .screen.active{display:block}

  /* TOAST */
  .toast{position:fixed;bottom:24px;right:24px;padding:12px 18px;background:var(--surface);border:1px solid var(--border);border-radius:8px;font-family:var(--mono);font-size:12px;color:var(--text);display:flex;align-items:center;gap:10px;z-index:2000;opacity:0;transform:translateY(8px);transition:all 0.2s;pointer-events:none;box-shadow:0 8px 24px var(--shadow)}
  .toast.show{opacity:1;transform:translateY(0)}
  .toast-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

  .calls-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:11px;font-weight:500;padding:2px 7px;border-radius:10px;border:1px solid var(--border)}
  .calls-0{color:var(--text-muted);background:none;border-color:var(--border)}
  .calls-low{color:var(--yellow);background:var(--yellow-dim);border-color:var(--yellow)}
  .calls-good{color:var(--green);background:var(--green-dim);border-color:var(--green)}

  /* BOOKINGS */
  .week-group { margin-bottom: 28px; }
  .week-header { display:flex; align-items:center; gap:12px; margin-bottom:12px; }
  .week-label { font-family:var(--mono); font-size:11px; font-weight:500; color:var(--accent); text-transform:uppercase; letter-spacing:0.08em; white-space:nowrap; }
  .week-line { flex:1; height:1px; background:var(--border); }
  .week-count { font-family:var(--mono); font-size:10px; color:var(--text-muted); white-space:nowrap; }
  .booking-table { width:100%; border-collapse:collapse; }
  .booking-table th { padding:8px 12px; text-align:left; font-family:var(--mono); font-size:10px; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.1em; border-bottom:1px solid var(--border); background:var(--bg); }
  .booking-table td { padding:10px 12px; border-bottom:1px solid var(--border); vertical-align:middle; font-size:12px; }
  .booking-table tr:hover td { background:var(--surface); }
  .booking-empty { padding:40px; text-align:center; color:var(--text-muted); font-family:var(--mono); font-size:12px; }
  ::-webkit-scrollbar{width:4px;height:4px} ::-webkit-scrollbar-track{background:var(--bg)} ::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}
