/* Generated from index.html. Source of truth: index.html */

/* ============================================================
   [v21] 홈 - 임도 사진 컨테스트 홍보 (히든 카드)
   ============================================================ */
.ct-home{
  position:relative;background:#0f1814;
  padding:80px 0 90px;overflow:hidden;
}
.ct-home::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 80% 30%, rgba(255,224,102,.12), transparent 50%),
    radial-gradient(circle at 20% 70%, rgba(61,170,110,.18), transparent 50%),
    linear-gradient(180deg, #0f1814 0%, #1a2620 100%);
  pointer-events:none;
}
.ct-home::after{
  content:"📸 🏆 ❤️";position:absolute;bottom:-20px;right:30px;
  font-size:140px;opacity:.05;letter-spacing:24px;pointer-events:none;
}
.ct-home .container{position:relative;z-index:1}

.ct-home-head{
  text-align:center;margin-bottom:36px;
}
.ct-home-head .eyebrow-ct{
  display:inline-block;
  background:rgba(255,224,102,.20);color:#FFE066;
  padding:7px 16px;border-radius:8px;
  font-size:12.5px;font-weight:800;letter-spacing:1.5px;
  margin-bottom:16px;border:1px solid rgba(255,224,102,.35);
}
.ct-home-head h2{
  font-size:38px;line-height:1.3;letter-spacing:-1px;
  color:#fff;font-weight:900;margin-bottom:10px;
}
.ct-home-head h2 em{font-style:normal;color:#FFE066}
.ct-home-head p{
  font-size:16px;color:rgba(255,255,255,.78);line-height:1.7;
  max-width:680px;margin:0 auto;
}

.ct-home-body{
  display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:center;
  margin-top:30px;
}

/* 좌측: 우승작 갤러리 미리보기 (4개) */
.ct-home-gallery{
  display:grid;grid-template-columns:repeat(2,1fr);gap:14px;
}
.ct-home-photo{
  position:relative;aspect-ratio:1/1;border-radius:14px;overflow:hidden;
  cursor:pointer;transition:transform .25s;
  border:2px solid rgba(255,255,255,.08);
}
.ct-home-photo:hover{transform:scale(1.03)}
.ct-home-photo:nth-child(1){
  background:linear-gradient(135deg,#88D4A8 0%,#1B4332 100%);
}
.ct-home-photo:nth-child(2){
  background:linear-gradient(135deg,#FFB07F 0%,#D97706 100%);
}
.ct-home-photo:nth-child(3){
  background:linear-gradient(135deg,#A5C2FF 0%,#1E3A8A 100%);
}
.ct-home-photo:nth-child(4){
  background:linear-gradient(135deg,#FFD93D 0%,#FFA500 100%);
}
.ct-home-photo .ct-h-ico{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:72px;line-height:1;opacity:.85;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.20));
}
.ct-home-photo .ct-h-month{
  position:absolute;top:10px;left:10px;
  background:rgba(0,0,0,.60);color:#FFE066;
  padding:3px 9px;border-radius:5px;font-size:11px;font-weight:800;
  letter-spacing:.5px;backdrop-filter:blur(4px);
}
.ct-home-photo .ct-h-trophy{
  position:absolute;top:8px;right:10px;font-size:22px;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.30));
}
.ct-home-photo .ct-h-caption{
  position:absolute;bottom:0;left:0;right:0;
  background:linear-gradient(180deg, transparent 0%, rgba(0,0,0,.80) 100%);
  padding:24px 14px 12px;color:#fff;
}
.ct-home-photo .ct-h-caption .t{
  font-size:12.5px;font-weight:800;line-height:1.4;margin-bottom:3px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.ct-home-photo .ct-h-caption .a{
  font-size:11px;color:rgba(255,255,255,.80);font-weight:600;
}

/* 우측: 사은품 + CTA */
.ct-home-cta{display:flex;flex-direction:column;gap:16px}
.ct-home-cta .ct-prize-box{
  background:linear-gradient(135deg,#FFD93D 0%,#f5a623 100%);
  border-radius:14px;padding:22px 24px;color:#1B4332;
  box-shadow:0 12px 28px rgba(245,166,35,.30);
  position:relative;overflow:hidden;
}
.ct-home-cta .ct-prize-box::before{
  content:"🎁";position:absolute;top:-10px;right:-10px;
  font-size:80px;opacity:.18;line-height:1;
}
.ct-home-cta .ct-prize-box .ct-prize-eye{
  font-size:11.5px;font-weight:800;letter-spacing:1px;
  background:rgba(27,67,50,.20);padding:4px 10px;border-radius:5px;
  display:inline-block;margin-bottom:8px;
}
.ct-home-cta .ct-prize-box h3{
  font-size:24px;font-weight:900;margin-bottom:6px;line-height:1.3;
}
.ct-home-cta .ct-prize-box h3 em{font-style:normal;color:#7a1f1f}
.ct-home-cta .ct-prize-box p{
  font-size:13.5px;line-height:1.65;color:#3a2a00;font-weight:600;margin:0;
}

.ct-home-cta .ct-info-list{
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);
  border-radius:14px;padding:18px 22px;backdrop-filter:blur(6px);
  list-style:none;
}
.ct-home-cta .ct-info-list li{
  font-size:13.5px;color:rgba(255,255,255,.92);line-height:1.7;
  padding-left:22px;position:relative;
}
.ct-home-cta .ct-info-list li::before{
  content:"✓";position:absolute;left:0;color:#FFE066;font-weight:900;font-size:14px;
}
.ct-home-cta .ct-info-list li strong{color:#FFE066;font-weight:800}

.ct-home-cta .ct-act-row{display:flex;gap:10px}
.ct-home-cta .ct-btn{
  flex:1;padding:14px 20px;border-radius:10px;
  font-weight:800;font-size:14px;text-align:center;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  border:none;font-family:inherit;transition:all .2s;text-decoration:none;
}
.ct-home-cta .ct-btn-primary{
  background:#FFE066;color:#1B4332;
  box-shadow:0 6px 18px rgba(255,224,102,.30);
}
.ct-home-cta .ct-btn-primary:hover{background:#FFD93D;transform:translateY(-2px)}
.ct-home-cta .ct-btn-outline{
  background:rgba(255,255,255,.08);color:#fff;
  border:1.5px solid rgba(255,255,255,.30);
}
.ct-home-cta .ct-btn-outline:hover{background:rgba(255,255,255,.18)}

@media (max-width:900px){
  .ct-home{padding:60px 0 70px}
  .ct-home-head h2{font-size:26px}
  .ct-home-head p{font-size:14.5px}
  .ct-home-body{grid-template-columns:1fr;gap:24px}
  .ct-home-gallery{grid-template-columns:repeat(2,1fr);gap:10px}
  .ct-home-photo .ct-h-ico{font-size:54px}
  .ct-home-cta .ct-act-row{flex-direction:column}
}

/* ============================================================
   [통합 v1] 관리자 모드 (Admin Shell)
   - body.admin-mode 적용 시 v22 모든 콘텐츠 숨김
   - #admin-shell 만 표시
   - admin HTML은 iframe 안에서 격리 실행 → CSS/JS 충돌 0
   ============================================================ */
#admin-shell{
  display:none;
  position:fixed; inset:0;
  z-index: 9999;
  background:#f5f7f4;
}
body.admin-mode #admin-shell{ display:block; }
body.admin-mode > *:not(#admin-shell):not(script){ display:none !important; }
body.admin-mode{ overflow:hidden; }

#admin-shell iframe{
  width:100%; height:100%;
  border:0; display:block;
  background:#f5f7f4;
}

/* 관리자 모드 우상단 "← 홈페이지로" 버튼 */
.admin-exit-btn{
  position:fixed; top:14px; right:24px;
  z-index:10000;
  background:rgba(255,255,255,0.95);
  color:#1f4128;
  border:1.5px solid #2d5a3d;
  padding:7px 16px;
  border-radius:8px;
  font-size:13px; font-weight:600;
  cursor:pointer;
  box-shadow:0 4px 12px rgba(0,0,0,.15);
  font-family:'Pretendard',-apple-system,BlinkMacSystemFont,sans-serif;
  transition:all .15s;
}
.admin-exit-btn:hover{
  background:#2d5a3d; color:#fff;
  transform:translateY(-1px);
}
@media (max-width:768px){
  .admin-exit-btn{ top:10px; right:12px; padding:6px 12px; font-size:12px; }
}

/* 푸터 관리자 진입 링크 */
.admin-entry-link{
  display:inline-block;
  margin-top:10px;
  font-size:11px;
  color:#555 !important;
  opacity:.55;
  letter-spacing:.5px;
  transition:opacity .2s;
}
.admin-entry-link:hover{ opacity:1; color:#95D5B2 !important; }
