/* Reset și stiluri generale */
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; }
.lm-imc-page { padding: 0 24px; }
.lm-imc-page .lm-container { max-width: 1188px; margin-inline: auto; }
.lm-imc-page .lm-top-section { text-align: center; max-width: 1100px; margin: 0 auto 60px; }
.lm-imc-page .lm-top-section h1 { font-size: 56px; font-weight: 600; color: #004087; }
.lm-imc-page .lm-text { font-size: 18px; line-height: 1.6; font-weight: 300; margin-bottom: 25px; color: #707070; }
.lm-imc-page .lm-h2 { font-size: 24px; font-weight: 600; color: #004087; text-align: center; margin-top: 0; margin-bottom:24px; }

/* Butoane */
.lm-imc-page .lm-btn { height: 51px; display: inline-flex; border-radius: 8px; align-items: center; justify-content: center; padding: 0 20px; font-weight: 600; transition: .3s all; font-size: 17px; cursor: pointer; border: 0 none; }
.lm-imc-page .lm-btn-accent { background: #004087; color: #fff; }
.lm-imc-page .lm-btn-red { background: #d9534f; color: #fff; }

/* Formular */
.lm-imc-page .lm-inner-page { padding: 40px 24px; border: 1px solid #004087; border-radius: 40px; box-shadow: 0px 0px 17px -11px rgba(0, 0, 0, 0.85); background:white; }
.lm-imc-page .lm-form-inner { display: flex; justify-content: center; gap: 30px; }
.lm-imc-page .lm-form label { display: block; text-align: center; margin-bottom: 10px; font-size: 18px; color: #707070; }
.lm-imc-page .lm-form input { height: 51px; border: 1px solid #858585; border-radius: 8px; padding: 0 20px; width: 200px; font-size: 17px; text-align: center; }
.lm-imc-page .lm-actions { display: flex; gap: 30px; margin-top: 40px; justify-content: center; }
.lm-imc-page .lm-error { display: block; color: #d9534f; font-size: 12px; text-align: center; height: 15px; margin-top: 5px; }
.lm-imc-page input::-webkit-outer-spin-button, .lm-imc-page input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.lm-imc-page input[type=number] { -moz-appearance: textfield; }

/* === STILURI ADĂUGATE === */
.lm-imc-page .lm-tabs { text-align: center; margin-bottom: 16px; }
.lm-imc-page .lm-tabs label { font-size: 18px; color: #004087; cursor: pointer; margin: 0 10px; }
.lm-imc-page .lm-tabs input[type="radio"] { margin-right: 5px; }
/* ======================== */

/* Rezultate */
.lm-imc-page .lm-results-action { display: none; margin-top: 60px; text-align: center; }
.lm-imc-page #lm_result { margin-top: 0; }
.lm-imc-page #lm_result span { display: inline-block; font-size: 90px; color: #004087; font-weight: 600; margin-left: 10px; }
.lm-imc-page .lm-result-category { font-size: 22px; margin-top: 0; }
.lm-imc-page .lm-result-category strong { font-weight: 700; padding: 5px 10px; border-radius: 5px; color: white; }
.lm-imc-page .supraponderalitate strong { background-color: #f0ad4e; }
.lm-imc-page .subponderalitate strong { background-color: #5bc0de; }
.lm-imc-page .greutate-normală strong { background-color: #5cb85c; }
.lm-imc-page .obezitate-grad-i- strong { background-color: #d9534f; }
.lm-imc-page .obezitate-grad-ii- strong { background-color: #c9302c; }
.lm-imc-page .obezitate-morbidă-grad-iii- strong { background-color: #ac2925; }
.lm-imc-page .lm-buttons { text-align: center; margin-top: 40px; }

/* Loader */
.lm-imc-page .lm-loader { position: relative; width: 40px; height: 40px; animation: animateBg 1.5s linear infinite; margin: 70px auto 0; display: none; }
.lm-imc-page .lm-loader.active { display: block; }
.lm-imc-page .lm-loader span { position: absolute; top: 0; left: 0; width: 100%; height: 100%; transform: rotate(calc(72deg * var(--i))); }
.lm-imc-page .lm-loader span:before { content: ""; position: absolute; top: 0; left: 0; width: 10p; height: 10px; border-radius: 50%; background-color: #004087; }
@keyframes animateBg { 100% { transform: rotate(360deg); } }

/* Media Queries */
@media (max-width: 767px) {
    .lm-imc-page .lm-inner-page { padding: 55px 24px; }
    .lm-imc-page .lm-top-section h1 { font-size: 38px; }
    .lm-imc-page .lm-h2, .lm-imc-page #lm_result { font-size: 18px; }
    .lm-imc-page #lm_result span { font-size: 56px; }
    .lm-imc-page .lm-form-inner { flex-direction: column; gap: 20px; align-items: center; }
    .lm-imc-page .lm-form input { width: 100%; max-width: 250px; }
}