/* door.css · niftisports front-door pages d1 (SIG_DOOR_A, Sage 2026-10-30; Pixel V1 AUDIT B2 + B3, brief screen (e)).
   Plus, join, sign-in, account, pay, cancel, confirm, reset, About, How it works, FAQ, Glossary, Contact, the Maine/Pro index, 404.
   Built on signal_components.css (.sig .in/.btn/.tag/.h2/.joinpg/.perks/.plans/.plan/.founding/.cmpt/.box/.fact/.ask/.crumb/.hubh);
   everything here is scoped under html.ns-sig .ns-door (the old looks style generic classes with !important). Tokens only;
   no left-border accents; real form fields (the kit's .fld div is a drawing). niftiiq.com never loads this file. */
html.ns-sig main:has(> .ns-door){padding:0!important;max-width:none!important;background:var(--bg)!important}
html.ns-sig .ns-door{background:var(--bg);color:var(--ink);font-family:var(--fb);width:100%;font-size:15px;line-height:1.55}
html.ns-sig .ns-door a{color:var(--acc);text-decoration:none!important}
html.ns-sig .ns-door a:hover{text-decoration:underline!important}
html.ns-sig .ns-door a:not([class]){color:var(--acc)}            /* beats the old look's 'main a:not([class])' teal (0,2,3) */
html.ns-sig .ns-door a.btn, html.ns-sig .ns-door a.btn:hover, html.ns-sig .ns-door a.ns-card, html.ns-sig .ns-door a.plan{text-decoration:none!important}
html.ns-sig .ns-door h1, html.ns-sig .ns-door h2, html.ns-sig .ns-door h3{text-transform:none!important;letter-spacing:-.02em;color:var(--ink);margin:0}
html.ns-sig .ns-door .ns-h1{font-family:var(--fh);font-weight:800;font-size:40px;letter-spacing:-.045em;line-height:1.05}
html.ns-sig .ns-door .ns-lede{color:var(--ink2);font-size:16px;max-width:62ch;margin:10px 0 0}
html.ns-sig .ns-door .ns-top{padding-block:30px 18px}
html.ns-sig .ns-door .ns-sec{padding-block:6px 26px}
html.ns-sig .ns-door .ns-h2{font-family:var(--fh);font-weight:800;font-size:20px;letter-spacing:-.02em;margin:0 0 8px}
html.ns-sig .ns-door .ns-k{font-size:12px;font-weight:600;color:var(--dim);letter-spacing:0;text-transform:none}
html.ns-sig .ns-door p{margin:0}
html.ns-sig .ns-door p + p{margin-top:10px}
html.ns-sig .ns-door .ns-fine{font-size:13px;color:var(--ink2);max-width:76ch;margin-top:14px}
html.ns-sig .ns-door .ns-card{display:block;border:var(--lw) solid var(--ln);border-radius:var(--r);background:var(--card);padding:18px;color:var(--ink)}
html.ns-sig .ns-door .ns-card + .ns-card{margin-top:14px}
html.ns-sig .ns-door .ns-grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
html.ns-sig .ns-door .ns-narrow{max-width:520px;margin-inline:auto;padding-block:36px}
html.ns-sig .ns-door .ns-msg{border:var(--lw) solid var(--ln);background:var(--bg2);border-radius:var(--r);padding:10px 14px;font-size:14px;color:var(--ink);margin:12px 0}
html.ns-sig .ns-door .ns-msg.bad, html.ns-sig .ns-door .ns-err{border:var(--lw) solid var(--live);background:var(--card);color:var(--live);border-radius:var(--r);padding:10px 14px;font-size:14px;margin:12px 0}
html.ns-sig .ns-door .ns-msg.moved{border-color:var(--accL);background:var(--accS)}
/* forms */
html.ns-sig .ns-door form{margin:0}
html.ns-sig .ns-door .ns-form{display:grid;gap:14px}
html.ns-sig .ns-door .ns-fld{display:grid;gap:5px}
html.ns-sig .ns-door .ns-fld label, html.ns-sig .ns-door .ns-leg{font-size:13px;font-weight:600;color:var(--ink2)}
html.ns-sig .ns-door .ns-fld label small{font-weight:400;color:var(--dim)}
html.ns-sig .ns-door input[type=email], html.ns-sig .ns-door input[type=password], html.ns-sig .ns-door input[type=text], html.ns-sig .ns-door input[type=search],
html.ns-sig .ns-door input:not([type]), html.ns-sig .ns-door textarea{width:100%;box-sizing:border-box;font:400 15px/1.4 var(--fb);color:var(--ink);background:var(--card);
  border:var(--lw) solid var(--dim);border-radius:var(--r);padding:10px 12px;min-height:44px;box-shadow:none;outline:0}
html.ns-sig .ns-door input:focus-visible, html.ns-sig .ns-door textarea:focus-visible{border-color:var(--acc);box-shadow:0 0 0 2px var(--accL)}
html.ns-sig .ns-door input[readonly]{background:var(--bg2);color:var(--ink2)}
html.ns-sig .ns-door .ns-hint{font-size:12.5px;color:var(--dim)}
html.ns-sig .ns-door .ns-pw{position:relative}
html.ns-sig .ns-door .ns-pw input{padding-right:70px}
html.ns-sig .ns-door .ns-show{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:0;cursor:pointer;font:600 13px var(--fb);color:var(--acc);padding:6px}
html.ns-sig .ns-door .ns-ck{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--ink)}
html.ns-sig .ns-door .ns-ck input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:var(--acc)}
html.ns-sig .ns-door .ns-chips{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0}
html.ns-sig .ns-door .ns-chips label{display:inline-flex;gap:7px;align-items:center;font-size:13.5px;padding:7px 11px;border-radius:6px;box-shadow:inset 0 0 0 var(--lw) var(--ln);color:var(--ink2);cursor:pointer}
html.ns-sig .ns-door .ns-chips label:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--acc);color:var(--ink);font-weight:600}
html.ns-sig .ns-door .ns-chips input{accent-color:var(--acc);margin:0}
html.ns-sig .ns-door .ns-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
/* Signal buttons = the kit's: card fill, 2 px ring (--c), ink text. !important because arena-ice paints every .btn solid
   (html[data-theme=dark] body .btn:not(.btn-ghost) {background:var(--i-acc)!important}, 0,3,2; this is 0,4,1) and the ring then sat on blue. */
html.ns-sig .ns-door .btn.btn{cursor:pointer;border:0;background:var(--card)!important;color:var(--ink)!important;box-shadow:inset 0 0 0 2px var(--c,var(--ink))!important;border-radius:var(--r);min-height:44px;font-size:14.5px;text-shadow:none!important}
html.ns-sig .ns-door .btn.btn:hover{background:var(--bg2)!important}
html.ns-sig .ns-door .btn.w100{width:100%}
html.ns-sig .ns-door .btn.quiet{--c:var(--ln2);box-shadow:inset 0 0 0 var(--lw) var(--ln2)!important}
html.ns-sig .ns-door .btn.danger{--c:var(--live);color:var(--live)!important}
html.ns-sig .ns-door .btn[disabled]{opacity:.5;cursor:not-allowed}
html.ns-sig .ns-door .ns-link{background:none;border:0;padding:0;cursor:pointer;font:600 14px var(--fb);color:var(--acc)}
html.ns-sig .ns-door .ns-btns{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
/* join page (brief screen (e)) */
html.ns-sig .ns-door .joinpg{padding-block:30px 26px}
html.ns-sig .ns-door .perk{color:var(--ink)}
/* plus page */
html.ns-sig .ns-door .plans{margin-top:16px}
html.ns-sig .ns-door a.plan{color:var(--ink);background:var(--card);cursor:pointer}
html.ns-sig .ns-door a.plan:hover{border-color:var(--ink2)}
html.ns-sig .ns-door a.plan.best:hover{box-shadow:inset 0 0 0 2px var(--coral)}
html.ns-sig .ns-door a.plan.is-pick{box-shadow:inset 0 0 0 2px var(--acc);border-color:transparent}
html.ns-sig .ns-door .plan .was{font-size:13px;color:var(--ink2)}
html.ns-sig .ns-door .plan .was s{color:var(--dim)}
html.ns-sig .ns-door .plan .d{font-size:13.5px;color:var(--ink2)}
html.ns-sig .ns-door .plan .go{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;min-height:44px;border-radius:var(--r);font:600 14px var(--fb);color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink);text-align:center;padding:6px 10px}
html.ns-sig .ns-door .plan.best .go{box-shadow:inset 0 0 0 2px var(--coral)}
html.ns-sig .ns-door .plan.best .go::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--coral);flex:none}
html.ns-sig .ns-door .founding b{color:var(--ink)}
html.ns-sig .ns-door .cmpt{width:100%;border-collapse:collapse;margin-top:10px}
html.ns-sig .ns-door .cmpt td.y{color:var(--good);font-weight:600}
html.ns-sig .ns-door .cmpt td.n{color:var(--dim)}
/* pay */
html.ns-sig .ns-door .ns-sum{display:flex;justify-content:space-between;gap:12px;align-items:baseline;border:var(--lw) solid var(--ln);border-radius:var(--r);padding:12px 14px;margin:14px 0 6px}
html.ns-sig .ns-door .ns-sum b{font:600 24px/1.2 var(--fn);letter-spacing:-.02em}
html.ns-sig .ns-door .ns-sum span{color:var(--ink2);font-size:14px}
html.ns-sig .ns-door #pay-element{min-height:140px;margin:12px 0 14px}
/* account */
html.ns-sig .ns-door .ns-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:var(--lw) solid var(--ln)}
html.ns-sig .ns-door .ns-row:first-of-type{border-top:0}
html.ns-sig .ns-door .ns-row > span{display:grid;gap:2px;font-size:14.5px;font-weight:600;color:var(--ink)}
html.ns-sig .ns-door .ns-row small{font-size:12.5px;font-weight:400;color:var(--ink2)}
html.ns-sig .ns-door details.ns-row{display:block}
html.ns-sig .ns-door details.ns-row > summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px}
html.ns-sig .ns-door details.ns-row > summary::-webkit-details-marker{display:none}
html.ns-sig .ns-door .ns-row input[type=checkbox]{width:20px;height:20px;accent-color:var(--acc);flex:none}
html.ns-sig .ns-door dl.ns-dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin:10px 0 12px;font-size:14.5px}
html.ns-sig .ns-door dl.ns-dl dt{color:var(--ink2)}
html.ns-sig .ns-door dl.ns-dl dd{margin:0;font-weight:600;color:var(--ink)}
html.ns-sig .ns-door .ns-mx, html.ns-sig .ns-door .ns-mx *{color:var(--ink)!important;background:transparent!important;text-transform:none!important;font-family:var(--fb)!important;text-shadow:none!important}
html.ns-sig .ns-door .ns-mx a, html.ns-sig .ns-door .ns-mx a *{color:var(--acc)!important}
html.ns-sig .ns-door .ns-mx [class*=card], html.ns-sig .ns-door .ns-mx [class*=edge]{border:0!important;box-shadow:none!important;padding:0!important}
html.ns-sig .ns-door .ns-dev{margin:8px 0 0;padding-left:18px;font-size:14px}
/* text pages (About, How it works, FAQ, Glossary) */
html.ns-sig .ns-door .ns-txt{max-width:780px}
html.ns-sig .ns-door .ns-big{font-family:var(--fh);font-weight:800;font-size:22px;letter-spacing:-.02em;line-height:1.3;color:var(--ink)}
html.ns-sig .ns-door .ns-qa{border-top:var(--lw) solid var(--ln);padding-block:16px}
html.ns-sig .ns-door .ns-qa h2{font-family:var(--fh);font-weight:800;font-size:18px;letter-spacing:-.02em;margin:0 0 6px}
html.ns-sig .ns-door .ns-qa p{color:var(--ink2)}
html.ns-sig .ns-door .ns-chipsrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
html.ns-sig .ns-door .ns-chipsrow span{font-size:12.5px;padding:4px 10px;border-radius:6px;box-shadow:inset 0 0 0 var(--lw) var(--ln);color:var(--ink2)}
/* Maine / Pro index */
html.ns-sig .ns-door .ns-rows{display:grid;gap:8px;margin:0;padding:0;list-style:none}
html.ns-sig .ns-door .ns-rowc{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px 12px;align-items:center;border:var(--lw) solid var(--ln);border-radius:var(--r);padding:14px 16px;background:var(--card);color:var(--ink)}
html.ns-sig .ns-door .ns-rowc:hover{border-color:var(--ink2)}
html.ns-sig .ns-door .ns-rowc b{font-family:var(--fh);font-weight:800;font-size:17px;letter-spacing:-.01em;overflow-wrap:anywhere}
html.ns-sig .ns-door .ns-rowc small{display:block;font-size:13px;color:var(--ink2);font-weight:400;margin-top:2px}
html.ns-sig .ns-door .ns-rowc .go{color:var(--acc);font-weight:700}
html.ns-sig .ns-door .ns-find{display:flex;gap:8px;max-width:520px;margin-top:16px}
html.ns-sig .ns-door .ns-find input{flex:1}
html.ns-sig .ns-door .ns-day{margin-top:16px}
html.ns-sig .ns-door .ns-day h3{font-size:13px;font-weight:600;color:var(--dim);margin:0 0 6px}
html.ns-sig .ns-door .ns-game{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:10px;align-items:center;border-top:var(--lw) solid var(--ln);padding:10px 0;color:var(--ink)}
html.ns-sig .ns-door .ns-game .t{font:600 13px var(--fn);color:var(--ink2)}
html.ns-sig .ns-door .ns-game b{font-weight:600;overflow-wrap:anywhere}
html.ns-sig .ns-door .ns-game small{display:block;color:var(--dim);font-size:12.5px}
html.ns-sig .ns-door .ns-404{padding-block:60px 70px}
@container (max-width:860px){
  html.ns-sig .ns-door .ns-grid2{grid-template-columns:minmax(0,1fr)}
}
@container (max-width:600px){
  html.ns-sig .ns-door .ns-h1{font-size:29px}
  html.ns-sig .ns-door .ns-top{padding-block:22px 14px}
  html.ns-sig .ns-door .ns-narrow{padding-block:22px}
  html.ns-sig .ns-door .ns-game{grid-template-columns:64px minmax(0,1fr) auto}
  html.ns-sig .ns-door .ns-rowc{grid-template-columns:minmax(0,1fr) auto}
  html.ns-sig .ns-door .ns-rowc .go{display:none}
}
/* the door's own heading / text colours must not reach the ask band (.sig .ask: --asktx on --askbg, paragraph --askp) */
html.ns-sig .ns-door .ask h3{color:var(--asktx);font:800 26px/1.15 var(--fh)!important;letter-spacing:-.04em}
@container (max-width:600px){html.ns-sig .ns-door .ask h3{font-size:22px!important}}
html.ns-sig .ns-door .ask p{color:var(--askp)}
/* the account page's share card (_share_team.html, Ice markup): Signal type, no mono, Signal label */
html.ns-sig .ns-door .iqs-share, html.ns-sig .ns-door .iqs-share .ice-note{font-family:var(--fb)!important;letter-spacing:0!important;text-transform:none!important;font-size:14px;color:var(--ink2)!important}
html.ns-sig .ns-door .iqs-share .ice-k{font-family:var(--fb)!important;font-size:13px;font-weight:600;letter-spacing:0!important;text-transform:none!important;color:var(--ink2)!important;border:0!important}
html.ns-sig .ns-door .iqs-share .ice-btn{font-family:var(--fb)!important;letter-spacing:0!important;text-transform:none!important}
/* r2 (Pixel LOOK V1 batch 2) ---------------------------------------------------------------------------------------------- */
/* MUST 5: every value column centred under its heading (the kit right-aligns '–') */
html.ns-sig .ns-door .cmpt th:not(:first-child), html.ns-sig .ns-door .cmpt td:not(:first-child){text-align:center!important}
/* SHOULD: a plain action button is a framed cobalt button with the dot (kit .btn.join), never an ink frame */
html.ns-sig .ns-door .btn.btn:not(.quiet):not(.danger):not(.plus):not(.join){--c:var(--acc)}
html.ns-sig .ns-door .btn:not(.quiet):not(.danger):not(.plus):not(.join)::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--acc);flex:none}
html.ns-sig .ns-door .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px}
/* MUST 8: the follow links read as a list */
html.ns-sig .ns-door .ns-follow a{font-weight:600}
/* SHOULD: 'Proven:' and 'Likely:' read the same */
html.ns-sig .ns-door .ns-qa p b{color:var(--ink);font-weight:700}
/* NS_SWITCH_A r6 (Pixel LIVE PASS SHOULD 10-31): in light the old look's '.gp-main form input[name]' !important rule painted the
   fields var(--ch-black) = #F2F5F8 (old Ice grey). Point the old looks' field colors at the door's own, on the door's fields only
   (dark untouched: Pixel PASS). */
html.ns-sig:not([data-theme=dark]) .ns-door input[type=email], html.ns-sig:not([data-theme=dark]) .ns-door input[type=password],
html.ns-sig:not([data-theme=dark]) .ns-door input[type=text], html.ns-sig:not([data-theme=dark]) .ns-door input[type=search],
html.ns-sig:not([data-theme=dark]) .ns-door input:not([type]), html.ns-sig:not([data-theme=dark]) .ns-door textarea{--ch-black:var(--card);--i-inset:var(--card);--iq-white:var(--card)}
html.ns-sig:not([data-theme=dark]) .ns-door input[readonly]{--ch-black:var(--bg2);--i-inset:var(--bg2);--iq-white:var(--bg2)}
