
/* =============== Filo White v1.0.0 =============== */
body.filo-theme-white { background:#f5f7fb !important; color:#0b1220 !important; }

/* General text (exclude .form-control to manage separately) */
body.filo-theme-white h1, body.filo-theme-white h2, body.filo-theme-white h3, body.filo-theme-white h4, body.filo-theme-white h5, body.filo-theme-white h6,
body.filo-theme-white p, body.filo-theme-white label, body.filo-theme-white legend, body.filo-theme-white .question-text, body.filo-theme-white .question-title,
body.filo-theme-white .card, body.filo-theme-white .panel, body.filo-theme-white .ls-answers, body.filo-theme-white .alert, body.filo-theme-white .dropdown-menu,
body.filo-theme-white .table, body.filo-theme-white .table th, body.filo-theme-white .table td,
body.filo-theme-white .btn-link { color:#0b1220 !important; }

/* Help & muted text */
body.filo-theme-white small, body.filo-theme-white .small, body.filo-theme-white .text-muted, body.filo-theme-white .text-secondary,
body.filo-theme-white .form-text, body.filo-theme-white .help-block, body.filo-theme-white .ls-questionhelp,
body.filo-theme-white .ls-after-question-text, body.filo-theme-white .em_description_class, body.filo-theme-white .ls-em-help,
body.filo-theme-white .question-container .ls-questionhelp *, body.filo-theme-white .question-container .help-block * {
  color:#475569 !important; opacity:1 !important; background:transparent !important;
}

/* Containers */
body.filo-theme-white .question-container, body.filo-theme-white .question-title-container, body.filo-theme-white .answer-container,
body.filo-theme-white .panel, body.filo-theme-white .card, body.filo-theme-white .ls-answers, body.filo-theme-white .ls-questionhelp {
  background:#ffffff !important; border:1px solid #e6ecf3 !important; border-radius:12px !important; box-shadow:0 6px 20px rgba(0,0,0,.04);
}

/* Progress & focus */
body.filo-theme-white .progress{ height:6px; border-radius:9999px; background:#e6ecf3; }
body.filo-theme-white .progress-bar{ background-color:#0B5ED7 !important; }
body.filo-theme-white .form-control:focus, body.filo-theme-white .form-select:focus{ border-color:#5aa0ff !important; box-shadow:0 0 0 .2rem rgba(11,94,215,.15) !important; }

/* Navbar (banner) */
body.filo-theme-white .navbar{
  border-radius:16px; box-shadow:0 8px 24px rgba(0,0,0,.08); border:1px solid #eaeef5; background:#ffffff !important; position:relative;
}
body.filo-theme-white .navbar .navbar-brand img{ max-height:150px !important; height:auto !important; width:auto !important; object-fit:contain; }
body.filo-theme-white .navbar .nav-link, body.filo-theme-white .navbar .navbar-text, body.filo-theme-white .navbar .navbar-brand { color:#0b1220 !important; }

/* Centered title */
body.filo-theme-white #filo-banner-title{
  position:absolute; left:50%; top:50%; transform:translate(-50%, -50%);
  font-weight:800; font-size:2rem; color:#0b1220; white-space:nowrap; letter-spacing:.2px; pointer-events:none; z-index:5;
}
@media (min-width: 992px){ body.filo-theme-white #filo-banner-title{ font-size:2.2rem; } }

/* Inputs: text dark on white */
body.filo-theme-white input.form-control,
body.filo-theme-white input[type="text"],
body.filo-theme-white input[type="email"],
body.filo-theme-white input[type="number"],
body.filo-theme-white input[type="tel"],
body.filo-theme-white input[type="url"],
body.filo-theme-white input[type="search"],
body.filo-theme-white textarea.form-control{
  color:#0b1220 !important; -webkit-text-fill-color:#0b1220 !important;
}
body.filo-theme-white .form-control::placeholder{ color:#7b8798 !important; opacity:1 !important; }
body.filo-theme-white input:-webkit-autofill,
body.filo-theme-white textarea:-webkit-autofill,
body.filo-theme-white select:-webkit-autofill{
  -webkit-text-fill-color:#0b1220 !important;
  box-shadow: 0 0 0px 1000px #ffffff inset !important;
  caret-color:#0b1220 !important;
  transition: background-color 9999s ease-out 0s !important;
}

/* Alerts: warning readable */
body.filo-theme-white .alert-warning,
body.filo-theme-white .alert-warning *,
body.filo-theme-white .alert-warning .alert-link,
body.filo-theme-white .alert-warning .btn-close,
body.filo-theme-white .alert-warning .close{ color:#0b1220 !important; }
body.filo-theme-white .alert-warning{ background:#fff3cd !important; border-color:#ffe69c !important; }
body.filo-theme-white .alert-warning .alert-link{ text-decoration: underline; }

/* Selection & navigation buttons */
body.filo-theme-white .ls-answers .btn-group .btn, body.filo-theme-white .answer-item .btn, body.filo-theme-white .ls-answers .btn { background:#16a34a !important; border-color:#16a34a !important; color:#fff !important; }
body.filo-theme-white .btn-check:checked + .btn, body.filo-theme-white .ls-answers .btn.active, body.filo-theme-white .ls-answers .btn:active, body.filo-theme-white .ls-answers .btn:focus, body.filo-theme-white .ls-answers .btn:hover { background:#15803d !important; border-color:#15803d !important; color:#fff !important; }
body.filo-theme-white .ls-move-previous-btn, body.filo-theme-white .btn-move-previous, body.filo-theme-white button[name="movePrevious"], body.filo-theme-white input[name="movePrevious"] { background:#0B5ED7 !important; border-color:#0B5ED7 !important; color:#fff !important; }
body.filo-theme-white .ls-move-next-btn, body.filo-theme-white .btn-move-next, body.filo-theme-white button[name="moveNext"], body.filo-theme-white input[name="moveNext"] { background:#198754 !important; border-color:#198754 !important; color:#fff !important; }

/* Vertical centering for button groups */
body.filo-theme-white .answer-container{ display:flex; flex-direction:column; }
body.filo-theme-white .answer-container .btn-group, 
body.filo-theme-white .answer-container .btn-group-vertical,
body.filo-theme-white .answer-container .btn-toolbar{
  display:flex; align-items:center; justify-content:center; min-height:64px;
}

/* Modals (light) */
body.filo-theme-white .modal-backdrop.show{ background:rgba(0,0,0,.6) !important; }
body.filo-theme-white .modal-content{
  background:#ffffff !important; color:#0b1220 !important; border:1px solid #e6ecf3 !important;
  border-radius:16px !important; box-shadow:0 18px 60px rgba(0,0,0,.2) !important;
}
body.filo-theme-white .modal-header, body.filo-theme-white .modal-footer{
  border-color:#e6ecf3 !important; background:#ffffff !important; color:#0b1220 !important;
}
body.filo-theme-white .modal .btn-primary{ background:#198754 !important; border-color:#198754 !important; color:#fff !important; }
body.filo-theme-white .modal .btn-secondary{ background:#0B5ED7 !important; border-color:#0B5ED7 !important; color:#fff !important; }

/* jQuery UI fallback */
body.filo-theme-white .ui-widget-overlay{ background:rgba(0,0,0,.6) !important; opacity:1 !important; }
body.filo-theme-white .ui-dialog{
  background:#ffffff !important; color:#0b1220 !important;
  border:1px solid #e6ecf3 !important; border-radius:16px !important;
  box-shadow:0 18px 60px rgba(0,0,0,.2) !important;
}

/* Global spacing */
body.filo-theme-white{ padding:16px !important; }
