@charset "utf-8";

/* itweb2 - itweb/Asli 참고 기반 */

:root {
  --font-primary: 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --font-secondary: 'Poppins', sans-serif;
  --paragraph-color: #20211F;
  --color-accent: #3d7abe;
  --color-links: #666;
  --color-border-opacity: rgba(32, 33, 32, .2);
  --color-submenu-hover: #3d7abe;
  --color-submenu-hover-bg: rgba(61, 122, 190, .08);
}

*,*::before,*::after{box-sizing:border-box}
html{
  font-size:62.5%;
  overflow-y:scroll;
  -webkit-font-smoothing:subpixel-antialiased;
  -moz-osx-font-smoothing:auto;
  text-rendering:optimizeLegibility;
  min-height:100%;
  scrollbar-gutter:stable;
  /* smooth는 scrollTo(…, behavior:'auto')까지 느려지게 할 수 있음 — 휠/핀 스크롤은 즉시 반응 */
  scroll-behavior:auto;
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;
  padding:0;
  font-size:1.6rem;
  line-height:2.4rem;
  font-family:var(--font-primary);
  background:#fff;
  color:var(--paragraph-color);
  min-width:320px;
  width:100%;
  min-height:100%;
  word-wrap:break-word;
  overflow-wrap:anywhere;
  overflow-x:clip;
}
img,iframe{max-width:100%}
h1,h2,h3,h4,h5,h6,ul,dl,dt,dd,p,form{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit;text-decoration:none;transition:color .3s ease}
img{vertical-align:middle;max-width:100%}
button{cursor:pointer}
hr{display:none}
.sound_only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}

.d-flex-centered{display:flex;align-items:center;justify-content:center}
.d-inline-flex-centered{display:inline-flex;align-items:center;justify-content:center}
a:hover{color:var(--color-accent)}

#wrapper{min-width:320px;width:100%;padding:0 20px}
#container_wr{width:100%}
#container{min-height:400px}
#aside{display:none}

/* 그누보드 폼 - 게시판/로그인 등 */
.tbl_wrap table{width:100%;border-collapse:collapse}
.tbl_head01 th,.tbl_head01 td{padding:12px;border:1px solid #eee}
.tbl_frm01 th{width:120px;background:#f8f9fa;font-weight:600}
.frm_input{height:40px;padding:0 12px;border:1px solid #ddd;border-radius:4px}
.btn_submit{padding:10px 24px;background:var(--color-accent);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer}
.btn_submit:hover{background:#2e6ba3}

/* 푸터 */
#ft{background:#1a2332;color:rgba(255,255,255,0.8);padding:60px 20px 40px;margin-top:60px}
.ft-inner{width:100%;padding:0 20px;text-align:center}
.ft-link{margin-bottom:20px}
.ft-link a{color:rgba(255,255,255,0.9);margin:0 12px}
.ft-link a:hover{color:#fff}
.ft-info p{font-size:13px;line-height:1.8;margin-bottom:16px}
.ft-copy{font-size:12px;color:rgba(255,255,255,0.6)}
#top_btn{position:fixed;bottom:32px;right:32px;width:52px;height:52px;border:2px solid rgba(61,122,190,.4);background:rgba(255,255,255,.95);color:var(--color-accent);border-radius:50%;font-size:18px;cursor:pointer;z-index:90;box-shadow:0 4px 20px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;transition:border-color .35s cubic-bezier(.25,.46,.45,.94),background .35s,color .35s,transform .35s,box-shadow .35s}
#top_btn:hover{border-color:var(--color-accent);background:var(--color-accent);color:#fff;box-shadow:0 6px 24px rgba(61,122,190,.35);transform:translateY(-2px)}
