/* Fonts are loaded from head; this file contains layout + fallback styles */
:root{
  /* Water palette */
  --water-50: #f2fbff;
  --water-100: #e6f6ff;
  --water-150: #ddf1ff;
  --water-200: #d0ecff;
  --water-300: #b8e2ff;
  --water-500: #0ea5e9;
  --water-600: #0284c7;
}
body { font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji"; }

/* Split layout */
.split-left {
  background: #0b0b0b center/cover no-repeat;
  background-image: url('../assets/img/monument.jpg'), url('https://images.unsplash.com/photo-1501785888041-af3ef285b470?q=80&w=1600&auto=format&fit=crop');
  position: relative;
  min-height: 36vh;
}
.split-overlay { position:absolute; inset:0; background: linear-gradient(rgba(0,0,0,.35), rgba(0,0,0,.55)); }
.brand-title { font-weight: 800; letter-spacing: .2px; }
.welcome-title { font-weight: 700; }
.auth-card { width: 100%; max-width: 560px; }
.muted-link { color: rgba(255,255,255,.85); text-decoration: none; }
.muted-link:hover { color: #fff; text-decoration: underline; }
@media (max-width: 991.98px) { .split-left { min-height: 24vh; } }

/* Water theme overrides */
.bg-light { background-color: var(--water-50) !important; }
.bg-white { background-color: var(--water-150) !important; }
.auth-card {
  background-color: rgba(221,241,255,.88);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid #cfe6f3;
  box-shadow: 0 12px 36px rgba(2,132,199,.15);
}
.auth-card a:not(.btn) { color: var(--water-600); text-decoration: none; }
.auth-card a:not(.btn):hover { color: var(--water-500); text-decoration: underline; }
.btn-outline-secondary { background-color: var(--water-100); border:1px solid #bcd5e5; color:#334155; }
.btn-outline-secondary:hover { background-color: var(--water-200); }
.border-top { border-top:1px solid #cfe6f3 !important; }

/* Fallback minimal styles if Bootstrap fails to load */
.container-fluid { width:100%; padding-right:12px; padding-left:12px; margin-right:auto; margin-left:auto; }
.row { display:flex; flex-wrap:wrap; margin-right:-12px; margin-left:-12px; }
.row>[class^="col-"] { padding-right:12px; padding-left:12px; }
.col-12 { flex:0 0 100%; max-width:100%; }
@media (min-width: 576px){ .col-sm-6 { flex:0 0 50%; max-width:50%; } }
@media (min-width: 992px){ .col-lg-6 { flex:0 0 50%; max-width:50%; } .d-lg-block { display:block !important; } .py-lg-0 { padding-top:0 !important; padding-bottom:0 !important; } }
.d-none { display:none !important; }
.d-flex { display:flex !important; }
.align-items-center { align-items:center !important; }
.justify-content-center { justify-content:center !important; }
.w-100 { width:100% !important; }
.min-vh-100 { min-height:100vh !important; }
.bg-light { background-color: var(--water-50) !important; }
.p-0 { padding:0 !important; }
.p-4 { padding:1.5rem !important; }
.p-5 { padding:3rem !important; }
@media (min-width:1200px){ .p-xl-5 { padding:3rem !important; } }
.py-5 { padding-top:3rem !important; padding-bottom:3rem !important; }
.text-white { color:#fff !important; }
.position-absolute { position:absolute !important; }
.top-0 { top:0; }
.start-0 { left:0; }
.rounded-4 { border-radius:1rem !important; }
.shadow { box-shadow:0 .5rem 1rem rgba(2, 132, 199, .18) !important; }
.display-6 { font-size:2.25rem; font-weight:700; }

.form-label { display:block; margin-bottom:.5rem; font-weight:600; }
.form-control { display:block; width:100%; padding:.75rem 1rem; border:1px solid #bcd5e5; border-radius:.5rem; background-color: var(--water-100); }
.form-control:focus { outline:0; border-color: var(--water-500); box-shadow:0 0 0 .2rem rgba(14,165,233,.25); background-color: var(--water-150); }
.input-group { display:flex; align-items:stretch; width:100%; }
.input-group>.form-control { flex:1 1 auto; border-top-right-radius:0; border-bottom-right-radius:0; }
.input-group .btn { border-top-left-radius:0; border-bottom-left-radius:0; }
.form-check { display:flex; align-items:center; gap:.5rem; }
.form-check-input { width:1rem; height:1rem; accent-color: var(--water-500); }
.btn { display:inline-block; padding:.7rem 1rem; border:1px solid transparent; border-radius:.6rem; text-align:center; cursor:pointer; }
.btn:disabled { opacity:.65; }
.btn-primary { background-color: var(--water-500); border-color: var(--water-500); color:#fff; }
.btn-primary:hover { background-color: var(--water-600); border-color: var(--water-600); }
.alert { padding:.75rem 1rem; border-radius:.5rem; border:1px solid transparent; }
.alert-success { background:#d1e7dd; border-color:#badbcc; color:#0f5132; }
.text-muted { color:#6c757d !important; }
.fw-bold { font-weight:700 !important; }
.fw-semibold { font-weight:600 !important; }
.border-top { border-top:1px solid #cfe6f3 !important; }
.small { font-size:.875rem; }
