/* The porch's worn table and ivory score plaques carry into navigation.
   Styling only: the existing responsive layouts, labels and actions stay intact. */
#homeScreen {
  max-width:780px;
  border:1px solid #c99d62;
  border-radius:18px;
  background:linear-gradient(#2d190edb,#2d190eea),url('./assets/porch/table.webp') center / cover #49301f;
  box-shadow:inset 0 0 0 4px #754c2d,inset 0 0 0 5px #d4ab6b66,0 10px 35px #100b09a6;
}
#homeScreen .home-brand { color:#fff0cf; }
#homeScreen .home-brand .eyebrow { color:#e9c18a; }
#homeScreen .home-brand h1 { color:#fff0cf;text-shadow:0 2px 1px #1b0e05; }
#homeScreen .home-brand h1 span { color:#e6bf80; }
#homeScreen .home-invitation,#homeScreen .home-status,#homeScreen .home-footnote { color:#f6e5c6; }
#homeScreen .home-choice.secondary {
  position:relative;
  background:linear-gradient(100deg,#f2dfb8,#e4c897);
  border:1px solid #fff0cd;
  border-radius:9px;
  color:#352315;
  box-shadow:inset 0 1px 0 #fff8df,inset 0 -3px 0 #b48c54,0 3px 0 #24150c,0 5px 8px #170d084d;
}
#homeScreen .home-choice.secondary strong { color:#352315; }
#homeScreen .home-choice.secondary span { color:#55412c; }
#homeScreen .home-choice.primary {
  background:linear-gradient(100deg,#ffe6a6,#e4b964);
  border:2px solid #fff0bd;
  border-radius:9px;
  color:#33200d;
  box-shadow:inset 0 1px 0 #fff7d7,inset 0 -3px 0 #ad7734,0 3px 0 #24150c,0 5px 8px #170d084d;
}
#homeScreen .home-choice.primary strong,#homeScreen .home-choice.primary span { color:#33200d; }
#homeScreen .home-tools .button,#homeScreen .home-music .button {
  background:linear-gradient(#795133,#52331f);
  border:1px solid #d5ae75;
  border-radius:8px;
  color:#fff0d1;
  box-shadow:inset 0 1px 0 #f2cd9655,0 2px 0 #20140b;
}
#homeScreen .home-choice:hover { background:#fff0cd;border-color:#fff9e7; }
#homeScreen .home-tools .button:hover,#homeScreen .home-music .button:hover { background:#8b603b;border-color:#fff0cd; }
#homeScreen .home-choice:active,#homeScreen .home-tools .button:active,#homeScreen .home-music .button:active { box-shadow:inset 0 2px 4px #25150944; }
#homeScreen button:focus-visible { outline:3px solid #fff3cb;outline-offset:3px; }
#homeScreen .home-new-confirm { background:#f1dfb9;color:#352315;border-color:#b99155;box-shadow:0 3px 12px #170d0877; }
#homeScreen .home-new-confirm h2 { color:#352315;font-family:Georgia,'Times New Roman',serif; }
#homeScreen .home-new-confirm .primary { background:#5a3b24;color:#fff1d1;border-color:#9a6b3f; }
#homeScreen .home-new-confirm .warn { background:#813e2e;color:#fff1d1;border-color:#b86d50; }
/* A cream menu card on a solid timber frame. The header remains sticky and
   opaque so controls cannot disappear into the scrolling settings. */
#settingsOverlay { background:#160e09b8; }
#menuDialog {
  background:linear-gradient(#f1dfba,#e7d0a7);
  color:#382819;
  border:2px solid #b58a52;
  border-radius:15px;
  box-shadow:inset 0 0 0 4px #fff0cd80,0 12px 40px #10090699;
  scrollbar-color:#8c633b #e6cfa7;
}
#menuDialog .menu-heading {
  background:linear-gradient(#593b25ed,#392417f5),url('./assets/porch/table.webp') center / cover;
  color:#fff0d1;
  border:1px solid #b68b53;
  border-radius:9px;
  padding:12px;
  top:0;
  box-shadow:0 3px 6px #47280d33;
}
#menuDialog .menu-heading h2 { font-family:Georgia,'Times New Roman',serif;color:#fff0d1; }
#menuDialog .menu-heading .eyebrow { color:#e7bf83; }
#menuDialog .button,#menuDialog .mode-action,#menuDialog .setting-row select {
  background:linear-gradient(#795133,#53351f);
  color:#fff3da;
  border:1px solid #956835;
  box-shadow:inset 0 1px 0 #d9ae7455,0 2px 0 #c1a16d;
  border-radius:7px;
}
#menuDialog .button.primary,#menuDialog .button.active,#menuDialog .button[aria-pressed="true"] { background:#385347;color:#fff6df;border-color:#5e7961;box-shadow:inset 0 1px 0 #a7b59155,0 2px 0 #b59a69; }
#menuDialog .button.warn { background:#8c4430;color:#fff6df;border-color:#a45d40; }
#menuDialog .button:hover,#menuDialog .mode-action:hover { background:#8c6039; }
#menuDialog .button:disabled { opacity:.58; }
#menuDialog .setting-row,#menuDialog .setting-help,#menuDialog .game-command-status,#menuDialog .scoring-gate-help,#menuDialog .rules-grid p,#menuDialog .checklist,#menuDialog .coach-message { color:#513b26; }
#menuDialog .setting-row,#menuDialog .music-settings,#menuDialog .menu-details { border-color:#a67d494d; }
#menuDialog output,#menuDialog #gameCommandQuestion,#menuDialog #campaignSummary,#menuDialog .intelligence-table td:last-child { color:#513b26; }
#menuDialog h3,#menuDialog .menu-details summary { color:#3d2918; }
#menuDialog .menu-details summary { font-weight:750; }
#menuDialog a { color:#245b4c;text-decoration:underline; }
#menuDialog .coach-panel,#menuDialog .campaign-card,#menuDialog .game-command-confirm { background:#f9ebcf;color:#382819;border-color:#b28a56; }
#menuDialog .coach-panel h2,#menuDialog .campaign-card h2,#menuDialog .coach-panel .eyebrow,#menuDialog .campaign-card .eyebrow { color:#4c3320; }
#menuDialog .rules-grid section,#menuDialog .coach-message { background:#f9ebcf;border-color:#ba956366; }
#menuDialog .entry-examples caption,#menuDialog .entry-examples th { color:#513b26; }
#menuDialog .entry-examples { background:#faedcf;color:#3d2918;border-color:#ba9563; }
#menuDialog .entry-examples th,#menuDialog .entry-examples td { border-color:#ba956366; }
#menuDialog input { accent-color:#40634f; }
#menuDialog :is(button,summary,select,input,a):focus-visible { outline:3px solid #2e6657;outline-offset:3px; }
#menuDialog .menu-heading button:focus-visible { outline-color:#fff0cd; }
@media (max-width:567px), (max-height:560px) {
  #homeScreen { border-radius:8px; }
  #menuDialog .menu-heading { padding:9px; }
}
@media (forced-colors:active) {
  #homeScreen,#menuDialog,#menuDialog .menu-heading,#homeScreen .home-new-confirm { background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none; }
  #homeScreen .home-brand h1,#homeScreen .home-brand h1 span,#homeScreen .home-brand .eyebrow,#homeScreen .home-invitation,#homeScreen .home-status,#homeScreen .home-footnote,#homeScreen .home-new-confirm h2,
  #menuDialog .setting-row,#menuDialog .setting-help,#menuDialog .menu-details summary,#menuDialog h2,#menuDialog h3,#menuDialog .eyebrow,#menuDialog .game-command-status,#menuDialog .rules-grid p { color:CanvasText;text-shadow:none; }
  #homeScreen .home-choice,#homeScreen .home-choice.secondary,#homeScreen .home-choice.primary,#homeScreen .home-tools .button,#homeScreen .home-music .button,#menuDialog .button,#menuDialog .mode-action,#menuDialog .setting-row select { background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none; }
  #homeScreen .home-choice.secondary strong,#homeScreen .home-choice.secondary span,#homeScreen .home-choice.primary strong,#homeScreen .home-choice.primary span { color:ButtonText; }
}
/* Returning Home adds a status line. Reserve its room without hiding it. */
@media (min-height:721px) {
  #homeScreen { gap:8px; }
}
@media (max-width:567px) and (max-height:560px) {
  #homeScreen { gap:6px;padding:8px; }
  #homeScreen .home-choice { min-height:44px;padding:6px 10px; }
  #homeScreen .home-choice strong { font-size:18px; }
  #homeScreen .home-primary .home-choice span { display:none; }
  #homeScreen .home-status { font-size:14px;line-height:1.25; }
}
