/* =========================================================
   Damoim79.com - Season2 Dark UI (SEO-safe)
   File: css/season2.css
   ========================================================= */

/* Core colors */
:root{
  --s2-bg:#0f1115;
  --s2-bg2:#0b0d11;
  --s2-card:#161a22;
  --s2-card2:#121621;
  --s2-border:rgba(255,255,255,.08);
  --s2-border2:rgba(255,255,255,.12);
  --s2-text:#e8ebf2;
  --s2-muted:#a7b0bf;

  --s2-accent:#fd6f22;  /* brand accent */
  --s2-accent2:#ff3b3b;
  --s2-good:#3ddc84;
  --s2-warn:#ffb020;

  --s2-radius:14px;
  --s2-shadow:0 12px 36px rgba(0,0,0,.35);
}

/* Global */
html, body{
  background:var(--s2-bg) !important;
  color:var(--s2-text);
}
a{ color:inherit; }
a:hover{ color:var(--s2-accent); text-decoration:none; }

.wrapper.wided,
.wrapper.boxed{ background:transparent !important; }

.nt-container, .nt-container-wide{
  max-width: 1500px;
}

/* Remove bright legacy bars on desktop */
@media (min-width: 992px){
  #nt_lnb{ display:none !important; }
  #header_pc{ display:none !important; }
}

/* Menu wrap -> top dark bar */
#nt_menu_wrap{
  position:sticky;
  top:0;
  z-index:1100;
  background:linear-gradient(180deg, #141824 0%, #0f121b 100%) !important;
  border-bottom:1px solid var(--s2-border);
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}

/* PC menu bar */
#nt_menu{
  background:transparent !important;
}
#nt_menu .nt-container{ padding:10px 12px; }
#nt_menu .d-flex{ align-items:center; gap:10px; }

/* Brand */
#nt_menu .me-brand{
  display:flex;
  align-items:center;
  gap:10px;
  padding-right:10px;
  border-right:1px solid var(--s2-border);
  margin-right:6px;
}
#nt_menu .me-brand a{ display:flex; align-items:center; gap:10px; }
#nt_menu .me-brand .brand-dot{
  width:12px; height:12px; border-radius:3px;
  background:linear-gradient(135deg, var(--s2-accent), var(--s2-accent2));
  box-shadow:0 6px 16px rgba(253,111,34,.25);
}
#nt_menu .me-brand img{
  height:22px; width:auto;
  filter:brightness(0) invert(1);
  opacity:.95;
}
#nt_menu .me-brand .brand-text{
  display:flex; flex-direction:column; line-height:1.05;
}
#nt_menu .me-brand .brand-title{
  font-weight:900;
  letter-spacing:-.02em;
  font-size:14px;
}
#nt_menu .me-brand .brand-sub{
  font-size:11px;
  color:var(--s2-muted);
  margin-top:2px;
}

/* Main menu items */
#nt_menu .me-a{
  color:var(--s2-text) !important;
  background:transparent !important;
  border:1px solid transparent;
  border-radius:999px;
  padding:8px 12px;
  font-weight:700;
  opacity:.95;
}
#nt_menu .me-a i{ opacity:.9; }
#nt_menu .me-li.on > a .me-a,
#nt_menu .me-li > a:hover .me-a{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.10);
  box-shadow:0 8px 18px rgba(0,0,0,.35);
  transform:translateY(-1px);
}

/* Right actions */
#nt_menu .me-actions{
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
}
#nt_menu .me-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:34px;
  padding:0 12px;
  border-radius:999px;
  font-weight:900;
  font-size:12px;
  border:1px solid var(--s2-border);
  background:rgba(255,255,255,.04);
}
#nt_menu .me-actions a:hover{
  background:rgba(255,255,255,.08);
  border-color:var(--s2-border2);
}
#nt_menu .me-actions .btn-accent{
  border:none;
  background:linear-gradient(135deg, var(--s2-accent), var(--s2-accent2));
  box-shadow:0 10px 22px rgba(253,111,34,.22);
}
#nt_menu .me-actions .btn-accent:hover{ filter:brightness(1.05); }

/* Mobile menu: keep, but dark */
#nt_menu_mobile > .bg-primary{
  background:linear-gradient(180deg, #141824 0%, #0f121b 100%) !important;
  border-bottom:1px solid var(--s2-border);
}
#nt_menu_mobile #mobile_nav a{
  color:var(--s2-text) !important;
  opacity:.92;
}
#nt_menu_mobile #mobile_nav a.on,
#nt_menu_mobile #mobile_nav a:hover{
  background:rgba(255,255,255,.10);
  opacity:1;
}

/* Body spacing */
#nt_body{ padding-top:16px; }

/* Cards / blocks */
.tg-s2-card,
.index-card-outer{
  background:linear-gradient(180deg, var(--s2-card) 0%, var(--s2-card2) 100%) !important;
  border:1px solid var(--s2-border);
  border-radius:var(--s2-radius);
  box-shadow:var(--s2-shadow);
  overflow:hidden;
}
.tg-s2-card .tg-s2-card-hd,
.index-card-header{
  background:transparent !important;
  border-bottom:1px solid var(--s2-border);
  color:var(--s2-text);
  padding:12px 14px;
}
.tg-s2-card .tg-s2-card-hd .tg-s2-title,
.index-card-header-left > span:first-child{
  font-weight:900;
  font-size:13px;
}
.index-card-header-tag{
  background:rgba(61,220,132,.12) !important;
  color:var(--s2-good) !important;
  border:1px solid rgba(61,220,132,.18);
}
.index-card-header-more a{ color:var(--s2-muted) !important; }
.index-card-header-more a:hover{ color:var(--s2-accent) !important; }

/* Widget list inside cards */
.index-card-inner{ padding:10px 12px 14px !important; }

/* Generic hr */
.hr, hr{
  border-color:var(--s2-border) !important;
  opacity:1;
}

/* Footer */
#nt_footer{
  background: #0b0d11 !important;
  border-top:1px solid var(--s2-border);
  color:var(--s2-muted);
}
#nt_footer a{ color:var(--s2-muted); }
#nt_footer a:hover{ color:var(--s2-accent); }

/* Sidebar blocks */
.tg-s2-side .h3{ color:var(--s2-text); }
.tg-s2-side .hr{ margin-top:10px; }

/* Make list items readable (common nariya list skins) */
.list-group-item,
.na-list li,
.wr-list li{
  background:transparent !important;
  color:var(--s2-text);
  border-color:var(--s2-border) !important;
}


/* =========================================================
   Season2 overrides for legacy skins (remove white boxes)
   ========================================================= */
.tg-s2 body, body.tg-s2 { background: var(--s2-bg) !important; color: var(--s2-text); }

/* Generic white utility classes from bootstrap/skins */
.tg-s2 .bg-white,
.tg-s2 .bg-light,
.tg-s2 .bg-gray,
.tg-s2 .bg-grey,
.tg-s2 .bg-body,
.tg-s2 .card,
.tg-s2 .card-body,
.tg-s2 .shadow,
.tg-s2 .shadow-sm,
.tg-s2 .shadow-lg{
  background-color: var(--s2-card) !important;
  color: var(--s2-text) !important;
}

/* Inputs inside outlogin / forms */
.tg-s2 input[type="text"],
.tg-s2 input[type="password"],
.tg-s2 input[type="email"],
.tg-s2 input[type="search"],
.tg-s2 input[type="tel"],
.tg-s2 select,
.tg-s2 textarea{
  background: rgba(255,255,255,.06) !important;
  border: 1px solid var(--s2-border) !important;
  color: var(--s2-text) !important;
}
.tg-s2 input::placeholder,
.tg-s2 textarea::placeholder{ color: rgba(255,255,255,.45) !important; }

/* Latest / widget common skins */
.tg-s2 .lt, .tg-s2 .lt ul, .tg-s2 .lt li,
.tg-s2 .latest, .tg-s2 .latest ul, .tg-s2 .latest li,
.tg-s2 .na-latest, .tg-s2 .na-latest ul, .tg-s2 .na-latest li,
.tg-s2 .wr-list, .tg-s2 .wr-list ul, .tg-s2 .wr-list li,
.tg-s2 .list-group, .tg-s2 .list-group-item{
  background: transparent !important;
  color: var(--s2-text) !important;
}
.tg-s2 .list-group-item{
  border-color: var(--s2-border) !important;
}
.tg-s2 .lt li a, .tg-s2 .latest li a, .tg-s2 .wr-list li a{
  color: var(--s2-text) !important;
}
.tg-s2 .lt li a:hover, .tg-s2 .latest li a:hover, .tg-s2 .wr-list li a:hover{
  color: #ffffff !important;
}
.tg-s2 .lt_info, .tg-s2 .lt_date, .tg-s2 .lt_name,
.tg-s2 .wr-date, .tg-s2 .wr-time{
  color: var(--s2-muted) !important;
}

/* "글이 없습니다" empty boxes */
.tg-s2 .empty, .tg-s2 .no-data, .tg-s2 .na-empty, .tg-s2 .no-data-box{
  background: rgba(255,255,255,.04) !important;
  border: 1px solid var(--s2-border) !important;
  border-radius: 14px !important;
  color: var(--s2-muted) !important;
}

/* Tables (board lists) */
.tg-s2 .tbl_head01 thead th,
.tg-s2 .tbl_head01 tbody td,
.tg-s2 .tbl_head01 tbody th,
.tg-s2 .tbl_wrap{
  background: transparent !important;
  color: var(--s2-text) !important;
  border-color: var(--s2-border) !important;
}
.tg-s2 .tbl_head01 thead th{
  background: rgba(255,255,255,.04) !important;
}
.tg-s2 .tbl_head01 tbody tr:hover td{
  background: rgba(255,255,255,.03) !important;
}

/* =========================
   Menu: single line (no scroll)
   ========================= */
.tg-s2 #nt_menu .me-list{ min-width:0; overflow:hidden !important; }
.tg-s2 #nt_menu .me-ul{
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow:hidden !important;
  gap:0;
}
.tg-s2 #nt_menu .me-li{ float:none !important; flex:0 0 auto; }
.tg-s2 #nt_menu .me-a{
  font-size:12px !important;
  padding-left:8px !important;
  padding-right:8px !important;
  white-space:nowrap !important;
}
@media (max-width: 991px){
  .tg-s2 #nt_menu .me-ul{ overflow-x:auto !important; -webkit-overflow-scrolling:touch; }
}
/* brand sub text: always one line */
.tg-s2 .brand-sub{
  display:block;
  max-width: 240px;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  opacity: .85;
}

/* dropdown z-index fix */
.tg-s2 #nt_menu { position: relative; z-index: 9999; }
.tg-s2 #nt_menu .sub-1div{ position:absolute; z-index: 10050 !important; pointer-events:auto; }
.tg-s2 #nt_menu .sub-1div a{ pointer-events:auto; }

/* =========================
   Mobile header (keep structure, switch to dark)
   ========================= */
.tg-s2 #nt_menu_mobile .bg-primary{
  background: linear-gradient(180deg, rgba(20,22,28,1) 0%, rgba(12,14,18,1) 100%) !important;
}
.tg-s2 #nt_menu_mobile{ position: sticky; top:0; z-index: 10040; }
.tg-s2 #nt_menu_mobile a{ color: var(--s2-text) !important; }
.tg-s2 #nt_menu_mobile .fa{ color: var(--s2-text) !important; }
.tg-s2 #nt_menu_mobile input[type="search"],
.tg-s2 #nt_menu_mobile input[type="text"]{
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: #fff !important;
}
.tg-s2 #nt_menu_mobile .gra-left-primary,
.tg-s2 #nt_menu_mobile .gra-right-primary{
  background: linear-gradient(90deg, rgba(0,0,0,0), rgba(15,17,21,1)) !important;
}

/* Action pills (3rd screenshot) force one line */
.tg-s2 .me-actions a,
.tg-s2 .me-actions .btn-accent{
  white-space: nowrap !important;
}

.tg-s2 #nt_menu .me-actions{ position:relative; z-index:10060; }


/* Photo5-style mobile tools */
.tg-s2 #nt_menu_mobile .tg-mob-tools{
  background: var(--s2-bg) !important;
  border-bottom: 1px solid var(--s2-border);
  padding: 12px 14px 14px;
}
.tg-s2 #nt_menu_mobile .tg-mob-search{
  display:flex;
  gap:10px;
  align-items:center;
  margin: 6px 0 10px;
}
.tg-s2 #nt_menu_mobile .tg-mob-search input{
  flex:1;
  height: 40px;
  border-radius: 14px;
  padding: 0 12px;
}
.tg-s2 #nt_menu_mobile .tg-mob-search button{
  height: 40px;
  border-radius: 14px;
  padding: 0 14px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.08);
  color: #fff;
  font-weight: 800;
}
.tg-s2 #nt_menu_mobile .tg-mob-quick{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin: 0 0 12px;
}
.tg-s2 #nt_menu_mobile .tg-mob-quick .q{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: #fff !important;
  font-weight: 800;
  font-size: 12px;
  white-space: nowrap;
}
.tg-s2 #nt_menu_mobile .tg-mob-quick .q-accent{
  border-color: rgba(253,111,34,.35);
  background: rgba(253,111,34,.12);
}
.tg-s2 #nt_menu_mobile .tg-mob-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.tg-s2 #nt_menu_mobile .tg-mob-grid .g{
  display:flex;
  align-items:center;
  justify-content:center;
  height: 34px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: #fff !important;
  font-weight: 800;
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tg-s2 .tg-s2-title{white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}


/* Season2 offcanvas (fallback) */
.tg-s2 .tg-s2-offcanvas{ position: fixed; inset:0; display:none; z-index:10080; }
.tg-s2 .tg-s2-offcanvas.open{ display:block; }
.tg-s2 .tg-s2-offcanvas-backdrop{ position:absolute; inset:0; background: rgba(0,0,0,.55); }
.tg-s2 .tg-s2-offcanvas-panel{
  position:absolute; left:0; top:0; bottom:0;
  width: 78%;
  max-width: 340px;
  background: #0f1115;
  border-right: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 10px 30px rgba(0,0,0,.45);
  display:flex; flex-direction:column;
}
.tg-s2 .tg-s2-offcanvas-hd{
  display:flex; align-items:center; justify-content:space-between;
  padding: 14px 14px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.tg-s2 .tg-s2-offcanvas-hd .t{ font-weight: 900; color:#fff; }
.tg-s2 .tg-s2-offcanvas-hd .x{ color:#fff !important; font-weight: 900; opacity:.85; }
.tg-s2 .tg-s2-offcanvas-bd{ padding: 10px 10px 16px; overflow:auto; }
.tg-s2 .tg-s2-offcanvas-bd .item{
  display:block;
  padding: 12px 12px;
  border-radius: 12px;
  margin-bottom: 8px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.10);
  color:#fff !important;
  font-weight: 900;
}
.tg-s2 .tg-s2-offcanvas-bd .sub{ margin: 0 0 12px 6px; }
.tg-s2 .tg-s2-offcanvas-bd .subitem{
  display:block;
  padding: 10px 12px;
  border-radius: 12px;
  margin: 6px 0;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  color: rgba(255,255,255,.88) !important;
  font-weight: 800;
}



/* =========================================================
   Season2 Fix v3: Desktop menu wrap (no horizontal scroll)
   ========================================================= */
#nt_menu .me-list, #nt_menu .nt-container{ overflow: visible !important; }
#nt_menu .me-ul.nav-slide{
  display:flex !important;
  flex-wrap:wrap !important;
  overflow: visible !important;
  white-space: normal !important;
  gap: 6px 10px;
  justify-content:center;
}
#nt_menu .me-li{ float:none !important; }
#nt_menu .me-a{ padding: 10px 12px !important; font-size: 14px !important; }
#nt_menu .gra, #nt_menu .gra-left-white, #nt_menu .gra-right-white{ display:none !important; }

/* =========================================================
   Season2 Fix v3: Mobile box layout (Photo3 style, dark)
   ========================================================= */
#nt_menu_mobile.s2-mob{ background: transparent !important; }
#nt_menu_mobile .s2-mob-top{
  display:flex;
  align-items:center;
  gap:10px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--s2-border);
  background: linear-gradient(180deg, rgba(22,26,34,.98), rgba(12,14,18,.98));
  position: sticky;
  top: 0;
  z-index: 50;
}
#nt_menu_mobile .s2-mob-ham{
  width:34px; height:34px;
  display:grid; place-items:center;
  border-radius:10px;
  color: var(--s2-text);
  background: rgba(255,255,255,.06);
  border:1px solid var(--s2-border);
}
#nt_menu_mobile .s2-mob-brand{
  flex:1 1 auto;
  font-weight:700;
  font-size: 13px;
  color: var(--s2-text);
  white-space: nowrap;
  overflow:hidden;
  text-overflow: ellipsis;
}
#nt_menu_mobile .s2-mob-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
}
#nt_menu_mobile .s2-mob-actions .a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:30px;
  padding: 0 10px;
  border-radius: 999px;
  border:1px solid var(--s2-border);
  background: rgba(255,255,255,.05);
  color: var(--s2-text);
  font-size: 12px;
  white-space: nowrap;
}
#nt_menu_mobile .s2-mob-actions .a-accent{
  border-color: rgba(253,111,34,.45);
  background: rgba(253,111,34,.14);
  color: #ffd7c2;
}

#nt_menu_mobile .s2-mob-panel{
  margin: 12px;
  padding: 12px;
  border-radius: 18px;
  border:1px solid var(--s2-border);
  background: rgba(22,26,34,.85);
  box-shadow: 0 14px 34px rgba(0,0,0,.35);
}

#nt_menu_mobile .s2-mob-search{
  display:flex;
  gap: 10px;
  align-items:center;
}
#nt_menu_mobile .s2-mob-search input[type="search"]{
  flex:1 1 auto;
  height: 40px;
  border-radius: 14px;
  padding: 0 12px;
  border:1px solid var(--s2-border);
  background: rgba(0,0,0,.25);
  color: var(--s2-text);
  outline:none;
}
#nt_menu_mobile .s2-mob-search button{
  height:40px;
  padding: 0 14px;
  border-radius: 14px;
  border:1px solid rgba(253,111,34,.45);
  background: rgba(253,111,34,.18);
  color: #ffd7c2;
  font-weight: 700;
}

#nt_menu_mobile .s2-mob-quick{
  margin-top: 10px;
  display:flex;
  flex-wrap:wrap;
  gap: 8px;
}
#nt_menu_mobile .s2-mob-quick .q{
  flex: 1 1 calc(33.333% - 8px);
  min-width: 110px;
  height: 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 12px;
  border:1px solid var(--s2-border);
  background: rgba(255,255,255,.05);
  color: var(--s2-text);
  font-size: 12px;
  white-space: nowrap;
}
#nt_menu_mobile .s2-mob-quick .q-accent{
  border-color: rgba(253,111,34,.45);
  background: rgba(253,111,34,.16);
  color: #ffd7c2;
}

#nt_menu_mobile .s2-mob-grid{
  margin-top: 12px;
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
#nt_menu_mobile .s2-mob-grid .m{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  height: 34px;
  border-radius: 12px;
  border:1px solid var(--s2-border);
  background: rgba(0,0,0,.18);
  color: var(--s2-text);
  font-size: 12px;
  white-space: nowrap;
  overflow:hidden;
  text-overflow: ellipsis;
}
#nt_menu_mobile .s2-mob-grid .m i{ opacity:.9; }

/* =========================================================
   Widget white -> dark (generic override)
   ========================================================= */
.tg-board-card, .tg-board-card .tg-board-inner, .tg-board-card .tg-board-body{
  background: var(--s2-card) !important;
  color: var(--s2-text) !important;
}


/* hide brand title text on mobile (요청: 모바일 상단 텍스트 삭제) */
@media (max-width: 767px){
  .tg-s2 .s2-brand-txt,
  .tg-s2 .s2-mob-brand-txt{ display:none !important; }
}

/* outlogin submit button: orange on PC */
@media (min-width: 992px){
  .tg-s2 #ol_submit,
  .tg-s2 .tg-s2-side #ol_submit,
  .tg-s2 .tg-s2-side button[type="submit"]#ol_submit{
    background:#fd6f22 !important;
    border-color:#fd6f22 !important;
    color:#111 !important;
    font-weight:800;
  }
  .tg-s2 #ol_submit:hover{ filter:brightness(1.05); }
}

/* hero keyword buttons */
.tg-s2 .tg-s2-badges a.tg-s2-badge-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  color:#e6ebf2;
  font-size:12px;
  text-decoration:none;
}
.tg-s2 .tg-s2-badges a.tg-s2-badge-btn:hover{
  border-color:rgba(253,111,34,.55);
  box-shadow:0 0 0 2px rgba(253,111,34,.15);
}

/* mobile: remove login widget block if any leftover */
@media (max-width: 767px){
  .tg-s2 .tg-s2-side .s2-hide-mobile{ display:none !important; }
}
