:root {
  --bg: #ffffff;
  --surface: #ffffff;
  --fill: #f2f4f6;
  --text: #191f28;
  --muted: #6b7684;
  --line: #f2f4f6;
  --accent: #3182f6;
  --on-accent: #ffffff;
  --accent-soft: #e8f3ff;
  --warn: #c2570c;
  --radius: 16px;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #17171c;
    --surface: #17171c;
    --fill: #26262e;
    --text: #ececf1;
    --muted: #9a9aa8;
    --line: #26262e;
    --accent: #4f9bff;
    --on-accent: #ffffff;
    --accent-soft: #1c2a44;
    --warn: #f0a55a;
  }
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: -0.01em;
  word-break: keep-all;
  -webkit-font-smoothing: antialiased;
}
a { color: var(--accent); }
.wrap { max-width: 720px; margin: 0 auto; padding: 0 20px; }

.site-header { background: var(--surface); }
.site-header .wrap { display: flex; align-items: center; justify-content: space-between; height: 56px; }
.brand { font-weight: 800; font-size: 18px; color: var(--text); text-decoration: none; }
.site-header nav a { margin-left: 16px; color: var(--muted); text-decoration: none; font-size: 14px; }
.site-header nav a:hover { color: var(--text); }

main { padding-top: 28px; padding-bottom: 48px; }
h1 { font-size: 26px; line-height: 1.35; margin: 0 0 8px; letter-spacing: -0.02em; }
h2 { font-size: 20px; margin: 40px 0 12px; letter-spacing: -0.02em; }
h3 { font-size: 16px; margin: 20px 0 6px; }
p { margin: 0 0 12px; }
.lead { color: var(--muted); margin-bottom: 20px; }

.calc { padding: 4px 0 0; }
.field { margin-bottom: 16px; }
.field label { display: block; font-weight: 600; font-size: 13px; color: var(--muted); margin-bottom: 8px; }
.field .hint { display: block; color: var(--muted); font-size: 13px; font-weight: 400; margin-top: 4px; }
.field input[type="text"], .field input[type="date"], .field select {
  width: 100%;
  height: 54px;
  padding: 0 16px;
  font: inherit;
  font-size: 18px;
  font-weight: 600;
  color: var(--text);
  background: var(--fill);
  border: 0;
  border-radius: 14px;
}
.field input::placeholder, .field textarea::placeholder { color: var(--muted); font-weight: 400; opacity: .7; }
.field input:focus { outline: 2px solid var(--accent); outline-offset: 1px; }
.row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 520px) { .row { grid-template-columns: 1fr; gap: 0; } }

.seg { display: flex; gap: 0; padding: 4px; margin-bottom: 18px; background: var(--fill); border-radius: 14px; }
.seg label {
  flex: 1;
  text-align: center;
  padding: 10px 6px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  color: var(--muted);
}
.seg input { position: absolute; opacity: 0; }
.seg input:checked + span { color: var(--text); }
.seg label:has(input:checked) { background: var(--bg); box-shadow: 0 1px 3px rgba(0, 0, 0, .1); }
.seg label:has(input:focus-visible) { outline: 2px solid var(--accent); }

.result { margin-top: 8px; border-top: 1px solid var(--line); padding-top: 22px; }
.result-main { margin-bottom: 10px; }
.result-main span { display: block; font-size: 13px; color: var(--muted); }
.result-main strong { display: block; font-size: 34px; font-weight: 800; line-height: 1.25; letter-spacing: -0.03em; color: var(--accent); font-variant-numeric: tabular-nums; }
.result dl { margin: 0; }
.result dl div { display: flex; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.result dt { color: var(--muted); }
.result dd { margin: 0; font-weight: 700; font-variant-numeric: tabular-nums; text-align: right; }
.notice { margin-top: 12px; font-size: 14px; color: var(--warn); }
.notice:empty { display: none; }

.guide table { width: 100%; border-collapse: collapse; margin: 8px 0 14px; font-size: 15px; }
.guide th, .guide td { border-bottom: 1px solid var(--line); padding: 11px 10px; text-align: left; }
.guide th { color: var(--muted); font-weight: 600; font-size: 13px; }
.guide tbody th { color: var(--text); font-size: inherit; }
.guide ul, .guide ol { padding-left: 20px; margin: 0 0 12px; }
/* 열이 많은 표가 좁은 화면에서 페이지를 밀어내지 않게 한다 */
@media (max-width: 520px) {
  .guide table { display: block; overflow-x: auto; font-size: 13px; }
  .guide th, .guide td { padding: 6px; }
}

.byline { color: var(--muted); font-size: 13px; margin-bottom: 16px; }
.guide .btn { margin: 4px 0 8px; }

.faq details { background: var(--fill); border-radius: 14px; padding: 16px 18px; margin-bottom: 8px; }
.faq summary { font-weight: 600; cursor: pointer; }
.faq details p { margin: 10px 0 0; color: var(--muted); }

.field textarea {
  width: 100%;
  min-height: 220px;
  padding: 12px 14px;
  font: inherit;
  color: var(--text);
  background: var(--fill);
  border: 0;
  border-radius: 14px;
  resize: vertical;
}
.field textarea:focus { outline: 2px solid var(--accent); outline-offset: 1px; }
.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  width: 100%;
  height: 54px;
  font: inherit;
  font-weight: 700;
  font-size: 16px;
  color: var(--on-accent);
  background: var(--accent);
  border: 0;
  border-radius: 16px;
  cursor: pointer;
}
.btn:focus-visible { outline: 2px solid var(--text); outline-offset: 2px; }

.btn.secondary { color: var(--text); background: var(--fill); }
.btn-row { display: flex; gap: 8px; }
.field input[type="range"] { width: 100%; }
.field input[type="file"] { width: 100%; font: inherit; color: var(--text); }
.check { display: flex; align-items: center; gap: 8px; font-size: 14px; margin-bottom: 14px; }

/* 한 페이지에 작은 계산 여러 개를 쌓을 때 */
.mini { padding: 20px 0; border-bottom: 1px solid var(--line); }
.mini:first-child { padding-top: 0; }
.mini:last-child { border-bottom: 0; padding-bottom: 0; }
.mini h3 { margin: 0 0 10px; }
.mini .out { font-size: 20px; font-weight: 700; font-variant-numeric: tabular-nums; }
.mini .out small { font-size: 14px; font-weight: 400; color: var(--muted); }

.grade-row { display: grid; grid-template-columns: 1fr 84px 92px 40px; gap: 8px; margin-bottom: 8px; }
.grade-row input, .grade-row select {
  width: 100%; height: 44px; padding: 0 10px;
  font: inherit; color: var(--text); background: var(--fill);
  border: 0; border-radius: 12px;
}
.grade-row button { height: 44px; border: 0; border-radius: 12px; background: var(--fill); color: var(--muted); cursor: pointer; font: inherit; }

.picks { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.picks li { background: var(--accent-soft); border-radius: 10px; padding: 8px 14px; font-weight: 700; font-size: 18px; }

.ladder-names { display: grid; gap: 4px; margin-top: 16px; }
.ladder-names button {
  min-width: 0; padding: 8px 2px; font: inherit; font-size: 13px; font-weight: 700;
  color: var(--text); background: var(--fill); border: 0; border-radius: 10px;
  cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.ladder-names span { text-align: center; font-size: 13px; font-weight: 700; padding: 8px 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#ladder-svg { width: 100%; height: auto; display: block; }
#ladder-svg line { stroke: var(--muted); stroke-width: 2; }
.ladder-list { margin: 12px 0 0; padding-left: 20px; }

.preview { max-width: 100%; max-height: 320px; border: 1px solid var(--line); border-radius: 10px; display: block; margin: 0 auto 12px; }
#qr-canvas { display: block; margin: 0 auto 12px; max-width: 100%; height: auto; background: #fff; border-radius: 8px; }
.groups h3 { margin: 24px 0 10px; font-size: 15px; color: var(--muted); }

.games { list-style: none; margin: 0; padding: 0; }
.games li { display: flex; flex-wrap: wrap; gap: 8px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.ball {
  width: 42px; height: 42px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: #fff;
}
.ball.c1 { background: #e0a80c; }
.ball.c2 { background: #3f7fd6; }
.ball.c3 { background: #dc4b44; }
.ball.c4 { background: #7b818c; }
.ball.c5 { background: #4a9d4e; }

.cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.card {
  display: flex; flex-direction: column; gap: 4px;
  background: var(--fill);
  border-radius: var(--radius);
  padding: 18px;
  text-decoration: none;
  color: var(--text);
  transition: transform .15s;
}
.card:hover { transform: translateY(-2px); }
.card strong { font-size: 17px; }
.card span { color: var(--muted); font-size: 14px; }
.card .card-tag { font-size: 12px; color: var(--accent); font-weight: 600; }

.hero { padding: 12px 0 8px; }
.hero h1 { font-size: 30px; letter-spacing: -0.03em; }

.site-footer { border-top: 1px solid var(--line); padding: 28px 0 44px; color: var(--muted); font-size: 13px; }
.site-footer a { color: var(--muted); }

/* 셈마루 · 2026 design. The existing tool class contract is preserved. */
:root{--muted:#596575;--line:#e8ecf1;--link:#1762c4;--button:#246bd5;--hover:#edf4ff;--mint:#e8f6f0;--mint-ink:#23634e;--hero:#f4f8ff;--shadow:0 8px 24px rgba(25,55,100,.05);color-scheme:light}
@media(prefers-color-scheme:dark){:root{--bg:#14171d;--surface:#14171d;--fill:#222832;--text:#edf1f7;--muted:#adb8c8;--line:#303947;--accent:#6aabff;--accent-soft:#1d304b;--link:#8cbfff;--button:#246bd5;--hover:#24364c;--mint:#19362d;--mint-ink:#9cddc0;--hero:#1b2636;--shadow:none;color-scheme:dark}}
html{scroll-padding-top:24px}body{overflow-wrap:anywhere}a{color:var(--link);text-underline-offset:4px}button,input,select,textarea{max-width:100%}img,svg{max-width:100%}[hidden]{display:none!important}*:focus-visible{outline:3px solid var(--link);outline-offset:4px}::selection{background:var(--accent-soft);color:var(--text)}
.wrap{max-width:1120px;padding-inline:32px}.site-header{border-bottom:1px solid var(--line)}.site-header .wrap{height:80px}.brand{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:23px;letter-spacing:-.06em}.brand img{flex:none}.site-header nav{display:flex;gap:26px}.site-header nav a{display:inline-flex;align-items:center;min-height:44px;margin:0;font-weight:600}.site-header nav a:hover{color:var(--link)}
.skip-link{position:absolute;z-index:10;left:20px;top:-100px;background:var(--text);color:var(--bg);padding:12px 20px;border-radius:10px}.skip-link:focus{top:12px}
main.wrap{padding-top:48px;padding-bottom:80px}main>.tool,main>article.guide{max-width:704px;margin-inline:auto}main>.tool{max-width:680px}main>.guide.guide-directory,main>.guide.about-page{max-width:none}h1{font-size:34px;line-height:1.35;letter-spacing:-.045em}h2{font-size:24px;line-height:1.45;margin:48px 0 18px}h3{font-size:18px;line-height:1.5}.lead{font-size:17px;line-height:1.8;margin:14px 0 28px}.eyebrow{color:var(--link);font-size:13px;font-weight:750;letter-spacing:.03em;margin:0 0 10px}.section-note{font-size:14px;color:var(--muted);margin:-8px 0 22px}
.home-hero{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:28px 0 42px}.hero h1{font-size:48px;line-height:1.27;letter-spacing:-.05em;margin-bottom:20px}.hero h1 em{font-style:normal;color:var(--link)}.hero .lead{font-size:17px;margin-bottom:20px}.trust-note{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.trust-dot{width:8px;height:8px;background:var(--mint-ink);border-radius:50%;flex:none}.featured-panel{background:var(--hero);border-radius:28px;padding:26px}.featured-panel h2{font-size:16px;margin:0 0 16px}.quick-tools{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-tool{min-height:85px;padding:15px;background:var(--surface);border-radius:16px;color:var(--text);text-decoration:none;display:flex;flex-direction:column;justify-content:center;box-shadow:var(--shadow)}.quick-tool strong{font-size:16px}.quick-tool span{font-size:12px;color:var(--muted)}.quick-tool:hover{background:var(--hover)}
.purpose-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 52px}.purpose-link{display:flex;align-items:center;gap:14px;min-height:86px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;text-decoration:none;color:var(--text)}.purpose-link .purpose-no{color:var(--link);font-size:13px;font-weight:700}.purpose-link strong{display:block;font-size:16px}.purpose-link small{display:block;font-size:13px;color:var(--muted)}.purpose-link .arrow{margin-left:auto;color:var(--muted)}.purpose-link:hover{background:var(--fill)}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.section-heading h2{margin:0}.section-heading>a,.text-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:650;text-decoration:none}.section-heading p{margin:4px 0 0;color:var(--muted);font-size:14px}.category-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}.category-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 18px;border-radius:30px;background:var(--fill);color:var(--muted);text-decoration:none;font-size:14px;font-weight:650}.category-nav a:hover{background:var(--accent-soft);color:var(--link)}
.tool-group{margin:0 0 36px;scroll-margin-top:24px}.group-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 14px}.group-heading .eyebrow{margin:0 0 4px}.groups .group-heading h3{font-size:21px;color:var(--text);margin:0}.group-heading>p{color:var(--muted);font-size:13px;margin:0 0 2px}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.card{min-width:0;border-radius:18px;padding:22px;transition:background .15s,transform .15s}.card:hover{background:var(--hover)}.card strong{font-size:17px;line-height:1.55;display:block;letter-spacing:-.025em}.card span{color:var(--muted);font-size:14px}.card .card-tag{color:var(--link);font-size:12px;font-weight:700}.tool-card{display:flex;flex-direction:row;align-items:start;gap:12px;position:relative;padding:20px 18px}.tool-card .tool-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;color:var(--link);background:var(--surface);border-radius:11px}.tool-icon svg{width:22px;height:22px}.card-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.card-copy strong{color:var(--text)}.card .card-arrow{display:none}.tool-group .card-tag{display:none}.card-description{line-height:1.65}.tool-card .card-description{font-size:13px}.home-guides{border-top:1px solid var(--line);margin-top:52px;padding-top:40px}.guide-card{background:var(--surface);border:1px solid var(--line);gap:12px}.guide-card .read-link{font-size:13px;color:var(--link);font-weight:650;margin-top:auto;padding-top:8px;display:flex;justify-content:space-between}.guide-card .read-link span{color:inherit}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;padding:28px;border-radius:20px;background:var(--fill);gap:28px}.trust-strip strong{font-size:15px;display:block;margin-bottom:6px}.trust-strip p{font-size:13px;color:var(--muted);margin:0}
.tool>h1{margin-top:4px}.tool>.lead{margin-bottom:30px}.calc{padding-top:0}.field label{font-size:14px;color:var(--text)}.field .hint{font-size:12px;color:var(--muted)}.field input::placeholder,.field textarea::placeholder{opacity:1}.field input[type=text],.field input[type=date],.field select{height:56px;font-size:17px}.seg{border-radius:30px}.seg label{min-height:44px;border-radius:24px;display:flex;align-items:center;justify-content:center;min-width:0}.seg input{width:1px;height:1px}.btn{min-height:54px;height:auto;padding:14px 18px;background:var(--button);line-height:1.5;border-radius:14px}.btn:hover{filter:brightness(.96)}.btn:disabled{opacity:.65;cursor:default}.check{min-height:44px}.check input{width:20px;height:20px;accent-color:var(--button)}.field input[type=range]{height:44px;accent-color:var(--button)}.field input[type=file]{background:var(--fill);border-radius:14px;min-height:54px;padding:7px;font-size:14px}.field input[type=file]::file-selector-button{border:0;border-radius:9px;min-height:44px;padding:10px 14px;background:var(--surface);color:var(--text);font:inherit;margin-right:12px;cursor:pointer}
.result{margin-top:24px;padding-top:24px}.result-main{margin-bottom:20px}.result-main span{font-size:14px;margin-bottom:6px}.result-main strong{font-size:38px;overflow-wrap:anywhere}.result dl div{font-size:15px;padding:13px 0}.result dt,.result dd{min-width:0}.notice{line-height:1.8}.tool>section:not(.calc){margin-top:44px;padding-top:30px;border-top:1px solid var(--line)}.tool>section:not(.calc)>h2:first-child{margin-top:0}.tool>.guide{background:var(--fill);padding:28px;border-radius:22px;border-top:0!important}.tool>.guide h2{font-size:21px;margin-top:32px}.tool .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.tool .tool-card .tool-icon{display:none}
article.guide{font-size:17px;line-height:1.95}article.guide>h1{font-size:36px}article.guide>.lead{font-size:18px;line-height:1.85}article.guide .byline{font-size:13px;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:22px}.guide p{margin-bottom:18px}.guide h2{margin-top:48px}.guide h3{margin:28px 0 12px}.guide ul,.guide ol{padding-left:22px;margin-bottom:24px}.guide li{padding-left:3px;margin-bottom:10px}.guide li::marker{color:var(--link)}.guide table{width:100%;border-collapse:separate;border-spacing:0;margin:20px 0 24px;border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:14px;line-height:1.75}.guide th,.guide td{padding:14px 16px;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.guide th{background:var(--fill);color:var(--text);font-size:13px;font-weight:700}.guide tr:last-child td,.guide tr:last-child th{border-bottom:0}.guide tbody tr:nth-child(even){background:var(--fill)}.tool>.guide th{background:var(--surface)}.tool>.guide tbody tr:nth-child(even){background:var(--surface)}.guide .btn.tool-cta{margin:14px 0 28px;justify-content:space-between;gap:18px;text-align:left;font-size:15px}.guide-next{padding:24px;background:var(--hero);border-radius:20px;margin-bottom:24px}.guide-next p{font-size:19px;font-weight:700;line-height:1.5;margin:8px 0 14px}.guide-next .btn.tool-cta{margin:0}.guide-next .eyebrow{font-size:12px}article.guide>section:last-child{display:flex;flex-direction:column}.guide-next{order:0}article.guide>section:last-child>h2{order:1;margin-top:24px}article.guide>section:last-child>.guide-cards{order:2}.guide>.guide-cards,.guide>section>.guide-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.guide.guide-directory>.guide-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-directory>.lead{max-width:650px}.directory-intro{padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:32px}.directory-intro .lead{max-width:700px;margin-bottom:0}.guide-card{line-height:1.6}
.faq{margin-top:48px}.faq details{background:transparent;border:1px solid var(--line);padding:0;border-radius:14px;margin-bottom:10px;overflow:hidden}.faq summary{list-style:none;display:flex;align-items:center;gap:12px;padding:18px 20px;min-height:60px;font-size:15px;line-height:1.7}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';margin-left:auto;flex:none;font-size:22px;font-weight:400;color:var(--muted)}.faq details[open] summary::after{content:'−'}.faq details[open]{background:var(--fill)}.faq .faq-q{color:var(--link);font-size:14px;font-weight:750;align-self:flex-start;padding-top:2px}.faq details p{font-size:15px;line-height:1.9;margin:0;padding:0 22px 22px 46px;color:var(--muted)}.faq summary:focus-visible{outline-offset:-4px}.faq .section-note{font-size:14px}
.grade-row{grid-template-columns:minmax(0,1fr) 70px 82px 44px}.ladder-names button{min-height:44px}.calc:has(#ladder-svg) .result{overflow-x:auto}.calc:has(#names>button:nth-child(8)) :is(#names,#ends,#ladder-svg){min-width:380px}.games li{gap:8px}.ball{color:#fff}.ball.c1{background:#936800}.ball.c2{background:#2864b6}.ball.c3{background:#bf3932}.ball.c4{background:#626a76}.ball.c5{background:#347838}.preview{margin-top:10px}.result>.btn{margin-top:20px}
.about-intro{max-width:680px;margin-bottom:36px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.principle{background:var(--fill);border-radius:20px;padding:26px}.principle .eyebrow{font-size:13px}.principle h3{margin:8px 0 12px}.principle p{font-size:15px;color:var(--muted);margin:0}.about-note{max-width:680px}.privacy-page h2{font-size:22px}.privacy-summary{padding:22px 24px;border-radius:18px;background:var(--hero);margin:24px 0 34px;color:var(--text);font-size:16px}
.site-footer{padding:36px 0 28px}.site-footer .wrap{max-width:1120px}.footer-heading{display:flex;align-items:center;gap:20px;margin-bottom:16px}.footer-heading .brand{font-size:20px}.footer-heading>span{font-size:13px}.site-footer p{font-size:12px;max-width:650px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}.footer-bottom nav{display:flex;gap:20px}.footer-bottom a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:12px}
.variant-banner{padding:12px 24px;background:var(--accent-soft);color:var(--link);font-size:13px;text-align:center}.variant-banner a{display:inline-flex;align-items:center;min-height:44px;margin-inline:10px}.variant-b .home-hero{display:block;max-width:720px;margin:auto;text-align:center;padding-bottom:28px}.variant-b .trust-note{justify-content:center}.variant-b .purpose-nav{margin:0 0 28px}.variant-b .featured-panel{margin-bottom:40px}.variant-b .quick-tools{grid-template-columns:repeat(6,1fr)}.variant-c .home-hero{grid-template-columns:1.1fr 1fr}.editorial-feature{padding:32px;border-radius:24px;background:var(--hero)}.editorial-feature h2{margin:12px 0;font-size:26px}.editorial-feature p{color:var(--muted);font-size:15px}.variant-c .featured-panel{margin-bottom:40px}.variant-c .quick-tools{grid-template-columns:repeat(6,1fr)}
@media(min-width:761px){body:has(.home-hero) .site-header nav a:first-child,body:has(.guide-directory) .site-header nav a:nth-child(2),body:has(.about-page) .site-header nav a:nth-child(3){color:var(--link)}}
@media(max-width:900px){.home-hero{gap:26px}.hero h1{font-size:40px}.cards,.guide.guide-directory>.guide-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-card{padding:18px}.purpose-link{padding:16px;gap:10px}.purpose-no{display:none}.variant-b .quick-tools,.variant-c .quick-tools{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.wrap{padding-inline:20px}.site-header .wrap{height:68px}.brand{font-size:21px;gap:8px}.brand img{width:28px;height:28px}.site-header nav{gap:14px}.site-header nav a{font-size:12px}main.wrap{padding-top:30px;padding-bottom:54px}h1,article.guide>h1{font-size:28px}h2{font-size:22px}.lead,article.guide>.lead{font-size:16px;line-height:1.8}.hero h1{font-size:34px;margin-bottom:14px}.home-hero{grid-template-columns:1fr;gap:24px;padding:0 0 24px}.hero .lead{font-size:15px;margin-bottom:12px}.eyebrow{font-size:12px}.featured-panel{padding:18px;border-radius:22px}.featured-panel h2{font-size:14px;margin-bottom:12px}.quick-tool{min-height:75px;padding:12px 13px;border-radius:12px}.quick-tool strong{font-size:15px}.quick-tool span{font-size:11px}.purpose-nav{grid-template-columns:1fr;gap:8px;margin-bottom:38px}.purpose-link{padding:13px 16px;min-height:64px}.purpose-link strong{font-size:14px}.purpose-link small{font-size:12px}.purpose-no{display:inline!important}.purpose-link .purpose-no{font-size:12px}.section-heading{margin-bottom:16px;align-items:center}.section-heading h2{font-size:22px}.section-heading>a{font-size:12px}.section-heading p{font-size:13px}.category-nav{gap:6px;margin-bottom:26px}.category-nav a{font-size:12px;padding:8px 14px}.group-heading{display:block}.group-heading>p{margin-top:4px;font-size:12px}.groups .group-heading h3{font-size:19px}.cards,.guide>.guide-cards,.guide>section>.guide-cards,.guide.guide-directory>.guide-cards,.tool .cards{grid-template-columns:1fr}.tool-group{margin-bottom:30px}.tool-card{padding:18px;align-items:center;gap:14px}.tool-card .card-description{font-size:12px}.tool-card strong{font-size:16px}.tool-card .card-arrow{display:block;margin-left:auto;font-size:18px;flex:none;color:var(--muted)}.tool-card .card-copy{flex:1}.card{border-radius:16px}.card strong{font-size:16px}.guide-card{padding:22px}.home-guides{margin-top:36px;padding-top:32px}.trust-strip{grid-template-columns:1fr;gap:20px;padding:24px;margin-top:32px}.trust-strip>div+div{padding-top:18px;border-top:1px solid var(--line)}.field label{font-size:13px}.seg label{font-size:12px;padding:10px 8px}.result-main strong{font-size:34px}.result dl div{font-size:14px}.tool>.guide{padding:22px 18px;margin-inline:0}.tool>.guide h2{font-size:19px}.tool>.guide p,.tool>.guide li{font-size:14px}.guide table{display:table;table-layout:fixed;font-size:12px;line-height:1.7}.guide th,.guide td{padding:10px 8px;font-size:12px;word-break:normal;overflow-wrap:anywhere}.guide tbody th{font-size:12px}.guide li{margin-bottom:12px}.guide h2{margin-top:36px}.guide .btn.tool-cta{font-size:14px;min-height:56px}.guide-next{padding:20px}.guide-next p{font-size:17px}.faq summary{padding:16px;font-size:14px;gap:10px}.faq details p{padding:0 18px 20px 38px;font-size:14px}.faq .faq-q{font-size:12px}.tool>section:not(.calc){margin-top:32px;padding-top:24px}.tool>.guide{padding-top:22px!important}article.guide{font-size:16px;line-height:1.95}.principles{grid-template-columns:1fr}.principle{padding:24px}.principle h3{font-size:18px}.footer-heading{gap:14px}.footer-heading>span{font-size:12px}.footer-bottom{flex-wrap:wrap;gap:0}.site-footer{padding-top:28px}.variant-c .home-hero{grid-template-columns:1fr}.variant-b .quick-tools,.variant-c .quick-tools{grid-template-columns:repeat(2,1fr)}.editorial-feature{padding:24px}.editorial-feature h2{font-size:23px}.games li{gap:6px}.ball{width:41px;height:41px}.grade-row{gap:5px;grid-template-columns:minmax(0,1fr) 62px 74px 44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(forced-colors:active){.card,.btn,.seg label,.field input,.field select{border:1px solid CanvasText}.seg label:has(input:checked){outline:2px solid Highlight}.tool-icon{forced-color-adjust:auto}}
.site-header nav a,.footer-bottom a{min-width:44px;justify-content:center}
@media(max-width:600px){.guide table:has(tr>:nth-child(4)){display:block;overflow-x:auto;table-layout:auto}.guide table:has(tr>:nth-child(4)) :is(th,td){min-width:108px;word-break:keep-all}.guide table:has(tr>:nth-child(4)) :is(th,td):first-child{min-width:86px}.guide h2:has(+table tr>:nth-child(4))::after{content:"표를 좌우로 밀어 비교하세요 →";display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:8px}}
.guide :is(p,li)>a:not(.btn){display:inline-flex;align-items:center;min-height:44px;min-width:44px;max-width:100%;vertical-align:baseline}
