/* ==========================================================================
   토스 스타일 관리자 리스킨 — 대시보드(홈 제외)만 대상.
   style.css 뒤에 로드해 오버라이드. 홈(body.home-mode)은 건드리지 않음.
   ========================================================================== */

body:not(.home-mode){ background:#f2f4f6; }
body:not(.home-mode) .main-content{ background:#f2f4f6; padding:26px clamp(18px,3vw,40px) 60px; }

/* 섹션 헤더 — 잔선 제거, 큰 볼드 제목 */
body:not(.home-mode) .section-header{ border:none; padding:2px 0 6px; margin-bottom:18px; }
body:not(.home-mode) .section-header::before{ display:none !important; }
body:not(.home-mode) .section-header h2{ font-size:1.55rem; font-weight:800; color:#191f28; letter-spacing:-.03em; }
body:not(.home-mode) .section-header p{ color:#8b95a1; font-size:.92rem; }
body:not(.home-mode) .tab-header h2{ font-size:1.55rem; font-weight:800; color:#191f28; letter-spacing:-.03em; }
body:not(.home-mode) .tab-header p{ color:#8b95a1; }

/* 카드 — 흰색, 큰 라운드, 잔잔한 그림자 */
body:not(.home-mode) .card{
  background:#fff; border:1px solid #edf0f2; border-radius:20px;
  box-shadow:0 1px 3px rgba(0,0,0,.03);
}
body:not(.home-mode) .card-header{ border-bottom:1px solid #f4f6f8; }
body:not(.home-mode) .card-header h3{ color:#191f28; font-weight:800; letter-spacing:-.02em; }

/* KPI 타일 — 큰 숫자 + 흐린 라벨 */
body:not(.home-mode) .dash-kpi-grid{ gap:14px; }
body:not(.home-mode) .dash-kpi{
  background:#fff; border:1px solid #edf0f2; border-radius:18px;
  box-shadow:0 1px 3px rgba(0,0,0,.03); padding:20px 22px;
}
body:not(.home-mode) .dash-kpi.accent{ background:#eef4ff; border-color:#dbe8ff; }
body:not(.home-mode) .dash-kpi .kpi-ic{ font-size:1.05rem; opacity:.85; }
body:not(.home-mode) .dash-kpi .kpi-val{ font-size:2rem; font-weight:800; color:#191f28; letter-spacing:-.02em; }
body:not(.home-mode) .dash-kpi .kpi-lbl{ color:#8b95a1; font-weight:600; }

/* 빠른 이동 카드 */
body:not(.home-mode) .dash-quick-card{
  background:#fff; border:1px solid #edf0f2; border-radius:16px;
  box-shadow:0 1px 3px rgba(0,0,0,.03); transition:all .15s ease;
}
body:not(.home-mode) .dash-quick-card:hover{ border-color:#3182f6; box-shadow:0 6px 18px rgba(49,130,246,.12); transform:translateY(-2px); }
body:not(.home-mode) .dash-quick-card .hq-label{ color:#191f28; }
body:not(.home-mode) .dash-quick-card .hq-desc{ color:#8b95a1; }

/* 버튼 — 토스 블루 pill */
body:not(.home-mode) .btn-primary{ background:#3182f6; border:none; border-radius:12px; box-shadow:none; font-weight:700; }
body:not(.home-mode) .btn-primary:hover{ background:#1b64da; transform:none; box-shadow:none; }
body:not(.home-mode) .btn-secondary{ background:#f2f4f6; color:#4e5968; border:1px solid #e5e8eb; border-radius:12px; box-shadow:none; }
body:not(.home-mode) .btn-secondary:hover{ background:#e8ebee; }

/* 테이블 — 잔선, 은은한 hover */
body:not(.home-mode) .data-table th{
  background:transparent; color:#8b95a1; font-weight:600; font-size:.8rem;
  border-bottom:1px solid #edf0f2; text-transform:none; letter-spacing:0;
}
body:not(.home-mode) .data-table td{ border-bottom:1px solid #f4f6f8; color:#333d4b; }
body:not(.home-mode) .data-table tr:hover td{ background:#fafbfc; }

/* 통계 카드 */
body:not(.home-mode) .stat-card{ background:#fff; border:1px solid #edf0f2; border-radius:18px; box-shadow:0 1px 3px rgba(0,0,0,.03); }
body:not(.home-mode) .stat-card .stat-value{ color:#191f28; font-weight:800; }
body:not(.home-mode) .stat-card .stat-label{ color:#8b95a1; }

/* 폼 인풋 — 라운드 + 파란 포커스 링 */
body:not(.home-mode) .form-group input,
body:not(.home-mode) .form-group select,
body:not(.home-mode) .form-group textarea{
  border:1px solid #e5e8eb; border-radius:12px; background:#fff;
}
body:not(.home-mode) .form-group input:focus,
body:not(.home-mode) .form-group select:focus,
body:not(.home-mode) .form-group textarea:focus{
  border-color:#3182f6; box-shadow:0 0 0 3px rgba(49,130,246,.12); outline:none;
}

/* ===== 풀 토스: 밝은 사이드바 ===== */
body:not(.home-mode) .main-header{ background:#fff !important; color:#4e5968; border-right:1px solid #edf0f2; overflow:hidden; }
/* 메뉴가 많아 넘칠 때 끝까지 스크롤되게 (flex 스크롤: min-height:0 필수) */
body:not(.home-mode) .main-nav{ overflow-y:auto; min-height:0; scrollbar-width:thin; padding-bottom:8px; }
body:not(.home-mode) .main-nav::-webkit-scrollbar{ width:6px; }
body:not(.home-mode) .main-nav::-webkit-scrollbar-thumb{ background:#dfe3e8; border-radius:3px; }
body:not(.home-mode) .logo-text{ color:#191f28 !important; }
body:not(.home-mode) .logo-sub{ color:#8b95a1 !important; }

/* 로그인 사용자 카드 — 밝은 카드 */
body:not(.home-mode) .current-user-card{ background:#f7f8fa !important; border:1px solid #edf0f2 !important; color:#191f28 !important; }
body:not(.home-mode) .current-user-card .name,
body:not(.home-mode) .current-user-card .title,
body:not(.home-mode) .current-user-card strong{ color:#191f28 !important; }

/* 네비 항목 — 어두운 글자, 연한 hover, 연파랑 활성 */
body:not(.home-mode) .nav-item{ border-radius:12px; color:#4e5968; }
body:not(.home-mode) .nav-item:hover{ background:#f2f4f6; color:#191f28; }
body:not(.home-mode) .nav-item.active{ background:#eaf2fe !important; color:#3182f6 !important; font-weight:700; }
body:not(.home-mode) .nav-item.nav-item-ext{ color:#8b95a1; }

/* 로그아웃 버튼 — 밝은 사이드바에서 또렷하게 */
body:not(.home-mode) #logout-btn{ background:#f2f4f6 !important; color:#4e5968 !important; border:1px solid #e5e8eb !important; }
body:not(.home-mode) #logout-btn:hover{ background:#e8ebee !important; color:#191f28 !important; }

/* 하단 상태 */
body:not(.home-mode) .header-footer{ color:#8b95a1; border-top:1px solid #f2f4f6; }

/* stat 카드 — 아이콘 배경 중립화, 숫자 강조 */
body:not(.home-mode) .stat-card{ padding:20px 22px; border-radius:18px; }
body:not(.home-mode) .stat-icon{ background:#f2f4f6 !important; border-radius:14px; }
body:not(.home-mode) .stat-value{ font-size:1.9rem; color:#191f28; letter-spacing:-.02em; }
body:not(.home-mode) .stat-label{ color:#8b95a1; }

/* stat 카드 — 아이콘 배경 중립화, 숫자 강조 */
body:not(.home-mode) .stat-card{ padding:20px 22px; border-radius:18px; }
body:not(.home-mode) .stat-icon{ background:#f2f4f6 !important; border-radius:14px; }
body:not(.home-mode) .stat-value{ font-size:1.9rem; color:#191f28; letter-spacing:-.02em; }
body:not(.home-mode) .stat-label{ color:#8b95a1; }

/* ===== 카드 내부 여백 (style.css 에 .card-body 규칙이 없어 라벨이 잘리던 문제) ===== */
body:not(.home-mode) .card-body{ padding:20px 22px 22px; }
body:not(.home-mode) .card-header{ padding:16px 22px; }
/* 카드 안 첫 요소의 margin-collapse 방지 */
body:not(.home-mode) .card-body > :first-child{ margin-top:0; }
body:not(.home-mode) .card-body > :last-child{ margin-bottom:0; }

/* 관리자 화면 인라인 폼 줄 — .form-row(2칸 그리드) 대신 유연한 flex 줄 */
body:not(.home-mode) .adm-row{
  display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end; margin-bottom:12px;
}
body:not(.home-mode) .adm-row .form-group{ flex:1 1 180px; margin-bottom:0; min-width:0; }
body:not(.home-mode) .adm-row .btn{ flex:0 0 auto; height:44px; }

/* ===== 지금 처리하실 것 (승인 게이트 카드) — 여백 넉넉하게 ===== */
body:not(.home-mode) .todo-card{
  background:#fff; border:1px solid #edf0f2; border-radius:20px;
  box-shadow:0 1px 3px rgba(0,0,0,.03); padding:22px 24px 24px; margin-bottom:22px;
}
body:not(.home-mode) .todo-card.is-clear{ background:#f8fafb; }
body:not(.home-mode) .todo-head{ display:flex; align-items:center; gap:12px; margin-bottom:6px; }
body:not(.home-mode) .todo-head h3{ margin:0; font-size:1.12rem; font-weight:800; color:#191f28; letter-spacing:-.02em; }
body:not(.home-mode) .todo-count{
  background:#fff2f0; color:#e2542a; font-size:.78rem; font-weight:800;
  padding:4px 11px; border-radius:100px;
}
body:not(.home-mode) .todo-empty{ margin:10px 0 0; color:#8b95a1; font-size:.92rem; }

body:not(.home-mode) .todo-group{ margin-top:18px; }
body:not(.home-mode) .todo-group-t{
  font-size:.82rem; font-weight:700; color:#8b95a1; letter-spacing:.01em;
  padding-bottom:10px; border-bottom:1px solid #f2f4f6; margin-bottom:4px;
}
body:not(.home-mode) .todo-group-t b{ color:#3182f6; }

body:not(.home-mode) .todo-item{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:14px 2px; border-bottom:1px solid #f7f8fa; flex-wrap:wrap;
}
body:not(.home-mode) .todo-item:last-child{ border-bottom:none; }
body:not(.home-mode) .todo-info{ min-width:0; flex:1 1 220px; }
body:not(.home-mode) .todo-car{ font-size:1rem; font-weight:700; color:#191f28; letter-spacing:-.01em; }
body:not(.home-mode) .todo-cust{ font-weight:500; color:#4e5968; margin-left:8px; font-size:.94rem; }
body:not(.home-mode) .todo-meta{ font-size:.8rem; color:#8b95a1; margin-top:5px; }
body:not(.home-mode) .todo-actions{ display:flex; gap:8px; flex:0 0 auto; }
body:not(.home-mode) .todo-actions .btn{ padding:8px 16px; }
body:not(.home-mode) .todo-badge{
  font-size:.82rem; font-weight:700; color:#4e5968;
  background:#f2f4f6; padding:7px 14px; border-radius:100px; white-space:nowrap;
}
@media(max-width:640px){
  body:not(.home-mode) .todo-item{ align-items:flex-start; }
  body:not(.home-mode) .todo-actions{ width:100%; }
  body:not(.home-mode) .todo-actions .btn{ flex:1; }
}

/* ===== 폼 카드 여백 (form-card 는 padding:0 이라 입력칸이 카드 모서리에 붙었다) ===== */
body:not(.home-mode) .card.form-card{ padding:24px 26px 26px; }
body:not(.home-mode) .card.form-card > form{ margin:0; }

/* 섹션 간격 — margin 2rem + padding 2rem 이 겹쳐 4rem 죽은 공백이 생기던 것 정리 */
body:not(.home-mode) .form-section{
  margin-bottom:26px; padding-bottom:26px; border-bottom:1px solid #f2f4f6;
}
body:not(.home-mode) .form-section:last-of-type{ margin-bottom:14px; padding-bottom:0; border-bottom:none; }

/* 소제목 — 자체 밑줄 제거(구분선과 겹쳐 보이던 문제), 토스 톤으로 */
body:not(.home-mode) .form-section h4{
  font-size:.95rem; font-weight:800; color:#191f28; letter-spacing:-.02em;
  margin:0 0 16px; padding-bottom:0; border-bottom:none;
}

/* 폼 하단 버튼 숨통 */
body:not(.home-mode) .card.form-card .btn[type="submit"],
body:not(.home-mode) .card.form-card .form-actions{ margin-top:6px; }
body:not(.home-mode) .card.form-card .btn[type="submit"]{ padding:13px 26px; font-size:.95rem; }

/* 빈 카드가 자리만 차지하지 않게 */
body:not(.home-mode) .tab-panel > .card:empty{ display:none; }

/* ===== 게스트 사이드바 카드 — 밝은 사이드바에서 흰글씨라 안 보이던 문제 ===== */
body:not(.home-mode) .current-user-card.is-guest{ background:transparent !important; border:none !important; }
body:not(.home-mode) .current-user-card.is-guest,
body:not(.home-mode) .current-user-card.is-guest *{ color:#4e5968 !important; }
body:not(.home-mode) .current-user-card.is-guest strong,
body:not(.home-mode) .current-user-card.is-guest .guest-title{ color:#191f28 !important; font-weight:700; }
body:not(.home-mode) .current-user-card.is-guest .guest-sub,
body:not(.home-mode) .current-user-card.is-guest small{ color:#8b95a1 !important; }

/* ===== 문의 사진 첨부 ===== */
body:not(.home-mode) .inq-photo-box{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
body:not(.home-mode) .inq-photo-list{ display:flex; gap:10px; flex-wrap:wrap; margin-top:12px; }
body:not(.home-mode) .inq-thumb{ position:relative; width:92px; height:92px; border-radius:12px; overflow:hidden; border:1px solid #e5e8eb; }
body:not(.home-mode) .inq-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
body:not(.home-mode) .inq-thumb-x{
  position:absolute; top:4px; right:4px; width:22px; height:22px; border-radius:50%;
  background:rgba(0,0,0,.6); color:#fff; border:none; cursor:pointer; font-size:15px; line-height:1;
}
/* 접수된 문의 목록의 사진 */
body:not(.home-mode) .inq-row-photos{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
body:not(.home-mode) .inq-row-photos a{ display:block; width:76px; height:76px; border-radius:10px; overflow:hidden; border:1px solid #e5e8eb; }
body:not(.home-mode) .inq-row-photos img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .15s; }
body:not(.home-mode) .inq-row-photos a:hover img{ transform:scale(1.06); }

/* 섹션 마지막 줄의 잔여 여백 제거 (차종 아래 뜨던 빈 공간) */
body:not(.home-mode) .form-section > .form-row:last-child,
body:not(.home-mode) .form-section > .form-group:last-child{ margin-bottom:0; }

/* ===== 회원 관리 — 여유 있게 ===== */
body:not(.home-mode) #tab-admin-users .admin-stats-grid{ gap:16px; margin-bottom:22px; }
/* 카드 직계 자식들이 모서리에 붙지 않게 */
body:not(.home-mode) #tab-admin-users .card > .member-table-controls{
  padding:20px 24px 16px; margin-bottom:0; border-bottom:1px solid #f2f4f6;
}
body:not(.home-mode) #tab-admin-users .card > .table-responsive{ padding:6px 24px 22px; }
body:not(.home-mode) .member-table-controls{ gap:14px; }
body:not(.home-mode) .member-table-controls .filter-group{ gap:8px; flex-wrap:wrap; }
body:not(.home-mode) .member-filter-btn{
  padding:9px 16px; border-radius:10px; font-size:.84rem;
  border:1px solid #e5e8eb; background:#fff; color:#4e5968;
}
body:not(.home-mode) .member-filter-btn:hover{ background:#f7f8fa; }
body:not(.home-mode) .member-filter-btn.active{ background:#3182f6; border-color:#3182f6; color:#fff; }
/* 표 행에 숨통 */
body:not(.home-mode) .data-table th{ padding:14px 12px; }
body:not(.home-mode) .data-table td{ padding:16px 12px; }
/* 검색·등록 줄 */
body:not(.home-mode) #member-search-input{
  border:1px solid #e5e8eb; border-radius:12px; padding:11px 14px; min-width:220px;
}

/* ===== 회원가입 모달이 로그인 화면(z-index:9999) 뒤로 숨던 문제 ===== */
#signup-modal{ z-index:10050 !important; }
#signup-modal .modal-content{ max-height:88vh; overflow-y:auto; }
/* 회원가입 열면 로그인 화면은 잠시 내려둔다 */
body.signup-open #login-screen{ z-index:9000 !important; }
