/* V44 : uniquement des couches visuelles; aucune donnée secrète dans les CSS. */
body.v44-night #welcome,body.v44-night #calendar{filter:brightness(.90) saturate(1.08)}
body.v44-night .village-lights,body.v44-night .fairy-lights{filter:brightness(1.25) drop-shadow(0 0 9px #e9b85e)}
body.v44-weather-sparkle #calendar .village-lights{filter:drop-shadow(0 0 12px #ffe4a0)}
body.v44-weather-snow .flake{opacity:.9}body.v44-weather-starry .stars{filter:drop-shadow(0 0 10px #fff0ae)}
.v44-evening-toggle{display:block;margin:8px auto 12px;border:1px solid #b18c56;border-radius:20px;background:#401c28;color:#ffe7af;padding:8px 14px;font-size:13px;cursor:pointer}
.v44-heart{width:max-content;max-width:90%;margin:12px auto 4px;display:flex;align-items:center;gap:9px;padding:8px 16px;border:1px solid #bc995c;border-radius:40px;background:rgba(47,12,25,.84);color:#f8db9b;box-shadow:0 3px 16px #0004}
.v44-heart span{font-size:26px;color:#9d4351;filter:drop-shadow(0 0 calc(var(--v44-glow, 0) * 12px) #ffd575);transition:color .6s}.v44-heart strong{font-variant-numeric:tabular-nums}.v44-heart small{font-size:12px}
.v44-heart.v44-complete span{color:#ffcb67;animation:v44Pulse 2.2s ease-in-out infinite}@keyframes v44Pulse{50%{transform:scale(1.15)}}
.letter.v44-opening-box{animation:v44Box .65s both}.letter.v44-opening-letter{animation:v44Letter .8s both}.letter.v44-opening-scroll{animation:v44Scroll .8s both}.letter.v44-opening-card{animation:v44Card .65s both}
@keyframes v44Box{from{opacity:0;transform:translateY(30px) scale(.86);filter:brightness(1.8)}to{opacity:1;transform:none;filter:none}}
@keyframes v44Letter{from{opacity:0;transform:rotateX(-65deg) translateY(24px)}to{opacity:1;transform:none}}
@keyframes v44Scroll{from{opacity:0;clip-path:inset(42% 0 42% 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes v44Card{from{opacity:0;transform:rotate(-6deg) translateY(20px)}to{opacity:1;transform:none}}
.v44-diploma-action{text-align:center;margin:20px auto}.v44-diploma-action button,.v44-diploma-card button{padding:12px 16px;border:1px solid #d6b46f;border-radius:14px;background:#722b35;color:#ffe5b2;cursor:pointer}
.v44-diploma-overlay:not([hidden]){position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:#140d15e8;padding:16px;overflow:auto}
.v44-diploma-card{position:relative;width:min(100%,620px);max-height:94dvh;overflow:auto;text-align:center;background:linear-gradient(135deg,#fff7e3,#f4dfb8);color:#64232b;border:8px double #bc8d43;box-shadow:0 18px 70px #0008;padding:34px 26px;font-family:Georgia,serif}
.v44-diploma-card h2{font-size:clamp(25px,5vw,38px);color:#872c35}.v44-diploma-card h3{font-size:23px;color:#7a3b35}.v44-diploma-card p{line-height:1.55}.v44-diploma-card #v44-diploma-close{position:absolute;right:8px;top:8px;padding:5px 10px}
@media(max-width:600px){.v44-heart{padding:7px 11px;gap:6px}.v44-heart small{font-size:11px}}
@media(prefers-reduced-motion:reduce){.v44-heart span,.letter[class*=v44-opening]{animation:none!important;transition:none!important}}
@media print{body *{visibility:hidden!important}#v44-diploma,#v44-diploma .v44-diploma-card,#v44-diploma .v44-diploma-card *{visibility:visible!important}#v44-diploma{position:absolute!important;inset:0!important;display:block!important;background:white!important;padding:0!important}#v44-diploma .v44-diploma-card{width:100%!important;max-height:none!important;overflow:visible!important;box-shadow:none!important;margin:0 auto!important;min-height:240mm!important;padding:30mm 18mm!important}#v44-diploma button{display:none!important}@page{size:A4;margin:10mm}}
