/* Checking toolkit (/create/toolkit/, toolkit.py) and its card on the sticker book (.sk-kit).
   The house look: navy outlines, offset blue, yellow and pink shadows, die-cut stickers, Clash Display heads and
   calm spacing. "What are you checking?" filters the groups with radio buttons and :has(), no script needed.
   Linked on every page (build.py EXTRA_CSS), after stickers.css. */
:root{--tk-ink:#142b46;--tk-blue:#124dec;--tk-gold:#ffdc52;--tk-yellow:#ffd84a;--tk-pink:#c2185b;--tk-sky:#eaf1ff;--tk-sun:#fff4cf;
  --tk-rose:#ffe9f1;--tk-shadow-blue:#bccbf7;--tk-shadow-pink:#f3a9c8;--tk-display:var(--r-display,'Clash Display','Satoshi',system-ui,sans-serif)}

/* ---------- intro ---------- */
#main .tk-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(20px,4vw,48px);align-items:center;color:var(--tk-ink)}
#main#main > .tk-intro.wrap{margin-bottom:clamp(28px,4vw,48px)!important}
#main .tk-kicker{display:inline-block;margin:0 0 12px!important;padding:4px 14px;border:2px solid var(--tk-ink);border-radius:999px;background:var(--tk-gold);
  font-weight:800;font-size:.9375rem;line-height:1.3}
#main .tk-intro h1{margin:0!important;font-size:clamp(2.4rem,5vw,4rem)!important;line-height:1.02!important}
#main .tk-lead{margin:16px 0 0!important;font-size:clamp(1.08rem,1.5vw,1.25rem);max-width:48ch}
#main .tk-privacy{display:inline-flex;gap:10px;align-items:center;margin:16px 0 0!important;padding:8px 14px;border-radius:18px;background:var(--tk-sky);
  font-weight:600;max-width:100%;box-sizing:border-box}
#main .tk-privacy .npw-icon{flex:none}
#main img.tk-cutout{width:clamp(110px,14vw,180px);height:auto;transform:rotate(4deg);border:0;box-shadow:none}

/* ---------- the filter chips ---------- */
#main .tk-filter{margin:0 0 clamp(8px,2vw,16px)!important;padding:0;border:0;min-width:0}
#main .tk-filter legend{float:left;width:100%;margin:0 0 12px;padding:0;font:650 clamp(1.3rem,2.2vw,1.6rem)/1.2 var(--tk-display);color:var(--tk-ink)}
#main .tk-chips{clear:both;display:flex;flex-wrap:wrap;gap:10px}
#main .tk-filter input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
#main .tk-filter label{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:2px solid var(--tk-ink);border-radius:999px;background:#fff;
  color:var(--tk-ink);font-weight:750;font-size:1rem;line-height:1.2;cursor:pointer;box-shadow:3px 4px 0 var(--tk-shadow-blue);transition:transform .15s,box-shadow .15s}
#main .tk-filter label:hover{transform:translate(-1px,-1px);box-shadow:4px 5px 0 var(--tk-shadow-blue)}
#main .tk-filter input:checked + label{background:var(--tk-blue);color:#fff;box-shadow:3px 4px 0 var(--tk-ink)}
#main .tk-filter input:focus-visible + label{outline:3px solid var(--tk-blue);outline-offset:3px}
#main:has(#tk-pick-picture:checked) .tk-group:not(.tk-group--picture),
#main:has(#tk-pick-claim:checked) .tk-group:not(.tk-group--claim),
#main:has(#tk-pick-money:checked) .tk-group:not(.tk-group--money),
#main:has(#tk-pick-voice:checked) .tk-group:not(.tk-group--voice){display:none}

/* ---------- groups and sticker cards ---------- */
#main .tk-group{margin:clamp(32px,4vw,48px) 0 0!important;padding:0;border:0;background:none;box-shadow:none}
#main .tk-group-head{display:flex;align-items:center;gap:16px;max-width:none}
#main img.tk-group-art{width:auto;height:72px;flex:none;transform:rotate(-5deg);border:0;box-shadow:none}
#main#main .tk-group-head h2{margin:0!important;font-size:clamp(1.6rem,2.8vw,2.2rem)!important;line-height:1.1!important}
#main .tk-group-head p{margin:4px 0 0!important;font-size:1.0625rem}
/* Columns by card count, so no card is left alone in a row on a laptop: 2 or 4 cards in two columns, 3 in three. */
#main .tk-grid{list-style:none;margin:26px 0 0!important;padding:0!important;display:grid;gap:clamp(24px,2.6vw,30px);grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){#main .tk-grid:is(.tk-grid--2,.tk-grid--4){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){#main .tk-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
#main .tk-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0;max-width:none;padding:24px 20px 20px;background:#fff;
  border:2.5px solid var(--tk-ink);border-radius:24px;box-shadow:6px 6px 0 var(--tk-shadow,var(--tk-blue));color:var(--tk-ink)}
#main .tk-card::marker{content:none}
#main .tk-card:nth-child(3n+2){--tk-shadow:var(--tk-gold)}
#main .tk-card:nth-child(3n){--tk-shadow:var(--tk-pink)}
#main .tk-sticker{position:absolute;top:-18px;right:14px;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--tk-sun);
  border:2.5px solid var(--tk-ink);box-shadow:2px 3px 0 var(--tk-ink);transform:rotate(8deg)}
#main .tk-card:nth-child(even) .tk-sticker{transform:rotate(-7deg);background:var(--tk-sky)}
#main .tk-sticker .npw-icon{width:34px;height:34px}
#main .tk-pub{margin:0!important;padding-right:56px;font-weight:750;font-size:.9375rem;color:var(--tk-pink)}
#main#main .tk-name{margin:0!important;font:650 1.45rem/1.15 var(--tk-display)!important;color:var(--tk-ink)}
#main .tk-for{margin:0!important;font-size:1.0625rem;line-height:1.5}
#main .tk-for b{font-weight:800}
#main .tk-try{align-self:stretch;margin:6px 0 0;padding:12px 14px;border-radius:16px;background:var(--tk-sun);border:1.5px solid var(--tk-ink)}
#main .tk-card:nth-child(3n+2) .tk-try{background:var(--tk-sky)}
#main .tk-card:nth-child(3n) .tk-try{background:var(--tk-rose)}
#main .tk-try-k{margin:0!important;font:650 1.05rem/1.2 var(--tk-display);color:var(--tk-ink)}
#main .tk-try-line{margin:4px 0 0!important;font-size:1rem;line-height:1.5}
#main .tk-case{display:inline-block;margin-top:6px;font-weight:750;font-size:.9375rem;color:var(--tk-blue)!important;text-decoration:underline;text-underline-offset:3px}
#main .tk-grades{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 0!important;padding:0!important}
#main .tk-grades li{margin:0!important;padding:2px 10px!important;border:1.5px solid var(--tk-ink);border-radius:999px;font-size:.8125rem;font-weight:700;line-height:1.4;background:#fff}
#main .tk-grades li::marker{content:none}
#main .tk-open{display:inline-flex;align-items:center;gap:8px;margin-top:auto!important;min-height:46px;padding:10px 18px;border:2px solid var(--tk-ink);border-radius:999px;
  background:var(--tk-blue);color:#fff!important;font-weight:750;font-size:1rem;line-height:1.2;text-decoration:none!important;box-shadow:3px 4px 0 var(--tk-ink);
  transition:transform .15s,box-shadow .15s}
#main .tk-try + .tk-grades + .tk-open,#main .tk-grades + .tk-open{margin-top:10px!important}
#main .tk-open:hover{background:#0b37b0;transform:translate(-1px,-1px);box-shadow:4px 5px 0 var(--tk-ink)}
#main .tk-open:focus-visible{outline:3px solid var(--tk-blue);outline-offset:3px}
#main .tk-open .tk-ext{width:1.1em;height:1.1em;color:#fff}
#main .tk-sr{position:absolute!important;width:1px;height:1px;overflow:clip;clip-path:inset(50%);white-space:nowrap}

/* ---------- tips (yellow band) and keep going ---------- */
#main#main .tk-tips h2,#main#main .tk-more h2{margin:0!important;font-size:clamp(1.6rem,2.8vw,2.2rem)!important;line-height:1.1!important}
#main .tk-tip-list{list-style:none;margin:20px 0 0!important;padding:0!important;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
#main .tk-tip-list li{display:flex;gap:12px;align-items:flex-start;margin:0!important;padding:16px 18px!important;background:#fff;border:2px solid var(--tk-ink);border-radius:18px;
  font-size:1.0625rem;line-height:1.45;font-weight:600}
#main .tk-tip-list li::marker{content:none}
#main .tk-tip-list .npw-icon{width:32px;height:32px;flex:none}
#main#main > .tk-more.wrap{margin-block:clamp(40px,5vw,64px)!important}
#main .tk-more-list{list-style:none;margin:20px 0 0!important;padding:0!important;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
#main .tk-more-list li{margin:0!important;padding:0!important}
#main .tk-more-list li::marker{content:none}
#main .tk-more-list a{display:flex;align-items:center;gap:14px;height:100%;box-sizing:border-box;padding:16px 18px;border:2px solid var(--tk-ink);border-radius:18px;background:#fff;
  color:var(--tk-ink)!important;text-decoration:none!important;box-shadow:4px 5px 0 var(--tk-shadow-blue);transition:transform .15s}
#main .tk-more-list li:nth-child(2) a{box-shadow:4px 5px 0 var(--tk-gold)}
#main .tk-more-list li:nth-child(3) a{box-shadow:4px 5px 0 var(--tk-shadow-pink)}
#main .tk-more-list a:hover{transform:translate(-1px,-1px)}
#main .tk-more-list .npw-icon{width:40px;height:40px;flex:none}
#main .tk-more-list b{display:block;font:650 1.15rem/1.2 var(--tk-display)}
#main .tk-more-list span{font-size:.97rem;font-weight:600}

/* ---------- the toolkit card on the sticker book ---------- */
#main#main > .sk-kit.wrap{margin-block:clamp(40px,5vw,64px)!important}
#main .sk-kit-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(14px,2.4vw,28px);align-items:center;
  padding:clamp(18px,2.4vw,26px) clamp(18px,3vw,32px);background:#fff;border:2.5px solid var(--tk-ink);border-radius:26px;box-shadow:8px 8px 0 var(--tk-pink);color:var(--tk-ink)}
#main .sk-kit-art{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--tk-sky);border:2.5px solid var(--tk-ink);transform:rotate(-6deg)}
#main .sk-kit-art .npw-icon{width:42px;height:42px}
#main#main .sk-kit h2{margin:0!important;font-size:clamp(1.5rem,2.6vw,2rem)!important;line-height:1.1!important}
#main#main .sk-kit p{margin:6px 0 0!important;font-size:1.0625rem;max-width:56ch}
#main .sk-kit .primary-action{margin:0!important;white-space:nowrap}

@media (max-width:760px){
  /* Lupa sits beside the heading, and the lead and the privacy note get the full width. */
  #main .tk-intro{position:relative;grid-template-columns:minmax(0,1fr)}
  #main .tk-intro > div{min-width:0}
  #main .tk-intro h1{padding-right:92px}
  #main img.tk-cutout{position:absolute;top:0;right:0;width:78px}
  #main .tk-filter label{min-height:42px;padding:7px 13px;font-size:.9375rem}
  #main .tk-chips{gap:8px}
  #main img.tk-group-art{height:56px}
  #main .sk-kit-card{grid-template-columns:auto minmax(0,1fr)}
  #main .sk-kit .primary-action{grid-column:1 / -1;justify-self:start;white-space:normal}
  #main .sk-kit-art{width:56px;height:56px}
  #main .sk-kit-art .npw-icon{width:32px;height:32px}
}
@media (prefers-reduced-motion:reduce){#main :is(.tk-filter label,.tk-open,.tk-more-list a){transition:none}}
@media print{#main .tk-filter{display:none}#main .tk-group{display:block!important}#main .tk-card{box-shadow:none;break-inside:avoid}}
