/* GolfTechIQ room size calculator (scoped) */
.gtiq-calc {
  --ink: #081a29; --muted: #46596a; --line: #dfe7e2; --surface: #ffffff; --bg: #f5f7f6;
  --turf: #1f8f3a; --turf-soft: #e3f5e5; --screen: #ffffff; --ok: #1f8f3a;
  --warn: #9a5f0c; --warn-soft: #fbf0dc; --bad: #b23a2a; --bad-soft: #f8e3df; --diagram-room: #eef3f0;
  font-family: "DM Sans", "Segoe UI", Arial, sans-serif; color: var(--ink);
}
.gtiq-calc * { box-sizing: border-box; }
.gtiq-calc h2 { font-family: "Poppins", sans-serif; font-size: 24px; margin: 0; }
.gtiq-calc .tool { display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 24px; align-items: start; }
@media (max-width: 860px) { .gtiq-calc .tool { grid-template-columns: minmax(0, 1fr); } }
.gtiq-calc .panel { background: var(--bg); border: 1px solid var(--line); border-radius: 14px; padding: 20px; display: grid; gap: 18px; min-width: 0; }
.gtiq-calc fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 8px; min-width: 0; }
.gtiq-calc legend, .gtiq-calc .lbl { font-weight: 700; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); padding: 0; margin-bottom: 6px; }
.gtiq-calc .ftin { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.gtiq-calc .ftin label { display: flex; align-items: center; gap: 6px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 0 10px; }
.gtiq-calc .ftin label:focus-within { border-color: var(--turf); }
.gtiq-calc .ftin input { width: 100%; border: 0; background: transparent; font: 700 18px "DM Sans", sans-serif; color: var(--ink); padding: 10px 0; min-width: 0; font-variant-numeric: tabular-nums; }
.gtiq-calc .ftin span { color: var(--muted); font-size: 15px; }
.gtiq-calc select { width: 100%; font: 500 16px "DM Sans", sans-serif; color: var(--ink); background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 11px; }
.gtiq-calc .seg { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.gtiq-calc .seg label { position: relative; }
.gtiq-calc .seg input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.gtiq-calc .seg span { display: block; text-align: center; padding: 10px 6px; font-weight: 700; font-size: 15px; color: var(--muted); background: var(--surface); }
.gtiq-calc .seg label + label span { border-left: 1px solid var(--line); }
.gtiq-calc .seg input:checked + span { background: var(--ink); color: #fff; }
.gtiq-calc .seg input:focus-visible + span { outline: 3px solid #3fbf3f; outline-offset: -3px; }
.gtiq-calc .hint, .gtiq-calc .note { font-size: 14px; color: var(--muted); margin: 0; }
.gtiq-calc .result { display: grid; gap: 18px; min-width: 0; }
.gtiq-calc .verdict { display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: center; padding: 18px 20px; border-radius: 14px; border: 1px solid var(--line); background: var(--surface); }
.gtiq-calc .badge { font: 700 15px "Poppins", sans-serif; letter-spacing: .06em; text-transform: uppercase; padding: 6px 12px; border-radius: 999px; white-space: nowrap; }
.gtiq-calc .s-ok .badge { background: var(--turf-soft); color: var(--ok); }
.gtiq-calc .s-warn .badge { background: var(--warn-soft); color: var(--warn); }
.gtiq-calc .s-bad .badge { background: var(--bad-soft); color: var(--bad); }
.gtiq-calc .verdict p { margin: 0; }
.gtiq-calc .verdict strong { font: 600 20px/1.25 "Poppins", sans-serif; display: block; }
.gtiq-calc .figure { background: var(--surface); border: 1px solid var(--line); border-radius: 14px; padding: 14px; min-width: 0; }
.gtiq-calc .figure svg { display: block; width: 100%; height: auto; }
.gtiq-calc .figcap { font-size: 14px; color: var(--muted); margin: 8px 4px 0; }
.gtiq-calc .checks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 640px) { .gtiq-calc .checks { grid-template-columns: minmax(0, 1fr); } }
.gtiq-calc .check { background: var(--surface); border: 1px solid var(--line); border-top: 4px solid var(--line); border-radius: 10px; padding: 14px; display: grid; gap: 6px; align-content: start; }
.gtiq-calc .check.s-ok { border-top-color: var(--ok); }
.gtiq-calc .check.s-warn { border-top-color: var(--warn); }
.gtiq-calc .check.s-bad { border-top-color: var(--bad); }
.gtiq-calc .check h3 { margin: 0; font: 700 13px "DM Sans", sans-serif; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.gtiq-calc .check .num { font: 700 26px/1 "Poppins", sans-serif; font-variant-numeric: tabular-nums; }
.gtiq-calc .check .need { font-size: 14px; color: var(--muted); }
.gtiq-calc .check p { margin: 0; font-size: 15px; }
.gtiq-calc .fitlist { display: grid; gap: 10px; }
.gtiq-calc .chips { display: flex; flex-wrap: wrap; gap: 8px; }
.gtiq-calc .chip { font-size: 14px; font-weight: 700; padding: 5px 10px; border-radius: 999px; border: 1px solid var(--line); background: var(--surface); }
.gtiq-calc .chip.s-ok { color: var(--ok); background: var(--turf-soft); border-color: transparent; }
.gtiq-calc .chip.s-warn { color: var(--warn); background: var(--warn-soft); border-color: transparent; }
.gtiq-calc .chip.s-bad { color: var(--bad); background: var(--bad-soft); border-color: transparent; text-decoration: line-through; }
.gtiq-calc .legend { display: flex; flex-wrap: wrap; gap: 14px; font-size: 14px; color: var(--muted); }
.gtiq-calc .legend i { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 6px; }
.gtiq-calc .method { border-top: 1px solid var(--line); margin-top: 32px; padding-top: 24px; display: grid; gap: 10px; max-width: 72ch; }
.gtiq-calc .method p, .gtiq-calc .method li { color: var(--muted); font-size: 16px; }
.gtiq-calc .method ul { margin: 0; padding-left: 1.2em; display: grid; gap: 4px; }
