.form-container {
   padding: 30px;
}

textarea.form-control {
   min-height: 200px;
   padding-top: 14px;
   padding-left: 15px;
   resize: none;
}


.btn-support{
   width: 100%;
   padding: 16px;
   background: var(--icu-gold);
   color: white;
   border: none;
   border-radius: 10px;
   font-size: 12px;
   font-weight: 700;
   font-family: 'Inter', sans-serif;
   cursor: pointer;
   transition: all 0.3s ease;
   text-transform: capitalize;
   letter-spacing: 1px;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   gap: 12px;
}

.btn-support.spinner {
   width: 18px;
   height: 18px;
   border-radius: 999px;
   border: 2px solid rgba(255, 255, 255, 0.35);
   border-top-color: #ffffff;
   opacity: 0;
   transition: opacity 0.2s ease;
   pointer-events: none;
}

.btn-support.btn-label {
   display: inline-flex;
   align-items: center;
   gap: 8px;
}

.btn-login.is-loading {
   cursor: wait;
}

.btn-login.is-loading .spinner {
   opacity: 1;
   animation: spinner-rotate 0.75s linear infinite;
}

.btn-login:hover {
   background: #b89440;
   transform: translateY(-2px);
   box-shadow: 0 10px 25px rgba(200, 164, 81, 0.3);
}

.btn-login:active {
   transform: translateY(0);
}

.btn-login:disabled {
   opacity: 0.8;
   pointer-events: none;
}

@keyframes spinner-rotate {
   to {
       transform: rotate(360deg);
   }
}

.divider {
   display: flex;
   align-items: center;
   text-align: center;
   margin: 30px 0;
   color: #999;
   font-size: 14px;
}

.divider::before,
.divider::after {
   content: '';
   flex: 1;
   border-bottom: 1px solid #e0e0e0;
}

.divider span {
   padding: 0 15px;
}

.support-link {
   text-align: center;
   margin-top: 30px;
   padding-top: 30px;
   border-top: 1px solid #e0e0e0;
}

.support-link p {
   color: #666;
   font-size: 14px;
}

.support-link a {
   color: var(--icu-navy);
   text-decoration: none;
   font-weight: 600;
   transition: color 0.3s ease;
}

.support-link a:hover {
   color: var(--icu-gold);
}

/* Responsive Design */
@media (max-width: 1200px) {
   .login-container {
       flex-direction: column;
   }

   .branding-section {
       display: none;
   }

   .admin-features {
       grid-template-columns: repeat(2, 1fr);
       gap: 15px;
   }

   .form-section {
       padding: 40px 30px;
   }

   .branding-content h1 {
       font-size: 28px;
   }

   .mission-statement {
       font-size: 16px;
   }
}

/* Support specific background branding */
.support-page .branding-section {
   position: relative;
   background: linear-gradient(135deg, var(--icu-navy) 0%, #035a9e 100%);
}

.support-page .branding-section::after {
   content: '';
   position: absolute;
   inset: 0;
   background-image: url('../images/Logo.png');
   background-repeat: no-repeat;
   background-position: center 35%;
   background-size: 100%;
   opacity: .05;
   pointer-events: none;
}


@media (max-width: 576px) {
   .branding-section {
       padding: 30px 20px;
   }

   .form-section {
       padding: 30px 20px;
   }

   .admin-features {
       grid-template-columns: 1fr;
   }

   .form-header h2 {
       font-size: 26px;
   }
}

/* Counters and limit states */
.char-count {
   text-align: right;
   font-size: 12px;
   color: #94a3b8;
   margin-top: 5px;
}

.char-count.warning { color: #f59e0b; }
.char-count.error { color: #ef4444; }

.form-control.error {
   border-color: #ef4444;
   box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.12);
}