/* Equipment photo guide: a supplemental reference. Uses the app's own tokens and
   fonts; nothing here may push a phone sideways. */
.equipment-guide{max-width:1040px;margin:0 auto;min-width:0}
.equipment-guide [hidden],.eq-viewer [hidden]{display:none!important}
.equipment-guide h1,.equipment-guide h2,.equipment-guide h3,.equipment-guide h4,.equipment-guide p,.equipment-guide li{overflow-wrap:anywhere}
.eq-reference-note{margin:0 0 28px;max-width:72ch;font-weight:600;line-height:1.5}
.eq-rules{margin:0 0 28px;padding:18px 20px;border:1px solid var(--edge);border-left:4px solid var(--accent-deep);border-radius:10px;background:var(--raise);max-width:72ch}
.eq-rules h2{font-size:18px;margin:0 0 10px}
.eq-rule-list{margin:0;padding-left:20px;color:var(--ink-2)}
.eq-rule-list li{margin:0 0 6px;line-height:1.5}

.eq-tools{position:relative;margin:0 0 24px;max-width:72ch}
.eq-search-label{display:block;font-weight:700;font-size:14px;margin:0 0 6px}
.eq-search-row{display:flex;flex-wrap:wrap;gap:10px}
.eq-search-row input{flex:1 1 200px;min-width:0;min-height:44px;padding:8px 12px;font:inherit;color:var(--ink);background:var(--surface);border:1.5px solid var(--edge);border-radius:8px}
.eq-search-row .btn,.eq-empty .btn,.eq-actions .btn,.eq-practice>.btn{min-height:44px}
.eq-count{margin:10px 0 0;font-size:14px}
.eq-jump{display:flex;flex-wrap:wrap;gap:2px 18px;margin-top:6px}
.eq-group:focus-visible{outline-offset:6px}
.eq-variants{margin:0;display:grid;gap:10px}
.eq-variant{padding:10px 12px;border:1px solid var(--grid);border-radius:8px;background:var(--raise)}
.eq-variant dt{font-weight:700;margin:0 0 2px}
.eq-variant dd{margin:0;line-height:1.5}
.eq-variant .eq-document{color:var(--ink-2);font-size:14px;margin-top:4px}
.eq-sample-note{font-size:13px;color:var(--ink-2);margin:0 0 12px}
.eq-empty{margin:0 0 28px;padding:18px 20px;border:1px dashed var(--edge);border-radius:10px;background:var(--raise);max-width:72ch}
.eq-empty p{margin:0 0 12px}

.eq-group{margin:0 0 40px}
.eq-group>h2{font-size:24px;margin:0 0 16px}
.eq-overview{max-width:640px;margin:0 0 20px}
.eq-entry{margin:0 0 20px;padding:20px;border:1px solid var(--edge);border-radius:12px;background:var(--surface);min-width:0}
.eq-entry h3{font-size:20px;margin:0 0 6px}
.eq-summary{color:var(--ink-2);margin:0 0 14px;max-width:65ch;line-height:1.55}
.eq-entry-body{display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.eq-entry-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.eq-copy{min-width:0}
.eq-copy h4{font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin:16px 0 6px}
.eq-copy h4:first-child{margin-top:0}
.eq-copy ul{margin:0;padding-left:20px}
.eq-copy li,.eq-copy p{line-height:1.55;margin:0 0 4px;color:var(--ink)}
.eq-figures{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));align-content:start;min-width:0}
.eq-figure{margin:0;min-width:0}
.eq-figure figcaption{font-size:13px;line-height:1.5;color:var(--ink-2);margin-top:8px}
.eq-figure figcaption strong{color:var(--ink)}
.eq-enlarge{position:relative;display:block;width:100%;padding:0;border:1px solid var(--edge);border-radius:8px;overflow:hidden;background:var(--raise);cursor:zoom-in}
.eq-enlarge:hover{border-color:var(--accent-deep)}
.eq-image{display:block;width:100%;height:auto;background:var(--raise)}
.eq-tag{position:absolute;left:8px;top:8px;padding:2px 9px;border-radius:999px;background:var(--ink);color:var(--surface);font-size:12px;font-weight:700;line-height:1.5}
.eq-image-error{padding:14px;border:1px dashed var(--edge);border-radius:8px;color:var(--ink-2);font-size:14px}

.eq-viewer{border:0;border-radius:12px;padding:16px;width:min(96vw,1000px);max-width:96vw;max-height:96vh;max-height:96dvh;overflow:auto;background:var(--surface);color:var(--ink)}
.eq-viewer::backdrop{background:color-mix(in oklch,var(--ink) 72%,transparent)}
.eq-viewer-top{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;margin:0 0 12px}
.eq-viewer-top h2{font-size:20px;margin:0;min-width:0}
.eq-viewer-top .btn{flex:none;min-height:44px}
.eq-viewer-image{display:block;width:100%;height:auto;max-height:min(50vh,720px);object-fit:contain;background:var(--raise);border-radius:8px}
.eq-viewer-caption{margin:12px 0 0;color:var(--ink-2);font-size:14px;line-height:1.5}

.eq-practice{margin:40px 0 0;padding-top:28px;border-top:1px solid var(--grid)}
.eq-practice:focus-visible{outline-offset:6px}
.eq-practice>h2{font-size:24px;margin:0 0 8px}
.eq-practice-note{max-width:72ch;color:var(--ink-2);margin:0 0 14px;line-height:1.55}
.eq-exercise{margin:24px 0 0;padding:20px;border:1px solid var(--edge);border-radius:12px;background:var(--surface);min-width:0}
.eq-exercise h3{font-size:20px;margin:0 0 6px}
.eq-intro{color:var(--ink-2);margin:0 0 14px;max-width:65ch;line-height:1.55}
.eq-round{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin:0 0 8px}
.eq-fieldset{border:0;margin:0;padding:0;min-width:0}
.eq-fieldset legend{font-weight:700;margin:0 0 12px;padding:0;max-width:65ch;line-height:1.4}
.eq-practice-picture{max-width:560px;margin:0 0 14px}
.eq-practice-picture .eq-image{border:1px solid var(--edge);border-radius:8px}
.eq-options{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.eq-choice{display:flex;gap:10px;align-items:flex-start;min-height:44px;padding:10px 12px;border:1.5px solid var(--edge);border-radius:8px;background:var(--surface);cursor:pointer;line-height:1.4;min-width:0}
.eq-choice:hover{border-color:var(--accent-deep)}
.eq-choice:has(input:checked){border-color:var(--accent-deep);background:var(--accent-wash)}
.eq-choice input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--accent-deep)}
.eq-choice:has(input:disabled){cursor:default}
.eq-picture-choices{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.eq-choice-picture{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 10px}
.eq-choice-picture .eq-image{grid-column:1/-1;border-radius:6px}
.eq-choice-picture .eq-image-error{grid-column:1/-1}
.eq-choice-name{font-weight:700}
.eq-feedback{margin:14px 0 0;max-width:72ch;line-height:1.55}
.eq-feedback:empty{display:none}
.eq-feedback p{margin:0;padding:12px 14px;border-radius:8px;border:1px solid var(--edge);background:var(--raise)}
.eq-feedback[data-result=correct] p{background:var(--good-wash);border-color:var(--good)}
.eq-actions{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin:14px 0 0}
.eq-done{padding:14px 16px;border:1px solid var(--edge);border-radius:8px;background:var(--raise);max-width:72ch}
.eq-done p{margin:0 0 12px}
.eq-done .btn{min-height:44px}

.eq-lesson-link{margin:20px 0 0;padding-top:14px;border-top:1px solid var(--grid)}
.eq-lesson-link h2{font-size:16px;margin:0 0 6px}
.eq-lesson-link p{margin:0 0 8px;color:var(--ink-2);font-size:14px;line-height:1.5}
.eq-home-link p{color:var(--ink-2)}

@media (max-width:480px){
  .eq-entry,.eq-exercise{padding:16px}
  .eq-rules{padding:14px 16px}
}
