/* 소셜라인 랩 테마 공통: 기본 글꼴·헤더·모바일 메뉴·글 본문·목록. 정적 미리보기와 워드프레스 테마가 같은 파일을 씀
   본문 디자인(.sllab …)은 sllab.bundle.css, 푸터는 sllab-footer.css */
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:#1e293b;font-family:Pretendard,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;word-break:keep-all}
img{max-width:100%;height:auto}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.sl-skip{position:absolute;left:-9999px;top:0;z-index:100;padding:12px 16px;background:#14213b;color:#fff;font-weight:700}
.sl-skip:focus{left:12px;top:12px}

/* ===== 헤더 ===== */
.sl-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e2e8f0;font-family:Pretendard,"Apple SD Gothic Neo","Malgun Gothic",sans-serif}
body.admin-bar .sl-header{top:32px}
.sl-header a{text-decoration:none}
.sl-hin{position:relative;max-width:1240px;margin:0 auto;padding:0 20px;min-height:72px;display:flex;align-items:center;gap:24px;box-sizing:border-box}
.sl-logo{display:flex;align-items:center;margin-right:auto;font-size:20px;font-weight:800;line-height:1;color:#14213b;white-space:nowrap}
.sl-logo img{display:block;height:28px;width:auto;max-width:none} /* 공식 SOCIAL LINE 로고(원본 비율 490:80) */
.sl-menu,.sl-menu ul{list-style:none;margin:0;padding:0}
.sl-menu{display:flex;gap:4px}
.sl-menu>li{position:relative}
.sl-menu>li>a{display:flex;align-items:center;min-height:72px;padding:0 12px;color:#14213b;font-size:15px;font-weight:600;line-height:1;white-space:nowrap}
.sl-menu>li>a:hover,.sl-menu>li.current-menu-item>a,.sl-menu>li.current-menu-ancestor>a{color:#1f5fae}
.sl-menu>li.menu-item-has-children>a::after{content:"";width:6px;height:6px;margin-left:7px;border:solid #64748b;border-width:0 1.5px 1.5px 0;transform:rotate(45deg) translateY(-3px)}
.sl-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:220px;padding:8px;background:#14213b;border-radius:0 0 12px 12px;box-shadow:0 18px 40px rgba(20,33,59,.2);box-sizing:border-box}
.sl-menu li:hover>.sub-menu,.sl-menu li:focus-within>.sub-menu{display:block}
.sl-menu .sub-menu a{display:block;padding:10px 12px;border-radius:8px;color:#e2e8f0;font-size:15px;font-weight:500;line-height:1.4;white-space:nowrap}
.sl-menu .sub-menu a:hover,.sl-menu .sub-menu a:focus-visible{background:rgba(255,255,255,.08);color:#fff}
.sl-header a:focus-visible,.sl-toggle:focus-visible{outline:3px solid #9cc3ef;outline-offset:2px;border-radius:6px}
.sl-tel{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:10px;background:#ff7a45;color:#fff!important;font-size:14px;font-weight:800;line-height:1;white-space:nowrap}
.sl-tel:hover{background:#f2662f}
.sl-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer}
.sl-toggle span,.sl-toggle span::before,.sl-toggle span::after{display:block;width:18px;height:2px;background:#14213b;border-radius:2px;position:relative;transition:transform .15s}
.sl-toggle span::before,.sl-toggle span::after{content:"";position:absolute;left:0}
.sl-toggle span::before{top:-6px}.sl-toggle span::after{top:6px}
.sl-header.is-open .sl-toggle span{background:transparent}
.sl-header.is-open .sl-toggle span::before{top:0;transform:rotate(45deg)}
.sl-header.is-open .sl-toggle span::after{top:0;transform:rotate(-45deg)}
@media (max-width:1024px){
  .sl-hin{min-height:64px;gap:10px}
  .sl-toggle{display:inline-flex}
  .sl-nav{display:none;position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 64px);overflow:auto;padding:4px 20px 20px;background:#fff;border-top:1px solid #e2e8f0;box-shadow:0 18px 40px rgba(20,33,59,.15);box-sizing:border-box}
  .sl-header.is-open .sl-nav{display:block}
  .sl-menu{flex-direction:column;gap:0}
  .sl-menu>li>a{min-height:50px;padding:0;border-bottom:1px solid #f1f5f9;font-size:16px}
  .sl-menu>li.menu-item-has-children>a::after{display:none}
  .sl-menu .sub-menu{display:block;position:static;min-width:0;padding:2px 0 8px 14px;background:none;box-shadow:none;border-radius:0}
  .sl-menu .sub-menu a{padding:10px 0;color:#334155;white-space:normal}
  .sl-menu .sub-menu a:hover{background:none;color:#1f5fae}
}
@media (max-width:782px){body.admin-bar .sl-header{top:46px}}
@media (max-width:600px){body.admin-bar .sl-header{top:0}}
@media (max-width:1024px){.sl-logo img{height:24px}}
@media (max-width:420px){.sl-logo img{height:20px}.sl-tel{padding:0 12px;font-size:13px}.sl-tel .full{display:none}}

/* ===== 글 본문(단일 글·일반 페이지) — 운영 사이트 사용자 정의 CSS의 본문 장식(인용 상자·형광 밑줄)도 옮김 ===== */
.sl-main{display:block}
.sl-article{max-width:780px;margin:0 auto;padding:48px 20px 24px;box-sizing:border-box}
.sl-crumb{font-size:14px;color:#64748b}
.sl-crumb a{color:#64748b;text-decoration:none}
.sl-crumb a:hover{color:#1f5fae}
.sl-cat{display:inline-block;margin-top:18px;padding:4px 10px;border-radius:999px;background:#eaf2fb;color:#1f5fae;font-size:13px;font-weight:700;text-decoration:none}
.sl-article h1.sl-title{margin:12px 0 0;font-size:32px;line-height:1.4;font-weight:800;color:#14213b;letter-spacing:-.01em}
.sl-meta{margin-top:12px;font-size:14px;color:#64748b}
.sl-thumb{margin:28px 0 0}
.sl-thumb img{display:block;width:100%;border-radius:14px}
.sl-content{margin-top:32px;font-size:17px;line-height:1.85;color:#1e293b}
.sl-content>*{margin-top:0;margin-bottom:1.25em}
.sl-content h2{margin:2.2em 0 .8em;padding-bottom:10px;border-bottom:2px solid #e2e8f0;font-size:25px;line-height:1.45;font-weight:800;color:#14213b}
.sl-content h3{margin:1.8em 0 .6em;font-size:20px;line-height:1.5;font-weight:800;color:#14213b}
.sl-content h4{margin:1.5em 0 .5em;font-size:18px;font-weight:700;color:#14213b}
.sl-content a{color:#1f5fae;text-decoration:underline;text-underline-offset:3px}
.sl-content ul,.sl-content ol{padding-left:1.4em}
.sl-content li{margin:.35em 0}
.sl-content strong{color:#0f172a}
.sl-content img,.sl-content figure img{border-radius:10px}
.sl-content figure{margin-left:0;margin-right:0}
.sl-content figcaption{margin-top:8px;font-size:14px;color:#64748b;text-align:center}
.sl-content blockquote{margin:1.5em 0;padding:25px 30px;border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.sl-content blockquote p{margin:0;font-style:normal;line-height:1.7}
.sl-content blockquote p+p{margin-top:.8em}
.sl-content u,.sl-content span[style*="underline"],.sl-content .highlight{text-decoration:none!important;background:linear-gradient(to top,rgba(0,255,200,.4) 45%,transparent 45%);padding:0 2px;color:inherit}
.sl-content table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6}
.sl-content th,.sl-content td{padding:10px 12px;border:1px solid #e2e8f0;text-align:left;vertical-align:top}
.sl-content th{background:#f1f5f9;font-weight:700;color:#14213b}
.sl-content .wp-block-table,.sl-content .sl-table-wrap{overflow-x:auto}
.sl-content hr{border:0;border-top:1px solid #e2e8f0;margin:2em 0}
.sl-content code{padding:2px 6px;border-radius:6px;background:#f1f5f9;font-size:.9em}
.sl-content details{margin:12px 0;padding:14px 18px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}
.sl-content summary{cursor:pointer;font-weight:700;color:#14213b}
.sl-content .rank-math-faq-item,.sl-content .schema-faq-section{margin:0 0 14px;padding:16px 20px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}
.sl-content .rank-math-question,.sl-content .schema-faq-question{display:block;margin:0 0 6px;font-size:17px;font-weight:800;color:#14213b}
.sl-content .rank-math-answer p:last-child,.sl-content .schema-faq-answer{margin-bottom:0}
.sl-content .alignleft{float:left;margin:.3em 1.5em 1em 0}
.sl-content .alignright{float:right;margin:.3em 0 1em 1.5em}
.sl-content .aligncenter{display:block;margin-left:auto;margin-right:auto}
.sl-content::after{content:"";display:table;clear:both}
.sl-tags{margin-top:28px;display:flex;flex-wrap:wrap;gap:8px}
.sl-tags a{padding:4px 10px;border:1px solid #e2e8f0;border-radius:999px;color:#475569;font-size:13px;text-decoration:none}
.sl-after{margin-top:40px}
.sl-comments{max-width:780px;margin:0 auto;padding:0 20px 40px;box-sizing:border-box}
.sl-comments textarea,.sl-comments input[type=text],.sl-comments input[type=email],.sl-comments input[type=url]{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;box-sizing:border-box}
.sl-comments input[type=submit]{padding:12px 20px;border:0;border-radius:10px;background:#14213b;color:#fff;font-weight:700;cursor:pointer}
@media (max-width:767px){
  .sl-article{padding:32px 16px 16px}
  .sl-article h1.sl-title{font-size:25px}
  .sl-content{font-size:16px}
  .sl-content h2{font-size:21px}
  .sl-content h3{font-size:18px}
  .sl-content blockquote{padding:18px 20px}
  .sl-content table{display:block;overflow-x:auto}
}
