/* Termfit five-minute guide.  Brand: Midnight, Cobalt, Citron, Mist, Tint, Paper.
   Its own sheet, so a change to the landing page cannot reshape the guide.
   Termfit is a personal tool built and owned by Mike Kapin.  (c) 2026 Mike Kapin.  All rights reserved. */

@font-face{font-family:"Inter";src:url("../app/src/fonts/inter.woff2") format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Archivo Expanded";src:url("../app/src/fonts/archivo-expanded.woff2") format("woff2");font-weight:600 800;font-display:swap}

:root{
  --midnight:#0B1433; --cobalt:#2340C8; --citron:#C9D63F; --mist:#C9D2EE;
  --tint:#EEF1FC; --paper:#F6F8FC; --white:#FFFFFF; --line:#DCE1EC; --muted:#4A5570;
  --display:"Archivo Expanded", "Segoe UI", Arial, sans-serif;
  --body:"Inter", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--midnight);font:400 1.0625rem/1.65 var(--body)}
img{max-width:100%;height:auto}
a{color:var(--cobalt);text-underline-offset:.18em}
p,ol,ul{margin:0 0 1em}
li{margin-bottom:.35em}
h1,h2{font-family:var(--display);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0;text-wrap:balance}
h1{font-size:clamp(2rem, 6vw, 3.4rem);color:var(--white)}
h2{font-size:clamp(1.35rem, 3.4vw, 1.9rem);margin-bottom:.6em}
kbd{font:600 .9em/1 var(--body);background:var(--white);border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:.12em .42em}
b.ui{font-weight:700;color:var(--midnight)}

:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px;border-radius:4px}
.top :focus-visible,.foot :focus-visible{outline-color:var(--citron)}
main:focus{outline:none}
.skip{position:absolute;left:16px;top:12px;z-index:10;padding:.6em 1em;background:var(--citron);color:var(--midnight);
  font-weight:700;border-radius:8px;text-decoration:none;transform:translateY(-200%)}
.skip:focus{transform:none}

.wrap{width:100%;max-width:860px;margin-inline:auto;padding-inline:clamp(16px, 4vw, 32px)}

.top{background:var(--midnight);color:#D5DCF2;border-bottom:4px solid var(--citron);padding-block:clamp(28px, 6vw, 56px)}
.top-logo{display:inline-block;margin-bottom:22px}
.top-logo img{display:block;width:170px;height:auto}
.lede{font-size:1.15rem;max-width:40em;margin:14px 0 0}

.toc{background:var(--tint);border-bottom:1px solid var(--line);padding-block:18px}
/* A wrapping row of links.  The numbers are drawn here, because list markers inside a flex row
   run into the previous item. */
.toc ol{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0;padding:0;list-style:none;counter-reset:toc}
.toc li{margin:0;counter-increment:toc;white-space:nowrap}
.toc li::before{content:counter(toc) ". ";color:var(--muted)}

.step{padding-block:clamp(32px, 6vw, 56px);border-bottom:1px solid var(--line)}
.step:last-of-type{border-bottom:0}
.step-n{display:inline-block;font:800 .85rem/1 var(--display);color:var(--cobalt);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}
.tip{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--citron);border-radius:8px;padding:12px 16px;margin:0 0 1em}
.tip p:last-child{margin-bottom:0}

figure{margin:1.2em 0 1.4em}
.shot{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--white);box-shadow:0 6px 22px rgba(11,20,51,.08)}
.shot img{display:block;width:100%}
figcaption{font-size:.94rem;color:var(--muted);margin-top:8px}

.help{background:var(--tint);border-radius:12px;padding:20px 22px;margin-block:8px 40px}
.help p:last-child{margin-bottom:0}

.foot{background:var(--midnight);color:#AAB4D6;font-size:.92rem;padding-block:26px}
.foot a{color:#D5DCF2}
.foot p{margin:0}

@media print{
  .skip,.toc{display:none}
  .top{background:none;color:var(--midnight);border-bottom:2px solid var(--midnight)}
  h1{color:var(--midnight)}
  .top-logo{display:none}
  .step{break-inside:avoid-page}
}
