.tag-editor {margin:12px 0;border:1px solid var(--line);border-radius:8px;background:var(--subtle);min-width:0}
.tag-editor > summary {display:flex;align-items:center;gap:9px;cursor:pointer;padding:10px 12px;font-weight:650;min-height:42px}
.tag-editor > summary::before {content:'@';display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:6px;width:24px;height:24px;color:var(--gold)}
.tag-editor > summary::after {content:'+';margin-left:auto}
.tag-editor[open] > summary::after {content:'−'}
.tag-editor summary small {font-weight:400;color:var(--muted)}
.tag-editor [data-tag-body] {padding:0 12px 12px;display:grid;gap:8px;font-size:13px;min-width:0}
.tag-editor p,.tag-editor label,.tag-guide dl,.tag-guide dd {margin:0}
.tag-editor label {display:grid;gap:4px}
.tag-editor input,.tag-editor select {width:100%;min-width:0;box-sizing:border-box}
.tag-actions,.tag-existing,.tag-coords {display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tag-coords label {width:100px;max-width:43%}
.tag-check,.tag-help,.tag-guide dd {color:var(--muted);line-height:1.5}
.tag-check[data-status="confirmed"] {color:var(--ink);font-weight:bold}
.tag-guide {border-top:1px solid var(--line);padding-top:7px}
.tag-guide summary {cursor:pointer;color:var(--muted)}
.tag-guide dl {display:grid;gap:6px;padding:8px 0}
.tag-guide dt {font-weight:600}
.tag-editor [hidden] {display:none}
.tag-editor [data-tag-photo]:not([hidden]) {display:grid;gap:8px}
.tag-picture {position:relative;display:block;width:min(100%,24rem);max-width:100%;padding:0;line-height:0;border:0;background:none;cursor:crosshair;overflow:hidden}
.tag-picture img {width:100%;height:auto;display:block}
.tag-picture span,.pv-planned-tag {position:absolute;transform:translate(-50%,-50%);border-radius:12px;background:#141921e8;color:#fff;font:600 12px/1.3 system-ui;padding:3px 7px;pointer-events:none}
.tag-picture span {width:18px;height:18px;line-height:18px;padding:0;border:1px solid white;text-align:center}
.pv-planned-tag {max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pv-art.pv-tagged-photo {height:auto;aspect-ratio:auto;max-height:none}
.pv-art.pv-tagged-photo img {width:100%;height:auto;object-fit:contain}
