/* ══════════════════════════════════════════════════════════════════════
   Katha Challenge — public pages, 2026 layer
   ----------------------------------------------------------------------
   Loaded AFTER the page's own <style> block, scoped to body.kc-2026, so it
   restyles without touching the markup contracts the tests and scripts rely
   on (ids, kp-* / kc-* class names, copy).

   Shares the site language: Satoshi, sand #e8d5b7, hairlines, 6px radius,
   a centred 1200px column. Challenge keeps its own warm-ink ground (--nvc-*)
   so it stays recognisable as the programme, not a generic content page.

   Partner / sponsor logos
   -----------------------
   Approved creatives arrive as PNG, JPEG or WebP on whatever background the
   partner supplied, so each logo sits on a neutral PLATE of a fixed size.
   Flip --kc-plate to a dark value if partners are asked for light-on-dark
   artwork instead. Creatives are never recoloured or cropped.
   ══════════════════════════════════════════════════════════════════════ */

@font-face{font-family:SiteSatoshi;src:url('/fonts/satoshi/Satoshi-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:SiteSatoshi;src:url('/fonts/satoshi/Satoshi-Medium.woff2') format('woff2');font-weight:500 600;font-display:swap}
@font-face{font-family:SiteSatoshi;src:url('/fonts/satoshi/Satoshi-Bold.woff2') format('woff2');font-weight:700 900;font-display:swap}

body.kc-2026{
  --kc-font:SiteSatoshi,system-ui,sans-serif;
  --font-sans:SiteSatoshi,system-ui,sans-serif; /* home-2026.css pins body.hero-page to this variable */
  --kc-sand:#e8d5b7;
  --kc-text:#efe9dc;
  --kc-text-2:rgba(239,233,220,.72);
  --kc-text-3:rgba(239,233,220,.52);
  --kc-line:rgba(232,213,183,.14);
  --kc-line-2:rgba(232,213,183,.08);
  --kc-fill:rgba(232,213,183,.045);
  --kc-r:6px;
  --kc-col:max(32px,calc((100% - 1200px) / 2));
  --kc-plate:#fff;
  --kc-plate-ink:#1a1915;
  color:var(--kc-text);
}
body.hero-page.nvc.kc-2026{font-family:var(--kc-font)}
@media (max-width:1023.98px){ body.kc-2026{--kc-col:16px} }
@media (max-width:700px){ body.kc-2026{--kc-col:22px} }

/* ── Column ───────────────────────────────────────────────────────── */
.kc-2026 .kp-page{max-width:none;padding-left:var(--kc-col);padding-right:var(--kc-col);padding-top:clamp(5.5rem,8vw,7.5rem)}
.kc-2026 .kc-section{max-width:none;padding-left:0;padding-right:0;border-top:1px solid var(--kc-line-2)}
.kc-2026 .kc-jump-menu{padding-left:var(--kc-col);padding-right:var(--kc-col);gap:1.75rem;border-bottom-color:var(--kc-line-2)}
.kc-2026 .kc-jump-menu a{font-family:var(--kc-font);font-weight:500;font-size:.875rem;letter-spacing:-.005em;color:var(--kc-text-3)}
.kc-2026 .kc-jump-menu a:hover,.kc-2026 .kc-jump-menu a:focus-visible{color:var(--kc-text);border-color:var(--kc-sand)}

/* ── Type ─────────────────────────────────────────────────────────── */
.kc-2026 .kp-title,
.kc-2026 .kc-section-title,
.kc-2026 .kp-dash-title,
.kc-2026 .kp-action-title,
.kc-2026 .kp-counter-n{font-family:var(--kc-font)}

.kc-2026 .kp-eyebrow{font-family:var(--kc-font);font-size:.8125rem;font-weight:500;letter-spacing:.01em;color:var(--kc-text-2);margin-bottom:1.1rem}
.kc-2026 .kp-eyebrow{display:flex;align-items:center;gap:.625rem}
.kc-2026 .kp-eyebrow i{display:block;flex-shrink:0;width:1.75rem;height:1px;background:var(--kc-sand)}

.kc-2026 .kp-title{font-weight:500;font-size:clamp(2.6rem,6.2vw,5rem);line-height:1.04;letter-spacing:-.05em;color:var(--kc-text);max-width:13ch;margin-bottom:1.5rem;text-wrap:balance}
.kc-2026 .kc-section-title{font-weight:500;font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.08;letter-spacing:-.045em;color:var(--kc-text);max-width:20ch;margin:0 0 1rem;text-wrap:balance}
.kc-2026 .kp-lede{font-size:1.125rem;line-height:1.6;color:var(--kc-text-2);max-width:44ch}
.kc-2026 .kp-lede strong{color:var(--kc-sand)}
.kc-2026 .kp-free-line{color:var(--kc-text);font-size:.9375rem;line-height:1.6;max-width:56ch}
.kc-2026 .kc-section-lede{font-size:1.0625rem;color:var(--kc-text-2);max-width:56ch}
.kc-2026 .kp-privacy{color:var(--kc-text-3)}

/* ── Hero ─────────────────────────────────────────────────────────── */
.kc-2026 .kp-page::before{content:'';position:absolute;inset:-4rem 0 auto;height:34rem;pointer-events:none;z-index:-1;
  background:radial-gradient(60% 70% at 18% 28%,rgba(232,213,183,.085),transparent 70%)}
.kc-2026 .kp-layout{column-gap:clamp(3rem,7vw,7.5rem)}

.kc-2026 .kc-status-chip{border-radius:var(--kc-r);border-color:var(--kc-line);background:var(--kc-fill);padding:.4rem .8rem .4rem .65rem;font-family:var(--kc-font);font-size:.8125rem;font-weight:500;color:var(--kc-text-2);margin-bottom:1.5rem}
.kc-2026 .kc-status-dot{background:var(--kc-sand);width:.45rem;height:.45rem;box-shadow:0 0 0 3px rgba(232,213,183,.16)}

/* The register card: quiet, one surface, no lift on hover. */
.kc-2026 .kp-action{border-radius:var(--kc-r);border-color:var(--kc-line);background:linear-gradient(160deg,rgba(232,213,183,.06),rgba(232,213,183,.015) 60%);box-shadow:none;padding:clamp(1.5rem,2.6vw,2.25rem)}
.kc-2026 .kp-action::before{background:linear-gradient(90deg,var(--kc-sand),transparent 70%);opacity:.9}
@media (hover:hover){.kc-2026 .kp-action:hover{transform:none;border-color:var(--kc-line);box-shadow:none}}
.kc-2026 .kp-action-label{color:var(--kc-text-3);font-weight:500;letter-spacing:.12em}
.kc-2026 .kp-counter-n{font-weight:500;font-size:clamp(3.25rem,6vw,4.5rem);letter-spacing:-.05em;color:var(--kc-text)}
.kc-2026 .kp-counter-label{color:var(--kc-text-2)}
.kc-2026 .kp-counter-note{color:var(--kc-text-3)}
.kc-2026 .kp-rule{background:var(--kc-line);margin:1.5rem 0 1.75rem}
.kc-2026 .kp-action-title{font-weight:500;font-size:clamp(1.5rem,2.4vw,1.9rem);letter-spacing:-.04em;color:var(--kc-text)}
.kc-2026 .kp-block p{color:var(--kc-text-2)}
.kc-2026 .kp-block p strong{color:var(--kc-text)}
.kc-2026 .kp-state-mark{color:var(--kc-sand)}

/* ── Buttons (same shape as the rest of the site) ─────────────────── */
.kc-2026 .nvc-btn{border-radius:var(--kc-r);font-family:var(--kc-font);font-weight:700;font-size:.9375rem;letter-spacing:-.005em;min-height:2.9rem}
.kc-2026 .nvc-btn-primary{background:var(--kc-sand);border-color:var(--kc-sand);color:#1a1915}
.kc-2026 .nvc-btn-primary:hover{background:#f0e1c6;border-color:#f0e1c6;color:#1a1915}
.kc-2026 .nvc-btn-ghost{background:transparent;border-color:var(--kc-line);color:var(--kc-text)}
.kc-2026 .nvc-btn-ghost:hover{border-color:var(--kc-sand);color:var(--kc-text)}
.kc-2026 .nvc-btn:focus-visible{outline:2px solid var(--kc-sand);outline-offset:3px}

/* ── Forms ────────────────────────────────────────────────────────── */
.kc-2026 .kp-select-wrap,
.kc-2026 .kp-field input[type="text"],
.kc-2026 .kp-form input[type="text"],
.kc-2026 .kp-form input[type="email"],
.kc-2026 .kp-textarea,
.kc-2026 .kp-choice .kp-choice-opt{border-radius:var(--kc-r);border-color:var(--kc-line);background:rgba(232,213,183,.03)}
.kc-2026 .kp-select-wrap:focus-within,
.kc-2026 .kp-field input[type="text"]:focus,
.kc-2026 .kp-textarea:focus{border-color:var(--kc-sand);box-shadow:0 0 0 1px var(--kc-sand)}
.kc-2026 .kp-field label,.kc-2026 .kp-choice-legend{font-family:var(--kc-font);font-weight:600;color:var(--kc-text)}
.kc-2026 .kp-choice .kp-choice-opt:has(input:checked){border-color:var(--kc-sand);box-shadow:inset 0 0 0 1px var(--kc-sand)}

/* ── Timeline: one rail, current stage lit ────────────────────────── */
.kc-2026 .kc-timeline{gap:0;margin-top:2.25rem;counter-reset:none}
.kc-2026 .kc-timeline-step{padding:1.5rem 1.5rem 0 0;border-top:1px solid var(--kc-line)}
.kc-2026 .kc-timeline-step::before{content:'';position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:#0c0d0a;border:1px solid var(--kc-text-3)}
.kc-2026 .kc-timeline-step.is-done{border-top-color:var(--kc-text-3)}
.kc-2026 .kc-timeline-step.is-done::before{background:var(--kc-text-3);border-color:var(--kc-text-3)}
.kc-2026 .kc-timeline-step.is-current{border-top-color:var(--kc-sand)}
.kc-2026 .kc-timeline-step.is-current::before{background:var(--kc-sand);border-color:var(--kc-sand);box-shadow:0 0 0 4px rgba(232,213,183,.18)}
.kc-2026 .kc-timeline-index{font-family:var(--kc-font);color:var(--kc-sand);font-weight:700;font-size:.75rem;letter-spacing:.1em}
.kc-2026 .kc-timeline-label{font-family:var(--kc-font);font-weight:600;font-size:1.0625rem;letter-spacing:-.02em;color:var(--kc-text)}
.kc-2026 .kc-timeline-value{font-size:.875rem;color:var(--kc-text-3)}
.kc-2026 .kc-timeline-step.is-current .kc-timeline-value{color:var(--kc-sand)}

/* ── How it works: ruled columns, no boxes ────────────────────────── */
.kc-2026 .kc-process-grid{gap:0;margin-top:2.25rem;border-top:1px solid var(--kc-line)}
.kc-2026 .kc-process-card{border:0;border-left:1px solid var(--kc-line-2);background:transparent;padding:1.75rem 2rem 1.75rem 2rem;border-radius:0}
.kc-2026 .kc-process-card:first-child{border-left:0;padding-left:0}
.kc-2026 .kc-process-index{font-family:var(--kc-font);font-size:2.25rem;font-weight:500;letter-spacing:-.05em;color:var(--kc-sand);margin-bottom:1.25rem;line-height:1}
.kc-2026 .kc-process-card h3{font-family:var(--kc-font);font-weight:600;font-size:1.25rem;letter-spacing:-.025em;color:var(--kc-text)}
.kc-2026 .kc-process-card p{font-size:.9688rem;color:var(--kc-text-2);max-width:34ch}

/* ── Two-column sections: heading left, content right ─────────────── */
.kc-2026 .kc-section-compact{padding-top:clamp(3rem,6vw,4.75rem);padding-bottom:clamp(3rem,6vw,4.75rem)}
@media (min-width:900px){
  .kc-2026 .kc-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(2.5rem,6vw,6rem);align-items:start}
  .kc-2026 .kc-split > .kc-section-head{position:sticky;top:7.5rem}
}
.kc-2026 .kc-section-head .kc-section-title{margin-bottom:0}
.kc-2026 .kc-section-body > :first-child{margin-top:0}
.kc-2026 .kc-section-body .kc-section-lede{margin-bottom:1.5rem}

/* ── Textual partner cards (no artwork supplied) ──────────────────── */
.kc-2026 .kc-partner-names{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--kc-line)}
.kc-2026 .kc-partner-names li{padding:1.25rem 0;border-bottom:1px solid var(--kc-line-2)}
.kc-2026 .kc-partner-names h3{margin:0 0 .35rem;font-family:var(--kc-font);font-size:1.125rem;font-weight:600;letter-spacing:-.02em;color:var(--kc-text)}
.kc-2026 .kc-partner-names p{margin:0;color:var(--kc-text-2);font-size:.9688rem;line-height:1.6;max-width:56ch}

/* ── Partner & sponsor artwork ────────────────────────────────────── */
.kc-2026 .kc-surface{padding-top:clamp(2.25rem,4vw,3.25rem);padding-bottom:clamp(2.25rem,4vw,3.25rem)}
.kc-2026 .kc-surface .kc-section-title,
.kc-2026 .kc-surface-title{font-size:clamp(1.25rem,2vw,1.5rem);letter-spacing:-.03em;max-width:none}
@media (min-width:900px){
  .kc-2026 .kc-surface{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);column-gap:clamp(2.5rem,6vw,6rem);align-items:center}
  .kc-2026 .kc-surface-head{min-width:0}
}
.kc-2026 .kc-surface-head .kp-eyebrow{margin-bottom:.6rem}
.kc-2026 .kc-surface-title{margin:0}
.kc-2026 .kc-surface-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,10rem),12.5rem));gap:12px;margin:1.75rem 0 0;padding:0;list-style:none}
@media (min-width:900px){.kc-2026 .kc-surface-list{margin-top:0}}
.kc-2026 .kc-surface-item a{display:flex;align-items:center;justify-content:center;height:5.5rem;padding:1rem 1.25rem;border-radius:var(--kc-r);background:var(--kc-plate);color:var(--kc-plate-ink);text-decoration:none;box-shadow:inset 0 0 0 1px rgba(26,25,21,.06);transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s}
.kc-2026 .kc-surface-item img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
@media (hover:hover){.kc-2026 .kc-surface-item a:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1px rgba(26,25,21,.06),0 14px 30px -14px rgba(0,0,0,.6)}}
.kc-2026 .kc-surface-item a:focus-visible{outline:2px solid var(--kc-sand);outline-offset:3px}
.kc-2026 .kc-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ── Entrant dashboard ────────────────────────────────────────────── */
.kc-2026 .kp-dash{border-top-color:var(--kc-line-2)}
.kc-2026 .kp-dash-title{font-weight:500;letter-spacing:-.045em;color:var(--kc-text)}
.kc-2026 .kp-dash-lede{color:var(--kc-text-2)}
.kc-2026 .kp-next{border-radius:var(--kc-r);border-color:var(--kc-line);background:linear-gradient(120deg,rgba(232,213,183,.09),rgba(232,213,183,.02))}
.kc-2026 .kp-next-label,.kc-2026 .kp-updates-title,.kc-2026 .kp-receipt-eyebrow,.kc-2026 .kp-attention-label{color:var(--kc-sand);font-family:var(--kc-font)}
.kc-2026 .kp-next-title,.kc-2026 .kp-receipt-id{font-family:var(--kc-font);font-weight:600;letter-spacing:-.03em;color:var(--kc-text)}
.kc-2026 .kp-steps,.kc-2026 .kp-step{border-color:var(--kc-line-2)}
.kc-2026 .kp-step-name{font-family:var(--kc-font);font-weight:600;color:var(--kc-text)}
.kc-2026 .kp-pill{border-radius:var(--kc-r);font-family:var(--kc-font);border-color:var(--kc-line)}
.kc-2026 .kp-pill.is-action{background:var(--kc-sand);border-color:var(--kc-sand);color:#1a1915}
.kc-2026 .kp-pill.is-done{border-color:var(--kc-sand);color:var(--kc-sand)}
.kc-2026 .kp-card,.kc-2026 .kp-panel,.kc-2026 .kp-help-box,.kc-2026 .kp-review,.kc-2026 .kp-receipt,.kc-2026 .kp-modal,.kc-2026 .kp-skeleton{border-radius:var(--kc-r)}
.kc-2026 .kp-card,.kc-2026 .kp-help-box{border-color:var(--kc-line);background:var(--kc-fill)}
.kc-2026 .kp-panel{border-color:var(--kc-line);background:rgba(232,213,183,.045)}
.kc-2026 .kp-card h3,.kc-2026 .kp-panel-title,.kc-2026 .kp-help-summary,.kc-2026 .kp-modal h3{font-family:var(--kc-font);color:var(--kc-text)}
.kc-2026 .kp-link,.kc-2026 .kp-note-link,.kc-2026 .kp-step-review a,.kc-2026 .kp-copy-btn{color:var(--kc-sand)}

/* ── Small screens ────────────────────────────────────────────────── */
@media (max-width:900px){
  .kc-2026 .kc-timeline{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2.25rem}
  .kc-2026 .kc-process-grid{grid-template-columns:1fr}
  .kc-2026 .kc-process-card,.kc-2026 .kc-process-card:first-child{border-left:0;border-top:1px solid var(--kc-line-2);padding:1.5rem 0}
  .kc-2026 .kc-process-card:first-child{border-top:0}
  .kc-2026 .kc-process-index{font-size:1.75rem;margin-bottom:.75rem}
}
@media (max-width:760px){
  .kc-2026 .kp-page{padding-top:6.25rem}
  .kc-2026 .kp-title{font-size:clamp(2.4rem,11.5vw,3.4rem)}
  .kc-2026 .kc-timeline{grid-template-columns:1fr;row-gap:0;margin-left:5px}
  .kc-2026 .kc-timeline-step{border-top:0;border-left:1px solid var(--kc-line);padding:0 0 1.75rem 1.5rem}
  .kc-2026 .kc-timeline-step::before{top:2px;left:-5px}
  .kc-2026 .kc-timeline-step.is-current{border-left-color:var(--kc-sand)}
  .kc-2026 .kc-timeline-step.is-done{border-left-color:var(--kc-text-3)}
  .kc-2026 .kc-surface-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media print{
  .kc-2026 .kc-jump-menu,.kc-2026 .kp-scroll-line{display:none}
}

/* ══════════════════════════════════════════════════════════════════════
   Document centre (/katha/challenge/legal)
   A reader: grouped contents on the left, one document at a time on the
   right (html.kcl-js). Without script every document is listed in order.
   ══════════════════════════════════════════════════════════════════════ */
.kc-2026 .kcl-page{max-width:none;padding-left:var(--kc-col);padding-right:var(--kc-col);padding-top:clamp(6rem,8vw,7.5rem);padding-bottom:clamp(4rem,8vw,7rem)}
.kc-2026 .kcl-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.kc-2026 .kcl-mono{font-family:ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;font-size:.82em;letter-spacing:0}

/* Hero */
.kc-2026 .kcl-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,21rem);gap:clamp(2rem,6vw,6rem);align-items:end;padding-bottom:clamp(2.25rem,4vw,3.25rem)}
.kc-2026 .kcl-title{font-family:var(--kc-font);font-weight:500;font-size:clamp(2.3rem,4.9vw,4rem);line-height:1.04;letter-spacing:-.05em;color:var(--kc-text);max-width:15ch;margin:0;text-wrap:balance}
.kc-2026 .kcl-lede{max-width:46ch;margin:1.25rem 0 0;color:var(--kc-text-2);font-size:clamp(1rem,1.4vw,1.125rem);line-height:1.6}
.kc-2026 .kcl-state{display:grid;gap:1rem;margin:0;padding:1.35rem 1.5rem;border:1px solid var(--kc-line);border-radius:var(--kc-r);background:linear-gradient(160deg,rgba(232,213,183,.07),rgba(232,213,183,.015) 60%);position:relative;overflow:hidden}
.kc-2026 .kcl-state::before{content:'';position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,var(--kc-sand),transparent 70%)}
.kc-2026 .kcl-state-list{display:grid;gap:1rem;margin:0}
.kc-2026 .kcl-state-list div{display:grid;gap:.2rem}
.kc-2026 .kcl-state dt,.kc-2026 .kcl-meta dt{color:var(--kc-text-3);font-size:.75rem;font-weight:500;letter-spacing:.02em}
.kc-2026 .kcl-state dd{margin:0;color:var(--kc-text);font-size:1rem;font-weight:600;line-height:1.35}
.kc-2026 .kcl-state-note{margin:0;padding-top:1rem;border-top:1px solid var(--kc-line);color:var(--kc-text-2);font-size:.85rem;line-height:1.55}
.kc-2026 .kcl-state-note strong{color:var(--kc-text);font-weight:600}

.kc-2026 .kcl-notice{max-width:none;margin:0 0 clamp(2rem,4vw,3rem);padding:1rem 1.25rem;border:1px solid var(--kc-line-2);border-left:2px solid var(--kc-sand);border-radius:var(--kc-r);background:var(--kc-fill);color:var(--kc-text-2);font-size:.9375rem;line-height:1.65}
.kc-2026 .kcl-notice p{margin:0;max-width:78ch}
.kc-2026 .kcl-notice p + p{margin-top:.6rem}
.kc-2026 .kcl-notice strong{color:var(--kc-text);font-weight:600}

/* Reader layout */
.kc-2026 .kcl-body{display:grid;grid-template-columns:17.5rem minmax(0,1fr);column-gap:clamp(2.5rem,6vw,6rem);align-items:start;border-top:1px solid var(--kc-line-2);padding-top:clamp(2rem,4vw,3rem)}
.kc-2026 .kcl-toc{position:sticky;top:6.5rem;align-self:start;max-height:calc(100dvh - 8rem);overflow:auto;scrollbar-width:thin;scrollbar-color:var(--kc-line) transparent;padding-right:.5rem}
.kc-2026 .kcl-toc-title{margin:0 0 1rem;color:var(--kc-text-3);font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.kc-2026 .kcl-toc-groups{list-style:none;margin:0;padding:0;display:grid;gap:1.4rem}
.kc-2026 .kcl-toc-group ol{list-style:none;margin:0;padding:0;display:grid;gap:1px}
.kc-2026 .kcl-toc-label{margin:0 0 .45rem;padding:0 .7rem;color:var(--kc-text-3);font-size:.8125rem;font-weight:500}
.kc-2026 .kcl-toc a{position:relative;display:grid;grid-template-columns:1.6rem minmax(0,1fr) auto;gap:.4rem;align-items:baseline;padding:.5rem .7rem;border-radius:var(--kc-r);color:var(--kc-text-2);font-size:.875rem;line-height:1.35;text-decoration:none;transition:background-color .2s ease,color .2s ease}
.kc-2026 .kcl-toc a:hover{color:var(--kc-text);background:var(--kc-fill)}
.kc-2026 .kcl-toc a:focus-visible{outline:2px solid var(--kc-sand);outline-offset:-2px;color:var(--kc-text)}
.kc-2026 .kcl-toc-no{color:var(--kc-text-3);font-variant-numeric:tabular-nums;font-size:.8125rem}
.kc-2026 .kcl-dot{align-self:center;width:.5rem;height:.5rem;border-radius:50%;border:1px solid var(--kc-text-3)}
.kc-2026 .kcl-dot.is-live{background:var(--kc-sand);border-color:var(--kc-sand)}
.kc-2026 .kcl-toc a[aria-current="page"]{color:var(--kc-text);background:rgba(232,213,183,.09)}
.kc-2026 .kcl-toc a[aria-current="page"] .kcl-toc-no{color:var(--kc-sand)}
.kc-2026 .kcl-toc a[aria-current="page"]::before{content:'';position:absolute;left:0;top:.55rem;bottom:.55rem;width:2px;border-radius:1px;background:var(--kc-sand)}
.kc-2026 .kcl-toc-mobile{display:none}

/* Panels */
.kc-2026 .kcl-reader{min-width:0}
.kc-2026 .kcl-panel{scroll-margin-top:6.5rem;padding:0 0 clamp(2.5rem,5vw,3.5rem)}
.kc-2026 .kcl-panel + .kcl-panel{padding-top:clamp(2.5rem,5vw,3.5rem);border-top:1px solid var(--kc-line-2)}
.kcl-js .kc-2026 .kcl-panel{display:none}
.kcl-js .kc-2026 .kcl-panel.is-active{display:block;animation:kclIn .45s cubic-bezier(.16,1,.3,1) both}
.kcl-js .kc-2026 .kcl-panel + .kcl-panel{padding-top:0;border-top:0}
@keyframes kclIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.kc-2026 .kcl-doc-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.1rem}
.kc-2026 .kcl-doc-no{font-family:var(--kc-font);font-weight:500;font-size:clamp(1.1rem,1.6vw,1.35rem);letter-spacing:-.03em;color:var(--kc-sand);font-variant-numeric:tabular-nums}
.kc-2026 .kcl-doc-title{margin:0;font-family:var(--kc-font);font-weight:500;font-size:clamp(1.9rem,3.4vw,2.85rem);line-height:1.08;letter-spacing:-.045em;color:var(--kc-text);text-wrap:balance;max-width:24ch}
.kc-2026 .kcl-chip{align-self:center;display:inline-flex;align-items:center;padding:.25rem .65rem;border:1px solid var(--kc-line);border-radius:var(--kc-r);color:var(--kc-text-2);font-family:var(--kc-font);font-size:.75rem;font-weight:500;white-space:nowrap}
.kc-2026 .kcl-chip.is-live{border-color:var(--kc-sand);color:var(--kc-sand)}
.kc-2026 .kcl-doc-summary{max-width:60ch;margin:1.1rem 0 0;color:var(--kc-text-2);font-size:1.0625rem;line-height:1.65}
.kc-2026 .kcl-doc-summary a{color:var(--kc-sand);text-underline-offset:.2em}

/* Version / effective / updated strip */
.kc-2026 .kcl-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));margin:1.75rem 0 0;border:1px solid var(--kc-line-2);border-radius:var(--kc-r);background:var(--kc-fill)}
.kc-2026 .kcl-meta div{display:grid;gap:.25rem;min-width:0;padding:.95rem 1.15rem}
.kc-2026 .kcl-meta div + div{border-left:1px solid var(--kc-line-2)}
.kc-2026 .kcl-meta dd{margin:0;color:var(--kc-text);font-size:.9375rem;font-weight:500;line-height:1.4;overflow-wrap:anywhere}

/* Terms */
.kc-2026 .kcl-sections{display:grid;max-width:62rem;margin:1.75rem 0 0;border-top:1px solid var(--kc-line)}
.kc-2026 .kcl-section{display:grid;grid-template-columns:13rem minmax(0,1fr);gap:1.5rem;padding:1.15rem 0;border-bottom:1px solid var(--kc-line-2)}
.kc-2026 .kcl-section h3{margin:0;color:var(--kc-text);font-family:var(--kc-font);font-size:.9375rem;font-weight:600;line-height:1.5}
.kc-2026 .kcl-section p{margin:0;color:var(--kc-text-2);font-size:.9688rem;line-height:1.7;max-width:62ch}
.kc-2026 .kcl-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.75rem 0 0}
.kc-2026 .kcl-actions .nvc-btn{white-space:nowrap}

/* Previous / next */
.kc-2026 .kcl-pager{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:clamp(2rem,4vw,3rem)}
.kc-2026 .kcl-pager-link{display:grid;gap:.25rem;padding:1rem 1.15rem;border:1px solid var(--kc-line-2);border-radius:var(--kc-r);color:var(--kc-text-2);text-decoration:none;transition:border-color .25s,background-color .25s}
.kc-2026 .kcl-pager-link span{font-size:.75rem;font-weight:500;color:var(--kc-text-3)}
.kc-2026 .kcl-pager-link strong{font-family:var(--kc-font);font-weight:600;font-size:.9688rem;color:var(--kc-text);line-height:1.3}
.kc-2026 .kcl-pager-link.is-next{text-align:right;grid-column:2}
.kc-2026 .kcl-pager-link.is-next span::after{content:' →'}
.kc-2026 .kcl-pager-link.is-prev span::before{content:'← '}
.kc-2026 .kcl-pager-link:hover{border-color:var(--kc-line);background:var(--kc-fill)}
.kc-2026 .kcl-pager-link:focus-visible{outline:2px solid var(--kc-sand);outline-offset:3px}

/* Archive */
.kc-2026 .kcl-groups{margin-top:1.75rem;border-top:1px solid var(--kc-line)}
.kc-2026 .kcl-group{border-bottom:1px solid var(--kc-line-2)}
.kc-2026 .kcl-group summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:1rem;align-items:center;padding:1.05rem .25rem;cursor:pointer;list-style:none;color:var(--kc-text);font-family:var(--kc-font);font-size:1rem;font-weight:600}
.kc-2026 .kcl-group summary::-webkit-details-marker{display:none}
.kc-2026 .kcl-group summary::after{content:'+';width:1rem;color:var(--kc-text-3);font-weight:400;text-align:center}
.kc-2026 .kcl-group[open] summary::after{content:'\2212';color:var(--kc-sand)}
.kc-2026 .kcl-group summary:focus-visible{outline:2px solid var(--kc-sand);outline-offset:2px}
.kc-2026 .kcl-group-count{color:var(--kc-text-3);font-size:.8125rem;font-weight:500}
.kc-2026 .kcl-versions{margin:0 0 1rem;padding:0;list-style:none}
.kc-2026 .kcl-version{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 8rem minmax(0,1fr);gap:1rem;padding:.65rem .25rem;color:var(--kc-text-2);font-size:.875rem;line-height:1.45}
.kc-2026 .kcl-version + .kcl-version{border-top:1px solid var(--kc-line-2)}
.kc-2026 .kcl-version a{color:var(--kc-text);text-decoration:underline;text-decoration-color:var(--kc-line);text-underline-offset:.2em;overflow-wrap:anywhere}
.kc-2026 .kcl-version a:hover,.kc-2026 .kcl-version a:focus-visible{text-decoration-color:var(--kc-sand)}

/* Help */
.kc-2026 .kcl-support .kcl-doc-summary{max-width:52ch}

@media (max-width:1023px){
  .kc-2026 .kcl-hero{grid-template-columns:1fr;align-items:start}
  .kc-2026 .kcl-body{grid-template-columns:1fr;border-top:0;padding-top:0}
  .kc-2026 .kcl-toc{display:none}
  .kc-2026 .kcl-toc-mobile{display:block;margin:0 0 2rem;border:1px solid var(--kc-line);border-radius:var(--kc-r);background:var(--kc-fill)}
  .kc-2026 .kcl-toc-mobile summary{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding:.8rem 1rem;cursor:pointer;list-style:none;color:var(--kc-text);font-weight:600;font-size:.9375rem}
  .kc-2026 .kcl-toc-mobile summary::-webkit-details-marker{display:none}
  .kc-2026 .kcl-toc-mobile summary::after{content:'+';color:var(--kc-text-3);font-weight:400}
  .kc-2026 .kcl-toc-mobile[open] summary::after{content:'\2212';color:var(--kc-sand)}
  .kc-2026 .kcl-toc-mobile summary:focus-visible{outline:2px solid var(--kc-sand);outline-offset:2px}
  .kc-2026 .kcl-toc-mobile nav{border-top:1px solid var(--kc-line-2);padding:1rem .5rem}
  .kc-2026 .kcl-toc-mobile a{position:relative;display:grid;grid-template-columns:1.6rem minmax(0,1fr) auto;gap:.4rem;align-items:baseline;padding:.6rem;border-radius:var(--kc-r);color:var(--kc-text-2);font-size:.9375rem;text-decoration:none}
  .kc-2026 .kcl-toc-mobile a[aria-current="page"]{color:var(--kc-text);background:rgba(232,213,183,.09)}
}
@media (max-width:767px){
  .kc-2026 .kcl-section{grid-template-columns:1fr;gap:.35rem}
  .kc-2026 .kcl-meta{grid-template-columns:1fr 1fr}
  .kc-2026 .kcl-meta div:nth-child(3){grid-column:1 / -1;border-left:0;border-top:1px solid var(--kc-line-2)}
  .kc-2026 .kcl-version{grid-template-columns:1fr 1fr;gap:.25rem 1rem}
  .kc-2026 .kcl-group summary{grid-template-columns:minmax(0,1fr) auto}
  .kc-2026 .kcl-group-count{display:none}
  .kc-2026 .kcl-pager{grid-template-columns:1fr}
  .kc-2026 .kcl-pager-link.is-next{grid-column:1}
  .kc-2026 .kcl-pager-link.is-prev,.kc-2026 .kcl-pager-link.is-next{text-align:left}
}
@media (prefers-reduced-motion:reduce){
  .kcl-js .kc-2026 .kcl-panel.is-active{animation:none}
  .kc-2026 .kcl-toc a,.kc-2026 .kcl-pager-link{transition:none}
}
@media print{
  .kcl-js .kc-2026 .kcl-panel{display:block}
  .kc-2026 .kcl-toc,.kc-2026 .kcl-toc-mobile,.kc-2026 .kcl-pager{display:none}
  .kc-2026 .kcl-body{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════════════════════════════════
   Exact document text (/katha/challenge/legal/version/:id)
   ══════════════════════════════════════════════════════════════════════ */
.kc-2026 .kv-page{max-width:none;padding-left:var(--kc-col);padding-right:var(--kc-col);padding-top:clamp(6rem,8vw,7.5rem)}
.kc-2026 .kv-back{font-family:var(--kc-font);font-weight:500;color:var(--kc-text-2);text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;margin-bottom:2.25rem}
.kc-2026 .kv-back::before{content:'←';color:var(--kc-sand)}
.kc-2026 .kv-back:hover,.kc-2026 .kv-back:focus-visible{color:var(--kc-text);text-decoration:none}
.kc-2026 .kv-back:focus-visible{outline:2px solid var(--kc-sand);outline-offset:4px}
.kc-2026 .kv-layout{grid-template-columns:minmax(0,1fr) 19rem;column-gap:clamp(3rem,7vw,7rem)}
.kc-2026 .kv-head{border-bottom-color:var(--kc-line-2);padding-bottom:2rem}
.kc-2026 .kv-title{font-family:var(--kc-font);font-weight:500;font-size:clamp(2.2rem,4.6vw,3.8rem);line-height:1.05;letter-spacing:-.05em;color:var(--kc-text);max-width:18ch;text-wrap:balance}
.kc-2026 .kv-chip{border-radius:var(--kc-r);border-color:var(--kc-line);font-family:var(--kc-font);color:var(--kc-text-2)}
.kc-2026 .kv-chip.is-live{border-color:var(--kc-sand);color:var(--kc-sand)}
.kc-2026 .kv-note{border-left-color:var(--kc-sand);color:var(--kc-text-2)}
.kc-2026 .kv-note.is-warn{border-left-color:#e0685c;color:var(--kc-text)}
.kc-2026 .kv-doc{max-width:64ch;font-size:1.0625rem;line-height:1.75;color:var(--kc-text-2)}
.kc-2026 .kv-doc h2,.kc-2026 .kv-doc h3,.kc-2026 .kv-doc h4,.kc-2026 .kv-doc h5{font-family:var(--kc-font);font-weight:600;letter-spacing:-.03em;color:var(--kc-text);scroll-margin-top:6rem}
.kc-2026 .kv-doc h2{font-size:1.6rem;margin-top:2.75rem;padding-top:1.75rem;border-top:1px solid var(--kc-line-2)}
.kc-2026 .kv-doc > h2:first-child{border-top:0;padding-top:0;margin-top:0}
.kc-2026 .kv-doc strong{color:var(--kc-text)}
.kc-2026 .kv-doc a{color:var(--kc-sand);text-underline-offset:.2em}
.kc-2026 .kv-exact{max-width:64ch;border-top-color:var(--kc-line-2)}
.kc-2026 .kv-exact summary{font-family:var(--kc-font);color:var(--kc-text-2)}
.kc-2026 .kv-exact summary:hover,.kc-2026 .kv-exact summary:focus-visible{color:var(--kc-text)}
.kc-2026 .kv-exact summary:focus-visible{outline:2px solid var(--kc-sand);outline-offset:3px}
.kc-2026 .kv-text{border-radius:var(--kc-r);border-color:var(--kc-line);background:var(--kc-fill)}
.kc-2026 .kv-text.is-solo{max-width:64ch}
.kc-2026 .kv-record{border-radius:var(--kc-r);border-color:var(--kc-line);background:linear-gradient(160deg,rgba(232,213,183,.06),rgba(232,213,183,.015) 60%);top:7rem}
.kc-2026 .kv-record-title{font-family:var(--kc-font);font-weight:600;color:var(--kc-text)}
.kc-2026 .kv-meta dt{color:var(--kc-text-3);font-weight:500}
.kc-2026 .kv-meta dd{color:var(--kc-text)}
.kc-2026 .kv-record > p{border-top-color:var(--kc-line);color:var(--kc-text-3)}
@media (max-width:1023px){.kc-2026 .kv-layout{grid-template-columns:1fr}}
@media print{.kc-2026 .kv-back,.kc-2026 .kv-record{display:none}.kc-2026 .kv-doc{max-width:none;color:#000}}

/* ══════════════════════════════════════════════════════════════════════
   Results (/katha/challenge/results)
   ══════════════════════════════════════════════════════════════════════ */
.kc-2026 .kr-page{max-width:none;padding-left:var(--kc-col);padding-right:var(--kc-col);padding-top:clamp(6rem,8vw,7.5rem);padding-bottom:clamp(4rem,8vw,7rem)}
.kc-2026 .kr-back{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;margin-bottom:1.5rem;color:var(--kc-text-2);font-weight:500;text-decoration:none}
.kc-2026 .kr-back::before{content:'\2190';color:var(--kc-sand)}
.kc-2026 .kr-back:hover,.kc-2026 .kr-back:focus-visible{color:var(--kc-text)}
.kc-2026 .kr-back:focus-visible{outline:2px solid var(--kc-sand);outline-offset:4px}
.kc-2026 .kr-title{font-family:var(--kc-font);font-weight:500;font-size:clamp(2.6rem,6.2vw,5rem);line-height:1.04;letter-spacing:-.05em;color:var(--kc-text)}
.kc-2026 .kr-lede{max-width:50ch;color:var(--kc-text-2);font-size:clamp(1rem,1.4vw,1.125rem)}
.kc-2026 .kr-chip{border-radius:var(--kc-r);border-color:var(--kc-line);font-family:var(--kc-font);font-weight:500;color:var(--kc-text-2)}
.kc-2026 .kr-chip.is-live{border-color:var(--kc-sand);color:var(--kc-sand)}
.kc-2026 .kr-chip.is-withdrawn{border-color:#e0685c;color:var(--kc-text)}
.kc-2026 .kr-notice,.kc-2026 .kr-empty{max-width:62ch;padding:1rem 1.25rem;border:1px solid var(--kc-line-2);border-left:2px solid var(--kc-sand);border-radius:var(--kc-r);background:var(--kc-fill);color:var(--kc-text-2);font-size:.9688rem}
.kc-2026 .kr-notice{color:var(--kc-text)}
.kc-2026 .kr-notice a,.kc-2026 .kr-empty a{color:var(--kc-sand);text-underline-offset:.2em}
.kc-2026 .kr-track{margin-top:clamp(2.5rem,5vw,4rem)}
.kc-2026 .kr-track h2{font-family:var(--kc-font);font-weight:500;font-size:clamp(1.4rem,2.4vw,1.9rem);letter-spacing:-.04em;color:var(--kc-text);margin:0 0 1.1rem}
.kc-2026 .kr-list{border-top:1px solid var(--kc-line)}
.kc-2026 .kr-row{grid-template-columns:4.5rem minmax(0,1fr) auto;gap:.25rem 1.5rem;align-items:center;padding:1.4rem 0;border-bottom-color:var(--kc-line-2)}
.kc-2026 .kr-place{font-family:var(--kc-font);font-weight:500;font-size:clamp(2.4rem,4vw,3.4rem);letter-spacing:-.06em;color:var(--kc-sand);font-variant-numeric:tabular-nums}
.kc-2026 .kr-name{font-family:var(--kc-font);font-weight:600;font-size:1.25rem;letter-spacing:-.02em;color:var(--kc-text)}
.kc-2026 .kr-name.is-withheld{color:var(--kc-text-2);font-weight:400;font-size:1.0625rem}
.kc-2026 .kr-label{color:var(--kc-text-3);font-size:.9375rem}
.kc-2026 .kr-prize{font-family:var(--kc-font);font-weight:500;font-size:1.25rem;color:var(--kc-text)}
@media (max-width:560px){.kc-2026 .kr-row{grid-template-columns:3rem minmax(0,1fr)}}

/* ══════════════════════════════════════════════════════════════════════
   Formal entry / checkout (/katha/challenge/enter) — shares the term
   components in views/katha/partials/acceptance-styles.ejs
   ══════════════════════════════════════════════════════════════════════ */
.kc-2026 .kp-pay-page{max-width:none;margin:0;padding-left:max(22px,calc((100% - 46rem) / 2));padding-right:max(22px,calc((100% - 46rem) / 2));padding-top:clamp(6rem,8vw,7.5rem);padding-bottom:clamp(4rem,8vw,7rem)}
.kc-2026 .kp-pay-back{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;color:var(--kc-text-2);font-weight:500;text-decoration:none}
.kc-2026 .kp-pay-back::before{content:'\2190';color:var(--kc-sand)}
.kc-2026 .kp-pay-back:hover,.kc-2026 .kp-pay-back:focus-visible{color:var(--kc-text)}
.kc-2026 .kp-pay-card{border-radius:var(--kc-r);border-color:var(--kc-line);background:linear-gradient(160deg,rgba(232,213,183,.06),rgba(232,213,183,.015) 60%);position:relative;overflow:hidden;padding:clamp(1.5rem,4vw,2.75rem)}
.kc-2026 .kp-pay-card::before{content:'';position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,var(--kc-sand),transparent 70%)}
.kc-2026 .kp-pay-eyebrow{font-family:var(--kc-font);font-weight:500;font-size:.8125rem;letter-spacing:.01em;text-transform:none;color:var(--kc-text-2)}
.kc-2026 .kp-pay-eyebrow i{width:1.75rem;background:var(--kc-sand)}
.kc-2026 .kp-pay-title{font-family:var(--kc-font);font-weight:500;font-size:clamp(2rem,4.4vw,3rem);letter-spacing:-.05em;line-height:1.05;color:var(--kc-text)}
.kc-2026 .kp-pay-lede{color:var(--kc-text-2)}
.kc-2026 .kp-pay-summary{border-radius:var(--kc-r);border-color:var(--kc-line-2);background:var(--kc-fill)}
.kc-2026 .kp-pay-summary dt{color:var(--kc-text-3)}
.kc-2026 .kp-pay-summary dd{color:var(--kc-text)}
.kc-2026 .kp-pay-group > legend{font-family:var(--kc-font);color:var(--kc-text)}
.kc-2026 .kp-term,.kc-2026 .kp-pay-check{border-top-color:var(--kc-line-2)}
.kc-2026 .kp-term:has(+ :not(.kp-term)),.kc-2026 .kp-term:last-child,.kc-2026 .kp-pay-check:has(+ :not(.kp-pay-check)),.kc-2026 .kp-pay-check:last-child{border-bottom-color:var(--kc-line-2)}
.kc-2026 .kp-term summary{color:var(--kc-sand)}
.kc-2026 .kp-term-row input,.kc-2026 .kp-choice input,.kc-2026 .kp-pay-check input{accent-color:var(--kc-sand)}
.kc-2026 .kp-doc-text,.kc-2026 .kp-pay-blocked,.kc-2026 .kp-pay-stale{border-radius:var(--kc-r)}
.kc-2026 .kp-pay-stale{border-color:var(--kc-sand)}
.kc-2026 .kp-pay-blocked{border-color:var(--kc-line);background:var(--kc-fill)}
.kc-2026 .kp-pay-status.is-ok{color:var(--kc-sand)}
.kc-2026 .kp-pay-receipt{color:var(--kc-text);border-bottom-color:var(--kc-sand)}
.kc-2026 .kp-pay-card .nvc-btn{min-height:3rem}
.kc-2026 .kp-privacy a{color:var(--kc-text);text-decoration-color:var(--kc-line)}

.kc-2026 .nvc-btn-primary:disabled{background:rgba(232,213,183,.14);border-color:transparent;color:var(--kc-text-3);opacity:1}
