/* The Tool Bakery - Macro Calculator modern style */
.ttb-macro { --bg:#0f1115; --card:#141821; --muted:#a3acc2; --text:#e8ecf3; --brand:#6ee7ff; --accent:#a78bfa; --ok:#34d399; --warn:#fbbf24; --err:#f87171; }
.ttb-macro { color:var(--text); background:var(--bg); border:1px solid #1f2633; padding:24px; border-radius:16px; box-shadow:0 1px 0 #1b2130, 0 8px 24px rgba(0,0,0,.35); }
.ttb-macro .sub{ color:var(--muted); margin-top:4px; }
.ttb-macro h2{ font-size:28px; margin:0 0 8px; }
.ttb-macro h3{ margin:0 0 12px; font-size:18px; }
.ttb-macro h4{ margin:0 0 8px; font-size:16px; color:var(--muted); }

.ttb-macro .card{ background:var(--card); padding:16px; border-radius:14px; border:1px solid #1f2633; margin: 10px 0;}
.ttb-macro label{ display:flex; flex-direction:column; gap:8px; font-size:14px; color:#c9d3ea; }
.ttb-macro input, .ttb-macro select{ background:#0c0f14; border:1px solid #243044; color:var(--text); padding:10px 12px; border-radius:10px; outline:none; }
.ttb-macro input:focus, .ttb-macro select:focus{ border-color:var(--brand); box-shadow:0 0 0 2px rgba(110,231,255,.15); }
.ttb-macro .row{ display:grid; gap:12px; }
.ttb-macro .row.two{ grid-template-columns:repeat(2,1fr); }
.ttb-macro .row.three{ grid-template-columns:repeat(2,1fr); }
@media(max-width:700px){ .ttb-macro .row.two, .ttb-macro .row.three{ grid-template-columns:1fr; } }

.ttb-macro .preset-grid{ display:grid; grid-template-columns:1fr; gap:10px; }
@media(min-width:700px){ .ttb-macro .preset-grid{ grid-template-columns:repeat(3,1fr);} }
.ttb-macro .preset{ text-align:left; background:#0c0f14; border:1px solid #243044; color:var(--text); padding:12px; border-radius:12px; cursor:pointer; transition:transform .06s ease, border-color .2s; }
.ttb-macro .preset strong{ display:block; margin-bottom:4px; }
.ttb-macro .preset.selected{ border-color:var(--accent); box-shadow:0 0 0 2px rgba(167,139,250,.15) inset; }
.ttb-macro .preset:hover{ transform:translateY(-1px); }

.ttb-macro .pct{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.ttb-macro .note, .ttb-macro small{ color:var(--muted); }

.ttb-macro .accordion{ width:100%; text-align:left; background:#0c0f14; border:1px solid #243044; color:var(--text); padding:10px 12px; border-radius:10px; }
.ttb-macro .adv.collapsed{ display:none; }

.ttb-macro .btn-row{ display:flex; gap:10px; margin-top:16px; flex-wrap:wrap; }
.ttb-macro .primary{ background:linear-gradient(135deg, var(--accent), var(--brand)); border:none; color:#041016; padding:10px 14px; border-radius:10px; font-weight:700; }
.ttb-macro .ghost{ background:transparent; border:1px solid #243044; color:var(--text); padding:10px 14px; border-radius:10px; }
.ttb-macro .muted{ color:var(--muted); }

.ttb-macro .notice{ margin-top:12px; color:#e5e7eb; }
.ttb-macro .notice .warn{ color:var(--warn); }
.ttb-macro .notice .err{ color:var(--err); }

.ttb-macro .results{ margin-top:18px; background:var(--card); border:1px solid #1f2633; border-radius:14px; padding:16px; }
.ttb-macro .stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
@media(max-width:900px){ .ttb-macro .stats{ grid-template-columns:repeat(2,1fr);} }
@media(max-width:520px){ .ttb-macro .stats{ grid-template-columns:1fr;} }
.ttb-macro .stat{ background:#0c0f14; border:1px solid #243044; padding:12px; border-radius:12px; }
.ttb-macro .stat .label{ color:#c9d3ea; margin-bottom:4px; }
.ttb-macro .stat .value{ font-size:18px; font-weight:700; }
.ttb-macro .stat .subtiny{ color:var(--muted); font-size:12px; margin-top:6px; }

.ttb-macro .split{ margin-top:16px; }
.ttb-macro .two-col{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
@media(max-width:700px){ .ttb-macro .two-col{ grid-template-columns:1fr; } }
.ttb-macro .col{ background:#0c0f14; border:1px solid #243044; padding:12px; border-radius:12px; }

.ttb-macro .tag{ display:inline-block; padding:4px 8px; border-radius:999px; background:#0b1320; border:1px solid #253145; color:#b5c1db; margin-bottom:6px; }

.ttb-macro .highlight{ color:var(--brand); font-weight:700; }

.ttb-macro .disclaimer{ color:var(--muted); font-size:12px; margin-top:14px; }

/* Unit toggles */
.ttb-macro .imperial-only{ display:none; grid-template-columns:1fr 1fr; gap:8px; }

#mc-height-imperial label { flex-grow: 1; }