/*
Theme Name: MOONMOON AI WORLD
Description: AI·업무 자동화 정보 공유 블로그용 블록 테마. Pretendard, 청록-파랑 강조, 점 격자 히어로, 첫 글 강조 카드. 워프 디자인 글(.ws-post)과 같은 톤.
Version: 2.1.0
Requires at least: 6.6
Requires PHP: 7.4
Author: AX 업무자동화 담당
License: GPLv2 or later
Text Domain: moonmoon-ai-world
*/
:root{--in-grad:linear-gradient(120deg,#1b7f6b 0%,#2563eb 100%)}
body{background:#fff linear-gradient(180deg,#e9f2ff 0,#edf8f4 300px,#fff 720px) no-repeat;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{text-underline-offset:3px}
h1,h2,h3,h4,.wp-block-post-title,.wp-block-site-title,.wp-block-query-title{word-break:keep-all!important;overflow-wrap:normal!important;text-wrap:balance}
p,li,.wp-block-post-excerpt__excerpt{text-wrap:pretty}
mark{background:linear-gradient(transparent 56%,#ffe36e 56%);color:inherit;font-weight:700;padding:0 2px}
::selection{background:#d6efe8}

/* 머리 */
.in-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.6);backdrop-filter:saturate(1.8) blur(12px);-webkit-backdrop-filter:saturate(1.8) blur(12px);border-bottom:1px solid rgba(226,232,240,.8)}
.admin-bar .in-header{top:32px}
@media (max-width:782px){.admin-bar .in-header{top:46px}}
.in-brand{display:flex;align-items:center;gap:10px}
.in-brand::before{content:"";width:30px;height:30px;border-radius:9px;background:url("assets/logo.svg") center/contain no-repeat;box-shadow:0 4px 12px rgba(37,99,235,.22);flex:none}
.in-brand a,.in-header .wp-block-navigation a{text-decoration:none}
.in-header .wp-block-navigation a:hover{color:#0f172a}
.in-header .wp-block-search__button{background:transparent;color:#64748b;padding:6px;border:0}
.in-header .wp-block-search__button:hover{color:#0f172a}

/* 히어로 */
.in-hero{position:relative;isolation:isolate}
.in-hero::before{content:"";position:absolute;inset:-40px -20px 0;z-index:-1;background-image:radial-gradient(#e2e8f0 1.2px,transparent 1.2px);background-size:22px 22px;-webkit-mask-image:radial-gradient(ellipse 70% 80% at 30% 40%,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse 70% 80% at 30% 40%,#000 30%,transparent 75%)}
.in-eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid #e2e8f0;background:#fff;border-radius:999px;padding:5px 12px 5px 10px;font-size:13px;font-weight:600;color:#334155}
.in-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:#1b7f6b;box-shadow:0 0 0 4px rgba(27,127,107,.15)}
.in-grad{background:var(--in-grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* 카테고리 칩 */
.in-tabs{display:inline-flex!important;align-items:center;gap:2px!important;padding:5px;max-width:100%;overflow-x:auto;scrollbar-width:none;background:rgba(255,255,255,.78);border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 18px rgba(15,23,42,.04);backdrop-filter:blur(6px)}
.in-tabs::-webkit-scrollbar{display:none}
.in-tabs>*{margin:0!important}
.in-cats{list-style:none;display:flex;gap:2px;margin:0;padding:0}
.in-cats li{margin:0}
.in-tabs a{display:block;padding:8px 16px;border-radius:10px;font-size:14px;font-weight:600;color:#64748b;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}
.in-tabs a:hover{background:#f8fafc;color:#0f172a}
.in-tab-all.is-active a,.in-cats .current-cat a{background:#0f172a;color:#fff;box-shadow:0 2px 6px rgba(15,23,42,.18)}

/* 글 카드 */
.in-label{font-size:13px;font-weight:700;letter-spacing:.08em;color:#64748b}
.in-grid .wp-block-post-template{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:56px 32px!important}
@media (max-width:1000px){.in-grid .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:640px){.in-grid .wp-block-post-template{grid-template-columns:1fr!important;gap:40px!important}}
.in-grid .wp-block-post{display:flex;flex-direction:column}
.in-card .wp-block-post-featured-image{margin:0;border-radius:14px;overflow:hidden;border:1px solid #e2e8f0;background:#f8fafc}
.in-card .wp-block-post-featured-image img{aspect-ratio:16/9;object-fit:cover;transition:transform .35s ease}
.in-card:hover .wp-block-post-featured-image img{transform:scale(1.03)}
.in-card .wp-block-post-title a{text-decoration:none;color:#0f172a;background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;transition:background-size .25s}
.in-card:hover .wp-block-post-title a{background-size:100% 1.5px}
.in-card .wp-block-post-excerpt__excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.in-cat a{color:#1b7f6b;font-size:13px;font-weight:700;text-decoration:none}
.in-cat .wp-block-post-terms__separator{color:#e2e8f0}
.in-meta{color:#64748b;font-size:14px}
/* 1페이지 첫 글은 크게 가로 배치 */
@media (min-width:800px){
 body:not(.paged) .in-grid .wp-block-post:first-child{grid-column:1/-1;margin-bottom:24px}
 body:not(.paged) .in-grid .wp-block-post:first-child .in-card{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:center}
 body:not(.paged) .in-grid .wp-block-post:first-child .wp-block-post-title{font-size:30px!important;line-height:1.35!important}
 body:not(.paged) .in-grid .wp-block-post:first-child .wp-block-post-excerpt__excerpt{-webkit-line-clamp:3;font-size:16px}
}

/* 글 본문 */
.in-single-head .wp-block-post-title{letter-spacing:-.03em}
.wp-block-post-content img{border-radius:12px}
.wp-block-post-content figcaption{color:#64748b;font-size:15px;text-align:center}
.wp-block-post-content :where(p,li){font-size:17px}
.in-tags a{display:inline-block;padding:4px 12px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-size:14px;text-decoration:none;margin:0 6px 6px 0}
.in-tags .wp-block-post-terms__separator{display:none}
.in-nav{display:grid!important;grid-template-columns:1fr 1fr;gap:12px}
.in-nav>div{border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px;transition:border-color .15s}
.in-nav>div:hover{border-color:#1b7f6b}
.in-nav>div:empty{border:0}
.in-nav a{text-decoration:none;color:#0f172a;font-weight:700}
.in-nav .post-navigation-link-next{text-align:right}
@media (max-width:600px){.in-nav{grid-template-columns:1fr}}

/* 기타 */
.wp-block-query-pagination a,.wp-block-query-pagination span{text-decoration:none;padding:6px 10px;border-radius:8px}
.wp-block-query-pagination .current{background:#0f172a;color:#fff}
.wp-block-search__input{border:1px solid #e2e8f0;border-radius:10px;padding:12px 16px;font:inherit}
.wp-block-search__input:focus{outline:2px solid #1b7f6b;outline-offset:1px}
.in-footer{background:radial-gradient(900px 360px at 88% 0%,rgba(37,99,235,.38),transparent 62%),radial-gradient(800px 340px at 0% 100%,rgba(27,127,107,.36),transparent 62%),linear-gradient(135deg,#0b1220 0%,#0f1d3a 55%,#0b2633 100%);color:#cbd5e1}
.in-footer a{text-decoration:none;color:#cbd5e1}
.in-footer a:hover{color:#fff}
.in-footer .wp-block-site-title a{color:#fff}
.in-footer .wp-block-site-tagline{color:#94a3b8}
.in-footer .in-col-t{font-size:12px;font-weight:700;letter-spacing:.14em;color:#64748b;margin:0 0 14px}
.in-footer-cats{list-style:none;padding:0!important;margin:0!important;display:grid;gap:8px}
.in-footer-cats li{margin:0!important;line-height:1.5}
.in-footer-cats a{font-size:14px;color:#cbd5e1;display:inline-flex;align-items:center;gap:8px}
.in-footer-cats a::before{content:"";width:5px;height:5px;border-radius:50%;background:#5eead4;opacity:.7}
.in-footer-cats a:hover{color:#fff}
.in-footer .in-copy{color:#64748b;font-size:13px;margin:0}
.in-footer .in-copy a{color:#94a3b8}
.in-footer .in-copy a:hover{color:#fff}
.in-footer .in-rule{border:0;border-top:1px solid rgba(255,255,255,.1);margin:32px 0 20px}

/* 워프 디자인 글(.ws-post) 스타일 — 글 속 <style>이 걸러져도 같은 모양 유지 */

.ws-post{--ink:#191f28;--body:#333d4b;--muted:#6b7684;--line:#e5e8eb;--soft:#f6f7f9;--accent:#1b7f6b;--accent-soft:#e9f6f2;--warn:#c2410c;--warn-soft:#fff4ec;--red:#d22030;--hl:#ffe36e;
  max-width:720px;margin:0 auto;color:var(--body);font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-size:17px;line-height:1.8;letter-spacing:-.01em;word-break:keep-all;overflow-wrap:break-word}
.ws-post *{box-sizing:border-box}
.ws-post p{margin:0 0 1.15em}
.ws-post strong{color:var(--ink);font-weight:700}
.ws-post a{color:var(--accent);font-weight:600;text-underline-offset:3px}
.ws-post .lead{font-size:18px;line-height:1.75;color:var(--ink);background:var(--soft);border-radius:16px;padding:22px 24px;margin:0 0 2.2em}
.ws-post h2{font-size:25px;line-height:1.4;font-weight:800;letter-spacing:-.02em;color:var(--ink);margin:3em 0 1em;padding-top:1.4em;border-top:1px solid var(--line)}
.ws-post h2 .step{display:inline-block;width:34px;height:34px;line-height:34px;margin-right:10px;border-radius:50%;background:var(--accent);color:#fff;font-size:16px;text-align:center;vertical-align:3px}
.ws-post h3{font-size:20px;font-weight:700;color:var(--ink);margin:2em 0 .7em}
.ws-post mark.hl{background:linear-gradient(transparent 56%,var(--hl) 56%)!important;color:inherit!important;font-weight:700;padding:0 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.ws-post figure{margin:2em 0 2.4em;text-align:center}
.ws-post figure img{max-width:100%;height:auto;border-radius:12px;border:1px solid var(--line);box-shadow:0 8px 28px rgba(25,31,40,.07)}
.ws-post figcaption{font-size:15px;line-height:1.6;color:var(--muted);margin-top:.8em}
.ws-post ul,.ws-post ol{margin:0 0 1.3em;padding-left:1.3em}
.ws-post li{margin:.45em 0}
.ws-post li::marker{color:var(--accent);font-weight:700}
.ws-post ol.steps{list-style:none;padding:0;counter-reset:s var(--start,0)}
.ws-post ol.steps li{counter-increment:s;position:relative;padding:2px 0 2px 44px;margin:.9em 0}
.ws-post ol.steps li::before{content:counter(s);position:absolute;left:0;top:2px;width:30px;height:30px;line-height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:800;font-size:15px;text-align:center}
.ws-post .ui{display:inline-block;padding:0 8px;margin:0 1px;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;background:#fff;color:var(--ink);font-size:.88em;font-weight:600;line-height:1.7;white-space:nowrap}
.ws-post code{font-family:"D2Coding",Consolas,monospace;background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-size:.86em;overflow-wrap:anywhere}
.ws-post .prompt{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:.95em;line-height:1.75;color:var(--ink);background:var(--soft);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;padding:16px 18px;margin:.4em 0 1.8em}
.ws-post .prompt-t{font-weight:700;color:var(--ink);margin:1.6em 0 .2em}
.ws-post .who{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 24px;margin:0 0 2em;box-shadow:0 8px 24px rgba(25,31,40,.05)}
.ws-post .who-t{font-size:15px;font-weight:800;color:var(--accent);margin:0 0 .6em}
.ws-post .who ul{list-style:none;padding:0;margin:0 0 .9em}
.ws-post .who li{position:relative;padding-left:30px;margin:.5em 0}
.ws-post .who li::before{content:"✓";position:absolute;left:0;top:.15em;width:20px;height:20px;line-height:20px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:800;text-align:center}
.ws-post .who-why{margin:0;padding-top:.9em;border-top:1px dashed var(--line);font-size:15.5px;color:var(--muted)}
.ws-post .links{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 2em;padding:16px 18px;border-radius:14px;background:var(--soft)}
.ws-post .links-t{width:100%;margin:0 0 4px;font-size:14px;font-weight:800;color:var(--ink)}
.ws-post .go-row{margin:-.2em 0 1.2em;display:flex;flex-wrap:wrap;gap:8px}
.ws-post a.go{display:inline-flex;align-items:center;gap:6px;padding:7px 15px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--ink);font-size:14.5px;font-weight:700;line-height:1.5;text-decoration:none;box-shadow:0 2px 6px rgba(25,31,40,.05);transition:all .15s}
.ws-post a.go::after{content:"↗";color:var(--accent);font-weight:800}
.ws-post a.go:hover{border-color:var(--accent);background:var(--accent-soft)}
.ws-post a.go.main{background:linear-gradient(90deg,#13866f,#2bb594);border-color:transparent;color:#fff}
.ws-post a.go.main::after{color:#fff}
.ws-post .roadmap li a{color:inherit;text-decoration:none;font-weight:inherit}
.ws-post .roadmap{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1.6em;padding:0;list-style:none}
.ws-post .roadmap li{margin:0;padding:6px 14px;border-radius:999px;background:var(--soft);color:var(--muted);font-size:14.5px;font-weight:600}
.ws-post .roadmap li.on{background:var(--accent);color:#fff}
.ws-post .stats{display:flex;flex-wrap:wrap;gap:12px;margin:1.4em 0 1.8em}
.ws-post .stat{flex:1 1 150px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 14px;text-align:center}
.ws-post .stat b{display:block;font-size:clamp(20px,3.2vw,27px);line-height:1.3;font-weight:800;color:var(--accent);white-space:nowrap}
.ws-post .stat span{display:block;font-size:15px;line-height:1.5;color:var(--muted);text-wrap:balance}
.ws-post .stat.red b{color:var(--red)}
.ws-post .box,.ws-post .warn{border-radius:14px;padding:18px 22px;margin:1.6em 0 2em;border-left:4px solid var(--accent);background:var(--accent-soft)}
.ws-post .warn{border-left-color:var(--warn);background:var(--warn-soft)}
.ws-post .box p:last-child,.ws-post .warn p:last-child{margin-bottom:0}
.ws-post .tbl{overflow-x:auto;margin:1.4em 0 2.2em;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--line),0 8px 24px rgba(25,31,40,.06)}
.ws-post table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6}
.ws-post th,.ws-post td{border-bottom:1px solid var(--line);padding:13px 14px;text-align:center;vertical-align:middle}
.ws-post thead tr{background:linear-gradient(90deg,#13866f,#2bb594)}
.ws-post th{background:transparent;color:#fff;font-size:14.5px;font-weight:700;border-bottom:0;letter-spacing:.01em}
.ws-post tbody tr:nth-child(even) td{background:#f8faf9}
.ws-post tbody tr:hover td{background:var(--accent-soft)}
.ws-post td strong{color:var(--accent)}
.ws-post tr:last-child td{border-bottom:0}
.ws-post td:first-child{color:var(--ink);font-weight:700;background:#f2f7f5}
.ws-post tbody tr:nth-child(even) td:first-child{background:#ebf3f0}
.ws-post td.num{text-align:center;font-variant-numeric:tabular-nums}
.ws-post .lesson{counter-reset:l;list-style:none;padding:0}
.ws-post .lesson li{counter-increment:l;position:relative;padding:14px 0 14px 50px;margin:0;border-bottom:1px solid var(--line)}
.ws-post .lesson li:last-child{border-bottom:0}
.ws-post .lesson li::before{content:counter(l);position:absolute;left:0;top:14px;width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;text-align:center;line-height:34px}
.ws-post details{border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:.7em 0;background:#fff}
.ws-post details[open]{background:var(--soft)}
.ws-post summary{font-weight:700;color:var(--ink);cursor:pointer}
.ws-post details p{margin:.7em 0 0}
.ws-post .byline{font-size:14px;color:var(--muted);margin:0 0 .9em}
.ws-post .toc{margin:0 0 2em;padding:16px 20px;border:1px solid var(--line);border-radius:14px;font-size:15.5px}
.ws-post .toc ol{margin:.4em 0 0}
.ws-post .cta{margin:2.4em 0;padding:22px 24px;border-radius:16px;background:linear-gradient(135deg,#e9f6f2,#f6f7f9);border:1px solid #cfe9e1}
.ws-post .cta-t{font-size:17px;font-weight:800;color:var(--ink);margin:0 0 .6em}
.ws-post .cta p:last-child{margin-bottom:0}
.ws-post .meta{font-size:14px;color:var(--muted);margin-top:3em;padding-top:1em;border-top:1px solid var(--line)}
@media (max-width:600px){.ws-post{font-size:16px}.ws-post h2{font-size:22px}.ws-post .lead{font-size:16.5px;padding:18px}.ws-post .ui{white-space:normal}.ws-post th,.ws-post td{padding:10px 12px}}
.ws-post p,.ws-post li,.ws-post td,.ws-post figcaption{text-wrap:pretty}
.ws-post h2,.ws-post h3,.ws-post th,.ws-post .cta-t,.ws-post .who-t{text-wrap:balance}

.wp-block-post-content .ws-post{max-width:none}
