    /* ============ Layout ============ */
    .app { display: flex; height: 100vh; }

    /* ============ Sidebar ============ */
    .sidebar {
      width: var(--sidebar-width);
      background: var(--sidebar-bg);
      border-right: 1px solid var(--border);
      display: flex;
      flex-direction: column;
      flex-shrink: 0;
    }

    .sidebar-header {
      padding: 16px;
      border-bottom: 1px solid var(--border);
    }

    .logo { font-size: 18px; font-weight: 600; color: var(--text); text-decoration: none; }
    .logo span { color: var(--accent); }

    .sidebar-tagline {
      font-size: 10px;
      color: var(--text-dim);
      margin-top: 2px;
    }
    .sidebar-tagline a {
      color: var(--text-dim);
      text-decoration: none;
    }
    .sidebar-tagline a:hover {
      color: var(--accent);
    }

    .dev-badge {
      display: none;
      padding: 3px 8px;
      background: var(--purple);
      color: #fff;
      font-size: 9px;
      font-weight: 600;
      border-radius: 3px;
      text-transform: uppercase;
    }
    .dev-badge.visible { display: block; }

    .sidebar-nav { padding: 12px 8px; border-bottom: 1px solid var(--border); }

    .nav-item {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 10px 12px;
      color: var(--text-dim);
      text-decoration: none;
      border-radius: 8px;
      font-size: 13px;
      font-weight: 500;
      cursor: pointer;
      transition: all 0.15s;
    }
    .nav-item:hover { color: var(--text); background: rgba(255,255,255,0.05); }
    .nav-item.active { background: var(--accent); color: #000; }
    .nav-item .icon { font-size: 16px; width: 20px; text-align: center; }
    .nav-item .badge {
      margin-left: auto;
      padding: 2px 6px;
      background: var(--accent);
      color: #000;
      font-size: 10px;
      font-weight: 600;
      border-radius: 10px;
    }
    .nav-item .shortcut {
      margin-left: auto;
      font-size: 10px;
      color: var(--text-dim);
      background: var(--bg);
      padding: 2px 6px;
      border-radius: 4px;
    }

    .nav-divider {
      height: 1px;
      background: var(--border);
      margin: 8px 12px;
    }

    /* Sidebar Sections */
    .sidebar-section { flex: 1; display: flex; flex-direction: column; overflow: hidden; }

    .section-header {
      padding: 12px 16px 8px;
      font-size: 11px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      color: var(--text-dim);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
    .section-header button {
      background: none;
      border: none;
      color: var(--accent);
      font-size: 16px;
      cursor: pointer;
      padding: 2px 6px;
      border-radius: 4px;
    }
    .section-header button:hover { background: rgba(255,255,255,0.1); }

    .watchlist { flex: 1; overflow-y: auto; padding: 0 8px 8px; }

    .watchlist-item {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 8px 10px;
      border-radius: 6px;
      cursor: pointer;
      transition: all 0.15s;
      position: relative;
    }
    .watchlist-item:hover { background: rgba(255,255,255,0.05); }
    .watchlist-item.removing { opacity: 0.5; }
    .watchlist-item .username { flex: 1; font-family: monospace; font-size: 13px; color: var(--accent); }
    .watchlist-item .status-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
    .watchlist-item .status-dot.available { background: var(--green); }
    .watchlist-item .status-dot.taken { background: var(--red); }
    .watchlist-item .status-dot.auction, .watchlist-item .status-dot.for-sale { background: var(--yellow); }
    .watchlist-item .status-dot.unknown { background: var(--text-dim); }
    .watchlist-item .price { font-size: 11px; color: var(--yellow); }
    .watchlist-item .alert-icon { font-size: 10px; color: var(--orange); }
    .watchlist-item .remove {
      opacity: 0;
      color: var(--text-dim);
      cursor: pointer;
      font-size: 14px;
      padding: 2px 4px;
      border-radius: 4px;
      transition: all 0.15s;
    }
    .watchlist-item:hover .remove { opacity: 1; }
    .watchlist-item .remove:hover { background: var(--red); color: #fff; }

    .watchlist-empty {
      padding: 24px 16px;
      text-align: center;
      color: var(--text-dim);
      font-size: 12px;
    }
    .watchlist-empty .icon { font-size: 32px; margin-bottom: 8px; opacity: 0.5; }
    .watchlist-empty .hint { margin-top: 8px; font-size: 11px; opacity: 0.7; }

    .smart-lists { padding: 8px; border-top: 1px solid var(--border); }
    .smart-list {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 8px 10px;
      border-radius: 6px;
      cursor: pointer;
      font-size: 12px;
      color: var(--text-dim);
      transition: all 0.1s;
    }
    .smart-list:hover { background: rgba(255,255,255,0.05); color: var(--text); }
    .smart-list.active { background: var(--accent); color: #000; }
    .smart-list .count { margin-left: auto; font-size: 11px; }
    .smart-list .dot { width: 6px; height: 6px; border-radius: 50%; }

    .sidebar-footer {
      margin-top: auto;
      padding: 12px 16px;
      border-top: 1px solid var(--border);
      font-size: 11px;
      color: var(--text-dim);
    }
    .sidebar-footer a {
      color: var(--text-dim);
      text-decoration: none;
    }
    .sidebar-footer a:hover {
      color: var(--accent);
    }
    .sidebar-footer-dot {
      margin: 0 6px;
      opacity: 0.5;
    }
