.feed-photo-identification { position:relative; }
.feed-photo-identification .feed-post-image { display:block; }
.feed-photo-identify { position:absolute; top:12px; right:12px; display:grid; place-items:center; width:44px; height:44px; border:1px solid #ffffff40; border-radius:50%; color:white; background:rgba(15,32,27,.5); backdrop-filter:blur(10px); cursor:pointer; z-index:2; }
.feed-photo-identify:hover,.feed-photo-identify[aria-expanded="true"] { background:rgba(15,32,27,.85); }
.feed-photo-identify:focus-visible,.inline-tag-panel button:focus-visible { outline:3px solid #d9a34c; outline-offset:3px; }
.inline-tag-panel { position:fixed; z-index:1200; right:auto; bottom:auto; box-sizing:border-box; width:min(290px,calc(100vw - 24px)); margin:0; max-height:min(440px,calc(100dvh - 170px)); overflow:auto; overscroll-behavior:contain; padding:12px; border:1px solid var(--border-soft); border-radius:16px; background:var(--white); color:var(--ink); box-shadow:0 12px 36px #0003; font-size:.8rem; line-height:1.35; }
.inline-tag-panel p { margin:6px 0; }
.inline-tag-panel [role="status"]:empty { display:none; }
.inline-tag-panel small { display:block; font-size:.7rem; margin-top:8px; }
.inline-tag-panel [hidden] { display:none !important; }
.inline-tag-panel header { display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; }
.inline-tag-panel h3 { margin:0; font-size:1rem; }
.inline-tag-panel button { cursor:pointer; min-height:40px; }
.inline-tag-panel .inline-tag-close,.inline-tag-panel .inline-tag-remove { background:transparent; border:0; color:inherit; border-radius:50%; min-width:40px; font-size:1.2rem; }
.inline-tag-panel label { margin:5px 0; display:block; }
.inline-tag-panel input,.inline-tag-panel select { width:100%; padding:7px 9px; min-height:36px; font-size:.85rem; }
.inline-tag-panel form > button { width:100%; margin-top:8px; }
.inline-tag-panel ul { list-style:none; margin:8px 0 0; padding:0; }
.inline-tag-panel li { display:flex; align-items:center; justify-content:space-between; gap:8px; border-top:1px solid var(--border-soft); overflow-wrap:anywhere; }
.inline-photo-label { position:absolute; pointer-events:none; transform:translate(-50%,-50%); border-radius:99px; padding:3px 8px; background:rgba(15,32,27,.62); color:white; text-shadow:0 1px 2px #000; font-size:.72rem; max-width:140px; overflow-wrap:anywhere; }
.inline-photo-marker { position:absolute; pointer-events:none; transform:translate(-50%,-50%); width:18px; height:18px; border:2px solid white; outline:2px solid #196a50; border-radius:50%; }
@media (max-width:600px) { .inline-tag-panel input,.inline-tag-panel select { font-size:16px; } }
