/*
Theme Name: 슬기로운 시니어생활
Template: twentytwentyfive
Description: 슬기로운 시니어생활 전용 자식 테마 (크림·갈색·주황 브랜드색, Pretendard, 시니어 친화 글자 크기)
Version: 1.0.1
Text Domain: seniorlife
*/

body { -webkit-font-smoothing: antialiased; word-break: keep-all; }
.wp-block-post-content a, .entry-content a { overflow-wrap: anywhere; }

/* 헤더 */
.sl-header { border-bottom: 1px solid var(--wp--preset--color--line); }
.sl-header .wp-block-site-title a { text-decoration: none; }
.sl-dot { color: var(--wp--preset--color--accent); margin-right: .35em; font-size: .8em; vertical-align: .1em; }
.sl-header .wp-block-navigation a:hover { color: var(--wp--preset--color--accent-dark); }

/* 첫 화면 소개 상자 */
.sl-hero { border: 1px solid var(--wp--preset--color--accent-soft); border-radius: 18px; }
.sl-hero mark { background: none; color: var(--wp--preset--color--accent-dark); }
.sl-pills a { display: inline-block; background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 999px; padding: .45em 1.05em; text-decoration: none; color: var(--wp--preset--color--ink); font-size: .95rem; margin: 0 .35em .5em 0; transition: border-color .15s, color .15s; }
.sl-pills a:hover { border-color: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent-dark); }

/* 카드 목록 */
.sl-grid .wp-block-post-template.is-layout-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)) !important; gap: 1.5rem !important; }
.sl-header .wp-block-search__button { width: 44px; height: 44px; padding: 0; border-radius: 50%; background: var(--wp--preset--color--accent-tint); color: var(--wp--preset--color--ink); border: 1px solid var(--wp--preset--color--accent-soft); display: inline-flex; align-items: center; justify-content: center; }
.sl-header .wp-block-search__button svg { width: 22px; height: 22px; fill: currentColor; }
.sl-header .wp-block-search { width: auto !important; }
.sl-card { background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 16px; overflow: hidden; height: 100%; transition: transform .15s, border-color .15s; }
.sl-card:hover { transform: translateY(-2px); border-color: var(--wp--preset--color--accent-soft); }
.sl-card .wp-block-post-featured-image { margin: 0; }
.sl-card .wp-block-post-featured-image img { border-radius: 0; }
.sl-card .wp-block-post-title a { text-decoration: none; color: var(--wp--preset--color--ink); }
.sl-card .wp-block-post-title a:hover { color: var(--wp--preset--color--accent-dark); }
.sl-cat a, .sl-cat { color: var(--wp--preset--color--accent-dark); text-decoration: none; font-weight: 600; }

/* 글 본문 */
.wp-block-post-content h2 { border-left: 5px solid var(--wp--preset--color--accent); padding-left: .6em; margin-top: 2.2em; }
.wp-block-post-content h3 { margin-top: 1.8em; }
.wp-block-post-content h3::before { content: "■"; color: var(--wp--preset--color--accent); font-size: .6em; margin-right: .5em; vertical-align: .25em; }
.wp-block-post-content figure.wp-block-image img { border-radius: 14px; }
.wp-block-post-content b, .wp-block-post-content strong { color: var(--wp--preset--color--ink); background: linear-gradient(transparent 62%, var(--wp--preset--color--accent-tint) 62%); }
.wp-block-table { overflow-x: auto; margin: 1.6em 0; }
.wp-block-post-content table { border-collapse: collapse; width: 100%; font-size: .95em; background: #fff; border-radius: 12px; overflow: hidden; }
.wp-block-post-content table td, .wp-block-post-content table th { border: 1px solid var(--wp--preset--color--line) !important; padding: .7em .9em !important; text-align: left; }
.wp-block-post-content table tr:first-child td, .wp-block-post-content table th { background: var(--wp--preset--color--accent-tint) !important; font-weight: 700; }
.wp-block-post-content table tr:nth-child(even) td { background: #FFFBF5; }
.wp-block-post-content blockquote { border-left: 4px solid var(--wp--preset--color--accent); background: var(--wp--preset--color--accent-tint); padding: 1em 1.2em; border-radius: 0 12px 12px 0; }
.sl-tags a { display: inline-block; background: var(--wp--preset--color--accent-tint); color: var(--wp--preset--color--ink); border-radius: 999px; padding: .3em .9em; margin: 0 .3em .4em 0; text-decoration: none; font-size: .88rem; }

/* 관련 글 */
.sl-related { border-top: 1px solid var(--wp--preset--color--line); margin-top: 3rem; padding-top: 2rem; }
.sl-related h2 { font-size: 1.35rem; margin: 0 0 1rem; border: 0; padding: 0; }
.sl-related-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; }
.sl-related-grid a { display: block; background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 14px; overflow: hidden; text-decoration: none; color: var(--wp--preset--color--ink); }
.sl-related-grid a:hover { border-color: var(--wp--preset--color--accent-soft); }
.sl-related-grid img { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; }
.sl-related-grid span { display: block; padding: .8em 1em 1em; font-weight: 600; line-height: 1.5; font-size: .98rem; }

/* 푸터 */
.sl-footer a { color: var(--wp--preset--color--cream); text-decoration: none; }
.sl-footer a:hover { text-decoration: underline; }

/* 페이지 이동 */
.wp-block-query-pagination a, .wp-block-query-pagination .page-numbers { text-decoration: none; padding: .3em .7em; border-radius: 8px; }
.wp-block-query-pagination .current { background: var(--wp--preset--color--accent); color: #fff; }
