.fx-product-back{margin:0 0 24px;clear:both}
.fx-product-back a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:10px 16px;border:1px solid var(--fixapp-line);border-radius:8px;color:var(--fixapp-ink);background:var(--fixapp-paper);font:600 14px/1.3 var(--fixapp-font-body);text-decoration:none;cursor:pointer}
.fx-product-back svg{width:18px;height:18px;transform:rotate(180deg)}
.fx-product-back a:hover{border-color:var(--fixapp-red);color:var(--fixapp-red);background:var(--fixapp-brand-soft)}
.fx-product-back a:active{background:var(--fixapp-surface)}
.fx-product-back a:focus-visible{outline:3px solid var(--fixapp-red);outline-offset:3px}
html.fx-photo-open{overflow:hidden}
.fx-photo-dialog{width:min(980px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--fixapp-line);border-radius:18px;background:var(--fixapp-paper);color:var(--fixapp-ink);font-family:var(--fixapp-font-body);overflow:auto;box-shadow:0 24px 80px #0004}
.fx-photo-dialog::backdrop{background:rgb(21 22 25 / .82)}
.fx-photo-dialog>header{position:sticky;top:0;z-index:1;background:var(--fixapp-paper);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--fixapp-line)}
.fx-photo-dialog>header p{font-size:10px;letter-spacing:.1em;color:var(--fixapp-red);margin:0 0 5px;font-weight:600}
.fx-photo-dialog h2{font:700 30px/1.05 var(--fixapp-font-display);margin:0}
.fx-photo-dialog button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;min-width:44px;border:1px solid var(--fixapp-line);border-radius:8px;background:var(--fixapp-paper);color:var(--fixapp-ink);font:600 14px/1.3 var(--fixapp-font-body);padding:10px 14px;cursor:pointer;flex-shrink:0}
.fx-photo-dialog .fx-photo-close{background:var(--fixapp-ink);color:var(--fixapp-paper);border-color:var(--fixapp-ink)}
.fx-photo-close span{font-size:23px;line-height:1;font-weight:400}
.fx-photo-dialog button:hover{border-color:var(--fixapp-red);background:var(--fixapp-brand-soft);color:var(--fixapp-red)}
.fx-photo-dialog button:active{background:var(--fixapp-surface)}
.fx-photo-dialog button:focus-visible{outline:3px solid var(--fixapp-red);outline-offset:3px}
.fx-photo-stage{height:min(56dvh,560px);min-height:160px;display:block;overflow:auto;padding:0;background:var(--fixapp-paper);overscroll-behavior:contain}
.fx-photo-stage:focus-visible{outline:3px solid var(--fixapp-red);outline-offset:-3px}
.fx-photo-canvas{display:grid;place-items:center;width:max-content;height:max-content;min-width:100%;min-height:100%}
.fx-photo-stage img{display:block;max-width:none;max-height:none;object-fit:contain}
.fx-photo-stage[aria-busy=true] img{opacity:0}
.fx-photo-dialog>footer{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 20px;padding:16px 24px;border-top:1px solid var(--fixapp-line)}
.fx-photo-navigation{display:flex;align-items:center;gap:12px;font-size:13px;align-self:start}
.fx-photo-navigation [data-photo-prev] svg{transform:rotate(180deg)}
.fx-photo-navigation [data-photo-count]{white-space:nowrap;min-width:38px;text-align:center}
.fx-photo-zoom{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.fx-photo-zoom output{min-width:4ch;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}
.fx-photo-dialog button:disabled{opacity:.5;cursor:default;background:var(--fixapp-paper);color:var(--fixapp-muted);border-color:var(--fixapp-line)}
.fx-photo-feedback{grid-column:1/-1;min-height:24px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--fixapp-muted)}
.fx-photo-dialog [hidden]{display:none!important}
@media(max-width:600px){.fx-photo-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:14px}.fx-photo-dialog>header{padding:16px}.fx-photo-dialog>header p{font-size:9px}.fx-photo-dialog h2{font-size:26px}.fx-photo-stage{height:42dvh}.fx-photo-dialog>footer{padding:14px 16px;grid-template-columns:1fr;gap:12px}.fx-photo-navigation,.fx-photo-zoom{justify-content:center}.fx-photo-feedback{font-size:12px}}
