/*
Theme Name: Family Meal Planner Minimal
Theme URI: https://example.com/
Author: ChatGPT
Description: A minimal front-end theme for displaying the Family Meal Planner shortcode with no site chrome.
Version: 0.1.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fmp-minimal-theme
*/

:root {
  --fmp-bg: #f7f2ea;
  --fmp-surface: #fffaf2;
  --fmp-surface-strong: #ffffff;
  --fmp-text: #24302f;
  --fmp-muted: #6f7d78;
  --fmp-border: #e2d7c8;
  --fmp-primary: #2f6f5e;
  --fmp-primary-dark: #235548;
  --fmp-accent: #d9853b;
  --fmp-shadow: 0 18px 50px rgba(36, 48, 47, 0.1);
  --fmp-radius: 22px;
  --fmp-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  background: var(--fmp-bg);
}

body {
  min-height: 100%;
  margin: 0;
  color: var(--fmp-text);
  background:
    radial-gradient(circle at top left, rgba(217, 133, 59, 0.16), transparent 34rem),
    radial-gradient(circle at bottom right, rgba(47, 111, 94, 0.12), transparent 34rem),
    var(--fmp-bg);
  font-family: var(--fmp-font);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.admin-bar .fmp-theme-shell {
  min-height: calc(100vh - 32px);
}

.fmp-theme-shell {
  width: min(1180px, calc(100% - 32px));
  min-height: 100vh;
  margin: 0 auto;
  padding: clamp(20px, 4vw, 56px) 0;
}

.fmp-theme-card {
  overflow: hidden;
  border: 1px solid rgba(226, 215, 200, 0.85);
  border-radius: var(--fmp-radius);
  background: rgba(255, 250, 242, 0.78);
  box-shadow: var(--fmp-shadow);
  backdrop-filter: blur(16px);
}

.fmp-theme-content {
  padding: clamp(18px, 3.4vw, 40px);
}

.fmp-theme-shortcode-missing {
  max-width: 680px;
  margin: 0 auto;
  padding: 32px;
  border: 1px solid var(--fmp-border);
  border-radius: var(--fmp-radius);
  background: var(--fmp-surface-strong);
  box-shadow: var(--fmp-shadow);
}

.fmp-theme-shortcode-missing h1 {
  margin: 0 0 12px;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  line-height: 1.15;
}

.fmp-theme-shortcode-missing p {
  margin: 0 0 14px;
  color: var(--fmp-muted);
}

.fmp-theme-shortcode-missing code {
  display: inline-block;
  padding: 0.18em 0.42em;
  border-radius: 8px;
  background: #efe5d6;
  color: var(--fmp-primary-dark);
}

a {
  color: var(--fmp-primary);
}

a:hover,
a:focus {
  color: var(--fmp-primary-dark);
}

button,
input,
select,
textarea {
  font: inherit;
}

::selection {
  background: rgba(217, 133, 59, 0.28);
}

@media (max-width: 782px) {
  body.admin-bar .fmp-theme-shell {
    min-height: calc(100vh - 46px);
  }

  .fmp-theme-shell {
    width: min(100% - 20px, 1180px);
    padding: 10px 0;
  }

  .fmp-theme-card {
    border-radius: 18px;
  }
}
