/* 이벤트 관리 (데모) */
.ph--admin { padding-bottom: 32px; }
.ph--admin h1 { font-size: var(--fs-h2); max-width: none; }
.ph--admin .lead { margin-top: 10px; }
.adm__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; }
.adm__tools { display: flex; gap: 8px; flex-wrap: wrap; }
.adm { padding-bottom: var(--sec); }
.adm__grid { display: grid; grid-template-columns: 280px minmax(0, 1fr) 340px; gap: 24px; align-items: start; }
.adm__list, .adm__edit, .adm__preview { min-width: 0; border-radius: var(--r-card); background: var(--white); padding: 24px; }
.adm__list { position: sticky; top: calc(var(--hd-h) + 16px); }
.adm__list h2 { font-size: 16px; margin-bottom: 12px; letter-spacing: -0.02em; }
.adm__list ul { display: grid; gap: 6px; }
.adm__row { display: grid; gap: 6px; padding: 8px; border-radius: 12px; border: 1px solid transparent; }
.adm__row.is-active { border-color: var(--court); background: #F5F7FF; }
.adm__row.is-hidden img { opacity: .4; }
.adm__pick { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 10px; align-items: center; width: 100%; text-align: left; }
.adm__pick img { width: 72px; height: 40px; object-fit: cover; border-radius: 6px; }
.adm__pick b { display: block; font-size: 14px; line-height: 1.4; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.adm__pick small { font-size: 12px; color: var(--mute); }
.adm__state { padding-left: 82px; }
.adm__state .tag { height: 22px; font-size: 12px; }

.adm__form { gap: 32px; }
.adm__form .form__set { gap: 16px; }
.adm__imgs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.adm__img { position: relative; border-radius: 10px; overflow: hidden; border: 2px solid transparent; cursor: pointer; }
.adm__img.is-on { border-color: var(--court); }
.adm__img input { position: absolute; opacity: 0; }
.adm__img:focus-within { outline: 3px solid rgba(36, 72, 255, .35); outline-offset: 2px; }
.adm__img img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.adm__upload { position: relative; }
.adm__reps { display: grid; gap: 8px; }
.adm__rep { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1fr) minmax(0, 1fr) 44px; gap: 8px; align-items: center; }
.adm__rep--one { grid-template-columns: 28px minmax(0, 1fr) 44px; }
.adm__rep--one .num { font-size: 14px; color: var(--court); text-align: center; }
.adm__del { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 8px; color: var(--mute); }
.adm__del:hover { background: #FDECEA; color: var(--error); }
.adm__del svg { width: 18px; height: 18px; }
.adm__form .form__set > .btn { justify-self: start; }
.adm__actions { display: flex; flex-wrap: wrap; gap: 8px; padding-top: 8px; border-top: 1px solid var(--line); }
.adm__danger { --fg: var(--error); }
.btn.is-armed { --bg: var(--error); --fg: var(--white); --bd: var(--error); }

.adm__preview { position: sticky; top: calc(var(--hd-h) + 16px); display: grid; gap: 12px; background: #EEF0F5; }
.adm__cap { font-size: 13px; font-weight: 700; color: var(--mute); }
.adm__preview .ev-card { pointer-events: none; }
.adm__mini { position: relative; border-radius: 16px; overflow: hidden; background: var(--ink); color: var(--white); }
.adm__mini img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .55; }
.adm__mini > div { position: relative; display: grid; gap: 6px; padding: 72px 18px 18px; background: linear-gradient(0deg, rgba(7, 11, 28, .9), transparent); }
.adm__mini h3 { font-size: 20px; line-height: 1.3; }
.adm__mini p { font-size: 13px; color: rgba(255, 255, 255, .8); }
.adm__mini ul { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.adm__mini li { display: grid; padding: 8px 10px; border-radius: 8px; background: rgba(255, 255, 255, .12); font-size: 11px; }
.adm__mini li b { font-size: 16px; color: var(--clay); }

@media (max-width: 1279px) {
  .adm__grid { grid-template-columns: minmax(0, 1fr) 320px; }
  .adm__list { grid-column: 1 / -1; position: static; }
  .adm__list ul { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
}
@media (max-width: 1023px) {
  .adm__grid { grid-template-columns: minmax(0, 1fr); }
  .adm__preview { position: static; }
}
@media (max-width: 639px) {
  .adm__list, .adm__edit, .adm__preview { padding: 18px; }
  .adm__imgs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .adm__rep { grid-template-columns: minmax(0, 1fr) 44px; }
  .adm__rep .input:nth-child(1) { grid-column: 1 / 2; }
  .adm__rep .input:nth-child(2), .adm__rep .input:nth-child(3) { grid-column: 1 / 2; }
  .adm__rep .adm__del { grid-column: 2; grid-row: 1; }
  .adm__rep { padding-bottom: 12px; border-bottom: 1px dashed var(--line); }
  .adm__rep--one { grid-template-columns: 24px minmax(0, 1fr) 44px; padding-bottom: 0; border-bottom: 0; }
  .adm__rep--one .input { grid-column: 2 / 3; grid-row: 1; }
  .adm__rep--one .adm__del { grid-column: 3; }
}
