.tool-box{
  --bg: #fdf4ec; --panel: #ffffff; --panel-2: #fae3cf; --line: #f0c69f;
  --accent: #ea580c; --accent-soft: #f8d7b8; --accent-dim: #fdf0e5;
  --text: #451e05; --muted: #93603a; --muted-2: #cc9d76; --bad: #b3402f; --good: #1e824c; --warn: #b7791f; --warn-soft: #f6ecd6;
}

.tool-box .mh-disclaimer{ margin-bottom: 18px; padding: 12px 14px; background: var(--warn-soft); border: 1px solid var(--warn); border-radius: 8px; font-size: 12.5px; line-height: 1.6; color: #5c4416; }

.tool-box .field.full{ margin-bottom: 16px; }
.tool-box .fields{ display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; margin-bottom: 16px; }
.tool-box .field label{ display: block; font-size: 12px; font-weight: 600; color: var(--muted); margin-bottom: 6px; }
.tool-box .field input, .tool-box .field select{ width: 100%; padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; font-size: 13.5px; background: var(--panel); color: var(--text); box-sizing: border-box; }
.tool-box .field input:focus, .tool-box .field select:focus{ outline: none; border-color: var(--accent); }

.tool-box .sex-toggle{ display: flex; gap: 8px; }
.tool-box .sex-toggle input{ display: none; }
.tool-box .sex-toggle label{ flex: 1; text-align: center; padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; font-size: 13.5px; font-weight: 600; cursor: pointer; background: var(--panel); color: var(--muted); transition: all .15s ease; }
.tool-box .sex-toggle input:checked + label{ background: var(--accent); color: #fff; border-color: var(--accent); }

.tool-box .unit-input{ display: flex; align-items: center; gap: 6px; }
.tool-box .unit-input input{ min-width: 0; flex: 1; }
.tool-box .unit-input .unit{ font-size: 12px; font-weight: 600; color: var(--muted); flex-shrink: 0; }

.tool-box .btns{ display: flex; justify-content: flex-end; gap: 10px; margin-top: 6px; flex-wrap: wrap; }
.tool-box .btns.center{ justify-content: center; margin-top: 20px; }
.tool-box .app{ padding: 11px 22px; border: none; border-radius: 8px; cursor: pointer; font-weight: 600; font-size: 13.5px; font-family: 'Inter', sans-serif; color: #fff; background: var(--accent); }
.tool-box .app:hover{ filter: brightness(1.08); }
.tool-box .app.gray{ background: var(--line); color: var(--text); }

.tool-box .loading-box{ display: none; flex-direction: column; align-items: center; gap: 12px; padding: 34px 0; }
.tool-box .loading-box p{ margin: 0; font-size: 13px; color: var(--muted); font-weight: 600; }
.tool-box .spinner{ width: 34px; height: 34px; border: 3px solid var(--line); border-top-color: var(--accent); border-radius: 50%; animation: gspin .8s linear infinite; }
@keyframes gspin{ to{ transform: rotate(360deg); } }

.tool-box .result-box{ display: none; margin-top: 8px; background: var(--panel-2); border: 1px solid var(--line); border-radius: 12px; padding: 20px; }
.tool-box .result-title{ margin: 0 0 16px; font-size: 15px; font-weight: 700; color: var(--text); text-align: center; }

.tool-box .result-age{ display: flex; flex-direction: column; align-items: center; gap: 6px; margin-bottom: 18px; }
.tool-box .sex-icon{ display: flex; color: var(--accent); }
.tool-box .result-age p{ margin: 0; font-size: 13.5px; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: .4px; }

.tool-box .metric-row{ display: flex; align-items: center; gap: 12px; background: var(--panel); border: 1px solid var(--line); border-radius: 10px; padding: 12px 14px; margin-bottom: 10px; }
.tool-box .metric-row:last-of-type{ margin-bottom: 0; }
.tool-box .metric-icon{ flex-shrink: 0; width: 38px; height: 38px; border-radius: 50%; background: var(--accent-soft); color: var(--accent); display: flex; align-items: center; justify-content: center; }
.tool-box .metric-info{ flex: 1; display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.tool-box .metric-label{ font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px; color: var(--muted); }
.tool-box .metric-value{ font-size: 15px; font-weight: 700; color: var(--text); font-family: 'JetBrains Mono', monospace; }
.tool-box .metric-pct{ flex-shrink: 0; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 2px; }
.tool-box .pct-label{ font-size: 9.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .3px; color: var(--muted-2); }
.tool-box .pct-value{ font-size: 17px; font-weight: 800; color: var(--accent); font-family: 'JetBrains Mono', monospace; }
