/* Wordscapes Solitaire homepage — Karol's approved design (4 Nov 2026), applied as given. Fonts self-hosted (same families). */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:500 900;font-display:swap;src:url(/wordscapes-solitaire/assets/fonts/fraunces-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fraunces";font-style:normal;font-weight:500 900;font-display:swap;src:url(/wordscapes-solitaire/assets/fonts/fraunces-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:600 800;font-display:swap;src:url(/wordscapes-solitaire/assets/fonts/fraunces-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:600 800;font-display:swap;src:url(/wordscapes-solitaire/assets/fonts/fraunces-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sora";font-style:normal;font-weight:400 800;font-display:swap;src:url(/wordscapes-solitaire/assets/fonts/sora-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sora";font-style:normal;font-weight:400 800;font-display:swap;src:url(/wordscapes-solitaire/assets/fonts/sora-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500 800;font-display:swap;src:url(/wordscapes-solitaire/assets/fonts/jetbrains-mono-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:500 800;font-display:swap;src:url(/wordscapes-solitaire/assets/fonts/jetbrains-mono-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{
  --navy-950:#060a1c; --navy-900:#0b1230; --navy-800:#141c48;
  --red:#ef233c; --red-d:#a2001d; --red-lt:#ff5b6e;
  --blue:#2c5df0; --blue-d:#102a7a;
  --gold:#ffd23f; --gold-d:#c98a00;
  --green:#22c55e; --green-d:#15803d;
  --pink:#ec4899; --pink-d:#a3195b;
  --purple:#8b5cf6; --purple-d:#5b2fc9;
  --teal:#06b6d4; --teal-d:#0e6e82;
  --white:#f3f6ff; --ink-soft:#d7deff;
  --line:rgba(255,255,255,.1);
  --font-dh:"Fraunces",serif; --font-b:"Sora",sans-serif; --font-m:"JetBrains Mono",monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--navy-950);color:var(--white);font-family:var(--font-b);-webkit-font-smoothing:antialiased;overflow-x:hidden}
.wrap{max-width:900px;margin:0 auto;padding:0 28px}
a{text-decoration:none;color:inherit}
button{font:inherit;cursor:pointer;border:none}

@keyframes float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-24px) scale(1.07)}}
@keyframes drift{from{background-position:0 0}to{background-position:-800px 500px}}
@keyframes shimmer{0%{transform:translateX(-120%) skewX(-18deg)}100%{transform:translateX(220%) skewX(-18deg)}}
.shine{position:relative;overflow:hidden}
.shine::after{content:"";position:absolute;top:0;left:0;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);animation:shimmer 3.2s ease-in-out infinite}
.stars{position:absolute;inset:0;opacity:.5;background-image:
  radial-gradient(1.6px 1.6px at 15% 25%,#fff,transparent),
  radial-gradient(1.6px 1.6px at 65% 15%,#fff,transparent),
  radial-gradient(1.2px 1.2px at 85% 55%,#fff,transparent),
  radial-gradient(1.2px 1.2px at 35% 70%,#fff,transparent);
  background-size:340px 340px;animation:drift 100s linear infinite}

/* NAV */
.nav{position:sticky;top:0;z-index:60;background:rgba(6,10,28,.93);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav-in{max-width:1180px;margin:0 auto;padding:13px 28px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-dh);font-weight:800;font-size:18px;letter-spacing:-.01em;color:#fff;flex-shrink:0}
.brand .mark{width:28px;height:28px;border-radius:9px;background:linear-gradient(140deg,var(--red-lt),var(--red) 50%,var(--blue-d));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.brand .mark::after{content:"\2605";color:#fff;font-size:11px}
.tabs{display:flex;align-items:center;gap:3px;flex:1;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{flex-shrink:0;white-space:nowrap;font-family:var(--font-b);font-weight:700;font-size:12.5px;color:var(--ink-soft);padding:8px 13px;border-radius:999px}
.tab.on{color:var(--navy-950);background:linear-gradient(120deg,var(--gold),#fff0b0);box-shadow:0 8px 18px -8px rgba(255,210,63,.55)}
.nav-cta{flex-shrink:0;font-family:var(--font-m);font-weight:700;font-size:11.5px;color:#fff;background:rgba(255,255,255,.08);border:1px solid var(--line);padding:9px 16px;border-radius:999px}

.bcrow{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:12px 28px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-family:var(--font-m);font-weight:700;font-size:11.5px;background:rgba(255,255,255,.03);border-bottom:1px solid var(--line)}
.bcrow a{color:#6a8dff}
.bcrow .sep{color:#5c669a}
.bcrow .here{color:var(--pink)}

/* HERO */
.hero{position:relative;overflow:hidden;background:
  radial-gradient(1100px 600px at 85% -15%,rgba(236,72,153,.22),transparent 60%),
  radial-gradient(900px 560px at -10% 100%,rgba(139,92,246,.25),transparent 60%),
  linear-gradient(180deg,var(--navy-900),var(--navy-950));
  padding:30px 0 22px}
.blob{position:absolute;border-radius:50%;filter:blur(90px);mix-blend-mode:screen;opacity:.55;animation:float 13s ease-in-out infinite}
.blob.b1{width:420px;height:420px;background:var(--pink);top:-180px;right:-100px}
.blob.b2{width:360px;height:360px;background:var(--purple);bottom:-220px;left:-100px;animation-delay:-6s}
.hero-in{position:relative;z-index:2;display:flex;flex-direction:column}
h1.head{font-family:var(--font-dh);font-weight:800;font-size:34px;line-height:1.1;letter-spacing:-.02em;color:#fff;margin:0;order:0}
h1.head .accent{display:block;font-style:italic;font-weight:700;background:linear-gradient(100deg,var(--pink),var(--purple) 60%,var(--teal));-webkit-background-clip:text;background-clip:text;color:transparent}
.introtext{color:var(--ink-soft);font-weight:600;font-size:14px;line-height:1.75;margin:14px 0 0;max-width:620px;order:1}

/* QUICKJUMP (shelfchip = the design's qpill) */
.qjump{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;position:relative;z-index:2;order:2}
.shelfchip{font-family:var(--font-m);font-weight:800;font-size:11.5px;color:#fff;background:rgba(255,255,255,.1);border:1px solid var(--line);padding:9px 15px;border-radius:999px;transition:all .15s}
.shelfchip.active{color:var(--navy-950);background:linear-gradient(120deg,var(--gold),#fff0b0);border-color:transparent;box-shadow:0 8px 18px -8px rgba(255,210,63,.6)}

/* SECTION */
.sec{padding:28px 0}

/* BOOK CARDS */
.bookcard{border-radius:20px;padding:28px;margin-bottom:22px;position:relative;overflow:hidden;scroll-margin-top:90px;box-shadow:0 26px 50px -24px var(--shc)}
.bookcard.gold{background:linear-gradient(135deg,var(--gold-d),var(--gold) 65%,#fff3b0);--shc:rgba(201,138,0,.55)}
.bookcard.teal{background:linear-gradient(135deg,var(--teal-d),var(--teal) 65%,#8fe9ff);--shc:rgba(6,182,212,.5)}
.bookcard.pink{background:linear-gradient(135deg,var(--pink-d),var(--pink) 65%,#ffb3dc);--shc:rgba(236,72,153,.5)}
.bookcard.purple{background:linear-gradient(135deg,var(--purple-d),var(--purple) 65%,#d3c2ff);--shc:rgba(139,92,246,.5)}
.bookcard.green{background:linear-gradient(135deg,var(--green-d),var(--green) 65%,#baf5cf);--shc:rgba(34,197,94,.5)}
.bktop{display:flex;align-items:center;gap:13px;margin-bottom:8px;position:relative;z-index:2}
.bkicon{width:42px;height:42px;border-radius:12px;background:rgba(6,10,28,.3);display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0;border:1px solid rgba(255,255,255,.25)}
.bkname{font-family:var(--font-dh);font-weight:800;font-size:21px;color:#fff;letter-spacing:-.01em;margin:0;line-height:1.25}
.bkdesc{position:relative;z-index:2;font-size:13.5px;font-weight:700;color:rgba(6,10,28,.82);line-height:1.7;margin:0 0 18px;max-width:640px}
.bookcard.teal .bkdesc,.bookcard.pink .bkdesc,.bookcard.purple .bkdesc,.bookcard.green .bkdesc{color:rgba(6,10,28,.75)}
.lettergroup{position:relative;z-index:2}
.lgtitle{display:table;font-family:var(--font-m);font-weight:800;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(6,10,28,.68);background:rgba(255,255,255,.35);padding:5px 11px;border-radius:999px;margin:12px 0 9px}
.chiprow{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}
.bk-word{font-family:var(--font-m);font-weight:800;font-size:12.5px;letter-spacing:.04em;color:#fff;background:rgba(6,10,28,.38);border:1px solid rgba(255,255,255,.18);padding:7px 13px;border-radius:9px;cursor:pointer;transition:transform .12s, background .12s}
.bk-word:hover{background:rgba(6,10,28,.58);transform:translateY(-2px)}

.navbtnrow{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin:18px 0 10px}
.navleft{display:flex;gap:10px;flex-wrap:wrap}
.nextbtn{font-family:var(--font-m);font-weight:800;font-size:13px;color:#fff;background:linear-gradient(120deg,var(--pink),var(--purple));padding:12px 22px;border-radius:999px;box-shadow:0 12px 24px -10px rgba(236,72,153,.5);display:inline-flex;align-items:center;gap:7px}
.uplink{font-family:var(--font-m);font-weight:700;font-size:12px;color:var(--ink-soft);background:rgba(255,255,255,.06);border:1px solid var(--line);padding:9px 15px;border-radius:999px}
.uplink:hover{color:#fff}

.divider{display:flex;align-items:center;justify-content:center;margin:10px 0 30px}
.divider .diamond{width:9px;height:9px;transform:rotate(45deg);background:linear-gradient(135deg,var(--pink),var(--teal));box-shadow:0 0 14px rgba(236,72,153,.6)}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--line);max-width:300px}
.divider .diamond{margin:0 14px}

h2.sh{font-family:var(--font-dh);font-weight:800;font-size:25px;letter-spacing:-.01em;color:#fff;margin:0 0 6px}
.sh .glow{font-style:italic;background:linear-gradient(100deg,var(--pink),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.bodytext{color:var(--ink-soft);font-weight:600;font-size:14px;line-height:1.75;margin:0 0 18px}
.btnrow{display:flex;gap:10px;flex-wrap:wrap}
.pbtn{font-family:var(--font-m);font-weight:800;font-size:12.5px;color:var(--navy-950);background:linear-gradient(120deg,var(--gold),#fff0b0);padding:12px 20px;border-radius:11px;box-shadow:0 10px 20px -8px rgba(255,210,63,.55)}
.pbtn.ghost{color:#fff;background:rgba(255,255,255,.08);border:1px solid var(--line);box-shadow:none}

.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);background:var(--navy-800);border:1px solid var(--gold);color:#fff;font-family:var(--font-m);font-weight:700;font-size:12.5px;padding:11px 20px;border-radius:999px;opacity:0;pointer-events:none;transition:all .25s;z-index:90;box-shadow:0 14px 30px -10px rgba(0,0,0,.6)}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

.srcnote{margin-top:10px;text-align:center;font-size:12px;color:var(--ink-soft);font-weight:600;line-height:1.7}
.srcnote a{color:var(--gold);text-decoration:underline}

/* FOOTER */
.foot{background:var(--navy-950);color:rgba(255,255,255,.65);padding:40px 0 26px;margin-top:10px;border-top:5px solid;border-image:linear-gradient(90deg,var(--pink),var(--gold),var(--purple),var(--gold),var(--pink)) 1}
.foot .wrap.footwrap{max-width:1040px;margin:0 auto;padding:0 28px}
.footgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}
@media(max-width:720px){.footgrid{grid-template-columns:1fr}}
.footbrand{display:flex;align-items:center;gap:9px;font-family:var(--font-dh);font-weight:800;font-size:16px;color:#fff;margin-bottom:10px}
.footbrand .mark{width:24px;height:24px;border-radius:8px;background:linear-gradient(140deg,var(--red-lt),var(--red) 50%,var(--blue-d))}
.footdesc{font-size:12.5px;line-height:1.7;max-width:340px}
.footdesc a{color:var(--gold);text-decoration:underline}
.footcol h4{font-family:var(--font-m);font-weight:700;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
.footcol a{display:block;font-size:13px;font-weight:600;color:rgba(255,255,255,.75);margin-bottom:9px}
.footcol a:hover{color:#fff}
.footbottom{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-size:11.5px;color:rgba(255,255,255,.45);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:6px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
@media(max-width:560px){h1.head{font-size:26px}h2.sh{font-size:20px}.bookcard{padding:20px}.bkname{font-size:18px}}

/* integration */
[hidden]{display:none!important}
[data-ico]:not([data-ico=""])::before{content:attr(data-ico)}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--gold);color:var(--navy-950);padding:10px 14px;border-radius:10px;font-weight:800}
.skip:focus{left:8px}
.tab span{font-size:12px}
@media(max-width:640px){.nav-in{gap:10px 14px}.tabs{order:3;flex-basis:100%}}
@media(max-width:380px){.wrap,.foot .wrap.footwrap,.bcrow{padding-left:16px;padding-right:16px}.bookcard{padding:16px}}

@media(max-width:640px){.bookcard,.wss-libgrp .mhead{scroll-margin-top:var(--kd-navh,150px)}}
/* ===== PEAK SEO/UX finalization (4 Nov 2026) — UX-1..UX-6, appended to every Wordscapes Solitaire stylesheet (scoped: only these pages load it) ===== */
/* UX-3 keyboard focus */
:focus-visible,.kd summary:focus-visible,.kd a:focus-visible,.kd button:focus-visible,.kd input:focus-visible,.kd [tabindex]:focus-visible{outline:2px solid #FFE17B!important;outline-offset:2px!important}
/* UX-5 fragments: scroll-margin-top = sticky header height + 12px (header: 62px desktop, 104px two-row mobile, 142px three-row narrow) */
/* fallback values = measured header height + 12px; wsol.js sets the exact live value */
:root{--kd-smt:83px}
@media(max-width:640px){:root{--kd-smt:137px}}
@media(max-width:360px){:root{--kd-smt:175px}}
.kd [id]{scroll-margin-top:var(--kd-smt)!important}
.kd .dwtbl td.tdate{position:relative}.kd .dwtbl span[id^="d-"]{position:absolute!important;top:0;left:0;width:1px;height:1px;scroll-margin-top:var(--kd-smt)!important}
/* UX-2 search action rows (Rewards + 2–9-letter pages): input, primary, Clear on one row from 768px */
@media(min-width:768px){
  .kd .ffrow{flex-wrap:nowrap!important;gap:12px!important;align-items:stretch}
  .kd .ffrow .lettersbox{flex:1 1 auto;min-width:0!important;width:auto!important}
  .kd .ffrow .fbtn{flex:0 0 auto;width:auto!important}
}
.kd .ffrow{gap:12px}
.kd .ffrow .lettersbox,.kd .ffrow .fbtn{min-height:44px}
@media(max-width:767px){.kd .ffrow{flex-wrap:wrap}.kd .ffrow .lettersbox{flex:1 1 100%;min-width:0!important;width:100%!important}.kd .ffrow .fbtn{flex:1 1 auto;justify-content:center}}
/* UX-4 practical targets (~44px) */
.kd .tab,.kd .nav-cta{min-height:44px;display:inline-flex;align-items:center}
.kd .btnlink,.kd .pbtn,.kd .qbtn,.kd .fbtn,.kd .slv-go,.kd .slv-clear,.kd .go,.kd .pcta,.kd .shelfchip,.kd .uplink,.kd .nextbtn,.kd .pagebtn,.kd .tlink{min-height:44px;display:inline-flex;align-items:center}
.kd .azjump{gap:8px}
.kd .azjc{width:44px;height:44px}
.kd .bk-word,.kd .aztag{min-height:40px;display:inline-flex;align-items:center}
.kd .wss-disc summary,.kd .slv-adv summary{min-height:44px}
.kd .wbtns{margin-top:18px;justify-content:center}

/* focus ring must not be animated by 'transition:all' */
.kd .shelfchip,.kd .azjc,.kd .shelfrow,.kd .wss-libgrp,.kd .bk-word,.kd .aztag,.kd .lcard,.kd .rcard,.kd .acard,.kd .gcard,.kd .rngcard{transition-property:background,background-color,color,border-color,transform,box-shadow!important}
/* ===== UX-1 contrast (mission spec): opaque inset #0B1430 / #FFFFFF / radius 8px / padding 4px 8px — only behind text that fails
   against the worst point of its gradient. Gradients themselves are unchanged. ===== */
.kd .ins,
.kd .bookcard .bkname,.kd .bookcard .bkdesc,.kd .bookcard .lgtitle,
.kd .toolcard h3,.kd .toolcard p,.kd .toolcard .tlink,
.kd-home .gcard h3,.kd-home .gcard p,.kd-home .gcard .gnum,
.kd .faqcard h3,.kd .faqcard p,
.kd .latestcard .ldate b,.kd .latestcard .lmeta,
.kd .rcard .rday,.kd .rcard .rdate,.kd .rcard .rword,.kd .rcard .rlen,
.kd .acard .arange,.kd .acard .acount,
.kd .lcard .lnum,.kd .lcard .llabel,.kd .lcard .lcount,.kd .lcard .lbrowse,
.kdg .gcard h3,.kdg .gcard p,.kdg .hx-step h3,.kdg .hx-step p,.kdg .hx-step .num,
.kdg .faqc h3,.kdg .faqc p,.kdg .evcard h3,.kdg .evcard p,
.kdg .rngcard .rc-lvl,.kdg .rngcard .rc-span,
.kdg .loccard .loc-title,.kdg .loccard .loc-meta,.kdg .loccard .loc-region,.kdg .loccard .loc-body{
  background:#0B1430!important;color:#FFFFFF!important;border-radius:8px!important;padding:4px 8px!important;
  -webkit-text-fill-color:#FFFFFF;text-shadow:none!important}
/* block-level text keeps its own line; inline labels shrink to their text */
.kd .bookcard .bkname,.kd .bookcard .bkdesc,.kd .toolcard h3,.kd .toolcard p,.kd-home .gcard h3,.kd-home .gcard p,.kd .faqcard h3,.kd .faqcard p,
.kdg .gcard h3,.kdg .gcard p,.kdg .hx-step h3,.kdg .hx-step p,.kdg .faqc p,.kdg .evcard h3,.kdg .evcard p,.kd .acard .arange,
.kdg .loccard .loc-meta,.kdg .loccard .loc-region,.kdg .loccard .loc-body,.kdg .rngcard .rc-lvl,.kdg .rngcard .rc-span{display:table!important;max-width:100%}
.kd .rcard .rday,.kd .rcard .rdate,.kd .rcard .rword,.kd .rcard .rlen,.kd .lcard .lnum,.kd .lcard .llabel,.kd .lcard .lcount,.kd .bookcard .lgtitle,.kd .latestcard .ldate b,.kd .latestcard .lmeta,.kd .ins{display:inline-block}
.kd .rcard>span{margin-bottom:4px}
.kdg .faqc h3{display:flex!important;align-items:center}
.kdg .faqc p{margin-top:6px!important}
.kd .bookcard .bktop{align-items:flex-start}
.kd .gcard p,.kd .faqcard p,.kd .toolcard p,.kdg .faqc p,.kdg .evcard p{margin-top:6px}
.kdg .loccard p{margin-top:6px!important}
/* tag/pill elements whose own background is the gradient: navy inset fill, colour kept as a 2px edge */
.kd .tlen{background:#0B1430!important;color:#fff!important;border:2px solid var(--c2)}
.kdg .lp{background:#0B1430!important;color:#fff!important;border:2px solid var(--teal)}
.kdg .lp2{border-color:var(--pink)}.kdg .lp5{border-color:var(--purple)}.kdg .lp0{border-color:var(--gold)}.kdg .lp1{border-color:var(--green)}
.kdg .btag{background:#0B1430!important;color:#fff!important;border:2px solid var(--purple)}
.kdg .bt-wild{border-color:var(--gold)}.kdg .bt-remove{border-color:var(--pink)}.kdg .bt-rand{border-color:var(--teal)}.kdg .bt-show{border-color:var(--green)}
.kdg .pc{background:#0B1430!important;color:#fff!important;border:2px solid var(--pink)}
.kdg .pk-tiers li{background:#0B1430!important;border:2px solid var(--purple)}
/* Library word chips (mission spec) */
.kd .bk-word{background:#17213F!important;color:#FFFFFF!important;font-weight:700!important;padding:6px 10px!important;border-color:rgba(255,255,255,.25)}
/* table headers: label inset on the gradient header */
.kd thead th .thi{display:inline-block;background:#0B1430;color:#fff;border-radius:8px;padding:4px 8px}
/* buttons with gradient fills: label inset */
.kd .btnlink.first .ins,.kd .nextbtn .ins{padding:4px 8px}
.kd-home .tab.on .tl{background:#0B1430;color:#fff;border-radius:8px;padding:4px 8px}
.kd .wss-disc summary .ins{display:inline-block}
.kd .footbottom{color:rgba(255,255,255,.66)}

/* ===== UX-4 informative text >= 14px, body line-height >= 1.5 ===== */
.kd :is(.lgtitle,.rday,.rlen,.tlen,.llabel,.lbw,.lbn,.acount,.loc-meta,.loc-region,.loc-body,.flabel,.hint,.slv-lab,.statusmeta,.nav-cta,.bcrow,.shelfchip,.fmetasmall,.srcnote,.mc,.uplink,.lbrowse,.lmeta,.pagebtn,.btag,.pricebadge,.tab,.go,.qbtn,.tlink,.footdesc,.pbtn,.pcta,.btnlink,.slv-go,.slv-clear,.fbtn,.subt,.nextbtn,.totalstrip,.azjc,.ldate,.num,.gnum,.lp,.pc,.pcode,.pdesc,.bkdesc,.rc-span,.rc-lvl,.aztag,.bk-word,.wbook,.rdate,.tdate,.fmeta,.smsg,.slv-note,.footbottom,.thi){font-size:14px!important}
.kd :is(.statusmeta time,.bcrow a,.bcrow span,.footcol a,.lbcard p,.lbcard b,.catbl th,.catbl td,.dwtbl th,.dwtbl td,.dwtbl b,.rcard time,.gcard p,.faqcard p,.faqc p,.evcard p,.toolcard p,.hx-step p,.hx-step h3,.pk-tiers li,.slv-adv summary,small,.ldate b,.ldate time,.wmeta .star,.resultlist .wd a,.resultlist .wbook,#wss-reward-results li small,#wss-length-results li a,#wss-length-results li small,#scards .mhead h3,#scards .mhead .mc,.slv-word){font-size:14px!important}
.kd .footcol .fh4{font-family:var(--font-m);font-weight:700;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
:where(.kd main) :where(p,li,td,dd){line-height:1.6}
.kd .introtext{color:var(--ink-soft);font-weight:600;font-size:14.5px;line-height:1.8;margin:14px 0 0;max-width:660px;position:relative;z-index:2}

.kd .tab .tl{font-size:14px!important}
