/* BMI Calculator for Men — teal & navy theme, fully scoped under .bmimen */
.bmimen{
  --bmi-navy-900:#081826;
  --bmi-navy-800:#0C2438;
  --bmi-navy-700:#12324C;
  --bmi-teal-400:#2DD4BF;
  --bmi-teal-500:#14B8A6;
  --bmi-ink:#E8F1F5;
  --bmi-ink-dim:#8FB0C0;
  --bmi-line:rgba(45,212,191,0.18);
  --bmi-danger:#F87171;
  --bmi-mono:"SF Mono","Cascadia Mono","JetBrains Mono",Consolas,monospace;
  font-family:"Segoe UI",system-ui,-apple-system,Roboto,sans-serif;
  color:var(--bmi-ink);
  max-width:1060px;
  margin:0 auto;
}
.bmimen *,.bmimen *::before,.bmimen *::after{box-sizing:border-box}

.bmimen-grid{display:grid;grid-template-columns:minmax(300px,1fr) minmax(280px,0.95fr);gap:20px}
@media(max-width:820px){.bmimen-grid{grid-template-columns:1fr}}

.bmimen-card{background:var(--bmi-navy-800);border:1px solid var(--bmi-line);border-radius:12px;padding:22px;margin:0}
.bmimen-h{font-size:12px !important;text-transform:uppercase;letter-spacing:0.14em;color:var(--bmi-teal-400);margin:0 0 16px !important;font-weight:600;line-height:1.3}

.bmimen-tabs{display:flex;gap:6px;margin-bottom:18px;background:var(--bmi-navy-900);padding:4px;border-radius:10px;border:1px solid var(--bmi-line)}
.bmimen-tab{flex:1;padding:9px 6px;border:none;background:transparent;color:var(--bmi-ink-dim);border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;font-family:inherit;transition:all .15s;line-height:1.2}
.bmimen-tab.is-active{background:var(--bmi-teal-500);color:var(--bmi-navy-900)}
.bmimen-tab:not(.is-active):hover{color:var(--bmi-ink);background:transparent}

.bmimen label{display:block;font-size:12px;color:var(--bmi-ink-dim);margin:0 0 6px;font-weight:600;line-height:1.4}
.bmimen-row{display:flex;gap:10px;margin-bottom:14px}
.bmimen-row>div{flex:1}
.bmimen .bmimen-in{
  width:100%;padding:10px 12px;background:var(--bmi-navy-900);border:1px solid var(--bmi-line);
  border-radius:8px;color:var(--bmi-ink);font-size:15px;font-family:var(--bmi-mono);
  line-height:1.4;min-height:0;height:auto;box-shadow:none;
}
.bmimen .bmimen-in:focus{outline:2px solid var(--bmi-teal-500);outline-offset:1px;border-color:transparent}
.bmimen select.bmimen-in{font-family:inherit;font-size:14px}

.bmimen .bmimen-btn{
  width:100%;padding:12px;border:none;border-radius:8px;cursor:pointer;
  background:var(--bmi-teal-500);color:var(--bmi-navy-900);font-size:15px;font-weight:700;
  font-family:inherit;transition:background .15s;margin-top:4px;line-height:1.3;
  text-transform:none;box-shadow:none;
}
.bmimen .bmimen-btn:hover{background:var(--bmi-teal-400);color:var(--bmi-navy-900)}
.bmimen .bmimen-btn.ghost{background:transparent;color:var(--bmi-teal-400);border:1px solid var(--bmi-line);font-weight:600;font-size:13px;padding:8px 12px;width:auto}
.bmimen .bmimen-btn.ghost:hover{border-color:var(--bmi-teal-500);background:rgba(20,184,166,0.08);color:var(--bmi-teal-400)}
.bmimen .bmimen-btn.danger{color:var(--bmi-danger);border-color:rgba(248,113,113,0.3)}
.bmimen .bmimen-btn.danger:hover{border-color:var(--bmi-danger);background:rgba(248,113,113,0.08);color:var(--bmi-danger)}

/* ---- animated figure + gauge ---- */
.bmimen-figurewrap{
  display:flex;align-items:center;justify-content:center;gap:24px;
  background:var(--bmi-navy-900);border:1px dashed var(--bmi-line);border-radius:8px;
  margin-top:18px;padding:16px 12px;flex-wrap:wrap;
}
.bmimen-figure .bmimen-body{fill:rgba(45,212,191,0.18);stroke:var(--bmi-teal-400);stroke-width:2;stroke-linejoin:round}
.bmimen-figure .bmimen-torso,
.bmimen-figure .bmimen-armL,
.bmimen-figure .bmimen-armR{
  transition:transform 0.9s cubic-bezier(.34,1.3,.4,1);
}
.bmimen-figure .bmimen-torso{transform-origin:60px 75px}
.bmimen-figure .bmimen-armL{transform-origin:44px 70px}
.bmimen-figure .bmimen-armR{transform-origin:76px 70px}

.bmimen-gauge{flex:1;min-width:180px;max-width:240px}
.bmimen-needle{
  transform-origin:100px 105px;
  transform:rotate(-90deg);
  transition:transform 1s cubic-bezier(.34,1.3,.4,1);
}
.bmimen-gaugelabels{display:flex;justify-content:space-between;font-family:var(--bmi-mono);font-size:11px;color:var(--bmi-ink-dim);padding:2px 6px 0}
.bmimen-gaugelabels .mid{color:var(--bmi-teal-400);letter-spacing:0.14em}

/* ---- results ---- */
.bmimen-hero{
  background:linear-gradient(135deg,var(--bmi-navy-700),var(--bmi-navy-800));
  border:1px solid rgba(45,212,191,0.35);border-radius:12px;
  padding:22px;text-align:center;margin-bottom:16px;
}
.bmimen-big{font-size:44px;font-weight:700;font-family:var(--bmi-mono);color:var(--bmi-teal-400);letter-spacing:-0.02em;line-height:1.1}
.bmimen-unit{font-size:13px;color:var(--bmi-ink-dim);text-transform:uppercase;letter-spacing:0.14em;margin-top:6px}
.bmimen-unit.cat-under{color:#38BDF8}
.bmimen-unit.cat-healthy{color:var(--bmi-teal-400)}
.bmimen-unit.cat-over{color:#FBBF24}
.bmimen-unit.cat-obese{color:var(--bmi-danger)}

.bmimen-convs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.bmimen-conv{background:var(--bmi-navy-900);border:1px solid var(--bmi-line);border-radius:8px;padding:12px;min-width:0}
.bmimen-conv .v{font-family:var(--bmi-mono);font-size:15px;color:var(--bmi-ink);word-break:break-word;line-height:1.35}
.bmimen-conv .k{font-size:11px;color:var(--bmi-ink-dim);text-transform:uppercase;letter-spacing:0.1em;margin-top:3px}

.bmimen-actions{display:flex;gap:8px;margin-top:4px;flex-wrap:wrap}
.bmimen-note{font-size:11.5px;color:var(--bmi-ink-dim);line-height:1.6;margin:14px 0 0;border-top:1px solid var(--bmi-line);padding-top:12px}

/* ---- history ---- */
.bmimen-histcard{margin-top:20px}
.bmimen-histhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:8px}
.bmimen-histhead .bmimen-h{margin:0 !important}
.bmimen-histactions{display:flex;gap:8px;flex-wrap:wrap}
.bmimen-scroll{overflow-x:auto}
.bmimen-table{width:100%;border-collapse:collapse;font-size:13px;margin:0;border:none}
.bmimen-table th{color:var(--bmi-ink-dim);text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:0.1em;padding:8px 10px;border:none;border-bottom:1px solid var(--bmi-line);background:transparent;font-weight:600}
.bmimen-table td{padding:9px 10px;border:none;border-bottom:1px solid rgba(45,212,191,0.08);font-family:var(--bmi-mono);font-size:12.5px;background:transparent;color:var(--bmi-ink)}
.bmimen-table td.desc{font-family:inherit;color:var(--bmi-ink-dim)}
.bmimen-table td.bmi{color:var(--bmi-teal-400);font-weight:600}
.bmimen-table tr:hover td{background:rgba(20,184,166,0.04)}
.bmimen-empty{color:var(--bmi-ink-dim);text-align:center;padding:26px;font-size:13px}
.bmimen-del{background:none;border:none;color:var(--bmi-ink-dim);cursor:pointer;font-size:15px;padding:2px 6px;border-radius:4px;line-height:1;box-shadow:none}
.bmimen-del:hover{color:var(--bmi-danger);background:none}

.bmimen-toast{
  position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(80px);
  background:var(--bmi-teal-500);color:var(--bmi-navy-900);padding:10px 20px;border-radius:8px;
  font-weight:700;font-size:14px;transition:transform .25s;z-index:99999;
}
.bmimen-toast.show{transform:translateX(-50%) translateY(0)}
.bmimen-hidden{display:none}

@media (prefers-reduced-motion: reduce){
  .bmimen-toast,.bmimen-tab,.bmimen .bmimen-btn,
  .bmimen-needle,
  .bmimen-figure .bmimen-torso,.bmimen-figure .bmimen-armL,.bmimen-figure .bmimen-armR{transition:none}
}
