.photo-identification [hidden] { display:none !important; }
.photo-person-label { position:absolute; transform:translate(-50%,-50%); padding:3px 9px; border-radius:99px; background:rgba(15,32,27,.58); color:#fff; font-size:.75rem; line-height:1.5; max-width:150px; overflow-wrap:anywhere; backdrop-filter:blur(6px); text-shadow:0 1px 2px #000; }
.photo-person-label a { color:inherit; text-decoration:none; }
.photo-tag-badge { position:absolute; left:8px; bottom:8px; z-index:2; border-radius:99px; padding:12px 10px; min-height:44px; background:rgba(15,32,27,.65); backdrop-filter:blur(6px); color:#fff; font-size:.72rem; text-decoration:none; }
.drive-photo-card:has(.photo-tag-badge) .drive-photo-meta { padding-bottom:60px; }
.photo-person-label:focus-within,.photo-person-label:hover { background:rgba(15,32,27,.9); }
.photo-identification #tag-picture { border-radius:16px; overflow:hidden; }
.photo-identification #tag-form { padding:1rem; margin-top:1rem; border:1px solid var(--border-soft); border-radius:18px; }
.photo-identification #tag-position-details { margin:1rem 0; }
.photo-tag-privacy { margin:0 0 1rem; }
.photo-tag-chip { display:inline-flex; gap:8px; align-items:center; margin:4px; padding:2px 4px 2px 12px; border-radius:99px; background:rgba(25,106,80,.08); font-size:.85rem; }
.photo-tag-remove { background:transparent; border:0; border-radius:50%; min-width:44px; min-height:44px; cursor:pointer; color:inherit; font-size:1.2rem; }
.photo-tag-remove:hover,.photo-tag-remove:focus-visible { background:rgba(25,106,80,.15); }
.photo-tool-menu { width:290px; max-width:100%; margin:.75rem 0; }
.photo-tool-menu > summary { cursor:pointer; width:max-content; margin:auto; border-radius:99px; background:#196a50; color:#fff; padding:12px 20px; min-height:44px; list-style:none; }
.photo-tool-menu > summary::-webkit-details-marker { display:none; }
.petal-options { display:flex; justify-content:center; gap:8px; padding:12px 0 32px; }
.petal-options > button,.petal-options > a { flex:1; min-width:0; min-height:70px; padding:10px 5px; border:1px solid rgba(25,106,80,.25); border-radius:30px; background:rgba(25,106,80,.09); color:var(--ink); text-align:center; text-decoration:none; cursor:pointer; font:inherit; font-size:.8rem; }
.petal-options > :first-child,.petal-options > :last-child { transform:translateY(20px); }
.petal-options span { display:block; }
.petal-options > :disabled { opacity:.45; cursor:not-allowed; }
.petal-options > :focus-visible,.photo-tool-menu > summary:focus-visible { outline:3px solid #b56a00; outline-offset:3px; }
#drive-duplicates-groups fieldset { border:1px solid var(--border-soft); border-radius:16px; padding:16px; margin:12px 0; }
#drive-duplicates-groups label { padding:10px; border-radius:12px; overflow-wrap:anywhere; }
#drive-duplicates-groups label:has(input:checked) { background:rgba(25,106,80,.12); }
