        body, button, .menu-btn {
            font-family: 'IBM Plex Sans Thai', sans-serif !important;
            font-weight: 500;
            background-color: #f7f7f7;
            color: #1c1c1c;
            margin: 0;
            padding: 0;
            padding-bottom: 60px; /* ปรับความสูงของ padding ให้เพียงพอกับความสูงของ bottom-nav */

        }

        .title {
            padding: 20px; 
            margin-top: 0; 
            margin-bottom: 0; 
            text-align: center;
        }
        

        .top-bar {
            /* background-color: #b22222; */
            background: linear-gradient(135deg,  #0b8793, #3706a6 );
            padding: 15px;
            text-align: center;
        }

        .top-bar img {
            width: 150px;
        }
/* 
        .menu-grid {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            background-color: #2b2b2b;
            padding: 15px;
            border-radius: 10px;
            margin: 10px;
        }

        .menu-item {
            width: 25%;
            text-align: center;
            margin: 10px 0;
            color: white;
        }

        .menu-item img {
            width: 50px;
            height: 50px;
            margin-bottom: 5px;
        } */

        .menu-grid {
          display: grid;
          grid-template-columns: repeat(4, 1fr); /* 3 คอลัมน์ */
          gap: 20px 20px; /* 30px แนวตั้ง, 20px แนวนอน */
          justify-items: center;
          padding: 20px;

        }
        
        .menu-item {
          display: flex;
          flex-direction: column;
          align-items: center;
          text-align: center;
        }
          
          .menu-item:hover {
            transform: translateY(-5px);
          }
          
          /* ✅ วงกลมรอบไอคอน */
          .menu-icon {
            width: 60px;
            height: 60px;
            background: #fff;
            border-radius: 50%;
            /* box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); */
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 10px;
          }
          
          /* ✅ ไอคอนเล็กลง */
          .menu-icon img {
            width: 35px;
            height: 35px;
          }
          
          .menu-item span {
            font-size: 12px;
            color: #2b2b2b;
            font-weight: 500;
          }
          
        /* @media (max-width: 768px) {
            .menu-grid {
                grid-template-columns: repeat(2, 1fr); 
            }
        }
        
        @media (max-width: 480px) {
            .menu-grid {
                grid-template-columns: 1fr; 
            }
        } */
        
        

        .stats-bar {
            display: flex;
            justify-content: space-around;
            background-color: #1a1a1a;
            padding: 10px;
            margin: 10px;
            border-radius: 10px;
        }

        .stat-item {
            text-align: center;
            color: #c0c0c0;
        }

        .bottom-nav {
            display: flex;
            justify-content: space-around;
            align-items: flex-start; 
            padding: 15px 0; 
            background-color: #d8d8d8;
            position: fixed;
            bottom: 0;
            width: 100%;

        }


        .bottom-nav a {
            text-align: center;
            color: #1c1c1c;
            font-size: 12px;
            text-decoration: none;
        }

        .bottom-nav a img {
            width: 30px;
            height: 30px;
            margin-bottom: 0;

        }
        .menu-grid a {
            text-decoration: none;
            color: inherit; 
        }

        .menu-item button {
            margin: 5px;
            padding: 10px 15px;
            font-size: 14px;
            color: white;
            background: linear-gradient(135deg,  #0b8793, #3706a6 );
            border: none;
            border-radius: 30px;
            cursor: pointer;
            font-family: 'IBM Plex Sans Thai', sans-serif;

        }
        
        .menu-item button:hover {
            background: linear-gradient(135deg,  #0b8793, #3706a6 );
        }

        .search-bar {
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center; 
            width: 100%; 
            max-width: 90%; 
            margin: 0 auto;
            padding: 20px 0; 
        }
        
        .search-bar input[type="text"] {
            width: 100%;
            padding: 10px 15px 10px 20px;
            font-size: 14px;
            border: 1px solid #ccc;
            border-radius: 25px;
            outline: none;
            color: #1c1c1c;
            background-color: #d8d8d8;
            padding-right: 50px; 
            font-family: 'IBM Plex Sans Thai', sans-serif;
        }
        
        .search-bar .search-icon, .search-bar .clear-icon {
            position: absolute;
            right: 15px; 
            top: 50%; 
            transform: translateY(-50%); 
            font-size: 16px; 
            color: #9e9e9e;
            cursor: pointer;
        }
        
        .search-bar .clear-icon {
            display: none;
        }
        
        .bottom-nav-custom {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            height: 90px;
            background: #ffffff;
            display: flex;
            justify-content: space-around;
            align-items: center;
            border-radius: 20px 20px 0 0;
            box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
            z-index: 100;
        }
        
        .nav-item {
            text-align: center;
            font-size: 12px;
            color: #999;
            text-decoration: none;
            display: flex;
            flex-direction: column;
            align-items: center;
            width: 70px;
        }
        
        .nav-item i {
            font-size: 20px;
            margin-bottom: 3px;
        }
        
        .nav-item.active {
            color: #2b2b2b;
            font-weight: bold;
        }
        
        .nav-center-button {
            position: absolute;
            top: -20px;
            border-radius: 50%;
            padding: 5px;
        }
        
        .center-button {
            background: #2b2b2b;
            color: white;
            font-size: 26px;
            padding: 20px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            text-decoration: none;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
        }

        /* .menu-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
            gap: 10px;
            padding: 20px;
          }
          
          .menu-item {
            background: #ffffff;
            border-radius: 25px;
            padding: 20px 10px;
            text-align: center;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
            transition: transform 0.2s ease;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
          }
          
          .menu-item:hover {
            transform: translateY(-5px);
          }
          
          .menu-item img {
            width: 42px;
            height: 42px;
            margin-bottom: 10px;
          }
          
          .menu-item span {
            font-size: 12px;
            color: #2b2b2b;
            font-weight: 500;
          } */

          .section {
            margin-bottom: 30px;

          }
      
          .section-title {
            color: #666;
            font-size: 14px;
            margin-bottom: 10px;
          }

          .container {
            padding: 20px;
            margin-bottom: 50px;
          }

          .menu-btn {
            padding: 15px 20px;
            background: #fff;
            border: none;
            border-radius: 15px;
            text-align: left;
            /* font-weight: bold; */
            font-size: 16px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.1);
            margin-bottom: 10px;
            width: 100%;
          }

          h3 {
            text-align: center;
            margin: 20px 0;
            color: #2c2c2c;
          }

          .toggle-container {
            background: #fff;
            padding: 15px;
            border-radius: 15px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            box-shadow: 0 2px 4px rgba(0,0,0,0.05);
            margin-bottom: 12px; 

          }

          .logout {
            color: red;
          }

          .switch {
            position: relative;
            display: inline-block;
            width: 46px;
            height: 24px;
          }
      
          .switch input {
            opacity: 0;
            width: 0;
            height: 0;
          }

          .slider {
            position: absolute;
            cursor: pointer;
            top: 0; left: 0; right: 0; bottom: 0;
            background-color: #ccc;
            transition: .4s;
            border-radius: 24px;
          }
      
          .slider:before {
            position: absolute;
            content: "";
            height: 18px;
            width: 18px;
            left: 3px;
            bottom: 3px;
            background-color: white;
            transition: .4s;
            border-radius: 50%;
          }

          input:checked + .slider {
            background-color: #4CAF50;
          }
      
          input:checked + .slider:before {
            transform: translateX(22px);
          }

          .profile-card {
            margin: -40px 20px 20px 20px;
            padding: 20px;
            background: #fff;
            border-radius: 30px;
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
            text-align: center;
          }

          .dark-button {
            border: 1px solid #0d2b57;
            background: transparent;
            padding: 8px 16px;
            border-radius: 30px;
            color: #0d2b57;
            font-weight: bold;
            display: flex;
            align-items: center;
            gap: 5px;
            text-decoration: none;
            font-size: 14px;
          }

          .button-container {
            display: flex;
            justify-content: center;
            align-items: center;
          }

          .pin-modal {
            display: none;
            position: fixed;
            top: 0; left: 0;
            width: 100%; height: 100%;
            background: rgba(0,0,0,0.4);
            justify-content: center;
            align-items: center;
            z-index: 9999;
          }
          
          .pin-modal-content {
            background: #fff;
            padding: 30px;
            border-radius: 25px;
            text-align: center;
            max-width: 320px;
            width: 90%;
            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
            box-sizing: border-box;
          }
          
          .pin-modal-content h3 {
            font-size: 20px;
            margin-bottom: 20px;
          }
          
          #pinInput {
            font-size: 20px;
            padding: 12px 16px;
            width: 100%;
            border-radius: 12px;
            border: 1px solid #ccc;
            margin-bottom: 25px;
            box-sizing: border-box;
          }
          
          .pin-buttons {
            display: flex;
            justify-content: center;
            gap: 10px;
          }
          
          .btn-save {
            flex: 1;
            padding: 12px 0;
            border-radius: 15px;
            background: #0d2b57;
            color: white;
            border: none;
            font-weight: bold;
            font-size: 16px;
          }
          
          .btn-cancel {
            flex: 1;
            padding: 12px 0;
            border-radius: 15px;
            background: #ccc;
            color: #333;
            border: none;
            font-weight: bold;
            font-size: 16px;
          }
          
       
                  

        /* dark-mode */

        body.dark-mode .pin-modal-content {
            background: #1e1e1e;
            color: white;
          }
          
          body.dark-mode #pinInput {
            background: #2a2a2a;
            color: white;
            border-color: #555;
          }
          
          body.dark-mode .btn-save {
            background: #ffffff;
            color: #0d2b57;
          }
          
          body.dark-mode .btn-cancel {
            background: #444;
            color: white;
          }

            .dark-text {
                color: #0d2b57;
                margin: 0;
                font-weight: bold;
            }
            
            .sub-text {
                color: #888;
                margin: 5px 0 15px;
                font-size: 14px;
            }
            
            /* สำหรับ dark mode */

            body.dark-mode .bottom-nav-custom {
                background: #1e1e1e;
                box-shadow: 0 -2px 10px rgba(255,255,255,0.05);
              }
              
              body.dark-mode .nav-item {
                color: #cccccc;
              }
              
              body.dark-mode .nav-item.active {
                color: #66b2ff;
              }
              
              body.dark-mode .center-button {
                background: #ffffff;
                color: #0d2b57;
              }

              
            body.dark-mode .dark-text {
                color: #ffffff;
            }
            
            body.dark-mode .sub-text {
                color: #bbbbbb;
            }
  

        body.dark-mode .dark-button {
            border-color: #ffffff;
            color: #ffffff;
          }

          body.dark-mode {
            background-color: #1a1a1a;
            color: #ffffff;
          }
          
          body.dark-mode .section {
            background-color: #1a1a1a;
            color: white;

          }
          
          body.dark-mode .menu-btn {
            background-color: #333;
            color: #fff;
          }
          
          body.dark-mode .section-title,
          body.dark-mode h3 {
            color: #ffffff;
          }

          body.dark-mode .slider {
            background-color: #555;
          }

          body.dark-mode input:checked + .slider {
            background-color: #4CAF50;
          }

          body.dark-mode .toggle-container {
            background-color: #2a2a2a;
            color: white;
          }

        body.dark-mode .login-card {
            background: #1e1e1e !important;
            color: white;
            box-shadow: 0 4px 8px rgba(255, 255, 255, 0.05);
        }
        
        body.dark-mode .login-card h4 {
            color: #ffffff !important;
        }
        
        body.dark-mode .login-card p {
            color: #bbbbbb !important;
        }
        
        body.dark-mode .login-card button,
        body.dark-mode .login-card a {
            border-color: #ffffff !important;
            color: #ffffff !important;
            background: transparent !important;
        }
        
        body.dark-mode #pinModal {
            background: rgba(0, 0, 0, 0.6);
        }
        
        body.dark-mode #pinModal > div {
            background: #2b2b2b;
            color: white;
        }
        
        body.dark-mode #pinModal input {
            background-color: #444;
            color: white;
            border-color: #888;
        }
        
        body.dark-mode #pinModal button:first-child {
            background: #ffffff;
            color: #0d2b57;
        }
        
        body.dark-mode #pinModal button:last-child {
            background: #666;
            color: white;
        }
        
        
          
          body.dark-mode .menu-item span {
            color: #ffffff;
          }
          
          body.dark-mode .menu-icon {
            background: #2a2a2a;
            box-shadow: 0 2px 6px rgba(255, 255, 255, 0.05);
          }

        body.dark-mode .profile-card {
            background: #2a2a2a;
            color: white;
          }
          
          body.dark-mode .profile-card h4 {
            color: #ffffff;
          }
          
          body.dark-mode .profile-card p {
            color: #bbbbbb;
          }
          
          /* qr */

          
          /* #qr-reader-container {
            display: none;
            position: fixed;
            top: 0; left: 0;
            width: 100%;
            height: 100vh;
            background: rgba(0,0,0,0.95);
            z-index: 9999;
            align-items: center;
            justify-content: center;
            flex-direction: column;
          } */

          #qr-reader-container {
  display: none;
  position: fixed;
  top: 0; left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0,0,0,0.8); /* เบลอพื้นหลัง */
  backdrop-filter: blur(5px);
  z-index: 9999;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 0 0px;
}

#qr-reader {
  border: 4px solid #00e676;
  border-radius: 20px;
  box-shadow: 0 0 30px rgba(0, 230, 118, 0.4);
  overflow: hidden;
}

#qr-instruction {
  color: white;
  text-align: center;
  font-size: 14px;
  margin-top: 20px;
  padding: 0 10px;
}

#qr-reader video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 20px;
}


        /* แจ้งเตือน */

          
          .custom-toast {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background: #ff4f4f;
            color: #fff;
            font-family: 'IBM Plex Sans Thai', sans-serif;
            padding: 16px 24px;
            border-radius: 12px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
            z-index: 10000;
            display: none;
            font-size: 16px;
            animation: fadeInOut 3s ease-in-out forwards;
            }
        
            @keyframes fadeInOut {
            0% { opacity: 0; transform: translate(-50%, -60%); }
            10%, 90% { opacity: 1; transform: translate(-50%, -50%); }
            100% { opacity: 0; transform: translate(-50%, -40%); }
            }

            .qr-toast {
                position: fixed;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                background: #222;
                color: #fff;
                font-family: 'IBM Plex Sans Thai', sans-serif;
                padding: 20px 30px;
                border-radius: 16px;
                box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
                font-size: 16px;
                display: none;
                z-index: 10001;
                animation: fadeInOut 3s ease-in-out forwards;
                text-align: center;
              }
              
              .qr-toast i {
                font-size: 28px;
                margin-bottom: 8px;
                display: block;
              }
              
              .qr-toast.success {
                background-color: #28a745;
              }
              
              .qr-toast.error {
                background-color: #dc3545;
              }

              .qr-toast.warning {
                background-color: #ffcc00;
                color: #1a1a1a;
              }
              
              
              @keyframes fadeInOut {
                0% { opacity: 0; transform: translate(-50%, -60%); }
                10%, 90% { opacity: 1; transform: translate(-50%, -50%); }
                100% { opacity: 0; transform: translate(-50%, -40%); }
              }

              /* ประวัติ */
              .scan-card {
                background: #fff;
                border-radius: 16px;
                padding: 15px 20px;
                margin-bottom: 15px; /* ✅ ลดจาก 30px เหลือ 15px ให้ไม่ห่างกันมาก */
                box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
              }
              
              .scan-info {
                display: flex;
                align-items: center;
                gap: 10px;
              }
              
              .scan-dot {
                width: 10px;
                height: 10px;
                background-color: #27ae60; /* สีเขียว */
                border-radius: 50%;
              }
              
              .scan-title {
                font-weight: bold;
                font-size: 16px;
                color: #000;
              }
              
              .scan-time {
                font-size: 13px;
                color: #888;
                margin-left: 20px;
                margin-top: 5px;
              }
              
              #lastScanSection {
                margin-top: 20px;
                padding: 0 15px 80px;  
              }
              
              #lastScanSection h3 {
                margin-bottom: 16px; 
                text-align: center;
                font-size: 18px;
                color: #1c1c1c;
              }

              .scan-header {
                display: flex;
                justify-content: space-between;
                align-items: center;
                background-color: #e1edfb;
                padding: 16px 20px;
                border-radius: 12px;
                margin-bottom: 20px;
              }
              
              .scan-title-head {
                font-weight: bold;
                font-size: 16px;
                color: #1c1c1c;
              }
              
              .scan-subtitle {
                font-size: 13px;
                color: #777;
                margin-top: 2px;
              }
              
              .history-btn {
                background-color: #0b4ea6;
                color: #fff;
                border: none;
                padding: 8px 16px;
                font-size: 14px;
                font-weight: 500;
                border-radius: 20px;
                display: flex;
                align-items: center;
                gap: 6px;
                cursor: pointer;
                box-shadow: 0 2px 6px rgba(0,0,0,0.1);
              }
              .history-btn i {
                font-size: 14px;
              }

              /* #monthSelector {
                width: 100%;
                padding: 10px 15px;
                border: 1px solid #ccc;
                border-radius: 12px;
                font-size: 16px;
                font-family: 'IBM Plex Sans Thai', sans-serif;
                margin-bottom: 20px;
                appearance: none;
                background-color: #f9f9f9;
                background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140"><polygon points="0,0 140,0 70,70" fill="%23999"/></svg>');
                background-repeat: no-repeat;
                background-position: right 10px center;
                background-size: 12px;
                box-shadow: 0 2px 5px rgba(0,0,0,0.1);
              }
              
              #monthSelector:focus {
                border-color: #1565c0;
                outline: none;
                background-color: #fff;
              } */

              .top-bar {
                display: flex;
                align-items: center;
                justify-content: space-between;
                padding: 15px 20px;
                background: #f7f7f7;
                /* box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05); */
                /* border-radius: 0 0 16px 16px; */
                position: sticky;
                top: 0;
                z-index: 1000;
              }
              
              .back-btn {
                background: #f0f0f0;
                border: none;
                padding: 8px 12px;
                border-radius: 12px;
                font-size: 18px;
                color: #333;
                /* box-shadow: 0 2px 4px rgba(0,0,0,0.1); */
                transition: all 0.3s ease;
              }
              
              .back-btn:hover {
                background: #e0e0e0;
              }
              
              .top-title {
                flex-grow: 1;
                text-align: center;
                font-size: 18px;
                font-weight: bold;
                font-family: 'IBM Plex Sans Thai', sans-serif;
                margin-right: 36px; 
              }

              body.dark-mode .scan-card {
                background: #2a2a2a;
                border-radius: 16px;
                padding: 15px 20px;
                margin-bottom: 15px;
                box-shadow: 0 2px 6px rgba(255, 255, 255, 0.05);
              }


              body.dark-mode .scan-title {
                color: #ffffff;
              }

              body.dark-mode .scan-time {
                color: #bbbbbb;
              }

              body.dark-mode .scan-header {
                background-color: #333;
              }

              body.dark-mode .scan-title-head {
                color: #ffffff;
              }

              body.dark-mode .scan-subtitle {
                color: #bbbbbb;
              }

              body.dark-mode .history-btn {
                background-color: #0b4ea6;
                color: #fff;
                box-shadow: 0 2px 6px rgba(255, 255, 255, 0.05);
              }

              body.dark-mode #monthSelector {
                background-color: #2a2a2a;
                color: #ffffff;
                border: 1px solid #555;
                box-shadow: 0 2px 5px rgba(255,255,255,0.05);
                background-image: url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'><polygon points='0,0 140,0 70,70' fill='%23ccc'/></svg>");
              }

              body.dark-mode #monthSelector:focus {
                border-color: #66b2ff;
                background-color: #1e1e1e;
              }

              /* ✅ top-bar */
              body.dark-mode .top-bar {
                background-color: #1a1a1a;
                /* box-shadow: 0 2px 5px rgba(255,255,255,0.05); */
              }

              body.dark-mode .back-btn {
                background: #333;  
                color: #ffffff;     
              }
              
              body.dark-mode .back-btn:hover {
                background: #444;  
              }

              body.dark-mode .top-title {
                color: #ffffff;
              }

              .date-controls {
                display: flex;
                align-items: center;
                gap: 10px;
                margin: 15px 0;
              }
              
              #monthSelector {
                flex: 1;
                padding: 10px 15px;
                border: 1px solid #ccc;
                border-radius: 12px;
                font-size: 16px;
                font-family: 'IBM Plex Sans Thai', sans-serif;
                background-color: #f9f9f9;
                background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140"><polygon points="0,0 140,0 70,70" fill="%23999"/></svg>');
                background-repeat: no-repeat;
                background-position: right 10px center;
                background-size: 12px;
                box-shadow: 0 2px 5px rgba(0,0,0,0.1);
                appearance: none;
                margin: 0;
              }
              
              #monthSelector:focus {
                border-color: #1565c0;
                outline: none;
                background-color: #fff;
              }
              
              #calendarBtn {
                width: 48px;
                height: 48px;
                padding: 0;
                border: 1px solid #ccc;
                border-radius: 12px;
                background-color: #f9f9f9;
                cursor: pointer;
                box-shadow: 0 2px 5px rgba(0,0,0,0.1);
                display: flex;
                align-items: center;
                justify-content: center;
              }
              
              #calendarBtn:hover {
                background-color: #e6f0ff;
                border-color: #1565c0;
              }
              
              #calendarBtn:focus {
                border-color: #1565c0;
                outline: none;
                background-color: #fff;
              }
              
              #calendarBtn i {
                font-size: 18px;
                color: #1565c0;
              }
              
              body.dark-mode #calendarBtn {
                background-color: #2a2a2a;
                border-color: #555;
              }

              .date-range-container {
                display: flex;
                flex-wrap: nowrap;
                justify-content: space-between;
                gap: 10px;
                margin-bottom: 20px;
                width: 100%;
                max-width: 100%;
              }
              
              .date-input-wrapper {
                flex: 1;
                min-width: 0;
              }
              
              .custom-date {
                width: 100%;
                padding: 10px 15px;
                border: 1px solid #ccc;
                border-radius: 12px;
                font-size: 16px;
                font-family: 'IBM Plex Sans Thai', sans-serif;
                background-color: #f9f9f9;
                box-shadow: 0 2px 5px rgba(0,0,0,0.05);
                cursor: pointer;
                appearance: none;
                background-image: url("https://cdn-icons-png.flaticon.com/512/747/747310.png");
                background-repeat: no-repeat;
                background-position: right 10px center;
                background-size: 20px;
                box-sizing: border-box;
              }
  
              .custom-date.placeholder-active {
                color: #999;
              }
              
              
              .date-range-separator {
                padding: 0 5px;
                font-weight: bold;
                color: #555;
              }
              
              
              body.dark-mode .custom-date {
                background-color: #2a2a2a;
                color: #fff;
                border-color: #555;
                background-image: url("https://cdn-icons-png.flaticon.com/512/747/747310.png");
              }

              .placeholder-active {
                color: #999;
              }

              .floating-input {
                position: relative;
                flex: 1;
              }
              
              .floating-input input {
                width: 100%;
                padding: 14px 15px 10px;
                border: 1px solid #ccc;
                border-radius: 12px;
                font-size: 16px;
                font-family: 'IBM Plex Sans Thai', sans-serif;
                background-color: #f9f9f9;
                box-shadow: 0 2px 5px rgba(0,0,0,0.05);
              }
              
              .floating-input label {
                position: absolute;
                top: 12px;
                left: 15px;
                font-size: 16px;
                color: #aaa;
                pointer-events: none;
                transition: 0.2s ease all;
              }
              
              .floating-input input:focus + label,
              .floating-input input:not(:placeholder-shown) + label {
                top: 5px;
                font-size: 12px;
                color: #1565c0;
              }

              .subject-title {
                font-size: 18px;
                font-weight: bold;
                margin-bottom: 20px;
                color: #333;
                text-align: center;
              }
              .subject-card {
                background: white;
                padding: 15px 20px;
                border-radius: 12px;
                margin-bottom: 12px;
                box-shadow: 0 2px 8px rgba(0,0,0,0.05);
              }
              .subject-code {
                font-size: 14px;
                color: #888;
              }
              .subject-name {
                font-size: 16px;
                font-weight: bold;
                color: #333;
              }
              .subject-meta {
                font-size: 13px;
                color: #666;
                margin-top: 5px;
              }

              body.dark-mode .subject-title {
                color: #ffffff;
              }
              body.dark-mode .subject-card {
                background: #2a2a2a;
                box-shadow: 0 2px 8px rgba(255,255,255,0.05);
              }
              body.dark-mode .subject-code {
                color: #bbbbbb;
              }
              body.dark-mode .subject-name {
                color: #ffffff;
              }
              body.dark-mode .subject-meta {
                color: #cccccc;
              }
              
              .calendar-image {
                width: 100%;
                height: auto;
                display: block;
              }
              
              body.dark-mode .report-box {
                background: #2a2a2a;
                box-shadow: 0 2px 6px rgba(255, 255, 255, 0.05);
              }

              body.dark-mode .report-box .label {
                color: #bbbbbb;
              }

              body.dark-mode .report-box .value {
                color: #ffffff;
              }

              body.dark-mode .news-card {
                background: #2a2a2a;
                box-shadow: 0 4px 12px rgba(255, 255, 255, 0.05);
              }

              body.dark-mode .news-date-badge {
                background: #444;
                box-shadow: 0 2px 6px rgba(255, 255, 255, 0.05);
              }

              body.dark-mode .news-date-badge .day {
                color: #66b2ff;
              }

              body.dark-mode .news-date-badge .month {
                color: #dddddd;
              }

              body.dark-mode .news-title {
                color: #ffffff;
              }

              body.dark-mode .news-desc {
                color: #bbbbbb;
              }

              body.dark-mode .read-more {
                border: 1px solid #888;
                color: #66b2ff;
              }

              body.dark-mode .read-more:hover {
                background: #66b2ff;
                color: #ffffff;
              }

              body.dark-mode .progress-eval {
                background: #2a2a2a;
                box-shadow: 0 4px 12px rgba(255, 255, 255, 0.05);
              }

              body.dark-mode .progress-label {
                color: #ffffff;
              }

              body.dark-mode .progress-bar-wrap {
                background: #444; 
              }

              .rounded-qr-btn {
                background-color: #ebebeb;
                color: #1f1f1f;
                border: none;
                padding: 10px 20px;
                font-size: 16px;
                border-radius: 999px; /* ทำให้โค้งมนมาก */
                display: inline-flex;
                align-items: center;
                gap: 8px;
                font-weight: 500;
                box-shadow: 0 2px 5px rgba(0,0,0,0.2);
                transition: background 0.3s ease;
              }

              .rounded-qr-btn:hover {
                background-color: #949494;
              }

              body.dark-mode .rounded-qr-btn {
                background-color: #2a2a2a;
                color: #ffffff;
              }

              body.dark-mode .rounded-qr-btn:hover {
                background-color: #444444;
              }
           









              

              

    

              

              
              
              
              

              
          
          
      
      
          
          
          
          
        
          
         
          
        

        
        