.guide-photo{margin:clamp(12px,2vw,16px) 0 8px;border-radius:var(--radius-md, 8px);overflow:hidden;border:1px solid var(--border);background:var(--bg-tertiary)}.guide-photo__wrapper{position:relative;display:block;line-height:0}.guide-photo__img{width:100%;height:auto;display:block;aspect-ratio:16 / 9;object-fit:cover}.guide-photo__overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.guide-photo__pin{pointer-events:auto;cursor:pointer}.guide-photo__pin circle{fill:var(--accent);stroke:#fff;stroke-width:.8;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));transition:filter .15s,transform .15s;transform-origin:center;transform-box:fill-box}.guide-photo__pin:hover circle,.guide-photo__pin:focus circle{filter:drop-shadow(0 2px 5px rgba(0,0,0,.7));transform:scale(1.18)}.guide-photo__pin text{fill:#fff;font-size:2.8px;font-weight:700;text-anchor:middle;dominant-baseline:central;font-family:system-ui,sans-serif;pointer-events:none;user-select:none}.guide-photo__caption{padding:clamp(6px,1.5vw,8px) clamp(10px,2vw,12px);font-size:.8125rem;color:var(--text-muted);font-style:italic;background:var(--bg-secondary);border-top:1px solid var(--border);line-height:1.4}.guide-photo__legend{margin:8px 0 clamp(12px,2vw,16px);padding-left:0;list-style:none;counter-reset:legend-counter}.guide-photo__legend li{counter-increment:legend-counter;display:flex;align-items:baseline;gap:8px;font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin-bottom:2px;padding:2px 0}.guide-photo__legend li:before{content:counter(legend-counter);display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;font-size:.6875rem;font-weight:700;flex-shrink:0;cursor:pointer}.guide-photo__legend button{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;text-align:left;line-height:1.5;transition:color .12s}.guide-photo__legend button:hover{color:var(--accent)}.guide-pin-popover{display:none;position:fixed;z-index:150000;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-lg, 0 8px 32px rgba(0, 0, 0, .25));padding:clamp(12px,2vw,14px) clamp(14px,2vw,16px) clamp(10px,1.5vw,12px);max-width:min(300px,calc(100vw - 32px));width:max-content}.guide-pin-popover.is-open{display:block}.guide-pin-popover__header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.guide-pin-popover__num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;font-size:.6875rem;font-weight:700;flex-shrink:0;margin-top:1px}.guide-pin-popover__title{font-size:.875rem;font-weight:700;color:var(--text-primary);flex:1;line-height:1.3}.guide-pin-popover__close{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm, 4px);flex-shrink:0;transition:color .12s,background .12s;padding:0}.guide-pin-popover__close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.guide-pin-popover__body{font-size:.8125rem;color:var(--text-secondary);line-height:1.55;margin:0}.guide-pin-link{display:inline-flex;align-items:center;gap:3px;color:var(--accent);font-weight:600;text-decoration:none;border-bottom:1px dotted color-mix(in srgb,var(--accent) 60%,transparent);transition:border-bottom-color .12s}.guide-pin-link:hover{border-bottom-color:var(--accent)}.guide-pin-link__badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:var(--accent);color:#fff;font-size:.5625rem;font-weight:700;line-height:1}@media(max-width:600px){.guide-pin-popover.is-open{position:fixed!important;inset:auto 0 0!important;max-width:100%!important;width:100%!important;border-radius:var(--radius-lg, 12px) var(--radius-lg, 12px) 0 0!important;padding:20px 16px;padding-bottom:calc(20px + env(safe-area-inset-bottom))}}html.dark .guide-photo__pin circle{stroke:#ffffffe6}@media print{.guide-pin-popover{display:none!important}.guide-photo__overlay{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.guide-substep-photo{margin-top:clamp(8px,1.5vw,12px)}.guide-substep-photo__toggle{display:inline-flex;align-items:center;gap:5px;font-size:.8125rem;font-weight:600;color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:100px;cursor:pointer;padding:3px 10px 3px 8px;transition:background .15s,border-color .15s;line-height:1.4;font-family:inherit}.guide-substep-photo__toggle:hover{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.guide-substep-photo__chevron{transition:transform .2s}.guide-substep-photo__chevron--open{transform:rotate(180deg)}.guide-substep-photo__content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.guide-substep-photo__content.is-open{grid-template-rows:1fr}.guide-substep-photo__inner{overflow:hidden;min-height:0}.guide-substep-photo__inner>.guide-photo{margin-top:8px}.guide-substep-photo__inner>.guide-photo__legend{margin-bottom:4px}.guide-step__banner{margin-bottom:clamp(12px,2vw,16px)}.guide-step__banner>.guide-photo{margin-top:0}