/**
 * Hacked theme — global stylesheet.
 * Ported from the approved home design (design-preview/home.html v3).
 * Bright, acid-green-dominant, neo-brutalist, motion-forward. Tokens in tokens.css.
 * Bespoke sections are ACF blocks; these classes are their shared vocabulary.
 */

/* ---- primitives ---- */
.hkd-btn{font-family:var(--hkd-mono);font-weight:700;font-size:.84rem;padding:.7em 1.25em;border:3px solid var(--hkd-ink);display:inline-flex;align-items:center;gap:.5em;border-radius:2px;transition:transform .14s,box-shadow .14s,background .14s,color .14s;text-decoration:none;cursor:pointer;white-space:nowrap}
.hkd-btn--ink{background:var(--hkd-ink);color:var(--hkd-green)}
.hkd-btn--ink:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--hkd-ink)}
.hkd-btn--line{background:transparent;color:var(--hkd-ink)}
.hkd-btn--line:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--hkd-ink)}
.hkd-btn--green{background:var(--hkd-green);color:var(--hkd-ink)}
.hkd-btn--green:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 rgba(0,0,0,.4)}

.hkd-eyebrow{font-family:var(--hkd-mono);font-weight:700;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.55em;background:var(--hkd-ink);color:var(--hkd-green);padding:.45em .9em}
.hkd-tag{font-family:var(--hkd-mono);font-weight:700;font-size:.74rem;padding:.32em .7em;border:3px solid var(--hkd-ink);border-radius:2px}
.hkd-tag--fmt{background:var(--hkd-ink);color:var(--hkd-green)}
.hkd-tag--topic{background:transparent;color:var(--hkd-ink)}

/* ---- reveal-on-scroll ---- */
.hkd-reveal{opacity:0;transform:translateY(30px)}
.hkd-reveal.is-in{opacity:1;transform:none;transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.hkd-reveal.d1{transition-delay:.06s}.hkd-reveal.d2{transition-delay:.16s}.hkd-reveal.d3{transition-delay:.28s}

/* ---- header ---- */
.hkd-header{position:sticky;top:0;z-index:60;background:var(--hkd-green);border-bottom:3px solid var(--hkd-ink)}
.hkd-header__inner{display:flex;align-items:center;gap:1.6rem;height:74px;max-width:var(--hkd-wide);margin-inline:auto;padding-inline:var(--hkd-pad)}
.hkd-wordmark{display:inline-flex;align-items:center;text-decoration:none}
/* HACKED_LOGO.svg drawn via mask so one asset recolors per context (ink on the
   green header, acid-green on the ink footer). */
.hkd-wordmark__logo{display:block;height:2.75rem;aspect-ratio:288/126;background-color:var(--hkd-ink);-webkit-mask:url(../images/HACKED_LOGO.svg) no-repeat center/contain;mask:url(../images/HACKED_LOGO.svg) no-repeat center/contain}
@keyframes hkd-blink{50%{opacity:0}}
.hkd-nav{display:flex;gap:1.5rem;font-family:var(--hkd-mono);font-weight:700;font-size:.82rem;margin-left:auto;text-transform:lowercase}
.hkd-nav a{position:relative;padding:.2em 0;color:var(--hkd-ink);text-decoration:none}
.hkd-nav a::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:3px;background:var(--hkd-ink);transition:width .25s}
.hkd-nav a:hover::after{width:100%}

/* ---- ascii screen (the signature) ---- */
.hkd-screen{background:var(--hkd-screen);border:3px solid var(--hkd-ink);border-radius:5px;padding:.9rem 1rem 1.1rem;box-shadow:12px 12px 0 var(--hkd-ink);position:relative}
.hkd-screen__bar{display:flex;align-items:center;gap:.5em;font-family:var(--hkd-mono);font-size:.66rem;letter-spacing:.1em;color:#7c8a66;margin-bottom:.6rem;text-transform:uppercase}
.hkd-screen__bar i{width:.55em;height:.55em;border-radius:50%;background:#2a3320;display:inline-block}
.hkd-screen__bar i:first-child{background:var(--hkd-green)}.hkd-screen__bar i:nth-child(2){background:var(--hkd-cyan)}
.hkd-ascii{font-family:var(--hkd-mono);font-weight:700;line-height:1;letter-spacing:.04em;white-space:pre;user-select:none;font-size:clamp(5.5px,.92vw,10px)}
.hkd-ascii b{color:var(--hkd-green)}.hkd-ascii i{color:var(--hkd-cyan);font-style:normal}

/* ---- hero ---- */
.hkd-hero{background:var(--hkd-green);position:relative;overflow:hidden;border-bottom:3px solid var(--hkd-ink)}
.hkd-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(110% 80% at 80% 0%,rgba(255,255,255,.45),transparent 55%);mix-blend-mode:soft-light;pointer-events:none}
.hkd-hero__inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center;max-width:var(--hkd-wide);margin-inline:auto;padding:clamp(2.4rem,4.5vw,5rem) var(--hkd-pad);position:relative;z-index:2}
.hkd-hero h1{font-family:var(--hkd-mono);font-weight:700;font-size:var(--hkd-display);line-height:.9;letter-spacing:-.035em;margin:1.1rem 0 0;color:var(--hkd-ink);min-height:1.7em}
.hkd-hero .lede{max-width:42ch;font-size:clamp(1rem,.95rem+.4vw,1.22rem);margin:1.3rem 0 0;color:#16210b;font-weight:500}
.hkd-cur{color:var(--hkd-ink);animation:hkd-blink 1s steps(1) infinite}
.hkd-meta{font-family:var(--hkd-mono);font-weight:700;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;margin-top:1.4rem;display:flex;gap:.55rem;align-items:center;color:#1d2b0e}
.hkd-live{width:.62em;height:.62em;border-radius:50%;background:var(--hkd-amber);animation:hkd-pulse 1.5s ease-out infinite}
@keyframes hkd-pulse{0%{box-shadow:0 0 0 0 rgba(255,138,0,.6)}70%{box-shadow:0 0 0 .8em rgba(255,138,0,0)}100%{box-shadow:0 0 0 0 transparent}}
.hkd-row{display:flex;gap:.5rem;flex-wrap:wrap}
.hkd-cta{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.7rem;align-items:center}

/* ---- decode band ---- */
.hkd-decode{background:var(--hkd-ink);border-bottom:3px solid var(--hkd-ink);padding-block:clamp(1.6rem,3vw,2.8rem);text-align:center}
.hkd-decode__d{font-family:var(--hkd-mono);font-weight:700;font-size:clamp(1.3rem,1rem+2.6vw,2.9rem);letter-spacing:-.01em;color:var(--hkd-green);line-height:1.05}
.hkd-decode__d .c{color:var(--hkd-cyan)}
.hkd-decode__sub{font-family:var(--hkd-mono);font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:#5a6b3a;margin-top:.8rem}

/* ---- stat strip ---- */
.hkd-stats{background:var(--hkd-green);border-bottom:3px solid var(--hkd-ink)}
.hkd-stats__inner{display:grid;grid-template-columns:repeat(4,1fr);max-width:var(--hkd-wide);margin-inline:auto;padding-inline:var(--hkd-pad)}
.hkd-stat{padding:clamp(1.4rem,2.5vw,2.4rem) 1rem;text-align:center;position:relative}
.hkd-stat+.hkd-stat::before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:3px;background:var(--hkd-ink)}
.hkd-stat__n{font-family:var(--hkd-mono);font-weight:700;font-size:clamp(2rem,1rem+3.6vw,3.6rem);color:var(--hkd-ink);line-height:1;letter-spacing:-.02em}
.hkd-stat__l{font-family:var(--hkd-mono);font-weight:700;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#1d2b0e;margin-top:.5rem}

/* ---- hotline ---- */
.hkd-hotline{background:var(--hkd-cyan);border-bottom:3px solid var(--hkd-ink)}
.hkd-hotline__inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;max-width:var(--hkd-wide);margin-inline:auto;padding:clamp(2rem,3.5vw,3rem) var(--hkd-pad)}
.hkd-hotline__label{font-family:var(--hkd-mono);font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;background:var(--hkd-ink);color:var(--hkd-cyan);padding:.4em .8em}
.hkd-hotline__num{font-family:var(--hkd-mono);font-weight:700;font-size:clamp(2rem,1rem+5vw,4.4rem);color:var(--hkd-ink);letter-spacing:-.01em;display:block;margin:.5rem 0 .3rem;line-height:1;text-decoration:none}
.hkd-hotline p{max-width:40ch;color:#06343c;font-weight:600}

/* ---- sections + cards ---- */
.hkd-sec{padding-block:clamp(2.6rem,5vw,5.5rem);max-width:var(--hkd-wide);margin-inline:auto;padding-inline:var(--hkd-pad)}
.hkd-sec--alt{background:var(--hkd-paper-2);max-width:none;padding-inline:0}
.hkd-sec--alt>*{max-width:var(--hkd-wide);margin-inline:auto;padding-inline:var(--hkd-pad)}
.hkd-sechead{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:3px solid var(--hkd-ink);padding-bottom:.9rem;margin-bottom:2.2rem;gap:1rem;flex-wrap:wrap}
.hkd-sechead h2{font-family:var(--hkd-mono);font-weight:700;font-size:var(--hkd-h2);letter-spacing:-.02em;line-height:.95}
.hkd-sechead h2 em{font-style:normal;background:var(--hkd-green);padding:0 .15em;box-decoration-break:clone}
.hkd-sechead a{font-family:var(--hkd-mono);font-weight:700;font-size:.82rem;border-bottom:3px solid var(--hkd-green);padding-bottom:2px;white-space:nowrap;text-decoration:none;color:var(--hkd-ink)}
.hkd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.hkd-card{border:3px solid var(--hkd-ink);border-radius:5px;background:var(--hkd-paper);overflow:hidden;display:flex;flex-direction:column;transition:transform .16s,box-shadow .16s;text-decoration:none;color:var(--hkd-ink)}
.hkd-card:hover{transform:translate(-5px,-5px);box-shadow:9px 9px 0 var(--hkd-ink)}
.hkd-card__thumb{background:var(--hkd-screen);aspect-ratio:16/10;overflow:hidden;border-bottom:3px solid var(--hkd-ink);display:flex;align-items:center;justify-content:center}
.hkd-card__thumb .hkd-ascii{font-size:5.5px;line-height:1.04}
.hkd-card__body{padding:1rem 1.05rem 1.15rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.hkd-card__date{font-family:var(--hkd-mono);font-weight:700;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#5a6b3a}
.hkd-card h3{font-family:var(--hkd-mono);font-weight:700;font-size:1.04rem;line-height:1.12}
.hkd-card__excerpt{font-size:.86rem;color:#3a4430;line-height:1.45}
.hkd-card__meta{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:auto}
.hkd-mini{font-family:var(--hkd-mono);font-weight:700;font-size:.62rem;letter-spacing:.03em;padding:.24em .55em;border:2px solid var(--hkd-ink);border-radius:2px}
.hkd-mini--fmt{background:var(--hkd-ink);color:var(--hkd-green)}
.hkd-mini--topic{color:var(--hkd-ink);border-color:var(--tc,var(--hkd-ink));box-shadow:inset 0 -.65em 0 -.35em var(--tc,transparent)}

/* youtube */
.hkd-yt .hkd-card__thumb{aspect-ratio:16/9;position:relative}
.hkd-yt__play{position:absolute;inset:0;margin:auto;width:58px;height:58px;border-radius:50%;background:var(--hkd-green);border:3px solid var(--hkd-ink);display:flex;align-items:center;justify-content:center;transition:transform .16s}
.hkd-card:hover .hkd-yt__play{transform:scale(1.14) rotate(-3deg)}
.hkd-yt__play::after{content:"";border-left:16px solid var(--hkd-ink);border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:3px}

/* ---- panels (newsletter/support) ---- */
.hkd-cta-sec{background:var(--hkd-green);border-block:3px solid var(--hkd-ink)}
.hkd-split{display:grid;grid-template-columns:1.15fr .85fr;gap:1.6rem;max-width:var(--hkd-wide);margin-inline:auto;padding:clamp(2.6rem,5vw,5.5rem) var(--hkd-pad)}
.hkd-panel{border:3px solid var(--hkd-ink);border-radius:5px;padding:clamp(1.6rem,3vw,2.6rem);background:var(--hkd-paper)}
.hkd-panel--ink{background:var(--hkd-ink);color:var(--hkd-paper)}
.hkd-panel--ink h2,.hkd-panel--ink .hkd-eyebrow2{color:var(--hkd-green)}
.hkd-eyebrow2{font-family:var(--hkd-mono);font-weight:700;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase}
.hkd-panel h2{font-family:var(--hkd-mono);font-weight:700;font-size:var(--hkd-h3);margin:.5rem 0 .6rem;line-height:1}
.hkd-field{display:flex;gap:.6rem;flex-wrap:wrap}
.hkd-field input{flex:1;min-width:210px;font-family:var(--hkd-mono);font-size:.9rem;padding:.8em .95em;border:3px solid var(--hkd-ink);background:var(--hkd-paper);border-radius:2px}
/* Gravity Forms newsletter — brand the GF default markup, scoped to the dark
   newsletter panel so other forms are untouched. */
.hkd-panel--ink .gform_wrapper{margin-top:1.3rem}
.hkd-panel--ink .gform_wrapper form,.hkd-panel--ink .gform_wrapper .gform_body,.hkd-panel--ink .gform_wrapper .gform_fields,.hkd-panel--ink .gform_wrapper .gfield{margin:0;padding:0}
.hkd-panel--ink .gform_wrapper .gform_fields{list-style:none;display:block}
.hkd-panel--ink .gform_wrapper .gfield_label{display:none}
.hkd-panel--ink .gform_wrapper input[type="email"]{width:100%;box-sizing:border-box;font-family:var(--hkd-mono);font-size:.95rem;padding:.8em .95em;border:3px solid var(--hkd-ink);border-radius:2px;background:var(--hkd-paper);color:var(--hkd-ink)}
.hkd-panel--ink .gform_wrapper input[type="email"]::placeholder{color:#7a8a5a}
.hkd-panel--ink .gform_wrapper .gform_footer{margin:.8rem 0 0;padding:0}
.hkd-panel--ink .gform_wrapper .gform_footer input[type="submit"],.hkd-panel--ink .gform_wrapper input.gform_button{font-family:var(--hkd-mono)!important;font-weight:700!important;font-size:.84rem!important;padding:.7em 1.25em!important;border:3px solid var(--hkd-ink)!important;border-radius:2px!important;background:var(--hkd-green)!important;color:var(--hkd-ink)!important;cursor:pointer;transition:transform .14s,box-shadow .14s;width:auto!important;text-transform:none}
.hkd-panel--ink .gform_wrapper .gform_footer input[type="submit"]:hover,.hkd-panel--ink .gform_wrapper input.gform_button:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 rgba(0,0,0,.4)}
.hkd-panel--ink .gform_wrapper .gfield_required{color:var(--hkd-green)}
.hkd-panel--ink .gform_wrapper .gfield_validation_message,.hkd-panel--ink .gform_wrapper .validation_message{font-family:var(--hkd-mono);font-size:.78rem;color:var(--hkd-amber);background:none;border:0;padding:.35rem 0 0}
.hkd-panel--ink .gform_confirmation_message{font-family:var(--hkd-mono);font-weight:700;color:var(--hkd-green);margin-top:1.3rem}
.hkd-supp{display:flex;flex-direction:column;gap:.7rem;margin-top:1rem}
.hkd-supp a{display:flex;justify-content:space-between;align-items:center;font-family:var(--hkd-mono);font-weight:700;font-size:.92rem;border:3px solid var(--hkd-green);border-radius:2px;padding:.9em 1.05em;transition:.14s;text-decoration:none;color:var(--hkd-ink)}
.hkd-supp a:hover{background:var(--hkd-green);transform:translateX(5px)}

/* ---- share button (brand button DNA: 3px ink, 2px radius, offset-shadow) ---- */
.hkd-share{display:inline-flex;align-items:center;gap:.5em;font-family:var(--hkd-mono);font-weight:700;font-size:.8rem;line-height:1;padding:.6em 1em;border:3px solid var(--hkd-ink);border-radius:2px;background:transparent;color:var(--hkd-ink);cursor:pointer;transition:transform .14s,box-shadow .14s,background .14s,color .14s;white-space:nowrap}
.hkd-share:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--hkd-ink);background:var(--hkd-ink);color:var(--hkd-green)}
.hkd-share.is-copied{background:var(--hkd-ink);color:var(--hkd-green);transform:none;box-shadow:none}
.hkd-share__icon{flex:none}
.hkd-hero--episode .hkd-share{margin-top:1.2rem}
.hkd-sechead__actions{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap}

/* ---- home listen section ---- */
#listen{scroll-margin-top:90px}
.hkd-listen__grid{display:grid;grid-template-columns:1.6fr 1fr;gap:2rem;align-items:start}
.hkd-listen__player .hkd-eyebrow2,.hkd-listen__subs .hkd-eyebrow2{display:block;color:#5a6b3a;margin-bottom:.7rem}
.hkd-listen__player iframe{display:block;width:100%;border:3px solid var(--hkd-ink);border-radius:5px;background:var(--hkd-ink)}
.hkd-listen__subs .hkd-supp{margin-top:0}
@media (max-width:760px){.hkd-listen__grid{grid-template-columns:1fr}}

/* ---- footer ---- */
.hkd-footer{background:var(--hkd-ink);color:var(--hkd-paper)}
.hkd-footer__inner{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;max-width:var(--hkd-wide);margin-inline:auto;padding:3rem var(--hkd-pad);font-family:var(--hkd-mono);font-size:.8rem}
.hkd-footer .hkd-wordmark__logo{height:2rem;background-color:var(--hkd-green)}
.hkd-footer a{opacity:.7;transition:.14s;color:var(--hkd-paper);text-decoration:none}
.hkd-footer a:hover{opacity:1;color:var(--hkd-green)}
.hkd-footer__cols{display:flex;gap:2.6rem;flex-wrap:wrap}
.hkd-footer__col{display:flex;flex-direction:column;gap:.55rem}
.hkd-footer__col b{color:var(--hkd-green);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;margin-bottom:.3rem}

@media(max-width:900px){
  .hkd-hero__inner,.hkd-split{grid-template-columns:1fr}
  .hkd-grid{grid-template-columns:repeat(2,1fr)}
  .hkd-stats__inner{grid-template-columns:repeat(2,1fr)}
  .hkd-nav{display:none}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .hkd-reveal{opacity:1;transform:none}
}

/* ---- episode single ---- */
.hkd-hero--episode .hkd-hero__inner{align-items:center}
.hkd-hero--episode .hkd-eyebrow{margin-bottom:.4rem}
.hkd-hero--episode h1{font-family:var(--hkd-mono);font-weight:700;font-size:clamp(2rem,1.2rem+3.6vw,4.4rem);line-height:.95;letter-spacing:-.03em;color:var(--hkd-ink);margin:.6rem 0 0}
.hkd-hero--episode .hkd-meta{margin-top:1.1rem}
.hkd-eptags{margin-top:1.2rem}
.hkd-tag--topic{border-color:var(--tc,var(--hkd-ink))}
.hkd-episode-body{max-width:760px;margin-inline:auto;padding:clamp(2.2rem,4vw,3.5rem) var(--hkd-pad) clamp(3rem,6vw,6rem)}
.hkd-episode-body>*+*{margin-top:clamp(1.6rem,3vw,2.6rem)}
.hkd-tldr{font-family:var(--hkd-sans);font-size:1.15rem;line-height:1.55;font-weight:500;color:var(--hkd-ink);border-left:4px solid var(--hkd-green);padding-left:1.1rem;margin:0}
.hkd-tldr__tag{font-family:var(--hkd-mono);font-weight:700;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:#5a6b3a;margin-right:.7em}

/* player */
.hkd-player{border:3px solid var(--hkd-ink);border-radius:5px;overflow:hidden;background:var(--hkd-paper)}
.hkd-player__tabs{display:flex;border-bottom:3px solid var(--hkd-ink)}
.hkd-player__tab{flex:1;font-family:var(--hkd-mono);font-weight:700;font-size:.84rem;letter-spacing:.04em;padding:.8em 1em;background:var(--hkd-paper);border:0;border-right:3px solid var(--hkd-ink);cursor:pointer;color:var(--hkd-ink)}
.hkd-player__tab:last-child{border-right:0}
.hkd-player__tab.is-active{background:var(--hkd-green)}
.hkd-player__pane[hidden]{display:none}
.hkd-player iframe{display:block;width:100%}
.hkd-facade{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;background-size:cover;background-position:center;cursor:pointer}
.hkd-facade::after{content:"";position:absolute;inset:0;background:rgba(11,14,8,.35)}
.hkd-facade__play{position:absolute;inset:0;margin:auto;z-index:2;width:64px;height:64px;border-radius:50%;background:var(--hkd-green);border:3px solid var(--hkd-ink);display:flex;align-items:center;justify-content:center}
.hkd-facade__play::after{content:"";border-left:18px solid var(--hkd-ink);border-top:11px solid transparent;border-bottom:11px solid transparent;margin-left:4px}

/* notes */
.hkd-notes{font-size:1.05rem;line-height:1.7}
.hkd-notes p{margin:0 0 1rem}

/* transcript */
.hkd-transcript{border:3px solid var(--hkd-ink);border-radius:5px;background:var(--hkd-paper-2);padding:0}
.hkd-transcript__summary{font-family:var(--hkd-mono);font-weight:700;font-size:1rem;letter-spacing:.02em;padding:1em 1.2em;cursor:pointer;list-style:none;display:flex;align-items:center;gap:.6em}
.hkd-transcript__summary::before{content:"▸";color:var(--hkd-green);transition:transform .15s}
.hkd-transcript[open] .hkd-transcript__summary::before{transform:rotate(90deg)}
.hkd-transcript__summary::-webkit-details-marker{display:none}
.hkd-transcript__note{font-family:var(--hkd-mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:#5a6b3a;padding:0 1.2em}
.hkd-transcript__body{padding:.6em 1.2em 1.4em;line-height:1.7;font-size:.96rem}

/* prev/next */
.hkd-epnav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;border-top:3px solid var(--hkd-ink);padding-top:1.6rem}
.hkd-epnav__link{border:3px solid var(--hkd-ink);border-radius:5px;padding:1em 1.1em;display:flex;flex-direction:column;gap:.3rem;transition:transform .14s,box-shadow .14s;text-decoration:none;color:var(--hkd-ink)}
.hkd-epnav__link:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--hkd-ink)}
.hkd-epnav__next{text-align:right;align-items:flex-end}
.hkd-epnav__dir{font-family:var(--hkd-mono);font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#5a6b3a}
.hkd-epnav__title{font-family:var(--hkd-mono);font-weight:700;font-size:.95rem;line-height:1.15}
@media(max-width:600px){.hkd-epnav{grid-template-columns:1fr}.hkd-epnav__next{text-align:left;align-items:flex-start}}

/* ---- episode archive ---- */
.hkd-archive-count{font-family:var(--hkd-mono);font-weight:700;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#5a6b3a}
.hkd-archive-query .hkd-grid{margin-bottom:2.5rem}

/* ---- facets (FacetWP) — minimal pill bar ---- */
.facetwp-hidden{display:none!important}
.hkd-facets{margin:0 0 2.6rem;padding:0 0 1.6rem;border-bottom:2px solid var(--hkd-ink);display:flex;flex-direction:column;gap:1.15rem}
/* search: slim, single line, icon kept inside by FacetWP */
.hkd-facet--search{position:relative;max-width:30rem}
.facetwp-search{width:100%;font-family:var(--hkd-mono);font-size:.95rem;padding:.62em .9em;padding-right:2.4em;border:2px solid var(--hkd-ink);border-radius:3px;background:var(--hkd-paper);color:var(--hkd-ink)}
.facetwp-search::placeholder{color:#7a8a5a}
.facetwp-search:focus{outline:none;box-shadow:3px 3px 0 var(--hkd-green)}
.hkd-facet--search .facetwp-icon{position:absolute;right:.75em;top:50%;transform:translateY(-50%);margin:0}
/* each facet is a labelled row: label left, pills flow right */
.hkd-facets__grid{display:flex;flex-direction:column;gap:.95rem}
.hkd-facet{display:flex;gap:1rem;align-items:baseline;flex-wrap:wrap}
.hkd-facet__label{flex:0 0 4.5rem;font-family:var(--hkd-mono);font-weight:700;font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;color:#7a8a5a;margin:.45rem 0 0;line-height:1}
.hkd-facet .facetwp-facet{flex:1 1 0;min-width:0;margin:0;display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
/* checkboxes + radios → toggle pills (strip FacetWP's native box) */
.facetwp-checkbox,.facetwp-radio{display:inline-flex;align-items:center;gap:.4em;font-family:var(--hkd-mono);font-size:.8rem;line-height:1;padding:.5em .8em!important;margin:0!important;border:1.5px solid #c7cdba;border-radius:999px;background:transparent!important;background-image:none!important;color:var(--hkd-ink);cursor:pointer;transition:border-color .12s,background .12s,color .12s;white-space:nowrap}
.facetwp-checkbox:hover,.facetwp-radio:hover{border-color:var(--hkd-ink)}
.facetwp-checkbox.checked,.facetwp-radio.checked{background:var(--hkd-green)!important;border-color:var(--hkd-ink);font-weight:700}
.facetwp-counter{color:#8a9a6a;font-size:.82em}
.facetwp-checkbox.checked .facetwp-counter,.facetwp-radio.checked .facetwp-counter{color:var(--hkd-ink)}
/* year: slim native select */
.hkd-facet--year .facetwp-facet{flex:0 0 auto}
.facetwp-type-dropdown select{font-family:var(--hkd-mono);font-weight:700;font-size:.8rem;padding:.5em 2em .5em .8em;border:1.5px solid #c7cdba;border-radius:999px;background:transparent;color:var(--hkd-ink);cursor:pointer}
.facetwp-type-dropdown select:hover{border-color:var(--hkd-ink)}
/* pager */
.facetwp-pager{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;font-family:var(--hkd-mono);font-weight:700;font-size:.82rem;margin-top:.5rem}
.facetwp-page{border:1.5px solid #c7cdba;border-radius:3px;padding:.5em .85em;text-decoration:none;color:var(--hkd-ink);cursor:pointer;transition:.12s}
.facetwp-page:hover{border-color:var(--hkd-ink);background:var(--hkd-green)}
.facetwp-page.active{background:var(--hkd-ink);color:var(--hkd-green);border-color:var(--hkd-ink)}
.facetwp-page.disabled{opacity:.4;pointer-events:none}
/* loading state */
.facetwp-template.is-loading{opacity:.45;transition:opacity .2s}

/* ---- 404 ---- */
.hkd-404{background:var(--hkd-green);border-bottom:3px solid var(--hkd-ink);min-height:70vh;display:flex;align-items:center}
.hkd-404__inner{max-width:var(--hkd-wide);margin-inline:auto;padding:clamp(2.5rem,6vw,6rem) var(--hkd-pad);display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center;width:100%}
.hkd-404__code{font-family:var(--hkd-mono);font-weight:700;font-size:clamp(4rem,3rem+10vw,12rem);line-height:.8;letter-spacing:-.05em;color:var(--hkd-ink);animation:hkd-glitch 2.6s steps(2) infinite}
@keyframes hkd-glitch{0%,92%,100%{transform:none;text-shadow:none}93%{transform:translate(-3px,1px);text-shadow:3px 0 var(--hkd-cyan),-3px 0 var(--hkd-t-ransomware)}96%{transform:translate(3px,-1px);text-shadow:-3px 0 var(--hkd-cyan),3px 0 var(--hkd-t-ransomware)}}
.hkd-404__lost{font-family:var(--hkd-mono);font-weight:700;font-size:1.1rem;letter-spacing:.16em;text-transform:uppercase;margin:1rem 0 1.4rem}
.hkd-404 .wp-block-search__inside-wrapper{border:3px solid var(--hkd-ink);border-radius:2px;background:var(--hkd-paper);overflow:hidden}
.hkd-404 .wp-block-search__input{border:0;background:transparent;font-family:var(--hkd-mono);padding:.7em .9em}
.hkd-404 .wp-block-search__button{background:var(--hkd-ink);color:var(--hkd-green);border:0;font-family:var(--hkd-mono);font-weight:700;margin:0;padding:.7em 1.1em}
@media(max-width:780px){.hkd-404__inner{grid-template-columns:1fr}}

/* ---- editorial pages ---- */
.wp-block-post-content>.wp-block-group{padding-inline:var(--hkd-pad)}
.hkd-lede-block{font-size:clamp(1.05rem,1rem+.5vw,1.35rem);max-width:60ch;color:#2a3320;font-weight:500}
.hkd-flag{font-family:var(--hkd-mono);font-size:.8rem;color:#6a5500;background:#fff6d6;border:2px dashed var(--hkd-amber);border-radius:3px;padding:.7em .9em;max-width:70ch}
.hkd-empty{font-family:var(--hkd-mono);color:#5a6b3a;padding:2rem 0}
.wp-block-post-content h1{font-family:var(--hkd-mono);font-weight:700;font-size:clamp(2.2rem,1.4rem+3.6vw,4.4rem);letter-spacing:-.03em;line-height:.95;margin:.2em 0 .5em}
.wp-block-post-content h2{font-family:var(--hkd-mono);font-weight:700;font-size:clamp(1.4rem,1.1rem+1.4vw,2rem);margin:1.6em 0 .4em}
.wp-block-post-content h3{font-family:var(--hkd-mono);font-weight:700;font-size:1.2rem;margin:1.2em 0 .3em}
.hkd-card__thumb--img{aspect-ratio:16/10;display:block}
.hkd-card__thumb--img img{width:100%;height:100%;object-fit:cover}


/* About — host cards: portrait ASCII canvas + bio, two-up and centred.
   Smaller ramp so the 72-col portrait fits a column; clip guards overflow. */
.hkd-host{align-items:center}
.hkd-host .hkd-screen{box-shadow:8px 8px 0 var(--hkd-ink);overflow:hidden}
.hkd-host .hkd-ascii{font-size:clamp(4px,.5vw,6px)}
