/* King Atlas Technologies: overnight round 17 polish (Oct 14, 2026)
   Every block is tagged with its SITE-CHANGES.md number (#510-#531).
   CSS only. Linked last in src/partials/footer.html, after r16.css.
   Revert one item: delete its block. Revert all: remove the r17.css <link> and rebuild. */

/* #510 VIP strip fits small 320px phones: the "Join the VIP waitlist" link may shrink/wrap so the page never scrolls sideways */
@media (max-width:360px){
}

/* #511 Top status bar: two-line "INSERT TOKEN" / "Refer a friend" labels get breathing room between lines and stay centered */
.callbar.statusbar a.tb-btn{line-height:1.3;text-align:center;justify-content:center}

/* #512 "New here? Create a free account" lines: even line spacing (the link no longer makes its line taller); a padded hit area keeps it easy to tap */
.acct-nudge a{display:inline;min-height:0;padding:.65em 0;-webkit-box-decoration-break:clone;box-decoration-break:clone}

/* #513 Town chips (home contact box, town/service-area pills): the whole chip is tappable, not just the words. Same look and size. */
.ct-chips li:has(>a){padding:0}
.ct-chips li>a{padding:.25rem .8rem;min-height:44px;line-height:44px;box-sizing:content-box;display:block}
.pills li:has(>a){padding:0}
.pills li>a{padding:.4rem 1rem;box-sizing:content-box;display:block}

/* #514 Town pages: "Text 763-329-5464 · email" line links get a taller tap area */
.city-contact a{display:inline-block;padding:.7rem 0;line-height:1.4}

/* #515 Text links inside checklists, step cards and the home contact box (e.g. "See all prices", "Text 763-329-5464", email) get a taller invisible tap area; layout unchanged */
main .checks li a:not(.btn),main .how-steps p a:not(.btn),main .trust li a:not(.btn),main .ct-rows li>span>a:not(.btn){padding:.6em 0;-webkit-box-decoration-break:clone;box-decoration-break:clone}

/* #516 Contact "Best way to reach you?": bigger radio circles (about 28px) */
.reach-fs .choice input{width:1.6rem;height:1.6rem;flex:none}

/* #517 Pop-up dropdown lists: long options that wrap get more line spacing */
.pxs-opt{line-height:1.45}

/* #518 Refer: jumping to "Get your link" (#ref-members) lands below the header (an r10 rule was overriding r16 #479) */
#ref-members,.ref-steps{scroll-margin-top:7.5rem}
@media (max-width:700px){#ref-members,.ref-steps{scroll-margin-top:6.25rem}}

/* #519 Arcade level badges (Beginner / Medium / Hard): crisp dark text, no muddy glow on the bright badge */
.diff,.mg-diff,.cabinet p.diff{text-shadow:none!important}

/* #520 Forms: a field you've left with a mistake (e.g. email missing "@") gets a thick pink border. Only after you've typed and moved on. */
input:user-invalid,textarea:user-invalid,select:user-invalid{border-color:#ff3fb4!important;border-width:3px}
html.hc input:user-invalid,html.hc textarea:user-invalid{border-color:#fff!important;border-style:dashed}

/* #521 Phones: a focused form field or link is never hidden behind the bottom button bar */
@media (max-width:700px){html{scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom))}}

/* #522 Device "more contrast" setting: thicker link underlines, white card borders, no soft glows */
@media (prefers-contrast:more){
  main a:not(.btn){text-decoration-thickness:3px}
  main .px-box,main .cabinet,main .tier{border-color:#fff}
  .acct-nudge{animation:none;border-left-color:#fff}
  main p,main li{text-shadow:none}
}

/* #523 Windows high contrast (forced colors): radio circles, chips and the coming-soon button keep visible outlines */
@media (forced-colors:active){
  .reach-fs .choice:has(input:checked){outline:2px solid Highlight}
  .ct-chips li>a,.pills li>a{border:0}
  .btn-soon{border:2px dashed CanvasText}
}

/* #524 Checklist and FAQ lines avoid a single lonely word on the last line (matches paragraphs, r6) */
main li,main details p,main dd{text-wrap:pretty}

/* #525 Small pixel-font labels above page titles (e.g. "Contact · Free 15-minute consult") break into even lines on phones */
.page-head .label,.label.pop{text-wrap:balance}

/* #526 Very narrow phones (280px folding phones): long email addresses, the Contact page's big Text/Email buttons and the Sessions business boxes fit instead of pushing the page sideways */
a[href^="mailto:"]{overflow-wrap:anywhere}
.contact-grid>*{min-width:0}
@media (max-width:340px){.biz-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:300px){.big-links .btn{white-space:normal;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}}

/* #527 Town chips: keyboard focus ring is 3px gold, the same as every other button and link */
.ct-chips a:focus-visible,.pills.city-pills a:focus-visible,.pills li>a:focus-visible{outline:3px solid #ffd23f;outline-offset:2px}

/* #528 "Buy tokens & book (coming soon)": no hover lift, so it doesn't look pressable before checkout opens */
.btn-soon:hover,.btn-soon:focus,.btn-soon:active{transform:none!important}

/* #529 Contact "Best way to reach you?": the chosen option's words turn bold (a cue that isn't color alone) */
.reach-fs .choice:has(input:checked){font-weight:700}

/* #530 Status bar buttons: with Motion OFF / reduce motion they don't jump on hover or tap (color change only) */
html.calm .callbar.statusbar a.tb-btn:hover,html.calm .callbar.statusbar a.tb-btn:focus-visible,html.calm .callbar.statusbar a.tb-btn:active{transform:none}
@media (prefers-reduced-motion:reduce){.callbar.statusbar a.tb-btn:hover,.callbar.statusbar a.tb-btn:focus-visible,.callbar.statusbar a.tb-btn:active{transform:none}}

/* #531 Print: town chips and arcade badges print as plain bordered text (no dark fills wasting ink) */
@media print{
  .ct-chips li,.pills li,.diff,.mg-diff{background:#fff!important;color:#000!important;border:1px solid #000!important;box-shadow:none!important}
  .ct-chips li a,.pills li a{color:#000!important}
}
