.tcf-crossword{--tcf-crossword-teal:#00cbc1;--tcf-crossword-pink:#ff1cbc;--tcf-crossword-ink:#1a1a1a;--tcf-crossword-ivory:#fbf8f3;font-family:inherit;color:var(--tcf-crossword-ink)}
.tcf-crossword *{box-sizing:border-box}.tcf-crossword__player-shell{max-width:1450px;margin:2rem auto;padding:clamp(1rem,2.5vw,2rem);background:#fff;border:1px solid #eee7df;border-radius:16px}.tcf-crossword__player-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:.5rem}.tcf-crossword__eyebrow{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:#009f99;margin:0 0 .25rem}.tcf-crossword__player-title,.tcf-crossword__section-heading,.tcf-crossword__card-heading{font-family:"Playfair Display",Georgia,serif;margin:.1rem 0 .5rem}.tcf-crossword__readonly-badge{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:.75rem;padding:.35rem .65rem;background:#eefaf8;border-radius:999px}.tcf-crossword__alpha-note{margin:.25rem 0 1.25rem;color:#666;font-size:.95rem}.tcf-crossword__workspace{display:grid;grid-template-columns:minmax(0,3fr) minmax(280px,2fr);gap:clamp(1.25rem,3vw,3rem);align-items:start}.tcf-crossword__grid-wrap{width:100%;max-width:760px;margin:0 auto}.tcf-crossword__grid{display:grid;grid-template-columns:repeat(var(--tcf-crossword-cols),minmax(0,1fr));width:100%;aspect-ratio:1;border:2px solid var(--tcf-crossword-ink);background:var(--tcf-crossword-ink);gap:1px}.tcf-crossword__cell{position:relative;display:block;min-width:0;min-height:0}.tcf-crossword__cell--open{background:#fff}.tcf-crossword__cell--block{background:var(--tcf-crossword-ink)}.tcf-crossword__cell-number{position:absolute;top:2px;left:3px;font:600 clamp(7px,1vw,11px)/1 Arial,sans-serif;color:#222}.tcf-crossword__clues{display:grid;gap:1.5rem;max-height:760px;overflow:auto;padding-right:.25rem}.tcf-crossword__clue-group{background:var(--tcf-crossword-ivory);border:1px solid #eee7df;border-radius:12px;padding:1rem 1.1rem}.tcf-crossword__clue-group h3{font-family:Oswald,sans-serif;text-transform:uppercase;margin:0 0 .75rem;color:#111}.tcf-crossword__clue-list{list-style:none;padding:0;margin:0}.tcf-crossword__clue-list li{display:grid;grid-template-columns:2rem 1fr;gap:.4rem;padding:.65rem 0;border-bottom:1px solid #e8e1da}.tcf-crossword__clue-list li:last-child{border-bottom:0}.tcf-crossword__clue-number{font-family:Oswald,sans-serif;font-weight:700}.tcf-crossword__card,.tcf-crossword__empty,.tcf-crossword__section{max-width:1400px;margin:1.5rem auto;padding:1.5rem;background:#fff;border:1px solid #eee7df;border-radius:14px}.tcf-crossword__stats-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:0}.tcf-crossword__stats-list>div{background:var(--tcf-crossword-ivory);padding:1rem;border-radius:10px}.tcf-crossword__stats-list dt{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:.78rem}.tcf-crossword__stats-list dd{font-family:"Playfair Display",Georgia,serif;font-size:1.6rem;margin:.2rem 0 0}.tcf-crossword__game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.tcf-crossword__game-card{display:flex;flex-direction:column;gap:.45rem;min-height:150px;padding:1.15rem;border:1px solid #e8e1da;border-radius:12px;text-decoration:none;color:inherit;background:var(--tcf-crossword-ivory)}.tcf-crossword__game-card strong{font-family:"Playfair Display",Georgia,serif;font-size:1.25rem}.tcf-crossword__game-card b{margin-top:auto;font-family:Oswald,sans-serif;text-transform:uppercase;color:#008f89}.tcf-crossword__society{border-top:4px solid var(--tcf-crossword-teal)}
@media(max-width:900px){.tcf-crossword__workspace{grid-template-columns:1fr}.tcf-crossword__clues{max-height:none;grid-template-columns:1fr 1fr}.tcf-crossword__stats-list{grid-template-columns:1fr 1fr}.tcf-crossword__game-grid{grid-template-columns:1fr}}
@media(max-width:600px){.tcf-crossword__player-shell{padding:.75rem;border-radius:10px}.tcf-crossword__player-header{align-items:flex-start;flex-direction:column}.tcf-crossword__clues{grid-template-columns:1fr}.tcf-crossword__cell-number{top:1px;left:2px;font-size:6px}.tcf-crossword__stats-list{grid-template-columns:1fr 1fr}}

/* =====================================================================
 * v1.21.0-alpha.3A.1 — Crossword public presentation polish.
 * Loaded only for the Crossword renderer, so these Journey overrides do
 * not alter the shared Journey card on Thickle or elsewhere.
 * ================================================================== */
@media (min-width:901px){
.tcf-crossword__player-title{font-size:clamp(1.85rem,2.4vw,2.25rem);line-height:1.08}
.tcf-crossword__alpha-note{font-size:.875rem;line-height:1.45}
.tcf-crossword__clue-group h3{font-size:1.55rem;line-height:1.05}
.tcf-crossword__clue-list li{grid-template-columns:1.6rem 1fr;gap:.35rem;padding:.48rem 0;font-size:15px;line-height:1.48}
.tcf-crossword__clue-number{font-size:14px;line-height:1.48}
}

/* Airier editorial treatment for the shared modules on Crossword only. */
.tcf-crossword__card,.tcf-crossword__section{border:0;border-radius:0;padding:0;background:transparent}
.tcf-crossword__card-heading,.tcf-crossword__section-heading{margin-bottom:1rem}
.tcf-crossword__game-grid{margin-top:.25rem}
.tcf-crossword__society{border-top:0}

/* The Journey card is shared globally; this stylesheet is only enqueued on
 * the Crossword property, so this removes the large enclosing outline here
 * without changing its appearance anywhere else. */
.tcf-journey-card{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
.tcf-journey-card:hover{transform:none!important;box-shadow:none!important}

/* 3A.1 final polish: elevate the live Crossword surface like the existing
 * Thickle stats card, without outlining the rest of the page modules. */
.tcf-crossword__player-shell{
  border:0;
  border-radius:18px;
  box-shadow:0 18px 45px rgba(0,0,0,.08),0 4px 12px rgba(0,0,0,.05);
}

/* Match the established Thickle "More TCF Games" family treatment. */
.tcf-crossword__section-heading{text-align:center}
.tcf-crossword__game-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem}
.tcf-crossword__game-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.5rem;
  min-height:290px;
  padding:1.6rem;
  border:0;
  border-radius:16px;
  text-decoration:none;
  color:inherit;
  transition:transform .2s ease;
}
.tcf-crossword__game-card:hover{transform:translateY(-3px)}
.tcf-crossword__game-card-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%}
.tcf-crossword__game-card-title{margin:0;font-family:Oswald,sans-serif;font-size:1.05rem;font-weight:700;text-transform:uppercase}
.tcf-crossword__game-badge{display:inline-flex;align-items:center;justify-content:center;padding:.45rem .72rem;border-radius:999px;background:var(--tcf-crossword-pink);color:#fff;font-family:Oswald,sans-serif;font-size:.72rem;line-height:1;text-transform:uppercase;white-space:nowrap}
.tcf-crossword__game-badge--live{background:var(--tcf-crossword-teal);color:#112}
.tcf-crossword__game-card-description{margin:.35rem 0 0;font-size:.9rem;line-height:1.55;color:#666}
.tcf-crossword__game-card-meta{display:flex;align-items:center;gap:.35rem;margin:.25rem 0 0;font-size:.78rem;color:#777}
.tcf-crossword__game-card-status{margin-top:auto;width:100%;text-align:center;padding:.6rem 0;font-family:Oswald,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.02em;color:#666;text-transform:uppercase}
.tcf-crossword__game-card-status--live{color:#008f89}
.tcf-crossword__game-grid .tcf-crossword__game-card:nth-child(1){background:linear-gradient(160deg,#fff,rgba(0,203,193,.12))}
.tcf-crossword__game-grid .tcf-crossword__game-card:nth-child(2){background:linear-gradient(160deg,#fff,rgba(224,33,138,.10))}
.tcf-crossword__game-grid .tcf-crossword__game-card:nth-child(3){background:linear-gradient(160deg,#fff,rgba(184,134,11,.12))}
.tcf-crossword__game-grid .tcf-crossword__game-card:nth-child(4){background:linear-gradient(160deg,#fff,rgba(6,58,55,.10))}
@media(max-width:1099px){.tcf-crossword__game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:699px){.tcf-crossword__game-grid{grid-template-columns:1fr}.tcf-crossword__game-card{min-height:220px}}

/* =====================================================================
 * v1.21.0-alpha.3A.1.1 — shared Journey + Thickle-style Crossword stats.
 * ================================================================== */
.tcf-crossword__stats-card{
  max-width:1400px;
  margin:2.5rem auto;
  padding:2rem;
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 34px rgba(6,58,55,.08);
  text-align:left;
}
.tcf-crossword__stats-heading{
  margin:0 0 .85rem;
  font-family:"Playfair Display",Georgia,serif;
  font-size:1.4rem;
  line-height:1.2;
  font-weight:700;
}
.tcf-crossword__stats-caption{margin:.85rem 0 0;font-size:.9rem;color:#666}
.tcf-crossword__stats-list{display:block;margin:0}
.tcf-crossword__stats-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.65rem 0;
  border-bottom:1px solid #e8e1da;
  font-size:.9rem;
}
.tcf-crossword__stats-row:last-child{border-bottom:0}
.tcf-crossword__stats-row dt{font-family:inherit;text-transform:none;font-size:inherit;color:#666}
.tcf-crossword__stats-row dd{margin:0;font-family:inherit;font-size:inherit;font-weight:700;color:#1a1a1a}
@media(max-width:600px){.tcf-crossword__stats-card{padding:1.25rem;border-radius:14px}}

/* =====================================================================
 * v1.21.0-alpha.3B — playable Crossword foundation + tabbed clue layout.
 * ================================================================== */
.tcf-crossword__player-shell{max-width:1560px}
.tcf-crossword__workspace{grid-template-columns:minmax(0,1.75fr) minmax(340px,.95fr);align-items:center;gap:clamp(1.5rem,3vw,3.25rem)}
.tcf-crossword__grid-wrap{max-width:840px;align-self:center}
.tcf-crossword__cell--open{border:0;padding:0;appearance:none;cursor:pointer;color:var(--tcf-crossword-ink);font:inherit}
.tcf-crossword__cell-letter{position:absolute;inset:0;display:grid;place-items:center;padding-top:2px;font-family:Oswald,sans-serif;font-size:clamp(12px,2.15vw,24px);font-weight:600;text-transform:uppercase;pointer-events:none}
.tcf-crossword__cell--open.is-word{background:#e8fbf9}
.tcf-crossword__cell--open.is-active{background:#bdf3ef;outline:3px solid var(--tcf-crossword-teal);outline-offset:-3px;z-index:2}
.tcf-crossword__cell--open.is-correct{background:#e7f8ef}
.tcf-crossword__cell--open.is-wrong{background:#fff0f5}
.tcf-crossword__cell--open.is-revealed .tcf-crossword__cell-letter{color:#008f89}
.tcf-crossword__clues{display:block;max-height:none;overflow:visible;padding:0;align-self:center}
.tcf-crossword__clue-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:.8rem;border-bottom:2px solid #e8e1da}
.tcf-crossword__clue-tab{appearance:none;border:0;background:transparent;padding:.8rem 1rem;font-family:Oswald,sans-serif;font-size:1rem;font-weight:700;text-transform:uppercase;cursor:pointer;color:#777;border-bottom:3px solid transparent;margin-bottom:-2px}
.tcf-crossword__clue-tab.is-active{color:#111;border-bottom-color:var(--tcf-crossword-teal)}
.tcf-crossword__clue-group{border:0;border-radius:0;padding:0;background:transparent}
.tcf-crossword__clue-group[hidden]{display:none!important}
.tcf-crossword__clue-list li{display:block;padding:0;border-bottom:1px solid #e8e1da}
.tcf-crossword__clue{display:grid;grid-template-columns:1.6rem 1fr;gap:.4rem;width:100%;padding:.62rem .35rem;border:0;background:transparent;text-align:left;color:inherit;font:inherit;line-height:1.45;cursor:pointer}
.tcf-crossword__clue:hover,.tcf-crossword__clue.is-active{background:#e8fbf9}
.tcf-crossword__clue.is-active{box-shadow:inset 3px 0 0 var(--tcf-crossword-teal)}
.tcf-crossword__controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-top:1.35rem;padding-top:1.15rem;border-top:1px solid #eee7df}
.tcf-crossword__control{appearance:none;border:2px solid var(--tcf-crossword-teal);background:var(--tcf-crossword-teal);color:#102322;border-radius:4px;padding:.7rem 1.25rem;font-family:Oswald,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.03em;cursor:pointer}
.tcf-crossword__control--secondary{background:#fff}
.tcf-crossword__control:hover{filter:brightness(.96)}
.tcf-crossword__status{flex-basis:100%;min-height:1.3em;text-align:center;font-size:.88rem;color:#555}
.tcf-crossword__placement-data{display:none!important}
@media(max-width:1000px){.tcf-crossword__workspace{grid-template-columns:1fr}.tcf-crossword__grid-wrap{max-width:760px}.tcf-crossword__clues{width:100%;max-width:760px;margin:0 auto}}
@media(max-width:600px){.tcf-crossword__controls{gap:.5rem}.tcf-crossword__control{flex:1 1 auto;padding:.65rem .7rem;font-size:.82rem}.tcf-crossword__cell-letter{font-size:clamp(10px,5vw,19px)}}


/* =====================================================================
 * v1.21.0-alpha.3B.1 — theme button-style isolation.
 * Kadence/global button rules must never turn crossword cells or clue
 * rows into pills/circles or force clue prose to uppercase.
 * ================================================================== */
.tcf-crossword .tcf-crossword__cell--open{
  border-radius:0!important;
  box-shadow:none!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}
.tcf-crossword .tcf-crossword__clue{
  border-radius:0!important;
  box-shadow:none!important;
  text-transform:none!important;
  letter-spacing:normal!important;
  color:var(--tcf-crossword-ink)!important;
  background:transparent!important;
}
.tcf-crossword .tcf-crossword__clue:hover{
  background:#f7fbfa!important;
  color:var(--tcf-crossword-ink)!important;
}
.tcf-crossword .tcf-crossword__clue.is-active,
.tcf-crossword .tcf-crossword__clue.is-active:hover{
  background:#fff!important;
  color:var(--tcf-crossword-ink)!important;
  box-shadow:inset 3px 0 0 var(--tcf-crossword-teal)!important;
}
.tcf-crossword .tcf-crossword__clue-tab{
  border-radius:0!important;
  box-shadow:none!important;
}
.tcf-crossword .tcf-crossword__readonly-badge{
  border-radius:4px;
  background:#f4fbfa;
  border:1px solid #d7efec;
  color:#315b58;
  padding:.35rem .55rem;
  line-height:1;
  box-shadow:none;
}
\n\n/* =====================================================================\n * v1.21.0-alpha.3B.2 — transient check feedback + puzzle submission.\n * ================================================================== */\n.tcf-crossword__submit[hidden]{display:none!important}\n.tcf-crossword__clue{position:relative}\n.tcf-crossword__clue.is-verified{padding-right:2rem}\n.tcf-crossword__clue.is-verified::after{content:"✓";position:absolute;right:.45rem;top:50%;transform:translateY(-50%);font-family:Oswald,sans-serif;font-size:.9rem;font-weight:700;color:var(--tcf-crossword-teal)}\n.tcf-crossword__cell--open.is-check-correct{animation:tcf-crossword-correct-pulse .62s ease both;background:#e7f8ef}\n.tcf-crossword__cell--open.is-check-wrong{animation:tcf-crossword-wrong-shake .5s ease both;background:#fff0f5}\n.tcf-crossword__grid.is-submit-wrong{animation:tcf-crossword-grid-shake .5s ease both}\n.tcf-crossword__cell--open.is-solved{background:#effaf7}\n.tcf-crossword__player-shell.is-solved .tcf-crossword__cell--open.is-active{outline-color:#5cae9d}\n.tcf-crossword__control:disabled{opacity:.55;cursor:default;filter:none}\n@keyframes tcf-crossword-correct-pulse{0%{transform:scale(1)}45%{transform:scale(.94)}70%{transform:scale(1.03)}100%{transform:scale(1)}}\n@keyframes tcf-crossword-wrong-shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-3px)}40%{transform:translateX(3px)}60%{transform:translateX(-2px)}80%{transform:translateX(2px)}}\n@keyframes tcf-crossword-grid-shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}\n@media(prefers-reduced-motion:reduce){.tcf-crossword__cell--open.is-check-correct,.tcf-crossword__cell--open.is-check-wrong,.tcf-crossword__grid.is-submit-wrong{animation:none}}\n

/* =====================================================================
 * v1.21.0-alpha.3D — Crossword completion results + reward/share polish.
 * ================================================================== */
.tcf-crossword__result[hidden]{display:none!important}
.tcf-crossword__result{
  margin:1.4rem auto 0;
  padding:clamp(1.25rem,3vw,2rem);
  max-width:980px;
  border-radius:18px;
  background:linear-gradient(145deg,#f4fbfa 0%,#fff 62%,#fff7fb 100%);
  box-shadow:0 12px 32px rgba(6,58,55,.08);
  text-align:center;
}
.tcf-crossword__result-kicker{margin:0 0 .35rem;font-family:Oswald,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#008f89}
.tcf-crossword__result-title{margin:0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.8rem,4vw,2.65rem);line-height:1.08;color:#171717}
.tcf-crossword__result-copy{margin:.55rem auto 1.25rem;max-width:580px;color:#555}
.tcf-crossword__result-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.tcf-crossword__result-metrics>div{padding:1rem .75rem;background:rgba(255,255,255,.82);border-radius:12px}
.tcf-crossword__result-metrics span{display:block;margin-bottom:.25rem;font-family:Oswald,sans-serif;font-size:.72rem;letter-spacing:.045em;text-transform:uppercase;color:#777}
.tcf-crossword__result-metrics strong{font-family:"Playfair Display",Georgia,serif;font-size:1.35rem;color:#171717}
.tcf-crossword__result-reward{display:inline-flex;align-items:center;gap:.35rem;margin:.35rem 0 .75rem;padding:.6rem .9rem;border-radius:999px;background:#fff4d9;color:#6a5000;font-size:.9rem}
.tcf-crossword__result-reward.is-awarded{background:#e9faf5;color:#126c5d}
.tcf-crossword__result-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.9rem;margin-top:.8rem}
.tcf-crossword__result-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;font-family:Oswald,sans-serif;font-weight:700;text-transform:uppercase;text-decoration:none;color:#008f89}
.tcf-crossword__result-link:hover{text-decoration:underline}
.tcf-crossword__share-status{min-height:1.2em;margin:.7rem 0 0;font-size:.84rem;color:#555}
@media(max-width:700px){.tcf-crossword__result-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.tcf-crossword__result-actions{align-items:stretch;flex-direction:column}.tcf-crossword__result-actions .tcf-crossword__control,.tcf-crossword__result-link{width:100%}}


/* =====================================================================
 * v1.21.0-alpha.3D.2 — mobile player isolation + responsive layout.
 * Prevent theme/Kadence button rules from stretching crossword cells,
 * clue tabs, clue rows, and controls on phones.
 * ================================================================== */
.tcf-crossword .tcf-crossword__grid > .tcf-crossword__cell{
  margin:0!important;
  max-width:none!important;
  min-width:0!important;
  min-height:0!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  line-height:1!important;
}
.tcf-crossword .tcf-crossword__cell--open{
  display:block!important;
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  margin:0!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  line-height:1!important;
  font-size:inherit!important;
  text-indent:0!important;
  overflow:hidden!important;
}
.tcf-crossword .tcf-crossword__cell--block{
  width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  min-width:0!important;
  min-height:0!important;
}
.tcf-crossword .tcf-crossword__clue-tab,
.tcf-crossword .tcf-crossword__clue{
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  height:auto!important;
  white-space:normal!important;
  writing-mode:horizontal-tb!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.tcf-crossword .tcf-crossword__clue > span{
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:normal!important;
}

@media(max-width:600px){
  .tcf-crossword__player-shell{
    width:calc(100% - 1rem);
    max-width:none;
    margin:1rem auto;
    padding:1rem;
    border-radius:14px;
    overflow:hidden;
  }
  .tcf-crossword__player-header{gap:.45rem;margin-bottom:.65rem}
  .tcf-crossword__player-title{font-size:clamp(1.9rem,10vw,2.6rem);line-height:1.02}
  .tcf-crossword__alpha-note{font-size:.9rem;line-height:1.5;margin-bottom:1rem}
  .tcf-crossword__workspace{display:block;width:100%}
  .tcf-crossword__grid-wrap{width:100%;max-width:none;margin:0 auto 1rem;overflow:hidden}
  .tcf-crossword__grid{
    width:100%;
    max-width:100%;
    aspect-ratio:1/1;
    gap:1px;
  }
  .tcf-crossword__cell-letter{font-size:clamp(9px,3.9vw,16px);padding-top:1px}
  .tcf-crossword__cell-number{font-size:clamp(5px,1.8vw,7px)}
  .tcf-crossword__clues{width:100%;max-width:none;margin:0}
  .tcf-crossword__clue-tabs{width:100%;margin:.35rem 0 .55rem}
  .tcf-crossword .tcf-crossword__clue-tab{
    display:block!important;
    width:100%!important;
    padding:.72rem .5rem!important;
    margin:0 0 -2px!important;
    border-radius:0!important;
    background:transparent!important;
    font-size:.9rem!important;
    line-height:1.2!important;
  }
  .tcf-crossword__clue-list{width:100%;margin:0;padding:0}
  .tcf-crossword__clue-list li{width:100%;margin:0;padding:0}
  .tcf-crossword .tcf-crossword__clue{
    display:grid!important;
    grid-template-columns:1.65rem minmax(0,1fr)!important;
    width:100%!important;
    padding:.7rem .35rem!important;
    margin:0!important;
    border-radius:0!important;
    font-size:.9rem!important;
    line-height:1.42!important;
    text-align:left!important;
  }
  .tcf-crossword__clue-number{font-size:.82rem;line-height:1.42}
  .tcf-crossword__controls{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
    gap:.55rem;
    margin-top:1rem;
    padding-top:1rem;
  }
  .tcf-crossword .tcf-crossword__control{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:44px!important;
    height:auto!important;
    margin:0!important;
    padding:.68rem .55rem!important;
    border-radius:4px!important;
    font-size:.8rem!important;
    line-height:1.15!important;
    white-space:normal!important;
  }
  .tcf-crossword__control--reveal{grid-column:1 / -1}
  .tcf-crossword__submit{grid-column:1 / -1}
  .tcf-crossword__status{grid-column:1 / -1}
  .tcf-crossword__result{margin-top:1rem;padding:1.1rem}
}

/* =====================================================================
 * v1.21.0-alpha.3D.2 — Safari/mobile structural isolation.
 * Grid cells and clue rows are non-button interactive elements now, which
 * removes mobile theme button styling at the source rather than fighting it.
 * ================================================================== */
.tcf-crossword .tcf-crossword__cell--open{
  -webkit-appearance:none!important;
  appearance:none!important;
  border-radius:0!important;
  background-clip:padding-box!important;
}
.tcf-crossword .tcf-crossword__clue{
  -webkit-appearance:none!important;
  appearance:none!important;
  border-radius:0!important;
  max-width:100%!important;
}
.tcf-crossword .tcf-crossword__clue:focus-visible{
  outline:2px solid var(--tcf-crossword-teal);
  outline-offset:2px;
}
@media(max-width:600px){
  .tcf-crossword__grid{
    display:grid!important;
    grid-template-columns:repeat(var(--tcf-crossword-cols),minmax(0,1fr))!important;
    grid-auto-rows:1fr!important;
    width:100%!important;
    aspect-ratio:1/1!important;
    overflow:hidden!important;
  }
  .tcf-crossword__grid > .tcf-crossword__cell{
    position:relative!important;
    display:block!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    border-radius:0!important;
    overflow:hidden!important;
  }
  .tcf-crossword__cell--open{background:#fff!important}
  .tcf-crossword__cell--open.is-word{background:#e8fbf9!important}
  .tcf-crossword__cell--open.is-active{background:#bdf3ef!important}
  .tcf-crossword__cell--open.is-correct,.tcf-crossword__cell--open.is-check-correct{background:#e7f8ef!important}
  .tcf-crossword__cell--open.is-wrong,.tcf-crossword__cell--open.is-check-wrong{background:#fff0f5!important}
  .tcf-crossword__clues{display:block!important;width:100%!important;min-width:0!important}
  .tcf-crossword__clue-group{display:block!important;width:100%!important;min-width:0!important}
  .tcf-crossword__clue-list,.tcf-crossword__clue-list li{display:block!important;width:100%!important;min-width:0!important}
  .tcf-crossword .tcf-crossword__clue{
    display:grid!important;
    grid-template-columns:1.75rem minmax(0,1fr)!important;
    width:100%!important;
    min-width:0!important;
    padding:.72rem .35rem!important;
    font-size:.9rem!important;
    line-height:1.45!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  .tcf-crossword .tcf-crossword__clue > span:last-child{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
}


/* =====================================================================
 * v1.21.0-alpha.3D.3 — Safari clue-row semantic/layout isolation.
 * Clue rows use listbox/option semantics (not role=button), preventing
 * site-wide mobile button typography from collapsing clue prose.
 * ================================================================== */
.tcf-crossword .tcf-crossword__clue-list[role="listbox"]{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important}
.tcf-crossword .tcf-crossword__clue-list[role="listbox"]>li{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important}
.tcf-crossword .tcf-crossword__clue[role="option"]{display:flex!important;align-items:flex-start!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;margin:0!important;padding:.62rem .35rem!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--tcf-crossword-ink)!important;font-family:inherit!important;font-size:15px!important;font-weight:400!important;font-style:normal!important;line-height:1.48!important;letter-spacing:normal!important;text-transform:none!important;text-align:left!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important}
.tcf-crossword .tcf-crossword__clue[role="option"] .tcf-crossword__clue-number{flex:0 0 1.7rem!important;width:1.7rem!important;min-width:1.7rem!important;max-width:1.7rem!important;margin:0!important;padding:0!important;font-family:Oswald,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:1.48!important;letter-spacing:normal!important;text-transform:none!important;white-space:nowrap!important;writing-mode:horizontal-tb!important}
.tcf-crossword .tcf-crossword__clue[role="option"] .tcf-crossword__clue-text{display:block!important;flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;font-family:inherit!important;font-size:inherit!important;font-weight:400!important;line-height:inherit!important;letter-spacing:normal!important;text-transform:none!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important}
@media(max-width:600px){.tcf-crossword .tcf-crossword__clue-group{width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important}.tcf-crossword .tcf-crossword__clue[role="option"]{font-size:14px!important;line-height:1.5!important;padding:.72rem .25rem!important}.tcf-crossword .tcf-crossword__clue[role="option"] .tcf-crossword__clue-number{flex-basis:1.65rem!important;width:1.65rem!important;min-width:1.65rem!important;max-width:1.65rem!important;font-size:13px!important;line-height:1.5!important}}


/* =====================================================================
 * v1.21.0-alpha.3D.4 — hard mobile clue-list reset.
 * The interactive clue is the LI itself. No widget role or nested wrapper.
 * On narrow screens reset list/theme typography before rebuilding the row.
 * ================================================================== */
.tcf-crossword .tcf-crossword__clue-list{
  list-style:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:1.7rem minmax(0,1fr)!important;
  align-items:start!important;
  column-gap:.45rem!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:.62rem .35rem!important;
  border:0!important;
  border-bottom:1px solid #e8e1da!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--tcf-crossword-ink)!important;
  font-family:inherit!important;
  font-size:15px!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:1.48!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  text-align:left!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  cursor:pointer!important;
}
.tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue:last-child{border-bottom:0!important}
.tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue .tcf-crossword__clue-number{
  box-sizing:border-box!important;
  display:block!important;
  width:1.7rem!important;
  min-width:1.7rem!important;
  max-width:1.7rem!important;
  margin:0!important;
  padding:0!important;
  font-family:Oswald,sans-serif!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.48!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  white-space:nowrap!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
}
.tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue .tcf-crossword__clue-text{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  font-family:inherit!important;
  font-size:inherit!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:inherit!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  text-align:left!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
}
@media(max-width:600px){
  .tcf-crossword .tcf-crossword__clue-group{
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  .tcf-crossword .tcf-crossword__clue-list{
    all:unset!important;
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  .tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue{
    all:unset!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:1.7rem minmax(0,1fr)!important;
    align-items:start!important;
    column-gap:.45rem!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:.75rem .25rem!important;
    border-bottom:1px solid #e8e1da!important;
    background:transparent!important;
    color:var(--tcf-crossword-ink)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:14px!important;
    font-weight:400!important;
    font-style:normal!important;
    line-height:1.5!important;
    letter-spacing:normal!important;
    text-transform:none!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    cursor:pointer!important;
  }
  .tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue:last-child{border-bottom:0!important}
  .tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue .tcf-crossword__clue-number{
    all:unset!important;
    box-sizing:border-box!important;
    display:block!important;
    width:1.7rem!important;
    min-width:1.7rem!important;
    max-width:1.7rem!important;
    font-family:Oswald,Arial,sans-serif!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1.5!important;
    white-space:nowrap!important;
    writing-mode:horizontal-tb!important;
  }
  .tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue .tcf-crossword__clue-text{
    all:unset!important;
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:14px!important;
    font-weight:400!important;
    line-height:1.5!important;
    letter-spacing:normal!important;
    text-transform:none!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
  }
  .tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue.is-active{
    background:#f7fbfa!important;
    box-shadow:inset 3px 0 0 var(--tcf-crossword-teal)!important;
  }
  .tcf-crossword .tcf-crossword__clue-list > .tcf-crossword__clue.is-verified{padding-right:2rem!important}
}

/* =====================================================================
 * v1.21.0-alpha.5B.2 — public player reliability + guest parity.
 * Keep grid geometry deterministic and controls identical for signed-in
 * and guest players. These selectors intentionally outrank theme rules.
 * ================================================================== */
.tcf-crossword .tcf-crossword__grid{
  grid-template-columns:repeat(var(--tcf-crossword-cols),minmax(0,1fr))!important;
  grid-template-rows:repeat(var(--tcf-crossword-rows),minmax(0,1fr))!important;
  grid-auto-rows:minmax(0,1fr)!important;
}
.tcf-crossword .tcf-crossword__cell--open.is-word{background:#e8fbf9!important}
.tcf-crossword .tcf-crossword__cell--open.is-active{
  background:#bdf3ef!important;
  outline:3px solid var(--tcf-crossword-teal)!important;
  outline-offset:-3px!important;
}
.tcf-crossword__fill-progress{
  flex-basis:100%;
  min-height:1.2em;
  text-align:center;
  font-size:.78rem;
  color:#6a6a6a;
}
.tcf-crossword__submit:disabled{
  opacity:.48;
  cursor:not-allowed;
}
.tcf-crossword__submit.is-ready{
  opacity:1;
  cursor:pointer;
}
@media(max-width:600px){
  .tcf-crossword__fill-progress{grid-column:1 / -1}
}

/* v1.21.0-alpha.5B.3 — deterministic cell geometry after guest-cache recovery. */
.tcf-crossword .tcf-crossword__grid{
  align-items:stretch!important;
  justify-items:stretch!important;
}
.tcf-crossword .tcf-crossword__grid > .tcf-crossword__cell{
  align-self:stretch!important;
  justify-self:stretch!important;
}
.tcf-crossword .tcf-crossword__cell-letter{
  font-size:clamp(11px,1.65vw,21px)!important;
  line-height:1!important;
}
