/* KenhoWeb — Pain Quotidien : la lettre du matin.
   Une vraie lettre : fond papier, liseré doré, typographie serif,
   lisible d'une main. S'affiche seulement en mode application. */

.kwpq-racine { display: none; }

.kwpq-lettre {
  background: #fffdf6;
  border: 1px solid #e7dcc0;
  border-top: 4px solid #c9a227;
  border-radius: 14px;
  box-shadow: 0 6px 24px rgba(60, 45, 5, .14);
  color: #2b2415;
  font-family: Georgia, 'Times New Roman', serif;
  margin: 14px 10px 20px;
  padding: 20px 18px 16px;
}
.kwpq-l-entete { text-align: center; border-bottom: 1px solid #eee2c4; padding-bottom: 10px; margin-bottom: 12px; }
.kwpq-l-logo { width: 44px; height: 44px; border-radius: 10px; }
.kwpq-l-ministere { letter-spacing: .14em; font-size: 12px; color: #8a6d1f; font-weight: bold; margin-top: 4px; }
.kwpq-l-date { font-size: 13px; color: #6d6248; font-style: italic; margin-top: 2px; }
.kwpq-l-bonjour { font-size: 19px; margin: 4px 0 2px; }
.kwpq-l-manne { font-size: 15px; color: #574d33; margin: 0 0 12px; }
.kwpq-l-titre { font-size: 20px; line-height: 1.3; margin: 6px 0 10px; color: #3d2f05; }
.kwpq-l-verset {
  font-size: 18px; line-height: 1.55; font-style: italic;
  margin: 10px 0; padding: 12px 14px;
  background: #faf3dd; border-left: 3px solid #c9a227; border-radius: 0 10px 10px 0;
}
.kwpq-l-verset cite { display: block; font-size: 13px; font-style: normal; color: #8a6d1f; margin-top: 6px; }
.kwpq-l-corps p, .kwpq-l-priere p { font-size: 16px; line-height: 1.6; margin: 8px 0; }
.kwpq-l-priere { background: #f4efe2; border-radius: 10px; padding: 10px 14px; margin: 12px 0; }
.kwpq-l-priere-titre { font-weight: bold; color: #7a5f14; font-size: 14px; letter-spacing: .04em; }
.kwpq-l-pas { font-size: 15px; background: #eef5e6; border-radius: 10px; padding: 10px 14px; }
.kwpq-l-renvois { display: flex; gap: 8px; flex-wrap: wrap; margin: 14px 0 6px; }
.kwpq-btn {
  display: inline-block; border: 1px solid #c9a227; color: #6b5310; background: #fff8e1;
  border-radius: 999px; padding: 8px 14px; font-size: 14px; text-decoration: none;
  font-family: inherit; cursor: pointer;
}
.kwpq-btn-or { background: #c9a227; color: #fff; border-color: #a8871d; font-weight: bold; }
.kwpq-btn-doux { background: transparent; border-color: #d8cba6; color: #7a6c45; }
.kwpq-l-pied { border-top: 1px solid #eee2c4; margin-top: 10px; padding-top: 10px; font-size: 13px; color: #6d6248; display: flex; flex-direction: column; gap: 3px; }
.kwpq-l-signature { font-style: italic; }
.kwpq-l-liens a { color: #8a6d1f; }

/* Carte du soir / de départ */
.kwpq-soir {
  background: #fdfaf1; border: 1px solid #e7dcc0; border-radius: 14px;
  margin: 14px 10px 20px; padding: 16px; font-family: Georgia, 'Times New Roman', serif; color: #2b2415;
  box-shadow: 0 4px 18px rgba(60, 45, 5, .10);
}
.kwpq-soir-titre { font-size: 18px; margin: 0 0 4px; }
.kwpq-soir-sous { font-size: 14px; color: #574d33; margin: 0 0 12px; }
/* Bloc « Prière du soir » (v1.1.0) : en tête de la carte du soir,
   séparé du bloc « À Cœur Ouvert » qui le suit. */
.kwpq-priere-soir { border-bottom: 1px solid #eee2c4; padding-bottom: 12px; margin-bottom: 14px; }
.kwpq-priere-soir .kwpq-l-priere { margin-bottom: 0; }
.kwpq-etats { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.kwpq-etat {
  display: flex; align-items: center; gap: 6px; border: 1.5px solid #d8cba6; background: #fff;
  border-radius: 999px; padding: 8px 13px; font-size: 15px; cursor: pointer; font-family: inherit;
}
.kwpq-etat-actif { border-color: #c9a227; background: #faf0cd; }
.kwpq-fardeau {
  width: 100%; box-sizing: border-box; border: 1px solid #d8cba6; border-radius: 10px;
  padding: 10px; font-size: 16px; font-family: inherit; background: #fff;
}
.kwpq-soir-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.kwpq-micro-actif { background: #c0392b !important; color: #fff !important; border-color: #922b21 !important; }
.kwpq-soir-retour { font-size: 15px; color: #4c6b1f; margin: 10px 0 0; }
.kwpq-soir-depose { opacity: .85; }

/* Panneau (pains de la semaine / mon chemin) */
.kwpq-panneau {
  position: fixed; inset: 0; background: rgba(20, 16, 4, .55); z-index: 99990;
  display: flex; align-items: flex-end; justify-content: center;
}
.kwpq-panneau[hidden] { display: none; }
.kwpq-panneau-carte {
  background: #fffdf6; width: 100%; max-height: 88vh; overflow-y: auto;
  border-radius: 18px 18px 0 0; padding: 18px 14px 26px; position: relative;
  font-family: Georgia, 'Times New Roman', serif; color: #2b2415;
}
.kwpq-panneau-fermer {
  position: sticky; top: 0; float: right; border: none; background: #f0e6c8; color: #6b5310;
  width: 34px; height: 34px; border-radius: 50%; font-size: 16px; cursor: pointer;
}
.kwpq-panneau-titre { font-size: 19px; font-weight: bold; margin: 2px 0 10px; color: #3d2f05; }
.kwpq-panneau .kwpq-lettre { margin: 10px 0; }
.kwpq-chemin-phrase { font-size: 16px; line-height: 1.55; }
.kwpq-chemin-gestes { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0; }
.kwpq-fardeaux-titre { font-size: 15px; margin: 14px 0 6px; }
.kwpq-fardeaux { list-style: none; padding: 0; margin: 0; }
.kwpq-fardeaux li { padding: 8px 0; border-bottom: 1px solid #eee2c4; font-size: 15px; }
.kwpq-fardeau-date { display: block; font-size: 12px; color: #8a6d1f; }
.kwpq-vide { color: #8a8064; font-style: italic; }

/* Fenêtre d'inscription aux notifications (v1.2.0) — compagnon
   kwpq-inscription.js, toutes pages en mode application. Même
   famille visuelle que le panneau : feuille basse sur téléphone. */
.kwpq-ins-fond {
  position: fixed; inset: 0; background: rgba(20, 16, 4, .55); z-index: 99995;
  display: flex; align-items: flex-end; justify-content: center;
}
.kwpq-ins-carte {
  background: #fffdf6; width: 100%; max-width: 560px; max-height: 88vh; overflow-y: auto;
  border-radius: 18px 18px 0 0; padding: 20px 16px 26px;
  font-family: Georgia, 'Times New Roman', serif; color: #2b2415;
  box-shadow: 0 -6px 30px rgba(0, 0, 0, .25);
}
.kwpq-ins-titre { font-size: 20px; font-weight: bold; margin: 2px 0 8px; color: #3d2f05; }
.kwpq-ins-texte { font-size: 16px; line-height: 1.55; margin: 0 0 14px; }
.kwpq-ins-msg { font-size: 15px; line-height: 1.5; color: #6b5310; background: #f7efce; border-radius: 10px; padding: 10px 12px; margin: 0 0 12px; }
.kwpq-ins-oui {
  display: block; width: 100%; border: none; cursor: pointer;
  background: #b8860b; color: #fff; font-size: 17px; font-weight: bold;
  border-radius: 12px; padding: 14px 12px; margin: 0 0 10px;
  font-family: inherit;
}
.kwpq-ins-oui:disabled { opacity: .55; cursor: default; }
.kwpq-ins-tard {
  display: block; width: 100%; cursor: pointer;
  background: #f0e6c8; color: #6b5310; border: 1px solid #d8c684;
  font-size: 16px; border-radius: 12px; padding: 12px; margin: 0 0 8px;
  font-family: inherit;
}
.kwpq-ins-tard:disabled { opacity: .55; cursor: default; }
.kwpq-ins-non {
  display: block; margin: 2px auto 0; background: none; border: none; cursor: pointer;
  color: #8a8064; font-size: 13px; text-decoration: underline; font-family: inherit;
}

/* Bouton d'inscription aux notifications (v1.2.2, reconstruit en
   v1.3.0) — bloc imprimé côté serveur (includes/bouton.php),
   compagnon dédié kwpq-bouton.js. Le bloc vit sous la carte du
   moment sur l'accueil (lettre du matin / carte du soir) et en
   tête de la page « Notifications », seulement dans l'état que
   l'appareil commande. Même famille visuelle que la lettre :
   papier, liseré doré. */
.kwpq-notif {
  background: #fffdf6; border: 1px solid #e7dcc0; border-left: 4px solid #c9a227;
  border-radius: 14px; box-shadow: 0 4px 18px rgba(60, 45, 5, .10);
  color: #2b2415; font-family: Georgia, 'Times New Roman', serif;
  margin: 0 10px 20px; padding: 16px 18px;
}
.kwpq-notif-texte { font-size: 16px; line-height: 1.55; margin: 0 0 12px; }
.kwpq-notif-bouton {
  display: block; width: 100%; border: none; cursor: pointer;
  background: #b8860b; color: #fff; font-size: 17px; font-weight: bold;
  border-radius: 12px; padding: 14px 12px; font-family: inherit;
}
.kwpq-notif-bouton:disabled { opacity: .55; cursor: default; }
.kwpq-notif-msg {
  font-size: 15px; line-height: 1.5; color: #6b5310; background: #f7efce;
  border-radius: 10px; padding: 10px 12px; margin: 12px 0 0;
}
.kwpq-notif-fait { font-size: 16px; font-weight: bold; color: #4c6b1f; margin: 0; }
/* v1.3.1 — Dans la zone du bouton, l'attribut « hidden » GAGNE
   toujours : la règle « display: block » de .kwpq-notif-bouton
   ci-dessus battait le [hidden] du navigateur (une règle d'auteur
   l'emporte sur la règle par défaut des éléments masqués), donc
   quand le compagnon passait à l'état « inscrit » (bouton masqué,
   confirmation montrée), le bouton RESTAIT visible à côté de
   « ✔ Notifications activées » — capture du propriétaire, page
   Notifications, 2026-11-02. La logique des états du compagnon
   (kwpq-bouton.js) était juste ; seule la feuille laissait fuir
   le bouton. Cette garde couvre tous les enfants de la zone. */
.kwpq-btn-zone[hidden], .kwpq-btn-zone [hidden] { display: none !important; }

/* ── v1.3.0 — Les pages de l'application ──────────────────────────
   La page « Pain Quotidien » (coquille du module : aucun contenu
   du site web autour) et l'élément « Pain du jour » en tête de la
   page « Notifications ». Fond nuit du ministère, comme la page
   Notifications du module frère ; la lettre garde son papier. */
.kwpq-page-corps {
  margin: 0; background: #0d1b2e; color: #f4efe4;
  font-family: Georgia, 'Times New Roman', serif;
}
.kwpq-page { max-width: 640px; margin: 0 auto; padding: 14px 6px 96px; }
.kwpq-page-haut {
  display: flex; align-items: center; gap: 12px;
  padding: 6px 8px 12px; border-bottom: 2px solid #c9a227; margin-bottom: 8px;
}
.kwpq-page-accueil {
  display: inline-flex; align-items: center; gap: 6px;
  background: #c9a227; color: #0d1b2e !important; font-weight: bold;
  text-decoration: none !important; border-radius: 999px;
  padding: 8px 14px; font-size: 15px; white-space: nowrap;
}
.kwpq-page-titre { font-size: 22px; margin: 0; color: #f4efe4; }
.kwpq-page-chargement { color: #b9c4d4; font-style: italic; text-align: center; }

/* L'élément « Pain du jour / Prière du soir » (page Notifications) :
   une carte papier en tête de liste, comme un premier courriel. */
.kwpq-lien-pain {
  display: flex; align-items: center; gap: 8px;
  background: #fdf9ef; color: #22314a !important; text-decoration: none !important;
  border-left: 4px solid #c9a227; border-radius: 10px;
  padding: 14px; margin-bottom: 12px;
  font-family: Georgia, 'Times New Roman', serif; font-size: 17px; font-weight: bold;
}
.kwpq-lien-pain-fleche { margin-left: auto; color: #8a6d1f; font-size: 22px; }

/* Dans la page Notifications (fond nuit), la zone du bouton garde
   son papier mais prend la largeur de la boîte. */
.kwgn-page .kwpq-btn-zone { margin: 0 0 12px; }
