/*
Theme Name: Book My Meal
Theme URI: https://example.com/bookmymeal
Author: Book My Meal
Author URI: https://example.com
Description: A modern restaurant SaaS marketing WordPress theme (Book My Meal / RestroFlow style). Includes a beautiful landing home page, blog, single post, and author templates with Tailwind, GSAP and Anime.js animations.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bookmymeal
Tags: restaurant, blog, business, one-column, two-columns, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* WordPress required alignments (Tailwind handles most styling) */
.alignleft   { float: left;  margin-right: 1.25rem; margin-bottom: 1rem; }
.alignright  { float: right; margin-left: 1.25rem;  margin-bottom: 1rem; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignwide, .alignfull { max-width: 100%; }

/* Screen reader */
.screen-reader-text {
  border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%);
  clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden;
  padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;
}
.screen-reader-text:focus {
  background: #fff; clip: auto; -webkit-clip-path: none; clip-path: none;
  color: #1A1916; display: block; font-size: 14px; height: auto; left: 5px;
  line-height: normal; padding: 15px 23px 14px; text-decoration: none;
  top: 5px; width: auto; z-index: 100000;
}

/* Sticky footer helper */
.site-wrapper { display: flex; flex-direction: column; min-height: 100vh; }
.site-content-flex { flex: 1 0 auto; }

/* Ensure WP embed responsiveness */
.wp-block-embed iframe, .wp-block-embed video, .wp-block-embed img { max-width: 100%; }

/* WYSIWYG content styling for blog posts */
.entry-content {
  color: #3D3B37;
  font-size: 1.05rem;
  line-height: 1.75;
}
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4,
.entry-content h5, .entry-content h6 {
  font-family: 'Bricolage Grotesque', sans-serif;
  color: #1A1916;
  font-weight: 800;
  line-height: 1.2;
  margin-top: 2rem;
  margin-bottom: 1rem;
}
.entry-content h1 { font-size: 2.5rem; }
.entry-content h2 { font-size: 2rem; }
.entry-content h3 { font-size: 1.5rem; }
.entry-content h4 { font-size: 1.25rem; }
.entry-content p  { margin-bottom: 1.25rem; }
.entry-content a  { color: #FF6B35; text-decoration: underline; text-underline-offset: 3px; }
.entry-content a:hover { color: #E85A25; }
.entry-content ul, .entry-content ol { margin: 0 0 1.25rem 1.5rem; }
.entry-content li { margin-bottom: .35rem; }
.entry-content blockquote {
  border-left: 4px solid #FF6B35;
  background: #FFF9F0;
  padding: 1rem 1.25rem;
  margin: 1.5rem 0;
  border-radius: .5rem;
  color: #2A2825;
  font-style: italic;
}
.entry-content code {
  background: #FFF3E0; padding: .1rem .35rem; border-radius: .3rem;
  font-size: .9em; color: #C44A1A;
}
.entry-content pre {
  background: #1A1916; color: #FFF9F0; padding: 1rem 1.25rem;
  border-radius: .75rem; overflow-x: auto; margin-bottom: 1.25rem;
}
.entry-content pre code { background: transparent; color: inherit; padding: 0; }
.entry-content img { max-width: 100%; height: auto; border-radius: 1rem; margin: 1rem 0; }
.entry-content table { width: 100%; border-collapse: collapse; margin-bottom: 1.25rem; }
.entry-content table th, .entry-content table td { border: 1px solid #E8E7E5; padding: .5rem .75rem; text-align: left; }
.entry-content table th { background: #FFF3E0; }

/* Comment form */
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
  width: 100%;
  border: 1px solid #E8E7E5;
  background: #fff;
  border-radius: .75rem;
  padding: .75rem 1rem;
  font-family: 'DM Sans', sans-serif;
  font-size: .95rem;
  color: #1A1916;
  transition: border-color .25s ease;
}
.comment-form input:focus, .comment-form textarea:focus {
  outline: none; border-color: #FF6B35;
}
.comment-form label { display: block; margin-bottom: .35rem; font-weight: 600; color: #2A2825; font-size: .9rem; }
.comment-form p { margin-bottom: 1rem; }

/* Pagination */
.page-numbers {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 40px; height: 40px; padding: 0 .75rem;
  border-radius: 999px; background: #fff; border: 1px solid #E8E7E5;
  color: #3D3B37; font-weight: 600; font-size: .9rem; margin: 0 .15rem;
  transition: all .25s ease;
}
.page-numbers.current, .page-numbers:hover {
  background: linear-gradient(135deg, #FF6B35, #FF4D6A);
  color: #fff; border-color: transparent;
}

/* Blog and archive polish */
.blog-hero-title { opacity: 1; }
.archive-description p { margin-bottom: 0; }
.bmm-sidebar-list li,
.widget ul li {
  color: #5A5752;
  font-size: .95rem;
}
.bmm-sidebar-list a,
.widget a {
  color: #3D3B37;
  text-decoration: none;
  transition: color .25s ease;
}
.bmm-sidebar-list a:hover,
.widget a:hover {
  color: #FF6B35;
}
.widget ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.widget li + li {
  margin-top: .75rem;
}
.tagcloud a,
.entry-content + .post-tags a,
.entry-footer a[rel="tag"],
.single-post .entry-content ~ div a[rel="tag"] {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: #FFF3E0;
  color: #C44A1A;
  padding: .4rem .75rem;
  font-size: .8rem !important;
  font-weight: 700;
  text-decoration: none;
  margin: .15rem;
}
.comment-reply-link,
.logged-in-as a {
  color: #FF6B35;
  font-weight: 700;
}
.nav-links {
  display: flex;
  justify-content: center;
  gap: .5rem;
  flex-wrap: wrap;
}
.comments-area .nav-links {
  justify-content: space-between;
  margin-top: 1.5rem;
}
