/* WildWhat 8 — compact, side-by-side reference board.
   No fixed-height page or scroll lock; larger text can expand naturally. */
.app-shell{max-width:1030px;padding:0 32px}
.site-header{height:72px;gap:12px}
.brand{font-size:36px;gap:10px;letter-spacing:-1.2px;flex-shrink:0}
.brand .brand-mark{width:38px;height:44px;object-fit:contain}
.header-right{gap:10px}.menu-panel{top:62px}
.collection-note{margin:8px 0 12px;text-align:center;color:#b5cbb9;font-size:11px;letter-spacing:.6px}
.session-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 auto 13px;max-width:900px;min-height:44px}
.session-toolbar .mode-switch{margin:0;flex-shrink:0;padding:3px;gap:3px}
.mode-switch button{font-size:12px;min-height:36px;padding:6px 24px}
.session-toolbar .daily-status{flex:1;max-width:460px;margin:0;padding:0 0 0 10px;background:transparent;border:0;border-radius:0;gap:16px;display:flex;align-items:center;justify-content:flex-end}
.daily-status>div:first-child{text-align:right}
.daily-status>div>strong{font-size:12px}.daily-status>div>small{font-size:10px}
.daily-countdown-block{min-width:95px;text-align:right;flex-shrink:0;border-left:1px solid #335440;padding-left:14px}
.daily-countdown-block span{font-size:9px}.daily-countdown-block strong{font-size:15px}
.animal-hero{max-width:900px;margin:0 auto 16px;padding:14px 18px;display:flex;align-items:center;gap:18px;text-align:left;border:1px solid #476a4d55;border-radius:18px;background:linear-gradient(110deg,#193d278c,#10251a88)}
.animal-hero .portrait-shell{width:82px;height:82px;min-width:82px;margin:0}
.portrait-spark{font-size:14px;right:-2px;top:1px}.hero-art{border-width:1px;box-shadow:0 0 22px #68c28011}
.hero-copy{min-width:0;flex:1}.hero-copy .hero-overline{font-size:9px;letter-spacing:1.6px;margin:0 0 5px;color:#a8c7b0}
.animal-hero h1{font-size:32px;letter-spacing:-.7px;line-height:1.1;margin:0 0 7px;overflow-wrap:anywhere}
.hero-copy .habitat-tags{justify-content:flex-start;font-size:11px;line-height:1.4;gap:10px;flex-wrap:wrap}
.hero-copy .latin,.hero-copy .familiar-badge,.hero-copy .art-type{display:none}
.animal-info-button{font:bold 17px var(--serif);width:36px;height:40px;flex-shrink:0;background:transparent;border:1px solid #46614c;border-radius:50%;color:#c7dccd;align-self:center}
.animal-info-portrait{height:170px;width:170px;margin:5px auto 16px;overflow:hidden;border-radius:50%;border:1px solid #678f73;display:grid;place-items:center}
.animal-info-portrait img{height:100%;width:100%;object-fit:cover}.animal-info-portrait svg{height:100%;min-width:310px;transform:translateX(-49px)}
.play-section{max-width:900px}
.board-heading{margin:0 0 12px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;min-height:40px}
.round-summary,.board-actions{display:flex;align-items:center;gap:16px}
.round-summary{flex-shrink:0}.board-heading h2{font-size:14px;line-height:1.4}
.round-pips{gap:7px}.round-pips span{height:9px;width:9px}
.discovery-pill{font-size:11px;color:#bdd7c6;white-space:nowrap}.discovery-pill .icon{display:none}
.scope-toggle{display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid #395a45;border-radius:9px;background:#142b1f;color:#c0d6c7;font-size:11px;line-height:1.3;min-height:36px;padding:8px 11px}
.scope-chevron{font-size:17px;line-height:12px}.scope-toggle[aria-expanded=true] .scope-chevron{transform:rotate(180deg)}
.category-grid{gap:14px}
.category-card{display:flex;flex-direction:column;text-align:left;padding:17px;border:1px solid #3c5a465e;border-radius:16px;background:linear-gradient(150deg,#142d20e8,#0b1e14ed);box-shadow:0 6px 22px #0000000a}
.category-top{flex-direction:row;gap:12px;min-height:48px}
.category-icon{height:46px;width:46px;min-width:46px;border-width:2px;box-shadow:0 0 15px color-mix(in srgb,var(--accent) 9%,transparent)}
.category-icon>.icon{width:25px;height:25px}
.category-top h3{font-size:17px;line-height:1.25;white-space:normal}
.solved .category-icon:after{height:19px;width:19px;line-height:15px;font-size:10px;border-width:2px}
.category-context{margin-top:10px;flex:1}
.category-question{max-width:none;min-height:0;margin:0 0 7px;font-size:12px;line-height:1.45;color:#d2ded4;font-weight:550}
.scope-label{max-width:none;min-height:0;overflow-wrap:anywhere;margin:0 0 2px;color:#b1c8b7;font-size:11px;line-height:1.5}
.card-history{margin-top:14px}
.card-history-label{margin:0 0 7px;font-size:9px;line-height:1.4;text-transform:uppercase;letter-spacing:.9px;color:#9cbaa7}
.guess-stack{display:grid;gap:5px;list-style:none;margin:0;padding:0}
.guess-tile{--clue:var(--green);min-height:44px;padding:6px 9px 5px;border:1px solid color-mix(in srgb,var(--clue) 13%,#2a4033);border-left:2px solid color-mix(in srgb,var(--clue) 65%,transparent);border-radius:7px;background:color-mix(in srgb,var(--clue) 5%,#0b1e14);color:var(--clue)}
.guess-tile[data-level=far]{--clue:var(--red)}.guess-tile[data-level=warm]{--clue:var(--orange)}.guess-tile[data-level=close]{--clue:var(--blue)}.guess-tile[data-level=hit]{--clue:var(--green)}
.guess-line{display:flex;align-items:center;gap:7px;line-height:1.15}
.guess-index{font-size:10px;min-width:10px;color:#a6bbb0;font-variant-numeric:tabular-nums}
.guess-line strong{display:block;flex:1;font-size:16px;font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;min-width:0;text-align:right;letter-spacing:.05px}
.guess-direction{font-size:17px;min-width:15px;text-align:right;font-weight:650}
.guess-closeness{display:block;text-align:right;font-size:10px;line-height:1.4;margin-top:2px}
.guess-line strong.long-number{font-size:12px;letter-spacing:-.3px}
.guess-tile.newest{border-color:color-mix(in srgb,var(--clue) 38%,#1c3224);background:color-mix(in srgb,var(--clue) 9%,#0b1e14)}
.guess-tile.carried{opacity:.62}.guess-tile.carried strong{font-size:14px}
.empty-history{font-size:12px;min-height:39px;display:flex;align-items:center;justify-content:center;border:1px dashed #3a514242;border-radius:7px;color:#94ac9d}
.estimate-area{margin-top:13px;min-height:71px;display:flex;flex-direction:column;justify-content:flex-end}
.estimate-label{display:flex;justify-content:space-between;align-items:end;color:#c7dacd;font-size:11px;gap:4px;min-height:20px;line-height:1.35;padding-bottom:5px}
.estimate-label span:last-child{color:#a8c2b1;font-size:10px;text-align:right}
.number-entry{min-height:46px;border-color:color-mix(in srgb,var(--accent) 40%,#385040);border-radius:9px}
.number-entry input{font-size:23px;height:46px;border-radius:9px;padding:9px 7px;text-align:center;letter-spacing:0}
.number-entry input::placeholder{color:#a2b9ab;font-size:19px}
.locked-value{min-height:70px;margin:0;padding:9px 6px;text-align:center}.locked-value strong{font-size:19px;line-height:1.2}.locked-value small{font-size:10px;line-height:1.4}
.category-card.solved{border-color:#49725277}.entry-help.error{font-size:11px;margin:7px 0 0;line-height:1.45}
.submission-bar{margin-top:14px;display:flex;justify-content:space-between;gap:20px;align-items:center}
.submission-copy{text-align:left;margin:0}.submission-copy strong{font-size:12px}.submission-copy>span{display:block;font-size:10px;color:#9fbcaa;margin-top:4px;line-height:1.5}
.submit-button{width:265px;flex-shrink:0;min-height:48px;font-size:16px}
.under-game{margin-top:12px;gap:10px;padding-top:0;font-size:10px}.under-game .text-button{font-size:11px;min-height:36px}
.inline-legend{margin:8px 0 0;gap:14px;justify-content:center}.inline-legend span{font-size:10px}
.context-details{margin-top:9px}.site-footer{padding:28px 0 20px}.footer-motto{font-size:10px;letter-spacing:2px}.footer-small{font-size:10px;margin-bottom:10px}
.history-unit{display:block;font-size:9px;color:#a5bdae;font-weight:400}.history-key{font-size:12px;text-align:center}.modal .history-table td{padding:10px 5px}.modal .history-cell strong{font-size:13px}.modal .history-cell small{font-size:10px}
/* Once guessing has begun, leave most of the screen for reference and entry. */
.is-guessing .site-header{height:64px}.is-guessing .brand{font-size:32px}.is-guessing .brand .brand-mark{height:36px;width:32px}
.is-guessing .collection-note{margin:6px 0 10px}
.is-guessing .session-toolbar{margin-bottom:9px}
.is-guessing .animal-hero{padding:10px 15px;margin-bottom:10px;gap:13px}
.is-guessing .portrait-shell{width:52px;height:52px;min-width:52px}.is-guessing .animal-hero h1{font-size:27px;margin-bottom:4px}
.is-guessing .hero-overline{font-size:8px;margin-bottom:3px}.is-guessing .habitat-tags{font-size:10px}
.is-guessing .card-history{margin-top:12px}.is-guessing .board-heading{margin-bottom:9px}
.practice-banner{max-width:900px;margin:0 auto 12px;min-height:0;gap:10px;padding:10px 14px}.practice-banner>div>strong{font-size:12px}.practice-banner #practice-progress{font-size:10px}.practice-controls .secondary{min-height:36px;padding:7px 11px}.practice-controls .text-button{min-height:36px}
@media(max-width:650px){
  .app-shell{padding:0 14px;max-width:520px}.site-header{height:64px}.brand{font-size:30px;gap:7px;letter-spacing:-1px}.brand .brand-mark{width:31px;height:37px}.header-right{gap:4px}.edition{font-size:9px;letter-spacing:.5px}.icon-button,.quick-help,.menu-button{width:40px;height:44px;min-width:40px}.menu-panel{top:57px}
  .collection-note{font-size:10px;line-height:1.5;margin:6px 0 10px;letter-spacing:.3px}
  .session-toolbar{margin-bottom:11px;gap:8px;min-height:40px}.mode-switch button{font-size:11px;padding:6px 17px;min-height:32px}
  .session-toolbar .daily-status{padding:0;gap:5px;max-width:none}.daily-status>div:first-child{display:none}.daily-countdown-block{min-width:82px;border:0;padding:0}.daily-countdown-block span{font-size:8px;letter-spacing:.3px}.daily-countdown-block strong{font-size:14px}
  .animal-hero{padding:10px 12px;gap:12px;margin-bottom:12px;border-radius:13px}.animal-hero .portrait-shell{width:62px;height:62px;min-width:62px}
  .animal-hero h1{font-size:25px;letter-spacing:-.5px;margin-bottom:5px}.hero-copy .hero-overline{font-size:8px;letter-spacing:1px;margin-bottom:4px}.hero-copy .habitat-tags{font-size:10px;gap:4px}.hero-copy #habitat-tag{display:none}.hero-copy .habitat-tags .icon{height:11px;width:11px}.animal-info-button{width:27px;height:36px;font-size:16px}
  .board-heading{min-height:40px;margin-bottom:8px;gap:6px}.round-summary{gap:6px}.board-heading h2{font-size:12px}.round-pips{display:none}.board-actions{gap:8px}.discovery-pill{font-size:10px}.scope-toggle{font-size:10px;padding:7px 8px;min-height:36px;gap:4px}
  .category-grid{gap:7px}.category-card{padding:10px 7px 11px;border-radius:12px}.category-top{flex-direction:column;gap:6px;min-height:57px}.category-icon{height:33px;width:33px;min-width:33px;border-width:1.5px}.category-icon>.icon{height:20px;width:20px}.category-top h3{font-size:12px;white-space:nowrap;line-height:1.3;font-weight:600;letter-spacing:-.2px}.solved .category-icon:after{height:15px;width:15px;line-height:12px;border-width:1.5px;font-size:8px;right:-3px;bottom:-1px}
  .category-context{margin-top:9px}.category-question{font-size:11px;line-height:1.4;margin-bottom:6px;min-height:0}.scope-label{font-size:10px;line-height:1.45;min-height:0;margin-bottom:1px}
  .card-history{margin-top:10px}.card-history-label{font-size:8px;letter-spacing:.6px;line-height:1.35;margin-bottom:5px}.guess-stack{gap:4px}.guess-tile{min-height:40px;padding:5px 5px 4px}.guess-line{gap:3px}.guess-index{min-width:7px;font-size:8px}.guess-line strong{font-size:14px;letter-spacing:-.1px}.guess-direction{font-size:14px;min-width:10px}.guess-closeness{font-size:9px;line-height:1.4;margin-top:2px}.guess-line strong.long-number{font-size:10px;letter-spacing:-.3px}.empty-history{font-size:10px;min-height:33px}
  .estimate-area{margin-top:10px;min-height:74px}.estimate-label{display:block;min-height:28px;font-size:10px;padding-bottom:4px;line-height:1.3}.estimate-label span{display:block}.estimate-label span:last-child{font-size:9px;text-align:left}.number-entry,.number-entry input{min-height:44px;height:44px}.number-entry input{font-size:18px;padding:9px 2px}.number-entry input::placeholder{font-size:17px}.locked-value{min-height:73px;padding:7px 3px;gap:5px}.locked-value strong{font-size:14px;line-height:1.3}.locked-value small{font-size:9px;line-height:1.4}
  .submission-bar{display:flex;flex-direction:column;gap:7px;margin-top:10px}.submission-copy{width:100%;margin:0;text-align:center;line-height:1.4}.submission-copy strong{font-size:10px}.submission-copy>span{display:none}.submit-button{width:100%;min-height:46px;font-size:15px;padding:10px 16px}
  .under-game{margin-top:8px;gap:5px;font-size:9px}.under-game .text-button{font-size:10px;min-height:36px}.inline-legend{gap:8px;margin:4px 0 0;flex-wrap:wrap}.inline-legend span{font-size:9px}.context-details summary{font-size:11px;min-height:40px}
  .site-footer{padding-top:23px}.footer-motto{font-size:9px}.footer-small{font-size:9px;letter-spacing:.4px}.footer-links{gap:16px}.build-label{font-size:8px}
  .is-guessing .site-header{height:60px}.is-guessing .brand{font-size:29px}.is-guessing .brand .brand-mark{height:34px;width:29px}.is-guessing .collection-note{margin:4px 0 7px}
  .is-guessing .session-toolbar{margin-bottom:8px}.is-guessing .animal-hero{padding:8px 10px;gap:10px;margin-bottom:8px}.is-guessing .animal-hero .portrait-shell{height:44px;width:44px;min-width:44px}.is-guessing .animal-hero h1{font-size:22px;line-height:1.1;margin:0 0 3px}.is-guessing .hero-copy .hero-overline{font-size:7px;margin-bottom:3px;letter-spacing:.8px}.is-guessing .hero-copy .habitat-tags{font-size:9px}.is-guessing .card-history{margin-top:8px}.is-guessing .board-heading{margin-bottom:7px}
  .practice-banner{flex-direction:row;align-items:center;flex-wrap:nowrap;padding:8px 9px;gap:8px;margin-bottom:9px}.practice-banner>div>strong{font-size:10px}.practice-banner #practice-progress{font-size:9px}.practice-controls{gap:8px;width:auto;justify-content:flex-end;flex-wrap:wrap}.practice-controls .secondary{font-size:10px;min-height:35px;padding:6px 8px}.practice-controls .text-button{font-size:10px;min-height:32px;padding:4px 0}
}
@media(max-width:360px){
  .app-shell{padding:0 11px}.brand,.is-guessing .brand{font-size:28px}.brand .brand-mark{width:28px}.header-right .edition{display:none}.category-grid{gap:5px}.category-card{padding:9px 5px 10px}.category-top h3{font-size:11px}.guess-tile{padding:5px 4px 4px}.guess-line strong{font-size:13px}.guess-line strong.long-number{font-size:9px}.guess-closeness{font-size:8.5px}.animal-hero h1{font-size:23px}.discovery-pill{font-size:9px}.board-actions{gap:6px}.scope-toggle{padding:7px 6px}
}

/* Keep four previous rows readable without pushing entry off a laptop screen. */
.guess-tile{padding:5px 9px 4px;min-height:44px}.guess-line{line-height:1.05}.guess-closeness{line-height:1.3;margin-top:1px}
@media(max-width:650px){.guess-tile{padding:4px 5px 3px;min-height:40px}.guess-closeness{line-height:1.3;margin-top:1px}}

/* Local-midnight edition: keep long category labels inside compact columns. */
.category-top h3{white-space:normal;overflow-wrap:normal;max-width:100%}
.photo-placeholder{min-height:100%;text-align:center}
@media(max-width:650px){.category-top h3{min-height:31px;display:flex;align-items:center;justify-content:center;font-size:11px}.category-top{min-height:71px}.daily-countdown-block span{letter-spacing:0}}

/* Logo asset repair — square transparent vector, never stretched or filtered.
   No changes to the game board, animal content, or local-midnight logic. */
.site-header .brand .brand-mark{
  display:block; flex:none; width:44px; height:44px; min-width:44px;
  aspect-ratio:1/1; object-fit:contain; object-position:center;
  filter:none; transform:none;
}
@media(max-width:650px){
  .site-header .brand .brand-mark{width:36px;height:36px;min-width:36px}
}
@media(max-width:360px){
  .site-header .brand .brand-mark{width:32px;height:32px;min-width:32px}
}
