/*
Theme Name: Molar Care Guide
Version: 1.0.0
*/
:root{--ink:#163431;--muted:#60736f;--paper:#f7faf8;--white:#fff;--accent:#147d70;--accent2:#d9eee7;--line:#dce7e3;--warn:#fff5e6;--radius:20px;--shadow:0 18px 50px rgba(20,74,66,.09);--space:8px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Pretendard,"Noto Sans KR",system-ui,sans-serif;font-size:17px;line-height:1.75;word-break:keep-all}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}img{max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f2b84b;outline-offset:3px}.shell{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(247,250,248,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,231,227,.8)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:800;text-decoration:none}.brand img{width:42px;height:42px;border-radius:13px}.nav{display:flex;align-items:center;gap:6px}.nav a{color:var(--ink);text-decoration:none;padding:12px 14px;border-radius:12px;font-size:15px}.nav a:hover{background:var(--accent2)}.menu-toggle{display:none;border:0;background:var(--white);width:46px;height:46px;border-radius:12px}.hero{padding:92px 0 112px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:72px}.eyebrow{display:inline-block;color:var(--accent);font-size:14px;font-weight:800;letter-spacing:.12em;margin-bottom:16px}.hero h1{font-family:"Noto Serif KR",serif;font-size:clamp(45px,6vw,76px);line-height:1.12;letter-spacing:-.055em;margin:0 0 28px}.hero p{font-size:20px;color:var(--muted);max-width:620px;margin:0 0 32px}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 22px;border-radius:14px;background:var(--accent);color:white;text-decoration:none;font-weight:750;border:1px solid var(--accent);transition:.22s}.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.hero-visual{position:relative}.hero-visual img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:36px;box-shadow:var(--shadow)}.hero-note{position:absolute;left:-36px;bottom:32px;width:250px;padding:20px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);font-size:14px}.section{padding:100px 0}.section.white{background:var(--white)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}.section h2{font-family:"Noto Serif KR",serif;font-size:clamp(32px,4vw,48px);line-height:1.25;letter-spacing:-.04em;margin:0}.section-head p{margin:0;color:var(--muted);max-width:520px}.triage{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.triage article,.card,.search-panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 32px rgba(20,74,66,.05)}.triage article{padding:28px}.triage .num{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--accent2);color:var(--accent);font-weight:800}.triage h3{font-size:21px;margin:18px 0 8px}.triage p{color:var(--muted);margin:0}.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{overflow:hidden;transition:.22s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.card-body{padding:24px}.card .meta{font-size:13px;color:var(--accent);font-weight:800}.card h3{margin:8px 0 12px;font-size:22px;line-height:1.35}.card h3 a{color:var(--ink);text-decoration:none}.card p{font-size:15px;color:var(--muted);margin:0}.search-panel{padding:36px}.search-controls{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:12px}.search-controls select,.search-controls input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;background:white;padding:0 14px;font:inherit}.results{display:grid;gap:12px;margin-top:24px}.hospital{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff}.hospital h3{margin:0 0 5px;font-size:19px}.hospital p{margin:3px 0;color:var(--muted);font-size:14px}.article-hero{padding:72px 0 48px}.article-hero .category{color:var(--accent);font-weight:800;font-size:14px}.article-hero h1,.page-title{font-family:"Noto Serif KR",serif;font-size:clamp(38px,5vw,62px);line-height:1.2;letter-spacing:-.045em;margin:12px 0 24px}.article-hero img{width:100%;max-height:590px;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}.article{width:min(780px,calc(100% - 40px));margin:0 auto;padding:24px 0 100px}.article h2{font-family:"Noto Serif KR",serif;font-size:32px;line-height:1.4;margin:80px 0 22px;scroll-margin-top:100px}.article p{margin:0 0 22px}.article-summary,.toc,.sources{padding:26px;background:#edf6f2;border:1px solid var(--line);border-radius:var(--radius);margin:0 0 28px}.toc ol{columns:2;margin:14px 0 0;padding-left:24px}.toc a{color:var(--ink)}.article figure{margin:36px 0}.article figure img{width:100%;border-radius:var(--radius);display:block}.article figcaption{font-size:14px;color:var(--muted);margin-top:8px}.article blockquote{margin:32px 0;padding:24px 28px;border-left:4px solid var(--accent);background:var(--warn);border-radius:0 16px 16px 0;font-weight:650}.article ul,.article ol{padding-left:24px;margin:24px 0}.article li{margin:8px 0}.table-wrap{overflow-x:auto;margin:32px 0;border:1px solid var(--line);border-radius:16px}.article table{border-collapse:collapse;width:100%;min-width:600px;background:white}.article th,.article td{padding:15px;border-bottom:1px solid var(--line);text-align:left}.article th{background:#edf6f2}.site-footer{background:#102d2a;color:#dce9e6;padding:68px 0 28px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:48px}.site-footer a{color:#fff}.site-footer .brand{color:white}.footer-note{margin-top:44px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15);font-size:13px;color:#afc4bf}.footer-note p{margin:5px 0}.copyright{margin-top:18px;font-size:13px;color:#8eaaa4}.policy-wrap{width:min(780px,calc(100% - 40px));min-height:60vh;margin:auto;padding:80px 0}.policy-copy{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:36px}.notice-strip{padding:18px;border-radius:16px;background:#fff5e6;border:1px solid #f0d7aa;margin-bottom:28px}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:44px}.hero-visual{max-width:620px}.hero-visual img{aspect-ratio:16/11}.hero-note{left:16px}.triage,.posts-grid{grid-template-columns:1fr 1fr}.search-controls{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav{display:none}.menu-toggle{display:grid;place-items:center}.nav.open{display:flex;position:absolute;top:76px;left:20px;right:20px;background:white;border:1px solid var(--line);box-shadow:var(--shadow);padding:12px;flex-direction:column;align-items:stretch;border-radius:16px}.nav.open a{min-height:44px}}
@media(max-width:620px){body{font-size:16px}.shell{width:min(100% - 28px,1180px)}.hero{padding:64px 0 84px}.hero p{font-size:17px}.hero-note{position:relative;left:auto;bottom:auto;width:auto;margin:-28px 14px 0}.section{padding:76px 0}.section-head{display:block}.section-head p{margin-top:12px}.triage,.posts-grid,.search-controls,.footer-grid{grid-template-columns:1fr}.article{width:calc(100% - 28px)}.article h2{font-size:27px;margin-top:64px}.toc ol{columns:1}.article-hero{padding-top:52px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.carousel{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 4px 24px;scrollbar-color:var(--accent) var(--accent2)}.carousel .card{scroll-snap-align:start}@media(max-width:900px){.carousel{grid-template-columns:none;grid-auto-columns:calc((100% - 24px)/2)}}@media(max-width:620px){.carousel{grid-template-columns:none;grid-auto-columns:86%}}
