/* 2026-11-02 구조해주개 직접 등록(apps/adoption) — 출처 표시·상태 배지·필터·내 공고.
   app.css를 고치지 않으려고(핵심 CSS 해시가 바뀌면 홈 첫 화면 최적화가 꺼진다) 구조해주개 화면에서만 따로 읽는다.
   색은 app.css 토큰만 쓴다(다크 모드는 토큰이 바꾼다). */
.adopt-src { margin: 8px 0 2px; flex-wrap: wrap; }
.adopt-more { margin: 4px 0 10px; }
.adopt-more summary { cursor: pointer; display: inline-flex; align-items: center; gap: 4px; color: var(--muted); }
.adopt-more-form { display: flex; flex-wrap: wrap; gap: 8px; align-items: flex-end; margin: 8px 0 4px; }
.adopt-more-form label { display: grid; gap: 2px; font-size: 13px; color: var(--muted); }
.adopt-more-form input, .adopt-more-form select { min-height: 36px; padding: 4px 8px; font-size: 14px; }
.adopt-strip { margin: 14px 0 6px; }
.adopt-strip .h-sm, .adopt-strip-title { margin: 0 0 4px; }
.adopt-strip-title { margin-top: 18px; }
.ac-src { display: block; font-size: 12px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ac-src.is-private, .ac-src-tag.is-private { color: var(--cond); }
.ac-src-tag { display: inline-block; padding: 2px 8px; border-radius: var(--r-pill); background: var(--bg-soft); font-size: 12px; font-weight: 700; color: var(--brand-text); }
a.adopt-card.is-ended .ac-photo img { filter: grayscale(.6); opacity: .8; }
.ac-badge.ac-state-in_progress { background: var(--cond-bg); color: var(--cond); }
.ac-badge.ac-state-done, .ac-badge.ac-state-closed { background: var(--unknown-bg); color: var(--unknown); }
.adopt-inline { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.adopt-inline select, .adopt-inline input[type=text] { min-height: 36px; padding: 4px 8px; font-size: 14px; width: auto; flex: 1 1 120px; }
.adopt-mine { display: grid; gap: 10px; }
.adopt-mine-row { border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px 12px; background: var(--surface); }
.adopt-photo-edit { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; }
.adopt-photo-edit li { display: grid; gap: 4px; justify-items: start; }
.adopt-photo-edit img { width: 96px; height: 96px; object-fit: cover; border-radius: var(--r-md); background: var(--photo-bg); }
.adopt-rules ul { padding-left: 18px; display: grid; gap: 4px; }
.adopt-report summary { cursor: pointer; display: inline-flex; align-items: center; gap: 4px; color: var(--muted); }
.btn.is-disabled { opacity: .55; cursor: not-allowed; }
