.glass-panel {
    background-color: rgba(218, 226, 253, 0.6);
    backdrop-filter: blur(24px);
}
.gradient-text {
    background: linear-gradient(135deg, #006398, #40a2e7);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.btn-primary-gradient {
    background: linear-gradient(135deg, #006398, #40a2e7);
}
.shadow-ambient {
    box-shadow: 0 12px 40px rgba(19, 27, 46, 0.06);
}
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Form validation styles */
.input-error {
    box-shadow: inset 0 0 0 2px #ba1a1a !important;
}
.error-message {
    color: #ba1a1a;
    font-size: 0.75rem;
    margin-top: 0.25rem;
    font-family: inherit;
    display: none;
}
.error-message.active {
    display: block;
}

/* AIRPH chatbot page styles */
.hidden{display:none!important}.chatBody{margin:0;min-height:100vh;background:linear-gradient(135deg,#f7f9ff,#eef4ff);font-family:Inter,Arial,sans-serif;color:#131b2e}.chatShell{height:100vh;display:grid;grid-template-columns:300px 1fr}.chatAside{background:#101828;color:#fff;padding:22px;display:flex;flex-direction:column;gap:18px}.chatBrand{display:flex;align-items:center;gap:12px}.chatLogo{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#006398,#40a2e7);display:grid;place-items:center;color:#fff;font-family:Manrope,Inter,sans-serif;font-weight:900;font-size:22px;box-shadow:0 10px 24px rgba(64,162,231,.22)}.chatBrand b{display:block;letter-spacing:.14em}.chatBrand span{display:block;color:#b8c3d8;font-size:12px;margin-top:3px}.chatNew{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.06);font-weight:800}.chatHistory p{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#98a5bd}.chatHistory button{width:100%;text-align:left;border:0;background:transparent;color:#dbe4f5;border-radius:12px;padding:12px;margin:3px 0;cursor:pointer}.chatHistory button.active,.chatHistory button:hover{background:rgba(147,204,255,.16)}.chatAsideFoot{margin-top:auto;display:grid;gap:10px}.chatAsideFoot a,.chatAsideFoot button{border:0;border-radius:12px;padding:12px;text-align:center;text-decoration:none;font-weight:800;cursor:pointer}.chatAsideFoot a{background:#d5e3fd;color:#0d1c2f}.chatAsideFoot button{background:#26344d;color:#fff}.chatMain{display:flex;flex-direction:column;min-width:0}.chatTop{padding:26px 32px;border-bottom:1px solid #dae2fd;background:rgba(255,255,255,.75);backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:space-between;gap:16px}.chatTop h1{font-family:Manrope,Inter,sans-serif;margin:0;font-size:28px}.chatTop p{margin:4px 0 0;color:#65738b}.chatBadge{background:#cce5ff;color:#003655;border-radius:999px;padding:8px 13px;font-weight:800;font-size:13px}.chatMessages{flex:1;overflow:auto;padding:32px;display:flex;flex-direction:column;gap:18px}.botBubble,.userBubble{display:flex;gap:12px;max-width:800px}.userBubble{align-self:flex-end}.avatar{width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,#006398,#40a2e7);display:grid;place-items:center;color:#fff;font-weight:900;flex:0 0 auto}.bubble{background:#fff;border:1px solid #e2e7ff;border-radius:20px;padding:15px 17px;box-shadow:0 10px 24px rgba(19,27,46,.05)}.bubble b{display:block;margin-bottom:5px}.bubble p{margin:0;color:#3e4850;line-height:1.5}.userBubble .bubble{background:linear-gradient(135deg,#006398,#40a2e7);color:#fff;border:0}.chatComposer{margin:0 32px 28px;background:#fff;border:1px solid #dae2fd;border-radius:22px;padding:10px;display:flex;gap:8px;box-shadow:0 16px 40px rgba(19,27,46,.08)}.chatComposer input{flex:1;border:0;outline:0;font:inherit;padding:12px;background:transparent}.chatComposer button{width:auto;margin:0;border:0;background:#f2f3ff;color:#006398;border-radius:16px;padding:10px 12px;display:grid;place-items:center}.chatComposer button.send{background:linear-gradient(135deg,#006398,#40a2e7);color:#fff}@media(max-width:760px){.chatShell{grid-template-columns:1fr}.chatAside{display:none}.chatTop{padding:20px}.chatMessages{padding:20px}.chatComposer{margin:0 20px 20px}}

/* Deploy 2 login split-screen fallback: keep slideshow visible beside login on tablet/desktop */
@media (min-width: 768px) {
  body:has(#slideshow-root) {
    display: flex;
    min-height: 100vh;
  }
  #main-content-left,
  #main-content-right {
    width: 50%;
    min-height: 100vh;
  }
  #main-content-left {
    display: flex !important;
  }
  #slideshow-root {
    min-height: calc(100vh - 3rem);
  }
}
