 @import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
 :root {
      --espresso: #291C0E;
      --chestnut: #6E473B;
      --mocha: #A78D78;
      --taupe: #BEB5A9;
      --sand: #E1D4C2;

      --bg: var(--sand);
      --surface: var(--taupe);
      --primary: var(--chestnut);
      --text: var(--espresso);
    }

    * {
      margin: 0;
      padding: 0;

      box-sizing: border-box;
     font-family: "Poppins", sans-serif;
    }

    body {
      display: flex;
      height: 100vh;
     background-color: #f6f4f2;
      color: #f6f4f2;;
   
    }

    /* ====== Sidebar ====== */
    .sidebar {
      width: 255px;
      background: var(--sand);
      border-right: 1px solid rgba(0, 0, 0, 0.1);
      display: flex;
      flex-direction: column;
      padding: 20px;
    }

    .logo {
      font-weight: bold;
      font-size: 20px;
      margin-bottom: 30px;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .nav {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .nav a {
      display: flex;
      align-items: center;
      gap: 10px;
      text-decoration: none;
      color: var(--text);
      padding: 10px 12px;
      border-radius: 8px;
      transition: background 0.3s;
    
    }
    .nav a:hover {
      background: var(--mocha);
    }

    .nav a.active {
      background: var(--primary);
      color: #fff;
      font-weight: 600;
    }

   
    .dropdown {
      position: relative;
      display: inline-block;
    }
    .dropbtn {
      background: #decab6;
      color: #2c2c2c;
      padding: 8px 15px;
      font-size: 14px;
    
      border-radius: 5px;
      cursor: pointer;
       border: #291C0E 3px solid;
    }
    .dropbtn span {
      background: #9f8159;
      color: #fff;
      padding: 4px 10px;
      border-radius: 12px;
     
      margin-right: 8px;
      font-size: 13px;
      font-weight: bold;
    }
    .dropdown-content {
      display: none;
      position: absolute;
      right: 0;
      background: #fffaf4;
      min-width: 220px;
      box-shadow: 0px 4px 10px rgba(0,0,0,0.15);
      border-radius: 19px;
      z-index: 1;
      overflow: hidden;
    }
    .dropdown-content h4 {
      margin: 10px 15px;
      font-size: 14px;
      color: #444;
      font-weight: bold;
    }
    .dropdown-content a {
      display: block;
      padding: 10px 15px;
      text-decoration: none;
      font-size: 14px;
      color: #222;
    }
    .dropdown-content a small {
      display: block;
      font-size: 12px;
      color: #666;
    }
    .dropdown-content a:hover {
      background: #f0e6dc;
    }
    .current {
      display: inline-block;
      background: #6b4b3b;
      color: #fff;
      font-size: 11px;
      font-weight: bold;
      padding: 2px 8px;
      border-radius: 8px;
      margin-left: 3px;
    }
    .dropdown:hover .dropdown-content {
      display: block;
    }
    /* ====== Topbar ====== */
    .topbar {
      flex: 1;
      display: flex;
      flex-direction: column;
       background-color: #f6f4f2;
    }

    .topbar-header {
      background: var(--sand);
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 12px 20px;
      border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }

    .search input {
      padding: 8px 12px;
      border: 1px solid var(--taupe);
      border-radius: 8px;
      width: 370px;
    }

    .profile {
      display: flex;
      align-items: center;
      gap: 15px;
    }

    .profile .role {
      background: var(--primary);
      color: #fff;
      padding: 6px 12px;
      border-radius: 20px;
      font-size: 14px;
    }

    .profile .avatar {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      background: var(--mocha);
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: bold;
      color: #fff;
    }
      .dashboard {
      display: grid;
      grid-template-columns: 2fr 1fr;
      gap: 20px;
    }

    .card {
      background: #F5F0EA; /* card background */
      border-radius: 12px;
      padding: 20px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    }

    h2 {
      font-size: 20px;
      color: #291C0E; /* espresso brown */
      margin-bottom: 7px;
      padding-left: 13px;
    }

    p {
      color: #291C0E;
      font-size: 14px;
        padding-left: 13px;
        
    }

    /* Top Stat Cards */
    .stats {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 30px;
      justify-content: center;
      padding: 15px;
      padding-left: 13rem;
      margin-bottom: -4px;
       background-color: #f6f4f2;
    }
    .stat-card {
      background: var(--mocha);
      border-radius: 14px;
      padding: 20px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
      font-size: 15px;
      font-weight: bold;
      color: #291C0E;
      box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    }
    .stat-card i {
      font-size: 22px;
     
    }
    .stat-appointments i { color: #291C0E; }
    .stat-messages i { color: #1a73e8; }
    .stat-patients i { color: #228B22; }
    .stat-labs i { color: #FF9900; }

    /* Schedule */
    .schedule {
      text-align: center;
      border: 1px solid #E2D8CE;
      margin: 22px;
    }
     .schedule p{
      margin-bottom: 4px;
      padding-bottom: 6px;
     }
    .schedule i {
      font-size: 40px;
      color: #6E473B; /* chestnut */
      margin: 19px 0;
      margin-left: 22rem;
     
    }
    .new-btn {
      float: right;
      background: #6E473B;
      color: white;
      border: 8px;
      border-radius: 9px;
      padding: 11px 19px;
      font-size: 14px;
    
      cursor: pointer;
    }
    .new-btn:hover {
      background: var(--mocha);
    }

    /* Messages */
    .message {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-top: 3px;
    }
    .avatar {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background: #A78D78;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      font-weight: bold;
    }
    .msg-content {
      flex: 1;
    }
    .msg-content strong {
      color: #291C0E;
      display: block;
    }
    .msg-content small {
      color: #6E473B;
      font-size: 12px;
    }

    /* Lab Results */
    .lab-result {
      margin-top: 2px;
      background: #F5F0EA;
      border: 1px solid #E2D8CE;
      border-radius: 10px;
      padding: 10px;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    .status {
      padding: 4px 12px;
      border-radius: 12px;
      font-size: 12px;
      font-weight: bold;
      text-transform: lowercase;
    }
    .status.completed {
      background: #D9CFC4;
      color: #291C0E;
    }
    .status.pending {
      background: #FFB84D;
      color: #291C0E;
    }

    /* Responsive */
    @media (max-width: 768px) {
      .sidebar {
        display: none;
      }
      .topbar-header {
        flex-direction: column;
        align-items: flex-start;
      }
      .search input {
        width: 100%;
      }
    }
     .container {
      padding: 20px 40px;
    }

    h1 {
      font-size: 28px;
      font-weight: 700;
      margin: 0;
    }

    .subtitle {
      margin: 5px 0 20px 0;
      color: #3f2b1b;
      font-size: 16px;
    }

    .top-bar {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 15px;
      margin-left: 61rem;
    }

    .search-bar {
      flex: 1;
      margin: 0 10px;
      position: relative;
    }

    .search-bar input {
      width: 100%;
      padding: 10px 12px;
      border-radius: 10px;
      border: none;
      outline: none;
      font-size: 14px;
    }

    .filters-btn {
      background: #d5c7b9;
      border: none;
      padding: 10px 15px;
      border-radius: 10px;
      cursor: pointer;
      font-size: 14px;
    }

    .new-appointment {
      background-color: #6e473b;
      color: #fff;
      border: none;
      padding: 10px 18px;
      border-radius: 10px;
      cursor: pointer;
      font-weight: 600;
    }

    .tabs {
      display: flex;
      gap: 10px;
      margin-bottom: 20px;
    
    }
     .tabs a{
    text-decoration: none;
      outline: none;
        box-shadow: none;
        color: black;
     }

    .tab {
      padding: 8px 18px;
      background: #d5c7b9;
      border-radius: 10px;
      font-size: 14px;
      cursor: pointer;
  
    }

    .tab.active {
      background: #b2a497;
      text-decoration: none;
       outline: none;
         box-shadow: none;
    }

    .appointment-card {
      background: #e9d9c7;
      padding: 20px;
      border-radius: 12px;
      margin-bottom: 15px;
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
    }

    .profile {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .avatar {
      background: #6e473b;
      color: #fff;
      font-weight: 600;
      border-radius: 50%;
      width: 40px;
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .details h3 {
      margin: 0;
      font-size: 16px;
    }

    .tags {
      display: flex;
      gap: 8px;
      margin: 4px 0;
    }

    .tag {
      font-size: 12px;
      padding: 2px 8px;
      border-radius: 6px;
      font-weight: 500;
    }

    .scheduled {
      background: #3a7ff6;
      color: #fff;
    }

    .follow-up {
      background: #a78d78;
      color: #fff;
    }

    .desc {
      font-size: 14px;
      margin: 4px 0;
    }

    .meta {
      font-size: 13px;
      color: #2c1a0f;
      margin: 2px 0;
    }

    .menu {
      font-size: 22px;
      cursor: pointer;
      color: #3f2b1b;
    }
      .appointments-content {
            flex: 1;
        }

        .content-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: var(--spacing-5);
        }

        .content-actions {
            display: flex;
            gap: var(--spacing-3);
        }

        /* Empty State */
        .empty-state {
            background-color: #cba989;
            border-radius: 9px;
            padding: 60px;
            text-align: center;
            box-shadow: var(--shadow-sm);
        }

        .empty-icon {
            font-size: 48px;
            margin-bottom: var(--spacing-5);
            color: var(--mocha);
        }

        .empty-title {
            font-size: 18px;
            font-weight: 600;
            margin-bottom: var(--spacing-3);
        }

        .empty-description {
            color: var(--chestnut);
            margin-bottom: var(--spacing-5);
            max-width: 400px;
            margin-left: auto;
            margin-right: auto;
        }

        /* Divider */
        .divider {
            height: 1px;
            background-color: var(--gray);
            margin: var(--spacing-5) 0;
        }
           /* Buttons */
        .btn {
            padding: var(--spacing-3) var(--spacing-5);
            border-radius: var(--radius-md);
            font-weight: 500;
            cursor: pointer;
            border: none;
            font-family: inherit;
            transition: all 0.2s ease;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: var(--spacing-2);
        }

        .btn-primary {
            background-color: var(--mocha);
            color: white;
        }

        .btn-primary:hover {
            background-color: var(--chestnut);
        }

        .btn-outline {
            background-color: transparent;
            border: 1px solid var(--primary);
            color: var(--primary);
        }

        .btn-outline:hover {
            background-color: var(--primary);
            color: white;
        }

        /* Responsive */
        @media (max-width: 1024px) {
            .appointments-layout {
                flex-direction: column;
            }
            
            .filters-sidebar {
                width: 100%;
            }}
            