/* aiclass common.css — scripts/aiclass-css.js 가 생성. 손으로 고치지 말 것 */
@keyframes fadeIn{from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); }}
.entry-content h3{font-size: 1.15rem; font-weight: 600; color: #334155; margin-bottom: 8px;}
.entry-content code{background: #eff2f7; padding: 2px 6px; border-radius: 4px; font-size: 0.9em; color: #1e40af; font-weight: 500; font-family: 'JetBrains Mono', 'Fira Code', monospace;}
.entry-content .info-box{background: #f0f7ff; border: 1px solid #bfdbfe; border-left: 4px solid #3b82f6; border-radius: 8px; padding: 18px 22px; margin: 16px 0;}
.entry-content .info-box.warning{background: #fffbeb; border-color: #fde68a; border-left-color: #f59e0b;}
.entry-content .info-box p{margin-bottom: 8px;}
.entry-content .info-box p:last-child{margin-bottom: 0;}
.entry-content .info-box ul, .entry-content .info-box ol{margin: 8px 0 0;}
.entry-content .image-box{margin: 20px 0; text-align: center;}
.entry-content .image-box img{max-width: 100%; border-radius: 8px; border: 1px solid #e2e8f0;}
.entry-content .feature-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin: 20px 0;}
.entry-content .feature-card{background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 12px; padding: 20px; transition: box-shadow 0.2s, border-color 0.2s;}
.entry-content .feature-card:hover{border-color: #93c5fd; box-shadow: 0 4px 12px rgba(59, 130, 246, 0.08);}
.entry-content .feature-card h3{color: #2563eb; margin-bottom: 8px;}
.entry-content .feature-card p{font-size: 0.93rem; color: #64748b; margin-bottom: 0;}
.entry-content .comparison-table{width: 100%; border-collapse: collapse; margin: 16px 0; font-size: 0.95rem;}
.entry-content .comparison-table th{background: #f1f5f9; padding: 12px 16px; text-align: left; font-weight: 600; color: #334155; border-bottom: 2px solid #cbd5e1;}
.entry-content .comparison-table td{padding: 12px 16px; border-bottom: 1px solid #e2e8f0; color: #475569;}
.entry-content .comparison-table tr:hover td{background: #f8fafc;}
.entry-content .code-block{background: #1e293b; border-radius: 10px; margin: 16px 0; overflow: hidden;}
.entry-content .code-block .code-label{background: #334155; color: #94a3b8; padding: 8px 16px; font-size: 0.82rem; font-weight: 600; margin: 0; border-bottom: 1px solid #475569;}
.entry-content .code-block pre{padding: 16px 20px; color: #e2e8f0; font-size: 0.9rem; line-height: 1.7; overflow-x: auto; font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace; white-space: pre-wrap; word-break: break-word;}
.entry-content .code-block.good{border: 1px solid #22c55e40;}
.entry-content .code-block.good .code-label{background: #166534; color: #bbf7d0;}
.entry-content .code-block.bad{border: 1px solid #ef444440;}
.entry-content .code-block.bad .code-label{background: #991b1b; color: #fecaca;}
.entry-content .copy-btn{position: absolute; right: 8px; top: 50%; transform: translateY(-50%); padding: 4px 12px; border: 1px solid #64748b; border-radius: 6px; background: #475569; color: #e2e8f0; font-size: 0.75rem; font-weight: 500; cursor: pointer; transition: all 0.15s; line-height: 1.4;}
.entry-content .copy-btn:hover{background: #64748b; border-color: #94a3b8;}
.entry-content .copy-btn.copied{background: #166534; border-color: #22c55e; color: #bbf7d0;}
.entry-content .copy-progress{display: flex; align-items: center; gap: 10px; background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%); border: 1px solid #86efac; border-radius: 10px; padding: 12px 18px; margin-top: 10px; animation: progressIn 0.3s ease;}
.entry-content .cp-icon{font-size: 1.1rem; flex-shrink: 0;}
.entry-content .cp-text{font-size: 0.9rem; font-weight: 600; color: #166534;}
@keyframes progressIn{from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); }}
.entry-content .example{font-style: italic; color: #6b7280; font-size: 0.9rem;}
@media (max-width: 768px){
.entry-content .feature-grid{grid-template-columns: 1fr;}
.entry-content .comparison-table{font-size: 0.85rem;}
.entry-content .comparison-table th, .entry-content .comparison-table td{padding: 8px 10px;}
.entry-content .code-block pre{font-size: 0.82rem; padding: 12px 14px;}
}
/* 워드프레스 전용 */
.entry-content .lesson-hero{background:linear-gradient(135deg,#1e293b 0%,#334155 100%);border-radius:16px;padding:30px 28px 26px;text-align:center;margin:0 0 32px}
.entry-content .lesson-hero-icon{font-size:2.4rem;line-height:1;margin-bottom:8px}
.entry-content .lesson-hero-course{color:#93c5fd;font-size:.85rem;font-weight:700;letter-spacing:.3px;margin:0 0 6px}
.entry-content .lesson-hero-desc{color:#cbd5e1;font-size:1.05rem;margin:0}
.entry-content .lesson-nav{display:flex;gap:12px;margin:40px 0 0}
.entry-content .lesson-nav-item{flex:1 1 0;display:flex;flex-direction:column;gap:6px;padding:14px 18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;text-decoration:none;color:#1e293b;transition:border-color .2s}
.entry-content .lesson-nav-item.next{text-align:right;align-items:flex-end}
.entry-content .lesson-nav-item.empty{background:transparent;border-color:transparent}
.entry-content a.lesson-nav-item:hover{border-color:#93c5fd}
.entry-content .lesson-nav-label{font-size:.75rem;font-weight:700;color:#2563eb}
.entry-content .lesson-nav-title{font-weight:700;font-size:.95rem;line-height:1.4;word-break:keep-all}
.entry-content .lesson-nav-item.prev .lesson-nav-label:before{content:"← "}
.entry-content .lesson-nav-item.next .lesson-nav-label:after{content:" →"}
.entry-content .code-block .code-label{position:relative;padding-right:70px}
.entry-content .code-block pre{background:transparent;border:0;margin:0}
.entry-content .mock-feature h3,.entry-content .feature-header h3{margin:0 0 4px;border:0;padding:0}
.entry-content .highlight-item p,.entry-content .platform-card p,.entry-content .feature-header p,.entry-content .tip-box p,.entry-content .mock-project-desc{line-height:1.5}
.entry-content .ai-bubble code{font-weight:400}
/* ── 교육 사이트 구조 (mu-plugin aiclass-courses.php 가 내는 마크업) ── */
/* 강좌 카드 */
.ac-courses{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:8px 0 8px}
.ac-course{display:flex;gap:16px;padding:22px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;text-decoration:none;color:#1e293b;transition:border-color .2s,transform .2s,box-shadow .2s}
.ac-course:hover{border-color:#93c5fd;transform:translateY(-2px);box-shadow:0 6px 18px rgba(37,99,235,.08);color:#1e293b}
.ac-course.is-empty{opacity:.55}
.ac-course-icon{font-size:2rem;line-height:1;flex:0 0 auto;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:#eff6ff;border-radius:12px}
.ac-course-title{margin:0 0 6px;font-size:1.05rem;font-weight:800;line-height:1.35;word-break:keep-all}
.ac-course-desc{margin:0 0 10px;font-size:.88rem;color:#64748b;line-height:1.55;word-break:keep-all}
.ac-course-meta{font-size:.82rem;color:#2563eb;font-weight:600}
.ac-course-meta b{font-weight:800}
/* 홈 */
.home.page .entry-header,.home.page .page-header{display:none}
.home.page .site-content{max-width:1000px}
.home .ac-hero{background:linear-gradient(135deg,#0f172a 0%,#1e293b 55%,#1e3a8a 100%);border-radius:18px;padding:44px 36px;color:#fff;margin:0 0 36px;text-align:center}
.home .ac-hero h2{margin:0 0 10px;font-size:2rem;font-weight:900;color:#fff;border:0;padding:0;letter-spacing:-.5px;word-break:keep-all}
.home .ac-hero p{margin:0;color:#cbd5e1;font-size:1.05rem;line-height:1.6;word-break:keep-all}
.home .ac-section-title{font-size:1.35rem;font-weight:800;margin:34px 0 14px;padding:0 0 8px;border-bottom:2px solid #e8ebee}
.home .ac-section-title:first-child{margin-top:0}
.home.page .site-content{padding-top:28px}
.site-header .main-title{font-size:26px;line-height:1.2}
/* 메뉴를 제목 오른쪽에 (GeneratePress nav-float-right 의 float 배치를 그대로 쓰고 세로 중심만 맞춘다) */
.nav-float-right .site-header .site-branding{display:inline-block;margin-bottom:0!important;line-height:44px}
.nav-float-right .site-header .site-branding .main-title{line-height:44px;margin:0}
@media (min-width:769px){.nav-float-right .site-header .inside-header .main-navigation{float:right;margin:0}.nav-float-right .site-header .main-navigation .main-nav ul li a{line-height:44px}.nav-float-right .site-header .inside-header:after{content:"";display:table;clear:both}}
@media (max-width:768px){.nav-float-right .site-header .site-branding{display:block;line-height:1.3;margin-bottom:8px!important}.nav-float-right .site-header .site-branding .main-title{line-height:1.3}.nav-float-right .site-header .inside-header .main-navigation{float:none;clear:both;width:100%;margin:0}}
@media (max-width:768px){.site-header .main-title{font-size:20px}}
.ac-news{list-style:none;margin:0;padding:0}
.ac-news li{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #f1f3f6}
.ac-news a{color:#1e293b;text-decoration:none;font-weight:600;word-break:keep-all}
.ac-news a:hover{color:#2563eb}
.ac-news-date{color:#94a3b8;font-size:.85rem;white-space:nowrap}
.ac-news-empty{color:#94a3b8}
.ac-news-more{margin:12px 0 0;font-size:.9rem}
/* 「AI 강의」 루트 아카이브 = 강좌 카드 */
.ac-lecture-root .site-main>article,.ac-lecture-root .page-header{display:none}
.ac-root-title{font-size:1.8rem;font-weight:900;margin:0 0 6px}
.ac-root-desc{color:#64748b;margin:0 0 18px}
/* 강좌 페이지: 1강부터 번호 목록 */
.ac-course-archive .page-header{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:22px 24px;margin-bottom:18px}
.ac-course-archive .page-header h1{font-size:1.6rem;font-weight:900;margin:0 0 6px}
.ac-course-archive .page-header .taxonomy-description,.ac-course-archive .page-header .archive-description{color:#64748b;font-size:.95rem;line-height:1.6}
.ac-course-archive .page-header .taxonomy-description p,.ac-course-archive .page-header .archive-description p{margin:0}
.ac-course-archive .site-main{counter-reset:lesson}
.ac-course-archive article.post{counter-increment:lesson;margin-bottom:12px}
.ac-course-archive article.post .inside-article{padding:16px 20px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;transition:border-color .2s}
.ac-course-archive article.post .inside-article:hover{border-color:#93c5fd}
.ac-course-archive article.post .post-image,.ac-course-archive article.post .entry-meta,.ac-course-archive article.post .read-more-container,.ac-course-archive article.post footer{display:none}
.ac-course-archive article.post .entry-header{margin:0}
.ac-course-archive article.post .entry-title{font-size:1.05rem;font-weight:800;margin:0;line-height:1.4;display:flex;align-items:center;gap:10px}
.ac-course-archive article.post .entry-title:before{content:counter(lesson)"강";flex:0 0 auto;font-size:.78rem;font-weight:800;color:#2563eb;background:#dbeafe;padding:3px 9px;border-radius:6px}
.ac-course-archive article.post .entry-title a{color:#1e293b;text-decoration:none}
.ac-course-archive article.post .entry-summary{margin:6px 0 0 0;font-size:.9rem;color:#64748b;line-height:1.55}
.ac-course-archive article.post .entry-summary p{margin:0}
/* 강의 글: 강좌 목차 상자 */
.ac-toc{margin:34px 0 0;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;background:#fff}
.ac-toc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;background:#f8fafc;border-bottom:1px solid #e2e8f0}
.ac-toc-course{font-weight:800;color:#1e293b;text-decoration:none}
.ac-toc-course:hover{color:#2563eb}
.ac-toc-progress{font-size:.82rem;font-weight:700;color:#2563eb;background:#dbeafe;padding:3px 10px;border-radius:999px;white-space:nowrap}
.ac-toc-list{list-style:none;margin:0;padding:6px 0}
.ac-toc-list li{margin:0}
.ac-toc-list li a,.ac-toc-list li.current{display:flex;align-items:center;gap:12px;padding:10px 18px;text-decoration:none;color:#334155;font-size:.95rem}
.ac-toc-list li a:hover{background:#f8fafc;color:#2563eb}
.ac-toc-list li.current{background:#eff6ff;color:#1e3a8a;font-weight:700}
.ac-toc-num{flex:0 0 42px;font-size:.78rem;font-weight:800;color:#64748b}
.ac-toc-list li.current .ac-toc-num{color:#2563eb}
.ac-toc-title{flex:1 1 auto;word-break:keep-all}
.ac-toc-now{font-size:.72rem;font-weight:700;color:#2563eb;white-space:nowrap}
.entry-content .lesson-hero-course a{color:#93c5fd;text-decoration:none}
.entry-content .lesson-hero-course a:hover{text-decoration:underline}
@media (max-width:768px){.ac-courses{grid-template-columns:1fr}.home .ac-hero{padding:30px 20px}.home .ac-hero h2{font-size:1.5rem}.ac-toc-now{display:none}}
/* 푸터 위젯 좌우 여백 (infosquare CSS 는 padding 0 이라 가장자리에 붙는다) */
.site-footer .inside-footer-widgets{padding-left:40px;padding-right:40px;max-width:1100px;margin:0 auto}
/* 테마의 이전·다음 글 네비게이션은 강좌 nav 와 겹치므로 숨김 (aiclass 는 글 전부가 강좌) */
.single .post-navigation,.single .nav-links,.single nav.navigation.post-navigation{display:none}
/* 800px 본문 폭에서 3단 카드가 줄바꿈되지 않게 */
@media (min-width:769px){.single .entry-content .ipo-flow{flex-wrap:nowrap}.single .entry-content .ipo-card{flex:1 1 0;min-width:0;padding:18px 12px}.single .entry-content .ipo-arrow{flex:0 0 auto}}
@media (max-width:768px){.entry-content .step-card{align-items:flex-start}.entry-content .lesson-hero{padding:24px 18px 20px}}

