/* ============================================================
   CEIP Plurilíngüe de Belesar — Plantillas · estilo común
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Nunito:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,600&display=swap');

:root{
  --bosque:#0E3B2E;
  --bosque2:#082019;
  --folla:#4FAE7E;
  --folla-claro:#7FC9A3;
  --terracota:#B5651D;
  --dourado:#E2A94E;
  --crema:#FAF1DE;
  --papel:#FFFDF7;
  --tinta:#23332D;
  --mar:#3E7C8C;
  --salvia:#9FB89A;
  --coral:#D98C6A;
  --casca:#7A431A;
  --liña:#E4DCC6;
}
*{ box-sizing:border-box; margin:0; padding:0; }
html{ -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
body{
  font-family:'Nunito',sans-serif;
  color:var(--tinta);
  background:#C9C5BA;
  background-image:radial-gradient(circle at 50% 0,#d6d2c6,#bdb9ad);
  display:flex; flex-direction:column; align-items:center;
  gap:34px; padding:46px 16px 80px;
  line-height:1.5;
}
h1,h2,h3,h4{ font-family:'Fredoka',sans-serif; color:var(--bosque); line-height:1.08; font-weight:600; }

/* editable hint */
[contenteditable]{ outline:none; border-radius:4px; transition:background .15s; }
[contenteditable]:hover{ background:rgba(79,174,126,.08); }
[contenteditable]:focus{ background:rgba(79,174,126,.14); box-shadow:0 0 0 2px rgba(79,174,126,.4); }

/* generic sheet */
.sheet{
  background:var(--papel);
  box-shadow:0 16px 46px rgba(40,35,20,.26);
  position:relative; overflow:hidden;
  color:var(--tinta);
}
.A4{ width:210mm; height:297mm; }
.A4L{ width:297mm; height:210mm; }

/* leaf motif */
.leaf{ background:var(--folla); border-radius:0 100% 0 100%; display:inline-block; }
.leaf.t{ background:var(--terracota); }
.leaf.m{ background:var(--mar); }
.leaf.d{ background:var(--dourado); }

/* common letterhead band */
.head{ display:flex; align-items:center; gap:16px; }
.head .badge{ border-radius:50%; background:var(--crema); overflow:hidden; display:flex; align-items:center; justify-content:center; flex:none; }
.head .badge img{ width:120%; margin-top:6%; }
.head .org b{ font-family:'Fredoka',sans-serif; color:var(--bosque); display:block; font-weight:600; }
.head .org span{ font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--terracota); font-weight:700; }

/* footer contact line */
.contact{ font-size:10px; color:#8f897a; letter-spacing:.02em; }
.contact b{ color:var(--bosque); }

.lema{ font-family:'Fredoka',sans-serif; font-style:italic; color:var(--terracota); }

/* download/print bar (screen only) */
.bar{
  position:fixed; right:18px; bottom:18px; z-index:99;
  display:flex; gap:10px; align-items:center;
  background:var(--bosque); color:var(--crema);
  padding:11px 14px; border-radius:14px;
  box-shadow:0 10px 30px rgba(0,0,0,.3);
  font-family:'Fredoka',sans-serif; font-size:14px;
}
.bar button{
  font-family:'Fredoka',sans-serif; font-weight:600; font-size:13px;
  border:none; border-radius:9px; padding:8px 14px; cursor:pointer;
  background:var(--dourado); color:#5a3d10;
}
.bar button:hover{ filter:brightness(1.06); }
.bar .hint{ font-size:12px; color:#cfe0d3; }

.caption{ font-family:'Fredoka',sans-serif; font-weight:500; color:#6a6457; font-size:13px; }

@media print{
  body{ background:none; padding:0; gap:0; }
  .sheet{ box-shadow:none; margin:0; }
  .bar,.caption,.noprint{ display:none !important; }
  @page{ margin:0; }
}
