/*
Theme Name: MSK Pastel
Theme URI: https://example.com/msk-pastel
Author: ChatGPT for Milan
Author URI: https://example.com
Description: Pastelová šablona pro mateřskou školu se sekcemi O nás, Fotogalerie, Dokumenty, Kontakt.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: msk-pastel
License: GPL-2.0-or-later
*/

/* Design tokens */
:root {
  --color-bg: #fffdf8;
  --color-text: #333;
  --color-muted: #6b7280;
  --color-accent: #8ecae6;
  --color-accent-2: #ffd6a5;
  --color-accent-3: #bde0fe;
  --color-accent-4: #caffbf;
  --color-accent-5: #ffadad;
  --radius: 14px;
  --container: 1100px;
  --shadow: 0 6px 20px rgba(0,0,0,.06);
}

html { box-sizing: border-box; scroll-behavior: smooth; }
*, *:before, *:after { box-sizing: inherit; }

body {
  margin: 0;
  font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  background: var(--color-bg);
  color: var(--color-text);
  line-height: 1.6;
}

a { color: #1f6feb; text-decoration: none; }
a:hover { text-decoration: underline; }

.container { width: min(100% - 2rem, var(--container)); margin-inline: auto; }

.header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.85); backdrop-filter: blur(8px); border-bottom: 1px solid #eee; }
.header .inner { display:flex; align-items:center; gap:1rem; justify-content:space-between; padding:.8rem 0; }
.brand { display:flex; align-items:center; gap:.75rem; font-weight:800; font-size:1.15rem; }
.brand .logo { width:40px; height:40px; border-radius:10px; background:linear-gradient(135deg,var(--color-accent),var(--color-accent-3)); box-shadow:var(--shadow); }

.nav ul { display:flex; gap:1rem; list-style:none; margin:0; padding:0; }
.nav a { font-weight:600; padding:.5rem .75rem; border-radius:10px; }
.nav a:hover, .nav .current-menu-item > a { background: var(--color-accent-3); }

.hero {
  background: url('assets/header_bg.svg') top center/cover no-repeat, linear-gradient(180deg, var(--color-accent-3), #ffffff);
  padding: 3.2rem 0 2.2rem;
  border-bottom: 2px dashed rgba(0,0,0,.06);
}
.hero .title { font-size: clamp(1.8rem, 2.5vw, 2.8rem); margin: 0 0 .5rem; font-weight: 900; letter-spacing: .3px; }
.hero .subtitle { margin: 0; color: var(--color-muted); font-size: clamp(1rem, 1.5vw, 1.2rem); }

.card { background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); padding:1.2rem; border:1px solid #f2f2f2; }
.grid { display:grid; gap:1rem; }
.grid.cols-3 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.grid.cols-2 { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }

footer.site-footer { margin-top:3rem; padding:2rem 0; background:#fff; border-top:1px solid #eee; color:var(--color-muted); }

.badge { display:inline-block; font-size:.85rem; font-weight:700; padding:.35rem .7rem; border-radius:999px; background:var(--color-accent-4); }

.button { display:inline-block; padding:.7rem 1rem; border-radius:12px; background:var(--color-accent); color:#05323f; font-weight:800; border:none; }
.button:hover { filter:brightness(.95); text-decoration:none; }

input, textarea, select { width:100%; padding:.7rem .8rem; border:1px solid #e5e7eb; border-radius:10px; background:#fff; }
label { display:block; font-weight:600; margin-bottom:.35rem; }

.gallery-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(160px,1fr)); gap:.7rem; }
.gallery-grid img { width:100%; height:140px; object-fit:cover; border-radius:10px; box-shadow:var(--shadow); }

.doc-list { list-style:none; padding:0; margin:0; }
.doc-list li { display:grid; grid-template-columns:1fr auto; gap:.6rem; align-items:center; padding:.6rem .8rem; background:#fff; border:1px solid #eee; border-radius:10px; margin-bottom:.6rem; }
.doc-list a { font-weight:600; }

main > .container { padding:1.5rem 0; }
h1, h2, h3 { line-height:1.25; }
h2.section { margin-top:2rem; }

/* Icons */
.icon { width:28px; height:28px; display:inline-block; vertical-align:middle; margin-right:.35rem; }
.icon--sun    { background:url('assets/icons/sun.svg') center/contain no-repeat; }
.icon--crayon { background:url('assets/icons/crayon.svg') center/contain no-repeat; }
.icon--home   { background:url('assets/icons/home.svg') center/contain no-repeat; }
.icon--flower { background:url('assets/icons/flower.svg') center/contain no-repeat; }
.icon--book   { background:url('assets/icons/book.svg') center/contain no-repeat; }