/*
Theme Name: Keyboard Biologist White Snapshot
Theme URI: https://keyboardbiologist.net/
Author: Snapshot reconstruction
Description: Static homepage preserved from the provided 2017 Wayback HTML. The original content is unchanged except for removing Internet Archive's toolbar/replay code. Includes a white-background override and CSS fallback. External archive asset URLs remain as in the user's source.
Version: 1.0.0
Requires at least: 5.0
Requires PHP: 7.4
Text Domain: keyboardbiologist-white
*/

/* The original Lifestyle Pro stylesheet is still linked inside snapshot-home.html.
   Modern browsers prioritize its unlayered rules over fallback layer rules below.
   These fallback layout rules apply where the archived stylesheet fails to load. */
@layer keyboardbiologist-offline-fallback {
  *, *::before, *::after { box-sizing: border-box; }
  html { -webkit-text-size-adjust: 100%; }
  body {
    margin: 0;
    color: #444;
    font: 16px/1.75 Georgia, 'Times New Roman', serif;
    overflow-wrap: break-word;
  }
  a { color: #26858d; text-decoration: none; }
  a:hover { text-decoration: underline; }
  img { max-width: 100%; height: auto; }
  .site-container { min-height: 100vh; }
  .nav-primary { background: #fff; border-bottom: 1px solid #e7e7e7; }
  .nav-primary > .wrap { max-width: 1140px; margin: auto; }
  .nav-primary ul { list-style: none; margin: 0; padding: 0; }
  .nav-primary .menu-primary { display: flex; flex-wrap: wrap; align-items: center; }
  .nav-primary .menu-primary > li > a { display: block; padding: 16px 21px; color: #555; font: bold 13px/1.5 Arial, sans-serif; text-transform: uppercase; }
  .nav-primary .menu-primary > li.right { margin-left: auto; }
  .search-form { display: flex; align-items: center; }
  .search-form input[type='search'] { max-width: 165px; padding: 9px 10px; border: 1px solid #ddd; background: #fff; }
  .search-form input[type='submit'] { padding: 10px 13px; border: 0; background: #777; color: #fff; cursor: pointer; }
  .site-header { padding: 55px 20px 35px; background: #fff; }
  .site-header .wrap { max-width: 1140px; margin: auto; }
  .title-area { text-align: center; }
  .site-title { font: 400 44px/1.25 Georgia, serif; margin: 0; }
  .site-title a { color: #333; }
  .site-inner { max-width: 1140px; margin: 0 auto; padding: 40px 18px 70px; }
  .content-sidebar-wrap { display: grid; grid-template-columns: minmax(0, 740px) minmax(230px, 310px); gap: 50px; align-items: start; }
  main.content { min-width: 0; }
  article.entry { background: #fff; margin: 0 0 45px; padding: 0 0 42px; border-bottom: 1px solid #e6e6e6; }
  .entry-title { font: 400 32px/1.3 Georgia, serif; margin: 0 0 10px; }
  .entry-title a { color: #333; }
  .entry-meta { color: #8a8a8a; font: 13px/1.8 Arial, sans-serif; }
  .entry-content { margin: 24px 0; }
  .entry-content p { margin: 0 0 22px; }
  .wp-caption { max-width: 100%; margin: 20px auto; text-align: center; }
  .wp-caption img { display: block; margin: 0 auto; }
  .wp-caption-text { margin: 7px 0 0 !important; color: #777; font: italic 13px/1.6 Georgia, serif; }
  .sidebar { font-family: Arial, sans-serif; font-size: 14px; line-height: 1.6; }
  .sidebar .widget { margin-bottom: 30px; background: #fff; }
  .sidebar .widget-title { border-bottom: 2px solid #ededed; font: 400 20px/1.5 Georgia, serif; padding: 0 0 10px; margin: 0 0 15px; color: #333; }
  .tagcloud a { display: inline-block; margin-right: 4px; }
  .sidebar select { width: 100%; max-width: 100%; padding: 9px; border: 1px solid #ddd; background: #fff; }
  .socialmedia-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
  .archive-pagination { margin: 24px 0; }
  .site-footer { background: #fff; border-top: 1px solid #eee; color: #888; padding: 24px 15px; text-align: center; }
  .site-footer .creds { font: 13px/1.5 Arial, sans-serif; }
  .screen-reader-text { position: absolute; clip: rect(1px,1px,1px,1px); overflow: hidden; height: 1px; width: 1px; }
  @media (max-width: 900px) {
    .content-sidebar-wrap { grid-template-columns: 1fr; gap: 30px; }
    .site-header { padding: 30px 15px; }
    .site-title { font-size: 34px; }
    .nav-primary .menu-primary > li.right { width: 100%; margin: 5px 10px 12px; }
    .site-inner { padding: 22px 15px; }
  }
}

/* Requested white version: override only the archived patterned background. */
html, body.custom-background, body.custom-background .site-container {
  background-color: #ffffff !important;
  background-image: none !important;
}
