@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700&family=Oswald:wght@400;600;700&family=DM+Mono:wght@400;500&display=swap');
@import url('../../../nariya/css/ionicons/css/ionicons.min.css');
@import url('../../../nariya/css/g5.css');
@import url('../../../nariya/css/mask.css');

/* ============================================================
   TOTOZ Design System
   브랜드: 토토즈(TOTOZ) — 스포츠·파워볼·카지노 패턴 분석 커뮤니티
   테마: Dark Felt Dashboard — 딥그린 + 골드
   ============================================================ */

/* ── CSS Custom Properties ── */
:root {
  /* 브랜드 컬러 */
  --tz-primary:       #0A3F30;
  --tz-primary-dark:  #072B21;
  --tz-primary-mid:   #0D5240;
  --tz-primary-light: #145F4A;
  --tz-gold:          #D4A84F;
  --tz-gold-light:    #E8C474;
  --tz-gold-dark:     #B8883A;
  --tz-gold-glow:     rgba(212,168,79,.25);

  /* 배경 */
  --tz-bg:            #071A13;
  --tz-bg-card:       rgba(255,255,255,.04);
  --tz-bg-card-hover: rgba(255,255,255,.075);
  --tz-surface:       rgba(10,63,48,.45);
  --tz-surface-2:     rgba(10,63,48,.25);

  /* 테두리 */
  --tz-border:        rgba(212,168,79,.14);
  --tz-border-subtle: rgba(255,255,255,.07);
  --tz-border-active: rgba(212,168,79,.55);

  /* 텍스트 */
  --tz-text:          #F0F4F0;
  --tz-text-muted:    #A8BDB5;
  --tz-text-dim:      #6B8C7A;
  --tz-text-gold:     #D4A84F;

  /* 상태 컬러 */
  --tz-hot:           #E84057;
  --tz-new:           #22C55E;
  --tz-notice:        #3B82F6;
  --tz-warn:          #F59E0B;

  /* 차트 */
  --tz-chart-green:   #4ADE80;
  --tz-chart-gold:    #FBBF24;
  --tz-chart-blue:    #60A5FA;
  --tz-chart-red:     #F87171;
  --tz-chart-purple:  #A78BFA;

  /* 폰트 */
  --tz-font-main:    'Noto Sans KR', sans-serif;
  --tz-font-display: 'Oswald', sans-serif;
  --tz-font-mono:    'DM Mono', monospace;

  /* 반경 */
  --tz-radius:     12px;
  --tz-radius-sm:  6px;
  --tz-radius-lg:  20px;

  /* 그림자 */
  --tz-shadow:       0 4px 24px rgba(0,0,0,.45);
  --tz-shadow-gold:  0 0 20px rgba(212,168,79,.18);
  --tz-shadow-card:  0 2px 12px rgba(0,0,0,.35);
}

/* ================================================================
   BASE
   ================================================================ */
*, *::before, *::after { box-sizing: border-box; }

body {
  margin: 0;
  padding: 0;
  font-family: var(--tz-font-main);
  color: var(--tz-text);
  background:
    radial-gradient(ellipse 1400px 600px at 0% -5%,  rgba(10,63,48,.55) 0%, transparent 65%),
    radial-gradient(ellipse 900px 500px at 100% 10%, rgba(212,168,79,.06) 0%, transparent 60%),
    /* 펠트 노이즈 텍스처 오버레이 */
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E"),
    var(--tz-bg);
  background-attachment: fixed;
  background-size: cover, cover, 300px 300px, cover;
}

h1, h2, h3, h4, h5, h6 { font-family: var(--tz-font-main); color: var(--tz-text); }
.en, .tz-display { font-family: var(--tz-font-display); }
.tz-mono { font-family: var(--tz-font-mono); }

a { color: var(--tz-text-muted); text-decoration: none; transition: color .18s; }
a:hover { color: var(--tz-gold-light); text-decoration: none; }

/* ================================================================
   LAYOUT
   ================================================================ */
.wrapper { background: transparent; }
.nt-container,
.nt-container-wide { margin: 0 auto; }

@media (min-width: 992px) {
  .responsive .boxed-a.wrapper .nt-container.px-xl-0 { padding-left:1.5rem !important; padding-right:1.5rem !important; }
  .responsive .boxed-b.wrapper { padding-left:1.5rem !important; padding-right:1.5rem !important; }
}
.no-responsive .boxed-a.wrapper .nt-container.px-xl-0 { padding-left:1.5rem !important; padding-right:1.5rem !important; }
.no-responsive .boxed-b.wrapper { padding-left:1.5rem !important; padding-right:1.5rem !important; }
@media (max-width:1200px) {
  .no-responsive .wrapper.wided .nt-container.px-xl-0 { padding-left:1.5rem !important; padding-right:1.5rem !important; }
}

/* ================================================================
   PAGE LOADER
   ================================================================ */
#nt_loader {
  background: var(--tz-bg);
  left: 0; top: 0; width: 100%; height: 100%;
  display: block; position: fixed; z-index: 100000;
}
#nt_loader .loader {
  margin: -25px 0 0 -25px;
  left: 50%; top: 50%;
  width: 50px; height: 50px; line-height: 50px; font-size: 45px;
  position: absolute; z-index: 10001;
  color: var(--tz-gold);
  animation: tz-spin 1s linear infinite;
}
@keyframes tz-spin { to { transform: rotate(360deg); } }

/* ================================================================
   LNB — 상단 네비
   ================================================================ */
#nt_lnb {
  background: rgba(7,27,20,.80);
  border-bottom: 1px solid var(--tz-border-subtle);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.tz-lnb-inner { padding-top: .45rem; padding-bottom: .45rem; }
#nt_lnb ul { list-style: none; margin: 0; }
#nt_lnb ul > li { float: left; padding: 0 11px; }
#nt_lnb ul > li::after { font-family: dotum; font-weight: normal; float: right; color: rgba(212,168,79,.25); content: "|"; margin-right: -13px; }
#nt_lnb ul > li:first-child { padding-left: 0; }
#nt_lnb ul > li:last-child { padding-right: 0; }
#nt_lnb ul > li:last-child::after { content: ""; }
#nt_lnb ul > li > a { float: left; white-space: nowrap; color: var(--tz-text-muted); font-size: .8rem; }
#nt_lnb ul > li > a:hover { color: var(--tz-gold-light); }
#nt_lnb .dropdown-toggle::after { color: rgba(212,168,79,.3); }

.tz-lnb-left > li > a .fa { margin-right: .25rem; color: var(--tz-text-dim); }
.tz-date { cursor: default !important; }
.tz-online-dot { font-size: .55rem; color: var(--tz-chart-green); vertical-align: middle; margin-right: .25rem; animation: tz-pulse 2s ease infinite; }
@keyframes tz-pulse { 0%,100%{ opacity:1; } 50%{ opacity:.4; } }

/* ================================================================
   PC 헤더
   ================================================================ */
#header_pc {
  position: relative;
  overflow: visible;
}
#header_pc .nt-container {
  background: transparent !important;
}
.tz-pc-header {
  padding: 1.25rem 0;
  gap: 1rem;
}

/* 로고 */
.tz-logo-wrap { flex-shrink: 0; }
.tz-logo-link { display: inline-flex; align-items: center; gap: .6rem; text-decoration: none; }
.tz-logo-img { max-height: 54px; width: auto; object-fit: contain; }
.tz-logo-text-wrap { display: flex; flex-direction: column; line-height: 1; }
.tz-logo-main {
  font-family: var(--tz-font-display);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: .05em;
  color: var(--tz-gold);
  text-shadow: 0 0 24px var(--tz-gold-glow);
}
.tz-logo-sub {
  font-size: .7rem;
  font-weight: 500;
  color: var(--tz-text-muted);
  letter-spacing: .12em;
  margin-top: -.1rem;
}

/* 검색 */
.tz-search-wrap { max-width: 420px; }
.tz-search-form { border-radius: var(--tz-radius); overflow: hidden; }
.tz-search-form .input-group { border: 1.5px solid var(--tz-border-active); border-radius: var(--tz-radius); overflow: hidden; }
.tz-search-input {
  background: rgba(255,255,255,.04) !important;
  border: 0 !important;
  color: var(--tz-text) !important;
  font-size: .95rem !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
}
.tz-search-input::placeholder { color: var(--tz-text-dim); }
.tz-search-input:focus { background: rgba(255,255,255,.07) !important; box-shadow: none !important; -webkit-box-shadow: none !important; }
.tz-search-btn {
  background: var(--tz-primary-light) !important;
  border: 0 !important;
  color: var(--tz-gold) !important;
  padding: 0 1.1rem;
  transition: background .18s;
}
.tz-search-btn:hover { background: var(--tz-primary-mid) !important; }

.tz-header-keyword { color: var(--tz-text-dim); font-size: .78rem; }
.tz-header-keyword a { color: var(--tz-text-dim); font-size: .78rem; }
.tz-header-keyword a:hover { color: var(--tz-gold-light); }

/* 헤더 칩 */
.tz-header-chips { gap: .5rem; flex-shrink: 0; }
.tz-chip {
  padding: .5rem .85rem;
  border: 1px solid var(--tz-border);
  background: linear-gradient(135deg, rgba(10,63,48,.55), rgba(7,27,20,.45));
  border-radius: var(--tz-radius);
  backdrop-filter: blur(8px);
  box-shadow: var(--tz-shadow-card);
  min-width: 130px;
}
.tz-chip-label {
  display: block;
  font-size: .7rem;
  color: var(--tz-text-dim);
  line-height: 1.2;
}
.tz-chip-val {
  display: block;
  font-size: .8rem;
  color: var(--tz-text);
  white-space: nowrap;
  margin-top: .15rem;
}
.tz-chip-notice {
  border-color: rgba(212,168,79,.3);
  background: linear-gradient(135deg, rgba(212,168,79,.1), rgba(7,27,20,.5));
}
.tz-chip-notice .tz-chip-val { color: var(--tz-gold-light); }
.tz-chip-notice .fa { color: var(--tz-gold); margin-right: .3rem; }

/* ================================================================
   모바일 헤더
   ================================================================ */
#header_mo { box-shadow: 0 6px 20px rgba(0,0,0,.4); }
.tz-mo-header { padding-top: .6rem; padding-bottom: .6rem; }
.tz-mo-icon { line-height: 1 !important; }
.tz-mo-logo {
  display: inline-flex;
  align-items: baseline;
  gap: .35rem;
  text-decoration: none;
}
.tz-mo-logo-main {
  font-family: var(--tz-font-display);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--tz-gold) !important;
  letter-spacing: .06em;
  text-shadow: 0 0 16px var(--tz-gold-glow);
}
.tz-mo-logo-ko {
  font-size: .7rem;
  color: var(--tz-text-muted) !important;
  letter-spacing: .08em;
}
.tz-mo-search {
  background: rgba(7,27,20,.95);
  border-bottom: 1px solid var(--tz-border-subtle);
}
.tz-mo-search-input {
  background: rgba(255,255,255,.06) !important;
  border-color: var(--tz-border) !important;
  color: var(--tz-text) !important;
}
.tz-mo-search-input::placeholder { color: var(--tz-text-dim); }

/* ================================================================
   PC 주메뉴 (nav#nt_menu)
   ================================================================ */
#nt_menu {
  position: relative;
  z-index: 20;
  background: linear-gradient(90deg, var(--tz-primary-dark) 0%, var(--tz-primary) 50%, var(--tz-primary-dark) 100%) !important;
  border-top: 1px solid rgba(212,168,79,.12);
  border-bottom: 1px solid rgba(212,168,79,.08);
  box-shadow: 0 8px 28px rgba(0,0,0,.45);
}
#nt_menu::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--tz-gold-glow), transparent);
}

#nt_menu .nt-container,
#nt_menu .me-list .me-li,
#nt_menu .sub-1dul,
#nt_menu .sub-1dli { position: relative; }

#nt_menu .me-a {
  display: block;
  position: relative;
  text-align: center;
  font-weight: 600;
  color: rgba(240,244,240,.9);
  font-size: .875rem;
  letter-spacing: .02em;
  transition: all .2s ease;
  border-bottom: 2px solid transparent;
}
#nt_menu .me-a .fa,
#nt_menu .tz-menu-icon { margin-right: .3rem; opacity: .8; }

#nt_menu .me-li.on > a > .me-a,
#nt_menu .me-li:hover > a > .me-a {
  color: var(--tz-gold-light) !important;
  background: rgba(212,168,79,.06) !important;
  border-bottom-color: var(--tz-gold);
  text-shadow: 0 0 12px var(--tz-gold-glow);
}
.tz-menu-link { text-decoration: none !important; }
.tz-menu-icon-link .me-a { padding: 0 .8rem; }

/* 서브메뉴 */
#nt_menu .sub-slide { display: none; visibility: visible; }
#nt_menu .sub-icon::after { font-family: "FontAwesome"; float: right; position: relative; content: "\f105"; color: var(--tz-gold); }
#nt_menu .me-icon { width: 4.0rem; text-align: center; }

.nt-menu .sub-1div,
#nt_menu .sub-2div {
  position: absolute;
  left: 0;
  top: 100%;
  z-index: 21;
  background: rgba(5,18,13,.96);
  border: 1px solid var(--tz-border);
  border-top: 2px solid var(--tz-gold);
  border-radius: 0 0 var(--tz-radius) var(--tz-radius);
  box-shadow: 0 16px 40px rgba(0,0,0,.55), 0 0 0 1px rgba(212,168,79,.05);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  min-width: 180px;
  overflow: hidden;
}
#nt_menu .sub-2div { left: 100%; top: 0; border-radius: var(--tz-radius); }

.nt-menu .sub-1da,
#nt_menu .sub-2da {
  display: block;
  color: var(--tz-text-muted);
  border-bottom: 1px solid rgba(255,255,255,.05);
  transition: all .15s;
  font-size: .875rem;
}
.nt-menu .me-sh,
#nt_menu .me-sh { padding: .6rem 1.1rem; }

.nt-menu .sub-1dli:hover .sub-1da,
.nt-menu .sub-1dli.on .sub-1da,
#nt_menu .sub-2dli:hover .sub-2da,
#nt_menu .sub-2dli.on .sub-2da {
  color: var(--tz-gold-light);
  background: rgba(212,168,79,.08);
  border-color: rgba(212,168,79,.12);
  padding-left: 1.4rem;
}
.nt-menu .sub-1line,
#nt_menu .sub-2line {
  display: block;
  color: var(--tz-gold);
  font-weight: 700;
  font-size: .75rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: rgba(212,168,79,.06);
  border-bottom: 1px solid rgba(212,168,79,.15) !important;
}
.tz-submenu .sub-1line,
.tz-submenu-2 .sub-2line { padding: .5rem 1.1rem; }

/* 메뉴 상단 고정 */
#nt_sticky_wrap.me-sticky { position: fixed; width: 100%; z-index: 999; left: 0; top: 0; }
@media (min-width: 992px) {
  .wrapper.m-lg-auto #nt_sticky_wrap.me-sticky nav { margin: 0 auto !important; }
}

/* mobile bg-primary override */
#header_mo > .bg-primary,
#nt_menu.bg-primary {
  background: linear-gradient(90deg, var(--tz-primary-dark), var(--tz-primary)) !important;
}

/* ================================================================
   페이지 타이틀 & 브레드크럼
   ================================================================ */
#nt_title {
  position: relative;
  overflow: hidden;
  color: var(--tz-text);
  background: rgba(10,63,48,.2);
  border-bottom: 1px solid var(--tz-border-subtle);
}
#nt_title::before {
  content: '';
  position: absolute;
  bottom: 0; left: 0;
  width: 100%; height: 2px;
  background: linear-gradient(90deg, var(--tz-gold), transparent);
  opacity: .5;
}
#nt_title .nt-container { position: relative; z-index: 2; height: 70px; }
#nt_title .page-title {
  font-size: 22px;
  letter-spacing: -.5px;
  line-height: 1.4;
  color: var(--tz-text);
  font-weight: 700;
}
#nt_title .breadcrumb { background: transparent !important; }
#nt_title .breadcrumb a { color: var(--tz-text-dim); }
#nt_title .breadcrumb a:hover { color: var(--tz-gold-light); }
#nt_title .breadcrumb-item + .breadcrumb-item::before { content: ">"; color: var(--tz-text-dim); font-size: .8em; }
#nt_title .breadcrumb-item.active a { color: var(--tz-text-muted); }

@media (max-width: 991px) { .responsive #nt_title .page-title { font-size: 20px; } }
@media (max-width: 767px) { .responsive #nt_title .page-title { font-size: 18px; } .responsive #nt_title .nt-container { height: 60px; } }
@media (max-width: 575px) { .responsive #nt_title .page-title { font-size: 16px; } .responsive #nt_title .nt-container { height: 50px; } }

/* ================================================================
   WING
   ================================================================ */
#nt_wing .nt-container { position: relative; overflow: visible !important; }
#nt_wing img { max-width: 100%; }
#nt_wing .wing-left, #nt_wing .wing-right { position: absolute; width: 160px; }
#nt_wing .wing-left { left: -180px; }
#nt_wing .wing-right { right: -180px; }

/* ================================================================
   위젯 / 카드 공통
   ================================================================ */
.widget-box, .card, .na-widget, .panel, .box {
  background: var(--tz-bg-card);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius);
  transition: border-color .2s, box-shadow .2s;
}
.widget-box:hover, .card:hover, .na-widget:hover {
  border-color: var(--tz-border);
  box-shadow: var(--tz-shadow-card);
}

/* 위젯 타이틀 */
h3.h3 { padding: 0; margin: 0; font-weight: 700; color: var(--tz-text); }
hr.hr::before { width: 100%; height: 1px; content: ""; position: absolute; left: 0; bottom: 1px; background-color: var(--tz-border-subtle); }
hr.hr { display: block; position: relative; height: 3px; border: none; line-height: 1px; padding: 0; margin: 0; }
hr.hr::after { width: 4.0rem; height: 3px; content: ""; position: absolute; left: 0; bottom: 0; background: var(--tz-gold); }

@media (max-width: 575px) {
  .responsive h3.h3 { padding-left: 1rem; padding-right: 1rem; }
  .responsive hr.hr::after { left: 1rem; }
}

/* ================================================================
   뱃지 / 레이블
   ================================================================ */
.tz-badge-hot { background: var(--tz-hot); color: #fff; border-radius: 4px; padding: .1rem .35rem; font-size: .7rem; font-weight: 700; }
.tz-badge-new { background: var(--tz-new); color: #fff; border-radius: 4px; padding: .1rem .35rem; font-size: .7rem; font-weight: 700; }
.tz-badge-notice { background: var(--tz-notice); color: #fff; border-radius: 4px; padding: .1rem .35rem; font-size: .7rem; font-weight: 700; }
.tz-badge-gold { background: var(--tz-gold); color: var(--tz-primary-dark); border-radius: 4px; padding: .1rem .35rem; font-size: .7rem; font-weight: 700; }

/* ================================================================
   FOOTER
   ================================================================ */
#nt_footer {
  background: rgba(5,14,10,.75);
  border-top: 1px solid var(--tz-border-subtle);
  margin-top: 2.5rem;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  position: relative;
}
#nt_footer::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(212,168,79,.3), transparent);
}
#nt_footer .nt-links { border-color: var(--tz-border-subtle) !important; }
#nt_footer .nt-links ul { list-style: none; margin: 0; padding: 0; }
#nt_footer .nt-links ul > li { float: left; padding: 0 11px; }
#nt_footer ul > li:first-child { padding-left: 0; }
#nt_footer ul > li:last-child { padding-right: 0; }
#nt_footer .nt-links ul > li::after { font-family: dotum; float: right; color: var(--tz-text-dim); content: "|"; margin-right: -13px; }
#nt_footer .nt-links ul > li:last-child::after { content: ""; }
#nt_footer .nt-links ul > li > a { color: var(--tz-text-muted); white-space: nowrap; font-size: .82rem; }
#nt_footer .nt-links ul > li > a:hover { color: var(--tz-gold-light); }
#nt_footer, #nt_footer a { color: var(--tz-text-muted); }
#nt_footer a:hover { color: var(--tz-gold-light); }

@media (max-width: 991px) {
  .responsive #nt_footer .nt-links ul > li { float: none; display: inline-block; }
}

.tz-footer-info { list-style: none; padding: 0; margin: 0; font-size: .8rem; color: var(--tz-text-dim); flex-wrap: wrap; }
.tz-footer-info > li { line-height: 2; }

.tz-footer-disclaimer {
  max-width: 960px;
  margin: 0 auto;
  padding: .75rem 1.25rem;
  border-radius: var(--tz-radius);
  border: 1px solid rgba(212,168,79,.1);
  background: rgba(10,63,48,.15);
  color: var(--tz-text-dim);
  font-size: .78rem;
  line-height: 1.6;
}
.tz-footer-disclaimer .fa { margin-right: .4rem; color: var(--tz-gold); opacity: .7; }
.tz-footer-disclaimer b { color: var(--tz-text-muted); }

.tz-footer-tags { padding: .5rem 0; display: flex; flex-wrap: wrap; gap: .35rem; justify-content: center; }
.tz-footer-tags > span {
  font-size: .72rem;
  color: var(--tz-text-dim);
  background: rgba(255,255,255,.04);
  border: 1px solid var(--tz-border-subtle);
  border-radius: 4px;
  padding: .15rem .55rem;
}

.tz-footer-copy { color: var(--tz-text-dim); font-size: .82rem; }
.tz-footer-logo-text {
  font-family: var(--tz-font-display);
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--tz-gold);
  margin-right: .5rem;
}
.tz-footer-copy-sub { display: block; margin-top: .25rem; font-size: .75rem; color: var(--tz-text-dim); }

/* ================================================================
   Bootstrap 4 overrides
   ================================================================ */
.tooltip .tooltip-inner { font-size: 1rem !important; }

/* 체크박스 */
.custom-checkbox .custom-control-label::before,
.custom-checkbox .custom-control-label::after,
.custom-radio .custom-control-label::before,
.custom-radio .custom-control-label::after { top: .15rem !important; width: 1.4rem !important; height: 1.4rem !important; }
.custom-checkbox .custom-control-label span,
.custom-radio .custom-control-label span { cursor: pointer; padding-left: .5rem !important; }
.custom-switch .custom-control-label::before,
.custom-switch .custom-control-label::after { margin-top: 2px; }

/* 버튼 */
.btn { transition: all .2s ease; }
.btn-primary,
.bg-primary {
  background: linear-gradient(135deg, var(--tz-primary-mid), var(--tz-primary)) !important;
  border-color: rgba(212,168,79,.2) !important;
  color: var(--tz-text) !important;
}
.btn-primary:hover {
  background: linear-gradient(135deg, var(--tz-primary-light), var(--tz-primary-mid)) !important;
  border-color: rgba(212,168,79,.35) !important;
  box-shadow: 0 0 16px rgba(212,168,79,.15);
}
.btn-lg { padding: 10px 16px; border-radius: var(--tz-radius-sm); line-height: 1.33; font-size: 18px; }
.btn-lg i { top: 3px; font-size: 24px; position: relative; }

/* 골드 강조 버튼 */
.btn-gold {
  background: linear-gradient(135deg, var(--tz-gold-light), var(--tz-gold)) !important;
  border-color: var(--tz-gold-dark) !important;
  color: var(--tz-primary-dark) !important;
  font-weight: 700;
}
.btn-gold:hover {
  background: linear-gradient(135deg, var(--tz-gold), var(--tz-gold-dark)) !important;
  box-shadow: var(--tz-shadow-gold);
}

/* Form */
.col-form-label { font-weight: 700; color: var(--tz-text-muted); }
.form-control, .custom-select, .input-group-text {
  border-radius: var(--tz-radius-sm);
  background: rgba(255,255,255,.04);
  border-color: var(--tz-border-subtle);
  color: var(--tz-text);
}
.form-control::placeholder { color: var(--tz-text-dim); }
.form-control:focus {
  background: rgba(255,255,255,.06);
  border-color: rgba(212,168,79,.4);
  box-shadow: 0 0 0 .2rem rgba(212,168,79,.12);
  color: var(--tz-text);
}
.input-group-text {
  background: rgba(10,63,48,.5);
  border-color: var(--tz-border-subtle);
  color: var(--tz-gold);
}

/* Pagination */
.page-link { background: var(--tz-bg-card); border-color: var(--tz-border-subtle); color: var(--tz-text-muted); }
.page-link:hover { background: rgba(212,168,79,.1); border-color: var(--tz-gold); color: var(--tz-gold-light); }
.page-item.active .page-link { background: var(--tz-primary-mid); border-color: var(--tz-gold); color: var(--tz-gold); }

/* Alerts */
.alert { border-radius: var(--tz-radius-sm); border: 0; }
.alert-primary { background: rgba(10,63,48,.4); color: var(--tz-text-muted); border-left: 3px solid var(--tz-primary-light) !important; }
.alert-warning { background: rgba(212,168,79,.1); color: var(--tz-gold-light); border-left: 3px solid var(--tz-gold) !important; }
.alert-danger  { background: rgba(232,64,87,.1);  color: #fca5a5;             border-left: 3px solid var(--tz-hot) !important; }
.alert-success { background: rgba(34,197,94,.1);  color: #86efac;             border-left: 3px solid var(--tz-chart-green) !important; }
.alert-info    { background: rgba(59,130,246,.1); color: #93c5fd;             border-left: 3px solid var(--tz-notice) !important; }

/* 라운드/사각 스타일 */
.na-round,
.view_image img,
.pretty-embed img { border-radius: var(--tz-radius-sm) !important; }
.is-square .na-round,
.is-square .view_image img,
.is-square .pretty-embed img,
.is-square .btn,
.is-square .alert,
.is-square .nav-link,
.is-square .form-control,
.is-square .input-group-prepend,
.is-square .input-group-append,
.is-square .input-group-text,
.is-square .custom-file-label,
.is-square .custom-file-label:after,
.is-square .custom-select,
.is-square .label,
.is-square .progress,
.is-square .pagination li a,
.is-square .list-group-item { border-radius: 0 !important; }

/* Tables */
.table { color: var(--tz-text-muted); }
.table thead th { background: rgba(10,63,48,.5); border-color: var(--tz-border-subtle); color: var(--tz-gold-light); font-size: .82rem; letter-spacing: .04em; font-weight: 600; }
.table td, .table th { border-color: var(--tz-border-subtle); }
.table-striped tbody tr:nth-of-type(odd) { background-color: rgba(255,255,255,.025); }
.table-hover tbody tr:hover { background-color: rgba(212,168,79,.05); color: var(--tz-text); }

/* ================================================================
   TOTOZ 패턴 분석 전용 컴포넌트
   ================================================================ */

/* 패턴 분석 결과 행 (짝/홀, 언더/오버 등) */
.tz-pattern-row { display: flex; gap: .3rem; flex-wrap: wrap; align-items: center; margin: .4rem 0; }
.tz-ball {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px; height: 30px;
  border-radius: 50%;
  font-family: var(--tz-font-mono);
  font-size: .78rem;
  font-weight: 700;
  line-height: 1;
  flex-shrink: 0;
  transition: transform .15s;
}
.tz-ball:hover { transform: scale(1.1); }
.tz-ball-odd  { background: linear-gradient(135deg, #1d6b4e, #0D5240); border: 1px solid rgba(77,222,128,.3); color: #4ade80; }
.tz-ball-even { background: linear-gradient(135deg, #3b3206, #6b5b10); border: 1px solid rgba(212,168,79,.3); color: var(--tz-gold-light); }
.tz-ball-over  { background: linear-gradient(135deg, #3d1515, #7a1d1d); border: 1px solid rgba(248,113,113,.3); color: #f87171; }
.tz-ball-under { background: linear-gradient(135deg, #1a2f4a, #1e3a5f); border: 1px solid rgba(96,165,250,.3); color: #60a5fa; }
.tz-ball-pb    { background: linear-gradient(135deg, var(--tz-primary-dark), var(--tz-primary)); border: 1px solid var(--tz-border-active); color: var(--tz-gold); }

/* 실시간 라이브 도트 */
.tz-live-badge {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  background: rgba(232,64,87,.15);
  border: 1px solid rgba(232,64,87,.35);
  border-radius: 20px;
  padding: .2rem .7rem;
  font-size: .72rem;
  font-weight: 700;
  color: #f87171;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.tz-live-badge::before {
  content: '';
  width: 7px; height: 7px;
  background: #f87171;
  border-radius: 50%;
  animation: tz-pulse 1.2s ease infinite;
}

/* 통계 숫자 강조 */
.tz-stat-num {
  font-family: var(--tz-font-mono);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--tz-gold);
  line-height: 1;
}
.tz-stat-label { font-size: .72rem; color: var(--tz-text-dim); margin-top: .2rem; }

/* 차트 범례 도트 */
.tz-dot-green  { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--tz-chart-green); margin-right: .3rem; }
.tz-dot-gold   { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--tz-chart-gold);  margin-right: .3rem; }
.tz-dot-blue   { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--tz-chart-blue);  margin-right: .3rem; }
.tz-dot-red    { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--tz-chart-red);   margin-right: .3rem; }

/* 섹션 구분선 (골드) */
.tz-divider {
  border: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--tz-border-active), transparent);
  margin: 1.5rem 0;
  opacity: .5;
}

/* 게임 카테고리 탭 */
.tz-category-tabs { display: flex; gap: .4rem; flex-wrap: wrap; padding: .5rem 0; }
.tz-cat-tab {
  padding: .35rem 1rem;
  border-radius: 20px;
  border: 1px solid var(--tz-border-subtle);
  background: var(--tz-bg-card);
  color: var(--tz-text-muted);
  font-size: .8rem;
  cursor: pointer;
  transition: all .18s;
}
.tz-cat-tab:hover,
.tz-cat-tab.active {
  background: rgba(212,168,79,.12);
  border-color: var(--tz-gold);
  color: var(--tz-gold-light);
}

/* ================================================================
   모바일 반응형 추가
   ================================================================ */
@media (max-width: 767.98px) {
  body { background-attachment: scroll; }
  #header_mo .bg-primary { border-bottom: 1px solid rgba(212,168,79,.1); }
  .tz-footer-tags { padding: .5rem 1rem; }
}

/* ================================================================
   스크롤바 (웹킷)
   ================================================================ */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: rgba(7,27,20,.5); }
::-webkit-scrollbar-thumb { background: rgba(212,168,79,.25); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(212,168,79,.45); }

/* ================================================================
   텍스트 유틸리티
   ================================================================ */
.tz-gold  { color: var(--tz-gold) !important; }
.tz-green { color: var(--tz-chart-green) !important; }
.tz-red   { color: var(--tz-chart-red) !important; }
.tz-blue  { color: var(--tz-chart-blue) !important; }
.tz-muted { color: var(--tz-text-muted) !important; }
.tz-dim   { color: var(--tz-text-dim) !important; }


/* ================================================================
   TOTOZ 게시판 스킨 통합 스타일
   기존 --tz-* 변수 활용 / 메인과 완전 통일
   ================================================================ */

/* ── 게시판 전체 배경 ── */
#bo_list, #bo_read, #bo_write, #bo_reply,
.bo_list_wrap, .bo_read_wrap,
#nt_body .nt-container { color: var(--tz-text); }

/* ================================================================
   게시판 헤더
   ================================================================ */
.tz-board-header {
  background: linear-gradient(135deg, rgba(10,63,48,.55), rgba(7,27,20,.45));
  border-left: 4px solid var(--tz-gold);
  border-bottom: 1px solid var(--tz-border);
  padding: 18px 24px;
  margin-bottom: 16px;
  border-radius: 0 var(--tz-radius) 0 0;
  display: flex;
  align-items: center;
  gap: 12px;
  backdrop-filter: blur(8px);
}
.tz-board-header .tz-bh-icon { font-size: 1.4rem; line-height: 1; }
.tz-board-header h2 {
  color: var(--tz-gold);
  font-size: 1.2rem;
  font-weight: 700;
  margin: 0;
  letter-spacing: -.02em;
}
.tz-board-header .tz-bh-desc {
  color: var(--tz-text-dim);
  font-size: .76rem;
  margin-top: 3px;
}

/* ================================================================
   카테고리 탭
   ================================================================ */
.tz-cate-wrap {
  background: var(--tz-bg-card);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius);
  padding: 0 6px;
  margin-bottom: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
}
.tz-cate-wrap a {
  color: var(--tz-text-muted);
  padding: 9px 14px;
  font-size: .82rem;
  border-bottom: 2px solid transparent;
  transition: all .15s;
  white-space: nowrap;
  text-decoration: none;
  display: inline-block;
}
.tz-cate-wrap a:hover,
.tz-cate-wrap a.on {
  color: var(--tz-gold-light);
  border-bottom-color: var(--tz-gold);
}

/* ================================================================
   목록 테이블
   ================================================================ */
.tz-list-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--tz-bg-card);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius);
  overflow: hidden;
}
.tz-list-table thead tr {
  background: linear-gradient(90deg, rgba(10,63,48,.7), rgba(13,82,64,.5));
}
.tz-list-table thead th {
  color: var(--tz-gold-light);
  font-size: .76rem;
  font-weight: 700;
  padding: 12px 16px;
  text-align: center;
  letter-spacing: .06em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(212,168,79,.2);
  white-space: nowrap;
}
.tz-list-table thead th.th-subject { text-align: left; }

.tz-list-table tbody tr {
  border-bottom: 1px solid var(--tz-border-subtle);
  transition: background .12s;
}
.tz-list-table tbody tr:hover {
  background: var(--tz-bg-card-hover);
}
.tz-list-table tbody tr:last-child { border-bottom: none; }

/* 공지 행 */
.tz-list-table tbody tr.tz-notice {
  background: rgba(212,168,79,.05);
  border-left: 3px solid var(--tz-gold);
}
.tz-list-table tbody tr.tz-notice:hover {
  background: rgba(212,168,79,.09);
}

/* 셀 */
.tz-list-table tbody td {
  color: var(--tz-text);
  padding: 11px 16px;
  font-size: .875rem;
  vertical-align: middle;
}
.tz-td-num {
  color: var(--tz-text-dim);
  font-size: .75rem;
  text-align: center;
  width: 58px;
}
.tz-notice .tz-td-num {
  color: var(--tz-gold);
  font-weight: 700;
  font-size: .72rem;
}
.tz-td-subject { text-align: left; }
.tz-td-subject a {
  color: var(--tz-text);
  text-decoration: none;
  transition: color .12s;
}
.tz-td-subject a:hover { color: var(--tz-gold-light); }
.tz-td-name  { color: var(--tz-text-muted); font-size: .82rem; text-align: center; white-space: nowrap; }
.tz-td-date  { color: var(--tz-text-dim);   font-size: .78rem; text-align: center; white-space: nowrap; }
.tz-td-hit   { color: var(--tz-text-dim);   font-size: .78rem; text-align: center; }
.tz-td-good  { color: var(--tz-gold);       font-size: .82rem; text-align: center; font-weight: 600; }

/* 뱃지 */
.tz-badge-reply {
  color: var(--tz-gold);
  font-size: .75rem;
  margin-left: 4px;
  font-family: var(--tz-font-mono);
}
.tz-badge-img {
  color: var(--tz-text-dim);
  margin-left: 4px;
  font-size: .8rem;
}
.tz-badge-cate {
  background: rgba(10,63,48,.6);
  color: var(--tz-gold-light);
  border: 1px solid rgba(212,168,79,.25);
  font-size: .68rem;
  padding: 1px 7px;
  border-radius: 4px;
  margin-right: 5px;
  font-weight: 600;
  white-space: nowrap;
}

/* ================================================================
   목록 하단 (검색 + 버튼)
   ================================================================ */
.tz-list-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  padding: 14px 0;
  border-top: 1px solid var(--tz-border-subtle);
  margin-top: 4px;
}
.tz-search-form {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}
.tz-search-form select,
.tz-search-form input[type="text"] {
  background: rgba(255,255,255,.04);
  color: var(--tz-text);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius-sm);
  padding: 8px 12px;
  font-size: .82rem;
  outline: none;
  height: 38px;
  transition: border-color .15s, box-shadow .15s;
}
.tz-search-form input[type="text"] { min-width: 180px; }
.tz-search-form select:focus,
.tz-search-form input:focus {
  border-color: rgba(212,168,79,.45);
  box-shadow: 0 0 0 2px var(--tz-gold-glow);
}

/* 버튼 */
.tz-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 9px 20px;
  border-radius: var(--tz-radius-sm);
  font-size: .82rem;
  font-weight: 600;
  cursor: pointer;
  transition: all .15s;
  border: none;
  text-decoration: none;
  white-space: nowrap;
  height: 38px;
  font-family: var(--tz-font-main);
}
.tz-btn-gold {
  background: linear-gradient(135deg, var(--tz-gold-light), var(--tz-gold));
  color: var(--tz-primary-dark);
  font-weight: 700;
  border: none;
}
.tz-btn-gold:hover {
  background: linear-gradient(135deg, var(--tz-gold), var(--tz-gold-dark));
  color: var(--tz-primary-dark);
  box-shadow: var(--tz-shadow-gold);
  transform: translateY(-1px);
}
.tz-btn-ghost {
  background: rgba(255,255,255,.04);
  color: var(--tz-text-muted);
  border: 1px solid var(--tz-border-subtle);
}
.tz-btn-ghost:hover {
  background: rgba(212,168,79,.08);
  border-color: rgba(212,168,79,.35);
  color: var(--tz-gold-light);
}
.tz-btn-danger {
  background: rgba(255,255,255,.04);
  color: var(--tz-hot);
  border: 1px solid rgba(232,64,87,.25);
}
.tz-btn-danger:hover {
  background: rgba(232,64,87,.1);
  border-color: var(--tz-hot);
}
.tz-btn-sm { padding: 5px 12px; font-size: .76rem; height: 30px; }

/* ================================================================
   페이지네이션
   ================================================================ */
.tz-paging {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 20px 0 8px;
  flex-wrap: wrap;
}
.tz-paging a,
.tz-paging strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border-radius: var(--tz-radius-sm);
  font-size: .82rem;
  border: 1px solid var(--tz-border-subtle);
  background: var(--tz-bg-card);
  color: var(--tz-text-muted);
  text-decoration: none;
  transition: all .12s;
}
.tz-paging a:hover {
  background: rgba(212,168,79,.08);
  border-color: rgba(212,168,79,.4);
  color: var(--tz-gold-light);
}
.tz-paging strong {
  background: linear-gradient(135deg, var(--tz-primary-mid), var(--tz-primary));
  border-color: rgba(212,168,79,.4);
  color: var(--tz-gold);
  font-weight: 700;
}

/* ================================================================
   게시글 읽기
   ================================================================ */
.tz-view-wrap {
  background: var(--tz-bg-card);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius);
  overflow: hidden;
  margin-bottom: 16px;
  backdrop-filter: blur(6px);
}
.tz-view-subject {
  padding: 20px 24px 14px;
  border-bottom: 1px solid var(--tz-border-subtle);
  background: rgba(10,63,48,.2);
}
.tz-view-subject h1 {
  color: var(--tz-text);
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.55;
  margin: 0 0 8px;
}
.tz-view-cate-line {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}

.tz-view-info {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 10px 24px;
  background: rgba(0,0,0,.15);
  border-bottom: 1px solid var(--tz-border-subtle);
  gap: 0;
}
.tz-view-info-item {
  color: var(--tz-text-dim);
  font-size: .77rem;
  padding: 0 14px 0 0;
  display: flex;
  align-items: center;
  gap: 5px;
}
.tz-view-info-item i { font-size: .7rem; }
.tz-view-info-item .val { color: var(--tz-text-muted); }
.tz-view-info-item .val-author { color: var(--tz-gold-light); font-weight: 600; }

.tz-view-content {
  padding: 28px 24px;
  color: var(--tz-text);
  font-size: .93rem;
  line-height: 1.95;
  min-height: 160px;
  border-bottom: 1px solid var(--tz-border-subtle);
  word-break: break-word;
}
.tz-view-content p { margin-bottom: 12px; color: var(--tz-text); }
.tz-view-content a { color: var(--tz-gold); }
.tz-view-content a:hover { color: var(--tz-gold-light); }
.tz-view-content blockquote {
  background: rgba(10,63,48,.3);
  border-left: 3px solid var(--tz-gold);
  padding: 12px 18px;
  margin: 16px 0;
  border-radius: 0 var(--tz-radius-sm) var(--tz-radius-sm) 0;
  color: var(--tz-text-muted);
}
.tz-view-content img { max-width: 100%; border-radius: var(--tz-radius-sm); }
.tz-view-content table { width: 100%; border-collapse: collapse; margin: 12px 0; }
.tz-view-content table td,
.tz-view-content table th {
  border: 1px solid var(--tz-border-subtle);
  padding: 8px 12px;
  color: var(--tz-text);
  font-size: .88rem;
}
.tz-view-content table th {
  background: rgba(10,63,48,.5);
  color: var(--tz-gold-light);
}

/* 첨부파일 */
.tz-view-files {
  padding: 12px 24px;
  border-bottom: 1px solid var(--tz-border-subtle);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.tz-view-files .label {
  color: var(--tz-text-dim);
  font-size: .76rem;
  font-weight: 600;
  letter-spacing: .04em;
  margin-right: 4px;
}
.tz-view-files a {
  background: rgba(10,63,48,.35);
  border: 1px solid var(--tz-border-subtle);
  color: var(--tz-text-muted);
  font-size: .8rem;
  padding: 4px 12px;
  border-radius: var(--tz-radius-sm);
  text-decoration: none;
  transition: all .12s;
}
.tz-view-files a:hover {
  border-color: rgba(212,168,79,.4);
  color: var(--tz-gold-light);
}

/* 추천/비추천 */
.tz-view-good {
  padding: 16px 24px;
  border-bottom: 1px solid var(--tz-border-subtle);
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
}
.tz-btn-good {
  background: rgba(10,63,48,.4);
  border: 1px solid rgba(212,168,79,.3);
  color: var(--tz-gold);
  padding: 9px 24px;
  border-radius: var(--tz-radius-sm);
  font-size: .85rem;
  font-weight: 600;
  cursor: pointer;
  transition: all .15s;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  text-decoration: none;
  font-family: var(--tz-font-main);
}
.tz-btn-good:hover {
  background: linear-gradient(135deg, var(--tz-gold-light), var(--tz-gold));
  color: var(--tz-primary-dark);
  border-color: var(--tz-gold);
  box-shadow: var(--tz-shadow-gold);
}
.tz-btn-bad {
  background: rgba(255,255,255,.03);
  border: 1px solid var(--tz-border-subtle);
  color: var(--tz-text-dim);
  padding: 9px 24px;
  border-radius: var(--tz-radius-sm);
  font-size: .85rem;
  cursor: pointer;
  transition: all .15s;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  text-decoration: none;
  font-family: var(--tz-font-main);
}
.tz-btn-bad:hover {
  background: rgba(232,64,87,.1);
  border-color: var(--tz-hot);
  color: #f87171;
}

/* 이전/다음글 */
.tz-view-navi { border-top: 1px solid var(--tz-border-subtle); }
.tz-navi-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 11px 20px;
  border-bottom: 1px solid var(--tz-border-subtle);
  transition: background .12s;
}
.tz-navi-row:last-child { border-bottom: none; }
.tz-navi-row:hover { background: var(--tz-bg-card-hover); }
.tz-navi-label {
  color: var(--tz-gold);
  font-size: .72rem;
  font-weight: 700;
  min-width: 44px;
  letter-spacing: .04em;
}
.tz-navi-link {
  color: var(--tz-text-muted);
  font-size: .87rem;
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tz-navi-link:hover { color: var(--tz-gold-light); }

/* 읽기 하단 버튼 */
.tz-view-btns {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  padding: 14px 0;
  border-top: 1px solid var(--tz-border-subtle);
  margin-top: 4px;
}
.tz-view-btns .right { margin-left: auto; display: flex; gap: 8px; }

/* ================================================================
   댓글
   ================================================================ */
.tz-cmt-wrap {
  background: var(--tz-bg-card);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius);
  overflow: hidden;
  margin-top: 16px;
  backdrop-filter: blur(6px);
}
.tz-cmt-head {
  background: linear-gradient(90deg, rgba(10,63,48,.7), rgba(13,82,64,.4));
  padding: 12px 20px;
  border-bottom: 1px solid rgba(212,168,79,.15);
  display: flex;
  align-items: center;
  gap: 8px;
}
.tz-cmt-head h3 {
  color: var(--tz-gold);
  font-size: .92rem;
  font-weight: 700;
  margin: 0;
  letter-spacing: .02em;
}
.tz-cmt-count {
  background: var(--tz-gold);
  color: var(--tz-primary-dark);
  font-size: .7rem;
  font-weight: 800;
  padding: 1px 7px;
  border-radius: 10px;
}
.tz-cmt-write {
  padding: 16px 20px;
  border-bottom: 1px solid var(--tz-border-subtle);
  background: rgba(255,255,255,.02);
}
.tz-cmt-write-info {
  display: flex;
  gap: 8px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.tz-cmt-write-info input[type="text"] {
  background: rgba(255,255,255,.04);
  color: var(--tz-text);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius-sm);
  padding: 7px 12px;
  font-size: .82rem;
  outline: none;
  width: 130px;
}
.tz-cmt-write-info input:focus {
  border-color: rgba(212,168,79,.45);
  box-shadow: 0 0 0 2px var(--tz-gold-glow);
}
.tz-cmt-textarea {
  width: 100%;
  background: rgba(255,255,255,.04);
  color: var(--tz-text);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius-sm);
  padding: 12px 14px;
  font-size: .88rem;
  line-height: 1.65;
  resize: vertical;
  min-height: 80px;
  outline: none;
  font-family: var(--tz-font-main);
  box-sizing: border-box;
  transition: border-color .12s, box-shadow .12s;
}
.tz-cmt-textarea:focus {
  border-color: rgba(212,168,79,.45);
  box-shadow: 0 0 0 2px var(--tz-gold-glow);
}
.tz-cmt-write-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 8px;
  flex-wrap: wrap;
  gap: 8px;
}
.tz-cmt-byte { color: var(--tz-text-dim); font-size: .76rem; }

.tz-cmt-list { padding: 0; }
.tz-cmt-item {
  padding: 14px 20px;
  border-bottom: 1px solid var(--tz-border-subtle);
  transition: background .12s;
}
.tz-cmt-item:last-child { border-bottom: none; }
.tz-cmt-item:hover { background: var(--tz-bg-card-hover); }
.tz-cmt-item.tz-re {
  padding-left: 40px;
  background: rgba(10,63,48,.15);
  border-left: 2px solid rgba(212,168,79,.2);
}
.tz-cmt-item.tz-re:hover { background: rgba(10,63,48,.28); }
.tz-cmt-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
  flex-wrap: wrap;
}
.tz-cmt-author { color: var(--tz-gold-light); font-weight: 600; font-size: .85rem; }
.tz-cmt-date   { color: var(--tz-text-dim); font-size: .75rem; }
.tz-cmt-body   { color: var(--tz-text); font-size: .88rem; line-height: 1.7; }
.tz-cmt-btns   { margin-top: 6px; display: flex; gap: 6px; }
.tz-cmt-btn-reply {
  color: var(--tz-text-dim);
  font-size: .75rem;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  transition: color .12s;
  font-family: var(--tz-font-main);
}
.tz-cmt-btn-reply:hover { color: var(--tz-gold-light); }

/* ================================================================
   글쓰기 폼
   ================================================================ */
.tz-write-wrap {
  background: var(--tz-bg-card);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius);
  overflow: hidden;
  backdrop-filter: blur(6px);
}
.tz-write-head {
  background: linear-gradient(90deg, rgba(10,63,48,.7), rgba(13,82,64,.4));
  padding: 14px 20px;
  border-bottom: 1px solid rgba(212,168,79,.15);
}
.tz-write-head h2 {
  color: var(--tz-gold);
  font-size: 1rem;
  font-weight: 700;
  margin: 0;
}
.tz-write-body { padding: 20px; }
.tz-write-row { margin-bottom: 14px; }
.tz-write-label {
  color: var(--tz-text-muted);
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .03em;
  margin-bottom: 6px;
  display: block;
}
.tz-write-input,
.tz-write-select {
  width: 100%;
  background: rgba(255,255,255,.04);
  color: var(--tz-text);
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius-sm);
  padding: 10px 14px;
  font-size: .88rem;
  outline: none;
  box-sizing: border-box;
  transition: border-color .12s, box-shadow .12s;
  font-family: var(--tz-font-main);
}
.tz-write-input:focus,
.tz-write-select:focus {
  border-color: rgba(212,168,79,.45);
  box-shadow: 0 0 0 2px var(--tz-gold-glow);
}
.tz-write-footer {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 16px 20px;
  border-top: 1px solid var(--tz-border-subtle);
  background: rgba(255,255,255,.02);
}
.tz-editor-wrap {
  border: 1px solid var(--tz-border-subtle);
  border-radius: var(--tz-radius-sm);
  overflow: hidden;
  transition: border-color .12s, box-shadow .12s;
}
.tz-editor-wrap:focus-within {
  border-color: rgba(212,168,79,.45);
  box-shadow: 0 0 0 2px var(--tz-gold-glow);
}

/* ================================================================
   모바일 반응형 (게시판)
   ================================================================ */
@media (max-width: 767px) {
  .tz-list-table thead th.hide-mo,
  .tz-list-table tbody td.hide-mo { display: none; }
  .tz-view-subject { padding: 14px 16px; }
  .tz-view-content { padding: 16px; }
  .tz-view-info { padding: 8px 16px; }
  .tz-view-good { padding: 12px 16px; }
  .tz-navi-row { padding: 10px 14px; }
  .tz-cmt-item { padding: 12px 16px; }
  .tz-cmt-item.tz-re { padding-left: 28px; }
  .tz-write-body { padding: 14px; }
  .tz-write-footer { padding: 12px 14px; }
  .tz-list-bottom { flex-direction: column; align-items: stretch; }
  .tz-board-header { padding: 14px 16px; }
  .tz-board-header h2 { font-size: 1.05rem; }
}


/* ================================================================
   TOTOZ Integrated Header / Menu Responsive Fix
   ================================================================ */
#nt_lnb{
  border-bottom:1px solid rgba(212,168,79,.12);
  background:rgba(4,18,13,.72);
  backdrop-filter:blur(10px);
}
#nt_lnb .breadcrumb, #nt_lnb ul, #nt_lnb li{list-style:none}
#nt_header .tz-top-search,
#nt_header .sch-wrap,
#nt_header .sch-box{max-width:100%}
#nt_header .logo, #nt_header .site-logo{display:flex;align-items:center}
#nt_header img{max-width:100%;height:auto}
#nt_menu{
  background:linear-gradient(180deg, #0d4b3a 0%, #0a382c 100%) !important;
  border-top:1px solid rgba(212,168,79,.12);
  border-bottom:1px solid rgba(212,168,79,.18);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
#nt_menu .me-li > a,
#nt_menu .me-li > .tz-menu-link{
  min-height:54px;
  display:flex !important;
  align-items:center;
  justify-content:center;
}
#nt_menu .me-a{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:54px;
  white-space:nowrap;
}
#nt_menu .tz-submenu,
#nt_menu .sub-1div,
#nt_menu .sub-2div{
  background:#0b231a;
  border:1px solid rgba(212,168,79,.16);
  box-shadow:0 18px 36px rgba(0,0,0,.28);
}
#nt_menu .sub-1da,
#nt_menu .sub-2da{
  color:#d8e4dc;
  line-height:1.6;
}
#nt_menu .sub-1da:hover,
#nt_menu .sub-2da:hover{
  color:#f0cb80;
  background:rgba(212,168,79,.06);
}
#nt_header .btn,
#nt_header .btn-search,
#nt_header .btn-user,
#nt_header .btn-menu{
  min-height:40px;
  border-radius:10px;
}
#nt_header input[type="text"],
#nt_header input[type="search"]{
  min-height:42px;
  border-radius:10px;
}
.page-title, .page-title-wrap{
  margin-bottom:18px;
}
@media (max-width: 991.98px){
  #nt_lnb{display:none !important}
  #nt_menu{display:none !important}
}
@media (max-width: 767.98px){
  #nt_header{position:relative;z-index:20}
  #nt_header .nt-container{padding-left:14px !important;padding-right:14px !important}
  #nt_header .logo img{max-height:34px;width:auto}
  #nt_header .btn,
  #nt_header .btn-search,
  #nt_header .btn-user,
  #nt_header .btn-menu{
    min-width:40px;
    min-height:40px;
    padding:0 12px;
  }
}
