@charset "utf-8";

/* ==========================================================
   BOARD SKIN (LIST / WRITE / COMMENT)
   HARD REDESIGN (Noir Luxe / Frame / Strip / Cinematic)
   - Selector 유지
   - 폼/레이아웃 값(패딩/반경/기본 구조)은 유지
   - “다른 사이트” 체감: 프레임/스트립/칩/오버레이
========================================================== */

:root{
  --nl-accent:#ff2b55;    /* crimson */
  --nl-accent2:#ffb000;   /* amber */
  --nl-text:#ffffff;
  --nl-text1: rgba(255,255,255,0.82);
  --nl-text2: rgba(255,255,255,0.58);
  --nl-line: rgba(255,255,255,0.14);
  --nl-shadow: 0 18px 55px rgba(0,0,0,0.80);
  --nl-shadow2: 0 28px 90px rgba(0,0,0,0.90);
}

/* ==========================================================
   공통 버튼: 캡슐 + 하단 스트립 + 글로우
========================================================== */
#bo_gall a.btn_b01,
#bo_v a.btn_b01,
#bo_w .btn_submit{
    position:relative;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.02)),
      rgba(0,0,0,0.42);
    border:1px solid rgba(255,255,255,0.16);
    color:#fff;
    border-radius:999px;
    padding:8px 16px;     /* 유지 */
    font-weight:900;
    letter-spacing:-0.01em;
    transition:.16s ease;
    box-shadow: 0 14px 36px rgba(0,0,0,0.70);
    backdrop-filter:none;
    overflow:hidden;
}

/* 하단 럭셔리 스트립 */
#bo_gall a.btn_b01::after,
#bo_v a.btn_b01::after,
#bo_w .btn_submit::after{
    content:"";
    position:absolute;
    left:14px; right:14px; bottom:6px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,
      rgba(255,43,85,0.0),
      rgba(255,43,85,0.90),
      rgba(255,176,0,0.55),
      rgba(255,43,85,0.0)
    );
    opacity:.72;
    pointer-events:none;
}

#bo_gall a.btn_b01:hover,
#bo_v a.btn_b01:hover,
#bo_w .btn_submit:hover{
    background:linear-gradient(90deg, rgba(255,43,85,0.95), rgba(255,176,0,0.72));
    border-color: rgba(255,43,85,0.22);
    box-shadow: 0 18px 52px rgba(0,0,0,0.82), 0 0 22px rgba(255,43,85,0.22);
    transform: translateY(-1px);
}
#bo_gall a.btn_b01:active,
#bo_v a.btn_b01:active,
#bo_w .btn_submit:active{
    transform: translateY(0);
    box-shadow: 0 12px 30px rgba(0,0,0,0.65);
}

/* 관리자 버튼: 경고/권한 느낌 강하게 */
.btn_admin{
    background:linear-gradient(90deg, rgba(255,43,85,0.98), rgba(255,176,0,0.85));
    color:#fff !important;
    font-weight:950;
    border:1px solid rgba(255,43,85,0.25);
    box-shadow: 0 18px 55px rgba(0,0,0,0.80), 0 0 26px rgba(255,43,85,0.20);
}

/* =========================
   카테고리: 박스 → “패널 + 상단 하이라이트 라인”
========================= */
#bo_cate{
    position:relative;
    background:
      radial-gradient(720px 220px at 18% 0%, rgba(255,43,85,0.18), transparent 62%),
      radial-gradient(720px 220px at 88% 0%, rgba(255,176,0,0.12), transparent 62%),
      rgba(0,0,0,0.44);
    border:1px solid rgba(255,255,255,0.16);
    border-radius:14px;
    padding:10px; /* 유지 */
    box-shadow: var(--nl-shadow);
    overflow:hidden;
}
#bo_cate::before{
    content:"";
    position:absolute;
    left:0; right:0; top:0;
    height:1px;
    background:linear-gradient(90deg,
      transparent,
      rgba(255,43,85,0.55),
      rgba(255,176,0,0.35),
      transparent
    );
    opacity:.95;
    pointer-events:none;
}

#bo_cate a{
    color:rgba(255,255,255,0.78);
    border-radius:999px;
    padding:6px 14px; /* 유지 */
    font-weight:900;
    transition:.14s ease;
    background:rgba(255,255,255,0.03);
    border:1px solid rgba(255,255,255,0.10);
}
#bo_cate a:hover,
#bo_cate #bo_cate_on{
    background:linear-gradient(90deg, rgba(255,43,85,0.92), rgba(255,176,0,0.62));
    color:#fff;
    border-color: rgba(255,43,85,0.18);
    box-shadow: 0 12px 30px rgba(0,0,0,0.72), 0 0 18px rgba(255,43,85,0.18);
}

/* =========================
   갤러리 카드: 프레임 + 하단 스트립 + 썸네일 오버레이
========================= */
#bo_gall .gall_box{
    position:relative;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02)),
      rgba(0,0,0,0.44);
    border:1px solid rgba(255,255,255,0.16);
    border-radius:18px;
    overflow:hidden;
    box-shadow:var(--nl-shadow);
    transition:.18s ease;
}

/* 안쪽 프레임 */
#bo_gall .gall_box::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:18px;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08);
    pointer-events:none;
}

/* 카드 하단 스트립 */
#bo_gall .gall_box::after{
    content:"";
    position:absolute;
    left:14px; right:14px; bottom:10px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,
      rgba(255,43,85,0.0),
      rgba(255,43,85,0.88),
      rgba(255,176,0,0.50),
      rgba(255,43,85,0.0)
    );
    opacity:.55;
    pointer-events:none;
}

#bo_gall .gall_box:hover{
    transform:translateY(-6px);
    box-shadow:var(--nl-shadow2), 0 0 32px rgba(255,43,85,0.18);
    border-color: rgba(255,43,85,0.22);
}

/* 썸네일 */
#bo_gall .gall_img{
    position:relative;
    border:0;
}
/* 드라마틱 오버레이(완전 다른 무드) */
#bo_gall .gall_img::after{
    content:"";
    position:absolute;
    inset:0;
    background:
      radial-gradient(520px 180px at 50% 0%, rgba(255,43,85,0.14), transparent 62%),
      linear-gradient(180deg, rgba(0,0,0,0.05), rgba(0,0,0,0.60));
    opacity:.95;
    pointer-events:none;
}
#bo_gall .gall_img img{
    width:100%;
    transition:transform .28s ease, filter .28s ease;
    filter:contrast(1.14) saturate(1.10);
}
#bo_gall .gall_box:hover .gall_img img{
    transform:scale(1.10);
    filter:contrast(1.20) saturate(1.16);
}

/* 제목 */
#bo_gall .bo_tit{
    margin:12px; /* 유지 */
    font-size:14px;
    font-weight:950;
    color:rgba(255,255,255,0.95);
    letter-spacing:-0.02em;
    text-shadow: 0 12px 26px rgba(0,0,0,0.70);
}

/* =========================
   댓글: 카드화 + 스트립
========================= */
#bo_vc .cmt_contents{
    position:relative;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02)),
      rgba(0,0,0,0.42);
    border:1px solid rgba(255,255,255,0.16);
    border-radius:14px;
    color:rgba(255,255,255,0.78);
    box-shadow: 0 16px 48px rgba(0,0,0,0.82);
    overflow:hidden;
}
#bo_vc .cmt_contents::after{
    content:"";
    position:absolute;
    left:12px; right:12px; bottom:10px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,
      rgba(255,43,85,0.0),
      rgba(255,43,85,0.72),
      rgba(255,176,0,0.36),
      rgba(255,43,85,0.0)
    );
    opacity:.45;
    pointer-events:none;
}

/* 댓글 입력 */
.bo_vc_w textarea{
    background:rgba(0,0,0,0.55);
    border:1px solid rgba(255,255,255,0.16);
    color:#fff;
    border-radius:14px;
    box-shadow: inset 0 1px 1px rgba(0,0,0,0.45);
}
.bo_vc_w textarea:focus{
    outline:none;
    border-color: rgba(255,43,85,0.55);
    box-shadow: 0 0 0 3px rgba(255,43,85,0.18), inset 0 1px 1px rgba(0,0,0,0.45);
}
