* {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
     background: linear-gradient(135deg, #f3f3f4 0%, #bfcde0 100%);
     min-height: 100vh;
     color: #333;
     line-height: 1.6;
 }

.nav__logo {
  display: flex;
  align-items: center;
  gap: 10px;
}

.nav__logo .logo {
  display: flex;
  align-items: center;
  text-decoration: none;
}

.logo-img {
  width: 48px;
  height: 48px;
  object-fit: contain;
}

 .logo {
  margin-left: 400px; 
  font-size: 1.5rem;
  font-weight: 700;
  color: #7ed957;
  text-decoration: none;
}

.logo span {
  color: #009cff;
}
 .container {
     max-width: 1200px;
     margin: 0 auto;
     padding: 20px;
 }

 /* Header Styles */
 .header {
     text-align: center;
     margin-bottom: 30px;
     color: #124559;
     padding: 20px;
     background: rgba(255, 255, 255, 0.579);
     border-radius: 15px;
     backdrop-filter: blur(10px);
     border: 1px solid rgba(255, 255, 255, 0.2);
 }

 .header h1 {
     font-size: 2.5em;
     margin-bottom: 10px;
     
 }

 .name {
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
 }

 .header p {
     font-size: 1.2em;
     opacity: 0.9;
 }

 /* Blockchain Status dot ke liye */
 .blockchain-status {
     display: flex;
     justify-content: space-between;
     align-items: center;
     background: white;
     padding: 20px;
     border-radius: 10px;
     box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
     margin-bottom: 20px;
     flex-wrap: wrap;
     gap: 15px;
 }

 .status-indicator {
     display: flex;
     align-items: center;
     gap: 10px;
     font-weight: 600;
 }

 .status-dot {
     width: 12px;
     height: 12px;
     border-radius: 50%;
     background: #f44336;
     animation: pulse 2s infinite;
 }

 .status-dot.connected {
     background: #4caf50;
 }

 @keyframes pulse {
     0% {
         opacity: 1;
     }

     50% {
         opacity: 0.5;
     }

     100% {
         opacity: 1;
     }
 }

 /* Navigation Tabs work*/
 .nav-tabs {
     display: flex;
     background: white;
     border-radius: 10px;
     padding: 5px;
     margin-bottom: 20px;
     box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
     overflow-x: auto;
     gap: 5px;
 }

 .nav-tab {
     flex: 1;
     padding: 15px 20px;
     border: none;
     background: transparent;
     cursor: pointer;
     border-radius: 8px;
     transition: all 0.3s ease;
     font-weight: 500;
     white-space: nowrap;
     min-width: 160px;
 }

 .nav-tab:hover {
     background: rgba(102, 126, 234, 0.1);
     color: #667eea;
 }

 .nav-tab.active {
     background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
     color: white;
     box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
 }

 /* Page Styling */
 .page {
     display: none;
     background: white;
     padding: 30px;
     border-radius: 10px;
     box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
     margin-bottom: 20px;
 }

 .page.active {
     display: block;
 }

 .page h2 {
     color: #667eea;
     margin-bottom: 10px;
     font-size: 2em;
 }

 .page p {
     color: #666;
     margin-bottom: 30px;
     font-size: 1.1em;
 }

 /* Grid kaa Layout */
 .grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
     gap: 30px;
     margin-bottom: 30px;
 }

 /* Form ki Styles */
 .form-group {
     margin-bottom: 20px;
 }

 .form-group label {
     display: block;
     margin-bottom: 8px;
     font-weight: 600;
     color: #555;
 }

 .form-group input,
 .form-group select,
 .form-group textarea {
     width: 100%;
     padding: 12px 15px;
     border: 2px solid #e0e0e0;
     border-radius: 8px;
     font-size: 16px;
     transition: border-color 0.3s ease;
     background: #fafafa;
 }

 .form-group input:focus,
 .form-group select:focus,
 .form-group textarea:focus {
     outline: none;
     border-color: #667eea;
     background: white;
     box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
 }

 /* Button ki Styles */
 .btn {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     padding: 12px 24px;
     border: none;
     border-radius: 8px;
     cursor: pointer;
     font-size: 16px;
     font-weight: 600;
     transition: all 0.3s ease;
     text-decoration: none;
     min-height: 48px;
     gap: 8px;
     background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
     color: white;
     box-shadow: 0 2px 4px rgba(102, 126, 234, 0.3);
 }

#box {
    margin-left: 600px;
}

 .btn:hover {
     transform: translateY(-2px);
     box-shadow: 0 4px 8px rgba(102, 126, 234, 0.4);
 }

 .btn:active {
     transform: translateY(0);
 }

 .btn:disabled {
     opacity: 0.6;
     cursor: not-allowed;
     transform: none;
 }

 .btn-connect {
     background: linear-gradient(135deg, #4caf50 0%, #45a049 100%);
     box-shadow: 0 2px 4px rgba(76, 175, 80, 0.3);
 }

 .btn-connect:hover {
     box-shadow: 0 4px 8px rgba(76, 175, 80, 0.4);
 }

 .btn-connected {
     background: linear-gradient(135deg, #4caf50 0%, #45a049 100%);
     cursor: default;
 }

 .btn-success {
     background: linear-gradient(135deg, #4caf50 0%, #45a049 100%);
     box-shadow: 0 2px 4px rgba(76, 175, 80, 0.3);
 }

 .btn-success:hover {
     box-shadow: 0 4px 8px rgba(76, 175, 80, 0.4);
 }

 .btn-secondary {
     background: linear-gradient(135deg, #6c757d 0%, #5a6268 100%);
     box-shadow: 0 2px 4px rgba(108, 117, 125, 0.3);
 }

 .btn-secondary:hover {
     box-shadow: 0 4px 8px rgba(108, 117, 125, 0.4);
 }

 /* Loading Animation ke liye */
 .loading {
     width: 20px;
     height: 20px;
     border: 2px solid rgba(255, 255, 255, 0.3);
     border-top: 2px solid white;
     border-radius: 50%;
     animation: spin 1s linear infinite;
 }

 @keyframes spin {
     0% {
         transform: rotate(0deg);
     }

     100% {
         transform: rotate(360deg);
     }
 }

 /* Certificate Preview CSS */
 .certificate-preview {
     border: 2px solid #e0e0e0;
     border-radius: 10px;
     padding: 20px;
     background: #fafafa;
     margin-bottom: 20px;
 }

 .certificate-content {
     background: white;
     padding: 40px;
     border-radius: 8px;
     box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
     text-align: center;
     position: relative;
     border: 3px solid #667eea;
 }

 .certificate-seal {
     font-size: 4em;
     margin-bottom: 20px;
     color: #667eea;
 }

 .certificate-header h2 {
     color: #667eea;
     font-size: 2.5em;
     margin-bottom: 10px;
     text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
 }

 .certificate-header p {
     color: #764ba2;
     font-weight: 600;
     font-size: 1.1em;
     margin-bottom: 0;
 }

 .certificate-actions {
     display: flex;
     gap: 15px;
     justify-content: center;
     margin-top: 20px;
 }

 /* Email Section */
 .email-section {
     background: #f8f9fa;
     padding: 20px;
     border-radius: 8px;
     margin-top: 20px;
     border: 2px solid #e9ecef;
 }

 .email-section h4 {
     color: #667eea;
     margin-bottom: 20px;
 }

 .email-actions {
     display: flex;
     gap: 15px;
     justify-content: flex-end;
     margin-top: 20px;
 }

 /* Transaction Info Design */
 #transactionInfo {
     background: #e8f5e8;
     padding: 20px;
     border-radius: 8px;
     margin-top: 20px;
     border: 2px solid #c8e6c9;
 }

 #transactionInfo h4 {
     color: #2e7d32;
     margin-bottom: 15px;
 }

 .transaction-details p {
     margin-bottom: 10px;
     word-break: break-all;
 }

 .transaction-details a {
     color: #667eea;
     text-decoration: none;
 }

 .transaction-details a:hover {
     text-decoration: underline;
 }

 /* Blockchain kaa Info */
 .blockchain-info,
 .verification-info,
 .architecture-info {
     background: #f8f9fa;
     padding: 20px;
     border-radius: 8px;
     border: 2px solid #e9ecef;
 }

 .blockchain-info h4,
 .verification-info h4,
 .architecture-info h4 {
     color: #667eea;
     margin-bottom: 15px;
 }

 .blockchain-details p {
     margin-bottom: 10px;
 }

 .blockchain-details p strong {
     color: #555;
 }

 /* Institution Cards CSS */
 .institutions-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
     gap: 20px;
 }

 .institution-card {
     background: #f8f9fa;
     padding: 20px;
     border-radius: 8px;
     border: 2px solid #e9ecef;
     transition: transform 0.3s ease;
 }

 .institution-card:hover {
     transform: translateY(-2px);
     box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
 }

 .institution-card h4 {
     color: #667eea;
     margin-bottom: 15px;
 }

 .institution-card p {
     margin-bottom: 8px;
     font-size: 14px;
 }

 .status-badge {
     padding: 4px 8px;
     border-radius: 4px;
     font-size: 12px;
     font-weight: 600;
     text-transform: uppercase;
 }

 .status-badge.active {
     background: #c8e6c9;
     color: #2e7d32;
 }

 .status-badge.inactive {
     background: #ffcdd2;
     color: #c62828;
 }

 /* Verification Results */
 .verification-success {
     background: #e8f5e8;
     padding: 20px;
     border-radius: 8px;
     border: 2px solid #c8e6c9;
     margin-top: 20px;
 }

 .verification-success h3 {
     color: #2e7d32;
     margin-bottom: 15px;
 }

 .verification-error {
     background: #ffebee;
     padding: 20px;
     border-radius: 8px;
     border: 2px solid #ffcdd2;
     margin-top: 20px;
 }

 .verification-error h3 {
     color: #c62828;
     margin-bottom: 15px;
 }

 .certificate-details {
     margin-top: 20px;
     background: white;
     padding: 15px;
     border-radius: 6px;
     border: 1px solid #e0e0e0;
 }

 .certificate-details h4 {
     color: #667eea;
     margin-bottom: 10px;
 }

 .certificate-details p {
     margin-bottom: 8px;
     word-break: break-word;
 }

 /* Statistics */
 .stats-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
     gap: 20px;
     margin-top: 20px;
 }

 .stat-card {
     background: #f8f9fa;
     padding: 20px;
     border-radius: 8px;
     text-align: center;
     border: 2px solid #e9ecef;
     transition: transform 0.3s ease;
 }

 .stat-card:hover {
     transform: translateY(-2px);
     box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
 }

 .stat-card h4 {
     color: #667eea;
     margin-bottom: 10px;
     font-size: 1.1em;
 }

 .stat-number {
     font-size: 2.5em;
     font-weight: 700;
     color: #333;
     margin-bottom: 5px;
 }

 .stat-status {
     font-size: 1.2em;
     font-weight: 600;
 }

 /* For Notifications */
 .notification {
     position: fixed;
     top: 20px;
     right: 20px;
     padding: 15px 20px;
     border-radius: 8px;
     color: white;
     font-weight: 600;
     z-index: 1000;
     transform: translateX(100%);
     transition: transform 0.3s ease;
     max-width: 400px;
     box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
 }

 .notification.show {
     transform: translateX(0);
 }

 .notification.success {
     background: linear-gradient(135deg, #4caf50 0%, #45a049 100%);
 }

 .notification.error {
     background: linear-gradient(135deg, #f44336 0%, #d32f2f 100%);
 }

 .notification.info {
     background: linear-gradient(135deg, #2196f3 0%, #1976d2 100%);
 }

 /* Responsive Design karne ke liye below */
 @media (max-width: 768px) {
     .container {
         padding: 10px;
     }

     .header h1 {
         font-size: 2em;
     }

     .blockchain-status {
         flex-direction: column;
         align-items: stretch;
         text-align: center;
     }

     .nav-tabs {
         flex-direction: column;
     }

     .nav-tab {
         min-width: auto;
     }

     .grid {
         grid-template-columns: 1fr;
     }

     .page {
         padding: 20px;
     }

     .certificate-content {
         padding: 20px;
     }

     .certificate-actions {
         flex-direction: column;
     }

     .email-actions {
         flex-direction: column;
     }

     .stats-grid {
         grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
     }

     .notification {
         right: 10px;
         left: 10px;
         max-width: none;
     }
 }

 @media (max-width: 480px) {
     .header h1 {
         font-size: 1.5em;
     }

     .header p {
         font-size: 1em;
     }

     .certificate-content {
         padding: 15px;
     }

     .certificate-header h2 {
         font-size: 1.8em;
     }

     .certificate-seal {
         font-size: 3em;
     }

     .institutions-grid {
         grid-template-columns: 1fr;
     }

     .stats-grid {
         grid-template-columns: 1fr;
     }
 }

 /* Utility Classes */
 .text-center {
     text-align: center;
 }

 .text-left {
     text-align: left;
 }

 .text-right {
     text-align: right;
 }

 .mb-20 {
     margin-bottom: 20px;
 }

 .mt-20 {
     margin-top: 20px;
 }

 .p-20 {
     padding: 20px;
 }

 .cursor-pointer {
     cursor: pointer;
 }

 .address {
     font-family: 'Courier New', monospace;
     background: #f0f0f0;
     padding: 2px 6px;
     border-radius: 4px;
     font-size: 0.9em;
 }

 /* Animations */
 @keyframes fadeIn {
     from {
         opacity: 0;
         transform: translateY(20px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 .fade-in {
     animation: fadeIn 0.5s ease-out;
 }

 /* Print Styles */
 @media print {
     body * {
         visibility: hidden;
     }

     .certificate-content,
     .certificate-content * {
         visibility: visible;
     }

     .certificate-content {
         position: absolute;
         left: 0;
         top: 0;
         width: 100%;
         height: 100%;
         padding: 40px;
         box-shadow: none;
         border: 2px solid #333;
     }
 }

 /* Modal Styles, Government Wallet Access ke liye */
 .modal {
     position: fixed;
     top: 0;
     left: 0;
     width: 100vw;
     height: 100vh;
     background: rgba(0, 0, 0, 0.4);
     display: none;
     /* Hidden by default, shown via JS */
     align-items: center;
     justify-content: center;
     z-index: 9999;
 }

 .modal-content {
     background: #fff;
     padding: 2em 2.5em;
     border-radius: 12px;
     min-width: 320px;
     box-shadow: 0 8px 32px rgba(102, 126, 234, 0.25);
     text-align: center;
     animation: fadeIn 0.4s;
 }

 #govWalletModal .btn {
     margin-top: 20px;
     min-width: 180px;
 }

 #govWalletError {
     color: #f44336;
     font-weight: 600;
     margin-top: 15px;
     min-height: 24px;
 }

 .modal {
     position: fixed;
     z-index: 999;
     left: 0;
     top: 0;
     width: 100%;
     height: 100%;
     overflow: auto;
     background: rgba(0, 0, 0, 0.3);
 }

 .modal-content {
     background: #fff;
     margin: 10% auto;
     padding: 30px;
     border-radius: 8px;
     width: 350px;
     text-align: center;
 }

 .upload-area.dragover {
     border-color: #4c63d2;
     background-color: #f0f4ff;
 }

 .verification-success {
     background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
     border: 1px solid #c3e6cb;
     color: #155724;
     padding: 20px;
     border-radius: 8px;
     margin: 20px 0;
 }

 .verification-error {
     background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
     border: 1px solid #f5c6cb;
     color: #721c24;
     padding: 20px;
     border-radius: 8px;
     margin: 20px 0;
 }

 .certificate-details {
     background: rgba(255, 255, 255, 0.8);
     padding: 15px;
     border-radius: 6px;
     margin-top: 15px;
 }

 .certificate-details p {
     margin: 8px 0;
     font-size: 14px;
 }

 .status-badge {
     display: inline-block;
     padding: 4px 8px;
     border-radius: 4px;
     font-size: 12px;
     font-weight: bold;
     text-transform: uppercase;
 }

 .status-approved {
     background-color: #d4edda;
     color: #155724;
     border: 1px solid #c3e6cb;
 }

 .status-rejected {
     background-color: #f8d7da;
     color: #721c24;
     border: 1px solid #f5c6cb;
 }

 .source-badge {
     background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
     color: white;
     padding: 4px 8px;
     border-radius: 4px;
     font-size: 12px;
     font-weight: bold;
 }

 .certificate-card {
     background: white;
     border: 1px solid #e9ecef;
     border-radius: 8px;
     padding: 15px;
     box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
     transition: transform 0.2s ease;
 }

 .certificate-card:hover {
     transform: translateY(-2px);
     box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
 }

 .certificate-card p {
     margin: 5px 0;
     font-size: 14px;
 }

 .grid {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 30px;
     margin-bottom: 30px;
 }

 @media (max-width: 768px) {
     .grid {
         grid-template-columns: 1fr;
         gap: 20px;
     }
 }