/* 계산나라 사이트 디자인 (GeneratePress·Astra 기준, 다른 테마에서도 무난하게) */
:root{--k-ink:#14222E;--k-sub:#56646F;--k-paper:#F4F6F3;--k-line:#DCE3DE;--k-teal:#0E6B58;--k-deep:#0A4F41;--k-soft:#E2F0EA;--k-amber:#F0B45A;--k-amber-soft:#FCF1DE;--k-minus:#A5561B;
  --k-head:"IBM Plex Sans KR","Noto Sans KR","Apple SD Gothic Neo",sans-serif;--k-body:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif}
body.lc-site{background:var(--k-paper);color:var(--k-ink);font-family:var(--k-body);word-break:keep-all;overflow-wrap:anywhere}
.lc-site a{color:var(--k-teal)}
.lc-site a:hover{color:var(--k-deep)}
.lc-site h1,.lc-site h2,.lc-site h3,.lc-site .entry-title{font-family:var(--k-head);letter-spacing:-.02em;color:var(--k-ink)}
.lc-site .entry-title{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.25}

/* 머리글 */
.lc-site .site-header,.lc-site .ast-primary-header-bar{background:#fff;border-bottom:1px solid var(--k-line)}
.lc-site .main-title a,.lc-site .site-title a{display:inline-flex;align-items:center;gap:10px;font-family:var(--k-head);font-weight:700;font-size:1.45rem;color:var(--k-ink)!important;letter-spacing:-.02em;text-decoration:none}
.lc-site .main-title a::before,.lc-site .site-title a::before{content:"";width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:var(--k-teal) url(icons/mark-64.png) center/100% no-repeat}
.lc-site .site-description{display:none}
.lc-site .main-navigation,.lc-site .main-navigation ul ul{background:#fff}
.lc-site .main-navigation .main-nav ul li a,.lc-site .main-header-menu .menu-link{color:var(--k-ink);font-weight:600;font-size:15px}
.lc-site .main-navigation .main-nav ul li:hover>a,.lc-site .main-navigation .main-nav ul li.current-menu-item>a,.lc-site .main-header-menu .current-menu-item>.menu-link{color:var(--k-teal)}
.lc-site .main-navigation .main-nav ul li:last-child>a{color:var(--k-teal)}

/* 본문 상자 */
.lc-site .inside-article,.lc-site .ast-article-single{border-radius:20px;border:1px solid var(--k-line)}
.lc-site .entry-content{font-size:17px;line-height:1.8}
.lc-site .entry-content h2{font-size:1.45rem;margin-top:1.8em}
.lc-site .entry-content table{border-color:var(--k-line)}

/* 첫 화면: 제목·상자 숨기고 시안 그대로 */
.lc-front .entry-header,.lc-front .page-header,.lc-front .ast-archive-description{display:none}
.lc-front .inside-article,.lc-front .ast-article-single{background:transparent;border:0;padding:0!important;box-shadow:none}
.lc-front .site-main{margin-top:24px}
.lc-front .entry-content{margin-top:0}

/* 이동 경로 */
.lc-crumb{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:14px;color:var(--k-sub);margin:0 0 18px}
.lc-crumb a{color:var(--k-sub);text-decoration:none}
.lc-crumb a:hover{color:var(--k-teal)}
.lc-crumb i{font-style:normal;color:#9AA8A0}
.lc-crumb span{color:var(--k-ink);font-weight:500}
.lc-none{padding:14px 16px;border-radius:12px;background:var(--k-amber-soft);color:#7A5210;font-size:15px;margin:0}
.lc-hub section[hidden]{display:none!important}

/* 바닥글 */
.lc-site .site-footer .site-info,.lc-site .site-footer .footer-widgets,.lc-site .ast-small-footer,.lc-site .site-below-footer-wrap{background:var(--k-ink);color:#C9D3CC}
.lc-site .site-footer a,.lc-site .ast-small-footer a{color:#E6EEE9}
.lc-site .site-footer .menu a{font-size:14px}

/* ===== 첫 화면 [lc_home] ===== */
.lch{display:grid;gap:28px;font-family:var(--k-body);color:var(--k-ink);word-break:keep-all}
.lch *{box-sizing:border-box}
.lch a{text-decoration:none!important}
.lch h2{font-family:var(--k-head);font-size:clamp(1.3rem,3vw,1.7rem);margin:0!important;letter-spacing:-.02em}
.lch small{display:block;font-size:14px;color:var(--k-sub);font-weight:400}

.lch-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);align-items:center;padding:clamp(24px,5vw,56px);border-radius:28px;background:var(--k-teal);background-image:radial-gradient(circle at 92% 8%,rgba(240,180,90,.22),transparent 38%),linear-gradient(135deg,#0E6B58,#0A4F41);color:#fff}
.lch-hero-l{display:grid;gap:16px;min-width:0}
.lch-badge{justify-self:start;font-size:14px;font-weight:700;color:var(--k-deep);background:var(--k-amber);padding:6px 14px;border-radius:999px}
.lch-h1{font-family:var(--k-head)!important;font-size:clamp(2rem,5.2vw,3.5rem)!important;line-height:1.15!important;margin:0!important;color:#fff!important;letter-spacing:-.03em}
.lch-lead{margin:0!important;font-size:clamp(1rem,2vw,1.2rem);color:#D6EBE3;line-height:1.7}
.lch-search{display:flex;align-items:center;gap:10px;background:#fff;border-radius:16px;padding:8px 8px 8px 18px;color:var(--k-sub);box-shadow:0 12px 30px rgba(10,40,32,.25);margin:4px 0 0}
.lch-search input{flex:1;min-width:0;border:0!important;outline:0;background:transparent!important;font:inherit;font-size:18px;padding:10px 0!important;color:var(--k-ink);box-shadow:none!important;margin:0}
.lch-search button{border:0;border-radius:12px;background:var(--k-ink);color:#fff;font:inherit;font-weight:700;font-size:16px;padding:12px 22px;cursor:pointer;margin:0;line-height:1.2}
.lch-search button:hover{background:#000}
.lch-chips{display:flex;flex-wrap:wrap;gap:8px}
.lch-chips a{font-size:15px;color:#fff!important;border:1px solid rgba(255,255,255,.35);padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.08)}
.lch-chips a:hover{background:rgba(255,255,255,.18)}

.lch-stub{background:#fff;color:var(--k-ink);border-radius:22px;padding:22px;display:grid;gap:12px;box-shadow:0 20px 44px rgba(6,32,26,.3);min-width:0}
.lch-stub-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px;font-weight:700;color:var(--k-sub)}
.lch-seg{display:inline-flex;border:1px solid var(--k-line);border-radius:999px;overflow:hidden}
.lch-seg button{border:0;background:#fff;color:var(--k-sub);font:inherit;font-size:13px;padding:5px 11px;cursor:pointer;margin:0;line-height:1.3}
.lch-seg button[aria-pressed="true"]{background:var(--k-soft);color:var(--k-deep);font-weight:700}
.lch-stub-b{display:grid;border-top:1px dashed var(--k-line)}
.lch-row{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px dashed var(--k-line);font-size:15px}
.lch-row span:last-child{font-family:"IBM Plex Mono",ui-monospace,monospace;font-variant-numeric:tabular-nums;font-weight:600}
.lch-row.is-m span:last-child{color:var(--k-minus)}
.lch-stub-f{display:flex;justify-content:space-between;align-items:end;gap:10px;flex-wrap:wrap;padding:14px 16px;border-radius:14px;background:var(--k-soft)}
.lch-stub-f>span{font-weight:700;color:var(--k-deep)}
.lch-stub-f small{font-size:13px}
.lch-stub-f b{font-family:var(--k-head);font-size:clamp(1.7rem,4vw,2.2rem);color:var(--k-deep);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.lch-stub-go{justify-self:end;font-weight:700;font-size:15px}

.lch-sec{display:grid;gap:16px}
.lch-sec-h{display:flex;justify-content:space-between;align-items:end;gap:10px}
.lch-sec-h a{font-weight:700;font-size:15px}
.lch-cats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.lch-cat{display:grid;gap:8px;align-content:start;padding:24px 22px;background:#fff;border:1px solid var(--k-line);border-radius:20px;color:var(--k-ink)!important;transition:border-color .15s,transform .15s}
.lch-cat svg{color:var(--k-teal);background:var(--k-soft);border-radius:14px;padding:10px;width:56px;height:56px}
.lch-cat b{font-family:var(--k-head);font-size:20px;margin-top:6px}
.lch-cat span{font-size:15px;color:var(--k-sub);line-height:1.6}
.lch-cat small{margin-top:4px;font-weight:700;color:var(--k-teal)}
.lch-cat:hover{border-color:var(--k-teal);transform:translateY(-2px)}

.lch-two{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px}
.lch-panel{background:#fff;border:1px solid var(--k-line);border-radius:22px;padding:clamp(18px,3vw,28px);display:grid;gap:12px;align-content:start}
.lch-panel.is-soft{background:var(--k-amber-soft);border-color:#F1DDB8}
.lch-ranks,.lch-evs{display:grid;gap:4px}
.lch-rank{display:grid;grid-template-columns:44px minmax(0,1fr) 20px;gap:12px;align-items:center;padding:14px 6px;border-bottom:1px solid var(--k-line);color:var(--k-ink)!important}
.lch-rank:last-child{border-bottom:0}
.lch-rank b{font-size:17px}
.lch-no{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:22px;font-weight:600;color:var(--k-teal)}
.lch-arr{color:var(--k-sub)}
.lch-rank:hover b{color:var(--k-teal)}
.lch-ev{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center;padding:12px;border-radius:14px;background:#fff;color:var(--k-ink)!important;margin-bottom:6px}
.lch-ev[hidden]{display:none!important}
.lch-ev b{font-size:16px}
.lch-dd{display:flex;align-items:center;justify-content:center;height:52px;border-radius:12px;background:var(--k-soft);color:var(--k-deep);font-family:var(--k-head);font-weight:700;font-size:17px}
.lch-ev.is-soon .lch-dd{background:var(--k-amber);color:#4A2F05}
.lch-ev:hover b{color:var(--k-teal)}

.lch-guides{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.lch-guide{display:grid;gap:10px;align-content:start;min-height:140px;padding:22px;border-radius:20px;background:#fff;border:1px solid var(--k-line);color:var(--k-ink)!important}
.lch-guide span{justify-self:start;font-size:13px;font-weight:700;color:#7A4E9C;background:#F1E9F7;padding:3px 10px;border-radius:999px}
.lch-guide b{font-family:var(--k-head);font-size:18px;line-height:1.45}
.lch-guide:hover{border-color:var(--k-teal)}

.lch-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#2A3A47;border-radius:22px;overflow:hidden}
.lch-trust div{background:var(--k-ink);color:#C9D3CC;padding:24px;display:grid;gap:6px}
.lch-trust b{font-family:var(--k-head);font-size:clamp(1.6rem,3.5vw,2.2rem);color:var(--k-amber)}
.lch-trust span{font-size:15px}

@media (max-width:1024px){.lch-cats{grid-template-columns:repeat(3,minmax(0,1fr))}.lch-guides{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.lch-hero,.lch-two{grid-template-columns:minmax(0,1fr)}.lch-trust{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){
  .lch{gap:22px}
  .lch-hero{border-radius:22px;padding:24px 18px}
  .lch-search{padding-left:12px}.lch-search svg{display:none}.lch-search input{font-size:16px}.lch-search button{padding:11px 16px}
  .lch-cats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .lch-cat{padding:18px 16px}.lch-cat svg{width:48px;height:48px}.lch-cat span{display:none}
  .lch-guides{grid-template-columns:minmax(0,1fr)}.lch-guide{min-height:0}
  .lch-stub{padding:18px}
}

/* ===== 모바일 하단 탭 ===== */
.lc-tabbar{display:none}
@media (max-width:760px){
  body.lc-site{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
  .lc-tabbar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:999;background:#fff;border-top:1px solid var(--k-line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -6px 20px rgba(20,34,46,.06)}
  .lc-tabbar a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:12px;color:var(--k-sub)!important;text-decoration:none;padding:4px 0;min-height:48px;justify-content:center}
  .lc-tabbar a[aria-current="page"]{color:var(--k-teal)!important;font-weight:700}
}

/* ===== 앱 설치 안내 ===== */
.lc-install{position:fixed;left:12px;right:12px;bottom:calc(80px + env(safe-area-inset-bottom));z-index:1000;display:flex;align-items:center;gap:10px;padding:12px 12px 12px 14px;background:var(--k-ink);color:#fff;border-radius:16px;box-shadow:0 14px 34px rgba(0,0,0,.25);font-family:var(--k-body)}
.lc-install p{margin:0;flex:1;font-size:14px;line-height:1.5}
.lc-install-i{flex:0 0 36px;height:36px;border-radius:10px;background:var(--k-teal) url(icons/mark-64.png) center/100% no-repeat}
.lc-install-go{border:0;border-radius:10px;background:var(--k-amber);color:#3A2604;font:inherit;font-weight:700;font-size:14px;padding:9px 14px;cursor:pointer;margin:0}
.lc-install-x{border:0;background:transparent;color:#C9D3CC;font-size:22px;line-height:1;padding:4px 6px;cursor:pointer;margin:0}
.lc-app .lc-install{display:none}
@media (prefers-reduced-motion:reduce){.lch-cat{transition:none}}

/* 바닥글 정보 링크 */
.lc-foot-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;margin:0 0 8px}
.lc-foot-links a{color:#E6EEE9!important;text-decoration:none;font-size:14px}
.lc-foot-links a:hover{text-decoration:underline}
.lc-copy{display:block;font-size:13px;color:#9FB0A7}
.lc-foot-fallback{background:#14222E;padding:18px 16px;text-align:center}
@media (max-width:760px){.lc-foot-fallback{padding-bottom:84px}}
