/* 디자인 템플릿: 미니멀 — 장식 없는 얇은 선, 촘촘한 문서 */
:root { --radius: 4px; --bg: #ffffff; --card2: #fafafa; }
:root[data-theme="dark"] { --bg: #111418; }
body { font-size: 15.5px; line-height: 1.75; }
#nav { background: var(--bg); }
.brand-logo { display: none; }
.brand-title { font-size: 15px; letter-spacing: -.01em; }
.progress { height: 3px; } #progBar { background: var(--accent); }
.role-switch { background: transparent; } .role-switch button.on { background: transparent; color: var(--accent); box-shadow: inset 0 -2px 0 var(--accent); border-radius: 0; }
#toc .ch-title { font-size: 13.5px; } #toc .sec { font-size: 13px; }
#topbar { background: var(--bg); backdrop-filter: none; }
h1.sec-title { font-size: 26px; font-weight: 700; }
.badge { background: transparent; border: 1px solid var(--accent); border-radius: 3px; }
.box { background: transparent; border-left: 3px solid var(--accent); border-top: 0; border-right: 0; border-bottom: 0; border-radius: 0; padding: 4px 16px; }
.callout { border-radius: 0; background: transparent !important; }
#doc h2 { font-size: 19px; border-bottom: 1px solid var(--line); }
.code, .practice, .quiz { border-radius: var(--radius); }
.practice { border-left-width: 1px; }
.hero { background: none; color: var(--fg); border-bottom: 2px solid var(--fg); border-radius: 0; padding: 20px 0; }
.hero p { color: var(--muted); }
.card { border-radius: var(--radius); } .card:hover { transform: none; }
.slide.l-title { background: var(--pane); color: var(--fg); }
.slide.l-title .badge2 { background: var(--accent-soft); color: var(--accent); }
.slide::after { height: 3px; background: var(--accent); }
