[data-gallery]{cursor:zoom-in;display:block;position:relative}
[data-gallery]::after{content:'查看大图 ↗';position:absolute;right:16px;bottom:16px;padding:9px 14px;border-radius:24px;background:#fff;color:#24252c;font-size:12px;line-height:1.4;box-shadow:0 2px 14px #00000012;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s;pointer-events:none}
[data-gallery]:hover::after,[data-gallery]:focus-visible::after{opacity:1;transform:none}
.gallery-dialog{position:fixed;inset:16px;max-width:none;max-height:none;width:calc(100% - 32px);height:calc(100dvh - 32px);margin:0;border:0;border-radius:12px;background:#fff;color:#202124;padding:0;overflow:hidden;box-shadow:0 24px 100px #0003}
.gallery-dialog::backdrop{background:#1719239c;backdrop-filter:blur(6px)}
.gallery-dialog[open]{display:flex;flex-direction:column;animation:gallery-enter .3s ease-out}
.gallery-header{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:14px 24px;border-bottom:1px solid #e5e5e9;flex-shrink:0;min-height:70px}
.gallery-heading{display:flex;align-items:baseline;gap:18px;min-width:0}
.gallery-heading h2{font-size:16px;font-weight:500;line-height:1.5}
.gallery-counter{font-size:12px;color:#62646b;white-space:nowrap;letter-spacing:.06em;font-variant-numeric:tabular-nums}
.gallery-controls{display:flex;gap:10px;align-items:center;flex-shrink:0}
.gallery-controls button{min-height:44px;min-width:44px;border-radius:50%;border:1px solid #dddde5;display:grid;place-items:center;background:#fff;font-size:20px}
.gallery-controls .gallery-detail{border-radius:24px;padding:0 16px;font-size:13px}
.gallery-controls button:hover{color:#3540d4;border-color:#3540d4;background:#f8f8ff}
.gallery-controls button:disabled{opacity:.4;cursor:default}
.gallery-stage{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;display:flex;align-items:center;justify-content:center;padding:24px;background:#fff}
.gallery-stage img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;margin:auto}
.gallery-stage.is-detail{display:block}
.gallery-stage.is-detail img{width:auto;min-width:100%;max-width:none;max-height:none;height:auto;object-fit:contain}
.method-evidence a[data-gallery]::after,.selection-figure a[data-gallery]::after{content:none}
.hc-figure a[data-gallery]::after{padding:0}
.gallery-help{padding:9px 24px;border-top:1px solid #e5e5e9;font-size:12px;color:#62646b;text-align:center;flex-shrink:0}
.gallery-help__touch{display:none}
body.gallery-is-open{overflow:hidden!important}
@keyframes gallery-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media(max-width:700px){.gallery-dialog{inset:8px;width:calc(100% - 16px);height:calc(100dvh - 16px);border-radius:8px}.gallery-header{padding:10px 12px;flex-wrap:wrap;gap:6px}.gallery-heading{width:100%;justify-content:space-between;padding-right:4px}.gallery-heading h2{font-size:14px;max-width:80%}.gallery-controls{width:100%;justify-content:flex-end;gap:8px}.gallery-controls button{min-height:42px;min-width:42px}.gallery-stage{padding:12px}.gallery-help{padding:8px;font-size:11px}[data-gallery]::after{opacity:1;transform:none;font-size:11px;padding:7px 10px;right:10px;bottom:10px}}
@media(prefers-reduced-motion:reduce){.gallery-dialog[open]{animation:none}[data-gallery]::after{transition:none}}
@media(max-width:700px){.gallery-help__keys{display:none}.gallery-help__touch{display:inline}}
