/* guide.css — the public guides and the free typing test (pages built by worker/scripts/build-pages.mjs) */
.guide .navin nav a[aria-current="page"]{color:var(--ink)}
.gwrap{padding-top:22px;padding-bottom:70px}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 22px;padding:0;font-size:14px;color:var(--ink2)}
.crumbs li+li::before{content:"›";margin-right:6px;color:var(--line2)}.crumbs a{color:var(--ink2)}
.gart{max-width:740px}.gart.wide{max-width:860px}
.gart h1{font-size:clamp(34px,5vw,52px);line-height:1.06;letter-spacing:-.02em}
.glede{font-size:clamp(18px,2.2vw,21px);color:var(--ink2);line-height:1.55;margin:14px 0 6px}
.gmeta{font-size:14px;color:var(--ink2);margin:6px 0 0}
.gart h2{font-size:clamp(24px,3vw,30px);margin:38px 0 10px;line-height:1.2}
.gart p,.gart li{font-size:17.5px;line-height:1.7;color:#333A52}
.gart ul,.gart ol{padding-left:24px}.gart li{margin:6px 0}
.gart a{color:var(--forest-d);font-weight:700}.gart a.btn-primary{color:#fff}.gart a.btn-ghost{color:var(--ink)}
.gart .muted{font-size:14.5px;color:var(--ink2)}
.answer{background:var(--forest-2);border-radius:18px;padding:18px 22px;margin:26px 0 8px;font-size:18px;line-height:1.6;color:var(--ink)}
.gtable{width:100%;border-collapse:collapse;margin:18px 0 6px;font-size:16px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.gtable th{text-align:left;background:var(--cream);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);padding:11px 14px}
.gtable td{padding:11px 14px;border-top:1px solid var(--line);vertical-align:top;line-height:1.45}
.gtable td:first-child{font-weight:800;white-space:nowrap}@media (min-width:721px){.gtable td{white-space:nowrap}.gtable td:last-child{white-space:normal}}
.srch{font-size:20px!important}
.sources{font-size:15px}.sources li{font-size:15px!important;line-height:1.5!important}
.gcta{display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--forest);color:#fff;border-radius:24px;padding:28px 30px;margin:48px 0 0;max-width:860px}
.gcta h2{color:#fff;font-size:26px;margin:0 0 6px}.gcta p{margin:0;opacity:.9;max-width:520px;line-height:1.55}
.grel{margin-top:54px}.grel h2{font-size:26px;margin-bottom:16px}
.gcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.gcard{display:flex;flex-direction:column;gap:8px;background:#fff;border-radius:20px;padding:22px;box-shadow:var(--shadow);text-decoration:none;color:var(--ink);transition:transform .15s}
.gcard:hover{transform:translateY(-3px)}.gcard h3{font-size:21px;line-height:1.2}.gcard p{margin:0;color:var(--ink2);font-size:15px;line-height:1.5;flex:1}
.gcard .more{font-weight:800;color:var(--forest);font-size:15px}
/* ---- typing test */
.tt{background:#fff;border-radius:24px;box-shadow:var(--shadow);padding:22px;margin:28px 0 10px}
.tt-bar{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center}
.tt-level{max-width:420px;flex:1 1 300px}.tt-level button{min-width:0}
.tt-grade{display:flex;align-items:center;gap:8px;font-weight:800;font-size:14.5px;color:var(--ink2)}
.tt-grade select{border:2px solid var(--line);border-radius:12px;padding:8px 10px;font:inherit;background:#fff;color:var(--ink)}
.tt-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 14px}
.tt-stats div{background:var(--cream);border-radius:14px;padding:10px 12px;text-align:center}
.tt-stats b{display:block;font-family:var(--serif);font-size:32px;line-height:1.1}.tt-stats small{font-size:12.5px;font-weight:800;color:var(--ink2);letter-spacing:.03em}
.tt-box{position:relative;border:3px solid var(--line);border-radius:18px;padding:16px 18px;height:calc(3 * 1.75em + 32px);overflow:hidden;font-family:'JetBrains Mono',ui-monospace,Menlo,monospace;font-size:clamp(18px,2.6vw,24px);line-height:1.75;cursor:text;outline:none;background:#FFFDF9}
.tt-box:focus,.tt-box.live{border-color:var(--forest)}
.tt-text{position:relative;transition:transform .2s}
.tt-text .w{display:inline-block;white-space:pre}
.tt-text i{font-style:normal;color:var(--ink2);opacity:.75}
.tt-text i.ok{color:var(--forest);opacity:1}
.tt-text i.bad{color:#fff;background:var(--bad);border-radius:4px;opacity:1}
.tt-text i.cur{background:var(--sun-2);box-shadow:inset 0 -3px 0 var(--sun);border-radius:3px;color:var(--ink);opacity:1}
.tt-hint{font-size:14.5px!important;color:var(--ink2)!important;margin:10px 2px 0}
.tt-result{margin-top:16px;background:var(--forest-2);border-radius:18px;padding:20px 22px}
.tt-result h3{font-size:24px;margin-bottom:6px}.tt-result p{margin:6px 0;font-size:16.5px}
.tt-result .acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
@media (max-width:720px){
  .gcta{padding:22px}.tt{padding:16px}.tt-stats b{font-size:26px}
  .tt-level button{padding:9px 6px;font-size:13.5px;white-space:nowrap}
  .gtable{font-size:14.5px}.gtable th,.gtable td{padding:9px 10px}.gtable td:first-child{white-space:normal}
}
/* homeschool scope table and comparison table */
.gtable.scope td{white-space:normal!important}.gtable.scope td:first-child{white-space:nowrap!important}
.lss{display:flex;flex-wrap:wrap;gap:5px}.ls{background:var(--cream);border:1px solid var(--line);border-radius:8px;padding:2px 8px;font-size:13.5px;font-weight:700;white-space:nowrap}
.gtable.cmp td{white-space:normal!important;width:42%}.gtable.cmp td:first-child{width:16%;color:var(--ink2)}
.gtable.cmp th:nth-child(2),.gtable.cmp td:nth-child(2){background:#F4FAF6}
@media (max-width:720px){
  .gtable{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .gtable.scope td:first-child{white-space:normal!important;min-width:96px}.ls{white-space:normal}
  .gtable.cmp td{min-width:118px}.gtable.cmp td:first-child{min-width:84px}
}
