/* V59 — décor uniquement : préserve V58, cadeaux, interactions et protections. */
#calendar{isolation:isolate;background-color:#06162b!important;background-image:linear-gradient(180deg,rgba(4,13,33,.20) 0%,rgba(4,13,33,.09) 19%,rgba(4,13,33,.08) 37%,rgba(3,10,24,.40) 72%,rgba(3,10,24,.70) 100%),url('village-mobile.webp')!important;background-size:100% 100%,100% auto!important;background-position:center top,center top!important;background-repeat:no-repeat,repeat-y!important}
#calendar .v59-festive-sky{position:absolute;top:0;left:0;right:0;height:min(650px,90svh);pointer-events:none;overflow:hidden;z-index:0;background:radial-gradient(circle at 69% 20%,rgba(255,214,139,.20),transparent 18%),radial-gradient(circle at 14% 48%,rgba(251,185,84,.14),transparent 22%),radial-gradient(circle at 85% 73%,rgba(255,192,93,.10),transparent 23%)}
#calendar .v59-festive-sky:before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,#fff9d8 1px,transparent 2px),radial-gradient(circle,#e8bd73 1.2px,transparent 2.5px),radial-gradient(circle,#f7f9ff .8px,transparent 1.5px);background-size:107px 119px,149px 181px,73px 97px;background-position:7px 24px,41px 60px,15px 34px;opacity:.55;animation:v59-twinkle 8s ease-in-out infinite alternate}
#calendar .v59-garland{position:absolute;top:0;left:0;right:0;height:48px;pointer-events:none;z-index:2;background:radial-gradient(ellipse at 7% -8%,#28482e 0 22%,transparent 23%),radial-gradient(ellipse at 28% -23%,#23472e 0 24%,transparent 25%),radial-gradient(ellipse at 55% -30%,#315a37 0 22%,transparent 23%),radial-gradient(ellipse at 85% -20%,#23452d 0 26%,transparent 27%),radial-gradient(circle at 15% 13%,#bc1d29 0 4px,transparent 5px),radial-gradient(circle at 74% 12%,#c52e2e 0 5px,transparent 6px),radial-gradient(circle at 91% 16%,#e5ba5f 0 3px,transparent 4px);opacity:.95;filter:drop-shadow(0 3px 7px rgba(0,0,0,.4))}
#calendar .v59-santa{position:relative;display:block;width:min(69vw,340px);height:auto;margin:0 auto 2px;opacity:.96;filter:drop-shadow(0 3px 10px rgba(244,186,89,.55));pointer-events:none;z-index:1;animation:v59-sleigh-float 7s ease-in-out infinite}
#calendar>h2,#calendar>.subtitle,#calendar>#countdown,#calendar>#v44-evening-toggle,#calendar>.memory-actions,#calendar>#extras-toggle,#calendar>#notice,#calendar>#v44-heart,#calendar>.christmas-room{position:relative;z-index:2}
#calendar>h2{color:#ffe4b1!important;text-shadow:0 2px 8px #091325,0 0 24px rgba(240,179,86,.24)!important}
#calendar .subtitle{color:#f7dba4!important;text-shadow:0 2px 5px #0c1626!important}
#calendar #countdown{border:1px solid rgba(243,199,118,.66)!important;background:linear-gradient(100deg,rgba(10,23,42,.82),rgba(45,33,40,.66),rgba(10,23,42,.82))!important;box-shadow:0 0 14px rgba(237,180,90,.13)!important}
#calendar #v44-evening-toggle,#calendar .memory-actions button,#calendar #extras-toggle{border-color:rgba(246,202,116,.8)!important;background:radial-gradient(circle at 35% 25%,rgba(110,78,42,.86),rgba(7,21,39,.92) 75%)!important;box-shadow:inset 0 1px 3px rgba(255,232,175,.28),0 0 9px rgba(245,183,82,.20)!important}
#calendar #v44-heart{background:linear-gradient(115deg,rgba(84,22,37,.91),rgba(46,19,36,.9))!important;border:1px solid rgba(237,191,111,.72)!important;box-shadow:0 0 18px rgba(236,177,89,.17)!important}
#calendar .christmas-room{background:linear-gradient(180deg,rgba(6,16,30,.06),rgba(6,16,30,.26))!important}
#calendar .days{background:transparent!important}
#calendar .day.gift .gift-box{filter:drop-shadow(0 5px 5px rgba(0,0,0,.37)) drop-shadow(0 0 4px rgba(236,174,78,.17))!important}
#calendar .gift-status{text-shadow:0 2px 5px #061020,0 0 3px #061020!important}
@keyframes v59-twinkle{from{opacity:.32}to{opacity:.68}}
@keyframes v59-sleigh-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media(orientation:portrait) and (max-width:650px){#calendar .v59-santa{width:min(65vw,270px);margin:-1px auto 1px}#calendar .v59-garland{height:34px}#calendar .v59-festive-sky{height:550px}#calendar{background-size:100% 100%,100% auto!important}}
@media(orientation:landscape){#calendar{background-image:linear-gradient(180deg,rgba(4,13,33,.22),rgba(3,10,24,.55)),url('village-noel.webp')!important;background-size:100% 100%,cover!important;background-position:center top!important;background-repeat:no-repeat!important}#calendar .v59-santa{width:min(25vw,210px)}}
@media(prefers-reduced-motion:reduce){#calendar .v59-festive-sky:before,#calendar .v59-santa{animation:none!important}}
