:root{--main:#1a4b5f;--main-2:#2e6f7e;--soft:#f2f6fc;--soft-2:#f6f9fc;--warm:#fefcf5;--border:#d9e3ee;--gold:#ecdca8;--text:#1a3f5c;--muted:#5a6c7d;--shadow:0 10px 30px rgba(26,75,95,.08)}.calculator{max-width:1000px;margin:28px auto;padding:28px;border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden;position:relative}.calculator::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(107,158,158,.12),transparent 38%),radial-gradient(circle at bottom left,rgba(26,75,95,.08),transparent 35%);pointer-events:none}.calculator-content{display:flex;flex-direction:column;gap:18px;align-items:center;position:relative;z-index:1}.gender-selection{display:flex;gap:10px;justify-content:center;margin-bottom:6px;width:100%;max-width:360px;background:var(--soft);padding:8px;border-radius:18px;border:1px solid #d7e1ec}.gender-btn{flex:1;padding:12px 14px;border:1px solid #cfdbe7;border-radius:14px;background:#fff;cursor:pointer;text-align:center;font-size:1rem;font-weight:700;color:var(--muted);transition:all .25s ease;min-width:90px;box-shadow:0 3px 10px rgba(0,0,0,.03)}.gender-btn:hover{transform:translateY(-1px);border-color:#bcd0dc}.gender-btn.active{background:linear-gradient(180deg,#f3f9fc 0%,#eaf3f7 100%);border-color:var(--main);color:var(--main);box-shadow:0 6px 16px rgba(26,75,95,.08)}.input-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%}.input-group{min-width:0;display:flex;flex-direction:column;align-items:stretch}.input-label{display:block;color:var(--main);font-weight:700;margin-bottom:9px;font-size:1rem;text-align:center;width:100%}.input-with-unit{display:flex;align-items:center;gap:8px;background:linear-gradient(180deg,#fffdf7 0%,#fff9ea 100%);border:1px solid var(--gold);border-radius:18px;padding:7px 10px;transition:border-color .25s,box-shadow .25s;width:100%;min-width:0;max-width:100%;box-sizing:border-box;box-shadow:0 4px 14px rgba(0,0,0,.03)}.input-with-unit:focus-within{border-color:var(--main);box-shadow:0 0 0 4px rgba(26,75,95,.08)}.number-input{width:76px;padding:10px 8px;border:none;border-radius:0;font-size:1.08rem;text-align:center;background:transparent;outline:none;flex:0 0 76px;box-sizing:border-box;color:var(--text);font-weight:700}.number-input::placeholder{color:#9aa9b6;font-weight:600}.unit-select{padding:10px 8px;border:none;border-left:1px solid #eddcae;background:transparent;font-size:.95rem;min-width:0;cursor:pointer;outline:none;color:var(--main-2);font-weight:700}.single-input{width:100%;padding:12px 14px;background:linear-gradient(180deg,#fffdf7 0%,#fff9ea 100%);border:1px solid var(--gold);border-radius:18px;font-size:1rem;text-align:center;transition:border-color .25s,box-shadow .25s;box-sizing:border-box;max-width:100%;color:var(--text);font-weight:700;box-shadow:0 4px 14px rgba(0,0,0,.03)}.single-input:focus{outline:none;border-color:var(--main);box-shadow:0 0 0 4px rgba(26,75,95,.08)}.calculate-btn-container{display:flex;justify-content:center;margin-top:8px;width:100%}.calculate-btn{background:linear-gradient(135deg,var(--main) 0%,#2b6a79 100%);color:#fff;border:0;padding:13px 24px;border-radius:14px;cursor:pointer;font-weight:800;font-size:1rem;width:auto;min-width:160px;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;box-shadow:0 10px 24px rgba(26,75,95,.16)}.calculate-btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(26,75,95,.22);filter:saturate(1.03)}.calculate-btn:active{transform:translateY(0)}.calculate-btn.loading{opacity:.86;cursor:wait;position:relative}.calculate-btn.loading::after{content:"";position:absolute;right:14px;width:16px;height:16px;border:2px solid rgba(255,255,255,.9);border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.results-container{margin-top:12px;padding:26px;background:linear-gradient(180deg,#fffdf7 0%,#fffaf0 100%);border-radius:20px;border:1px solid #ecdca8;border-right:6px solid var(--main);display:none;max-width:850px;width:100%;box-shadow:0 12px 26px rgba(0,0,0,.05)}.results-container.show{display:block}.bmi-result{text-align:center;margin-bottom:18px}.bmi-value{font-size:3.4rem;font-weight:900;color:var(--main);line-height:1;margin-bottom:10px;letter-spacing:-1px}.bmi-category{font-size:1.25rem;font-weight:800;color:#5f8f8f;margin-bottom:7px}.bmi-description{color:var(--muted);font-size:1rem;line-height:1.6}.bmi-scale{margin:22px 0 16px;position:relative;height:38px;background:linear-gradient(to right,#4f92e6 0%,#7dbf5f 28%,#f3d74a 54%,#f3a64a 78%,#d94c4c 100%);border-radius:20px;overflow:hidden;box-shadow:inset 0 1px 2px rgba(255,255,255,.35),0 8px 18px rgba(0,0,0,.05)}.scale-marker{position:absolute;top:-7px;width:4px;height:52px;background:var(--main);transform:translateX(-50%);z-index:10;border-radius:999px;box-shadow:0 0 0 4px rgba(26,75,95,.12)}.scale-labels{display:flex;justify-content:space-between;margin-top:11px;font-size:.85rem;color:var(--muted);text-align:center;gap:4px;font-weight:700}.health-tips{background:linear-gradient(180deg,#f5fbff 0%,#eef6fb 100%);padding:18px;border-radius:16px;margin-top:18px;border-right:4px solid #6b9e9e;box-shadow:0 6px 16px rgba(0,0,0,.04)}.health-tips h4{color:#4f8686;margin-bottom:12px;font-size:1rem}.health-tips ul{padding-right:16px}.health-tips li{margin-bottom:8px;line-height:1.5;color:#465c6b}.ideal-weight{background:linear-gradient(180deg,#f7fbff 0%,#eef5fb 100%);padding:18px;border-radius:16px;margin-top:14px;border-right:4px solid var(--main);box-shadow:0 6px 16px rgba(0,0,0,.04)}.ideal-weight h4{color:var(--main);margin-bottom:12px;font-size:1rem}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.calculator{padding:20px;border-radius:20px}.input-row{gap:10px}.number-input{width:64px;flex:0 0 64px}.calculate-btn{min-width:140px;font-size:.95rem}.bmi-value{font-size:2.8rem}.scale-labels{font-size:.78rem}.results-container{padding:22px}}@media(max-width:480px){.calculator{padding:16px;border-radius:18px}.input-row{gap:8px}.number-input{width:56px;flex:0 0 56px;font-size:1rem}.single-input{padding:11px 12px}.calculate-btn{padding:11px 18px;min-width:128px;font-size:.9rem}.gender-selection{max-width:100%}.scale-labels{font-size:.72rem;gap:2px}.bmi-category{font-size:1.12rem}.bmi-description{font-size:.95rem}.results-container{padding:18px}}@media(max-width:400px){.input-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.number-input{width:48px;flex:0 0 48px;font-size:.95rem}.input-with-unit{padding:5px 8px}.calculate-btn{min-width:114px;padding:9px 14px;font-size:.85rem}.scale-labels{font-size:.68rem}}