.loading-card,.info-card{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:17px;color:var(--muted);font-size:12px;line-height:18px;margin-bottom:11px}
.loading-card{position:relative;overflow:hidden}
.loading-card:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,#ffffff09 45%,transparent 70%);animation:loading 1.5s infinite}
@keyframes loading{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.info-card b{color:var(--text);font-size:14px}.info-card p{margin:5px 0 10px}.info-card a{color:#ff6268;text-decoration:none;font-weight:800}
.video-thumb.real{background-size:cover;background-position:center;isolation:isolate}
.video-thumb.real:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0009,#0002);z-index:-1}
.video-card.compact{display:grid;grid-template-columns:42% 58%;min-height:116px;margin:0}
.video-card.compact .video-thumb{height:auto;min-height:116px}.video-card.compact .video-thumb span{width:42px;height:42px;font-size:17px}
.video-card.compact .card-copy{display:flex;flex-direction:column;justify-content:center}.video-card.compact .card-copy h3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.album-thumb.remote{background-color:#20262e;background-size:cover;background-position:center;color:#fff;text-shadow:0 1px 5px #000}
#agenda-feed{display:flex;flex-direction:column;gap:10px}
.event-date-label{color:#9ee8ff!important;font-weight:800}.event-source{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;box-sizing:border-box;margin-top:14px;padding:13px 15px;border:1px solid rgba(158,232,255,.42);border-radius:12px;background:rgba(46,91,255,.16);color:#eafaff;text-decoration:none;font-size:12px;font-weight:900;line-height:1.25}.event-source b{flex:0 0 auto;color:#9ee8ff;font-size:16px}.event-source:active{transform:scale(.99);background:rgba(46,91,255,.27)}.agenda-all{display:block;text-align:center;background:#2e5bff;color:#fff;text-decoration:none;padding:14px;border-radius:13px;font-size:12px;font-weight:900;margin:4px 0 20px}
.live-slot[role="link"]{cursor:pointer}

/* Palette officielle du site loreina.tv */
:root{--bg:#050505;--panel:#0f0f0f;--panel2:#171a20;--text:#fff;--muted:rgba(255,255,255,.62);--line:rgba(255,255,255,.12);--red:#2e5bff;--red2:#1838a8}
html,body{background:#050505}.app-shell{background:#050505}.topbar{background:rgba(5,5,5,.96);border-bottom-color:rgba(255,255,255,.12)}
.brand b{color:#2e5bff}.brand small{color:rgba(255,255,255,.62)}
.round-btn,.quick-card,.event-card,.video-card,.album-card,.link-list a,.install-help,.loading-card,.info-card{background:#0f0f0f;border-color:rgba(255,255,255,.12)}
.hero{background:radial-gradient(circle at 75% 20%,#9ee8ff 0 2%,transparent 3%),radial-gradient(circle at 84% 30%,#7fa8ff 0 1.5%,transparent 2.5%),linear-gradient(145deg,#05070d 0%,#091537 48%,#2e5bff 120%)}
.hero-shade{background:linear-gradient(0deg,rgba(2,6,18,.93) 0%,rgba(5,5,5,.08) 72%)}
.kicker{color:#9ee8ff}.hero p{color:rgba(255,255,255,.78)}.cta{background:#2e5bff;color:#fff}
.quick-icon{color:#9ee8ff}.quick-icon.youtube{color:#ff0000}
.quick-card-link{color:inherit;text-decoration:none}.quick-icon.tiktok{color:#9ee8ff}
.brand-icon,.social-logo{display:grid!important;place-items:center;overflow:hidden}.brand-icon{width:31px;height:31px;border-radius:9px}.brand-icon img{width:17px;height:17px;filter:brightness(0) invert(1)}.brand-icon.youtube,.social-logo.youtube{background:#ff0000!important}.brand-icon.facebook,.social-logo.facebook{background:#1877f2!important}.brand-icon.tiktok,.social-logo.tiktok{background:#000!important;border:1px solid rgba(255,255,255,.16)}.social-logo{width:32px!important;height:32px!important;border-radius:9px}.social-logo img{width:17px;height:17px;filter:brightness(0) invert(1)}.social-logo.instagram{background:linear-gradient(45deg,#f58529,#dd2a7b,#8134af,#515bd4)!important}.social-logo.apple{background:#9933cc!important}.social-logo.spotify{background:#1db954!important}.social-logo.deezer{background:linear-gradient(135deg,#a238ff,#ff2d55,#ffb400)!important}
.video-thumb{overflow:hidden}.video-thumb>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.video-thumb span,.video-thumb em{z-index:2}
.brand{display:flex;align-items:center;gap:8px}.brand-logo{width:43px;height:43px;object-fit:cover;border-radius:50%;clip-path:circle(45%)}.brand-copy{display:block}.brand-copy>span{font:inherit}.brand-copy small{display:block}
.beta-badge{display:inline-block;margin-left:6px;padding:2px 5px;border:1px solid rgba(158,232,255,.45);border-radius:5px;color:#9ee8ff;font-size:7px;line-height:10px;font-style:normal;font-weight:900;letter-spacing:1px;vertical-align:2px}
.date-card{background:#2e5bff}.event-type{color:#9ee8ff}
.external-btn{border-color:rgba(255,255,255,.26)}.install-button{background:#2e5bff}
.bottom-nav{background:rgba(5,5,5,.97);border-top-color:rgba(255,255,255,.12)}.bottom-nav button.active{color:#2e5bff}
.bottom-nav button span.nav-svg{width:24px;height:29px;display:grid;place-items:center}.bottom-nav button span.nav-svg svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.update-banner{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;gap:12px;padding:26px;background:rgba(1,5,14,.82);backdrop-filter:blur(8px)}.update-banner[hidden]{display:none}.update-banner div{width:min(100%,390px);padding:22px;border:1px solid rgba(158,232,255,.34);border-radius:18px;background:rgba(8,18,38,.99);box-shadow:0 14px 38px #000b;text-align:center}.update-banner b,.update-banner small{display:block}.update-banner b{font-size:15px}.update-banner small{margin-top:7px;color:rgba(255,255,255,.72);font-size:11px;line-height:16px}.update-banner button{display:none}
.info-card a{color:#9ee8ff}.video-thumb.real span{color:#ff0000}
.live-slot{background:#3d0909;border-color:#ff0000}.live-dot{background:#ff0000;box-shadow:0 0 0 4px #ff000025}
.text-link{background:none;color:#9ee8ff;font-size:11px;font-weight:800;padding:6px;cursor:pointer}
.agenda-filters{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 9px;padding:12px;background:rgba(15,15,15,.98);border:1px solid rgba(255,255,255,.12);border-radius:14px}.agenda-filters label{display:flex;flex-direction:column;gap:6px;color:#fff;font-size:9px;font-weight:950;letter-spacing:.7px;text-transform:uppercase}.agenda-filters select{width:100%;min-width:0;height:42px;padding:0 28px 0 10px;border:1px solid rgba(255,255,255,.20);border-radius:10px;background:rgba(0,0,0,.42);color:#fff;font:inherit;font-size:11px;font-weight:800;color-scheme:dark}.agenda-filters label:nth-child(5){grid-column:1/-1}.agenda-filters button{grid-column:1/-1;min-height:42px;border:1px solid rgba(174,239,255,.28);border-radius:10px;background:linear-gradient(135deg,rgba(174,239,255,.12),rgba(255,59,53,.14));color:#fff;font-size:11px;font-weight:950;cursor:pointer}.agenda-results{min-height:14px;margin:0 3px 9px;color:rgba(255,255,255,.62);font-size:10px}.agenda-filters select:focus,.agenda-filters button:focus{outline:2px solid rgba(174,239,255,.56);outline-offset:2px}
#page-agenda .event-card{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.03)),rgba(0,0,0,.58);border-color:rgba(255,255,255,.18)}#page-agenda .event-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#aeefff;box-shadow:0 0 20px rgba(174,239,255,.42)}#page-agenda .event-card .date-card{background:rgba(174,239,255,.12);border:1px solid rgba(174,239,255,.40)}#page-agenda .event-card[data-theme~="musique"]:before{background:#315cff}#page-agenda .event-card[data-theme~="musique"] .date-card{background:rgba(49,92,255,.22);border-color:rgba(49,92,255,.48)}#page-agenda .event-card[data-theme~="fete"]:before{background:#ff3b35}#page-agenda .event-card[data-theme~="fete"] .date-card{background:rgba(255,59,53,.22);border-color:rgba(255,59,53,.48)}#page-agenda .event-card[data-theme~="famille"]:before{background:#22c55e}#page-agenda .event-card[data-theme~="famille"] .date-card{background:rgba(34,197,94,.20);border-color:rgba(34,197,94,.46)}#page-agenda .event-card[data-theme~="sport"]:before{background:#facc15}#page-agenda .event-card[data-theme~="sport"] .date-card{background:rgba(250,204,21,.20);border-color:rgba(250,204,21,.46)}#page-agenda .event-card[data-theme~="culture"]:before{background:#a855f7}#page-agenda .event-card[data-theme~="culture"] .date-card{background:rgba(168,85,247,.22);border-color:rgba(168,85,247,.48)}#page-agenda .event-card[data-theme~="solidarite"]:before{background:#ec4899}#page-agenda .event-card[data-theme~="solidarite"] .date-card{background:rgba(236,72,153,.20);border-color:rgba(236,72,153,.46)}#page-agenda .event-card[data-theme~="sortie"]:before{background:#fb923c}#page-agenda .event-card[data-theme~="sortie"] .date-card{background:rgba(251,146,60,.20);border-color:rgba(251,146,60,.46)}
#page-agenda.active{background:radial-gradient(circle at 18% 0%,rgba(40,76,197,.22),transparent 30%),linear-gradient(180deg,#081533 0%,#050914 72%,#050505 100%)}
.agenda-month{display:flex;flex-direction:column;gap:10px}.agenda-month>h2{margin:10px 2px 1px;color:#9ee8ff;font-size:24px;line-height:29px;font-weight:950;letter-spacing:-.6px}.agenda-month-events{display:flex;flex-direction:column;gap:10px}
.agenda-style-card{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px!important;align-items:stretch!important;padding:10px 10px 11px 14px!important;border:1px solid rgba(61,102,255,.34)!important;border-radius:14px!important;background:#0d0e10!important;box-shadow:0 7px 20px rgba(0,0,0,.20)}
.agenda-visual-tile,.agenda-date-tile{min-height:68px;border-radius:11px;padding:10px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;overflow:hidden;position:relative}
.agenda-visual-tile{background:linear-gradient(135deg,#5931dc,#b73d91 55%,#ff6875);color:#fff}.agenda-visual-tile:after{content:"";position:absolute;right:-18px;bottom:-26px;width:72px;height:72px;border-radius:50%;border:1px solid rgba(255,255,255,.20);box-shadow:-25px -8px 0 -8px rgba(255,255,255,.08)}.agenda-visual-tile b{font-size:11px;line-height:14px;text-transform:uppercase;z-index:1}.agenda-visual-tile span{z-index:1;padding:4px 7px;border-radius:999px;background:rgba(0,0,0,.52);font-size:8px;font-weight:900;text-transform:uppercase}
.agenda-source-badge{z-index:1;margin-top:6px;max-width:100%;padding:3px 6px;border-radius:7px;background:rgba(255,255,255,.18);font-size:8px;font-style:normal;font-weight:900;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-card-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:8px}.agenda-likes,.agenda-like-btn{min-height:40px;padding:7px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#252628;color:#fff;font:inherit;font-size:12px;font-weight:900;line-height:1;white-space:nowrap}.agenda-like-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease}.agenda-like-btn:hover,.agenda-like-btn:focus-visible{background:rgba(174,239,255,.18);border-color:rgba(174,239,255,.55);transform:translateY(-1px);outline:none}.agenda-like-btn.is-liked{background:linear-gradient(135deg,#315cff,#ff3b35);border-color:rgba(255,255,255,.38)}.agenda-like-btn.is-loading{opacity:.7;pointer-events:none}.agenda-like-btn.has-error{background:rgba(255,59,53,.2);border-color:rgba(255,180,177,.7)}
.agenda-event-title{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.agenda-recent-badge{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:6px 11px;border:1px solid #ffcf6e;border-radius:8px;background:linear-gradient(135deg,#ff4d3d 0%,#e91e63 52%,#9c27b0 100%);color:#fff;box-shadow:0 4px 14px rgba(236,51,92,.45),inset 0 1px 0 rgba(255,255,255,.38);font-size:10px;font-weight:950;letter-spacing:.55px;line-height:1;white-space:nowrap;text-shadow:0 1px 1px rgba(0,0,0,.23)}.agenda-style-card.has-recent{border-color:rgba(255,94,92,.62)!important;box-shadow:0 7px 23px rgba(213,47,85,.14),inset 0 0 0 1px rgba(255,190,86,.10)}.scroll-top{position:fixed;right:max(18px,calc((100vw - 1180px)/2 + 18px));bottom:calc(84px + var(--safe-b));z-index:30;width:52px;height:52px;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:linear-gradient(145deg,#6e68ee,#ec4472);box-shadow:0 10px 25px rgba(0,0,0,.45);color:#fff;font-size:33px;font-weight:900;line-height:1;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .2s,transform .2s}
.agenda-date-tile{background:#172652;border:1px solid rgba(70,110,255,.38);color:#fff;justify-content:center}.agenda-date-tile small{color:#b8c9ff;font-size:8px;font-weight:950;letter-spacing:.5px}.agenda-date-tile b{margin:2px 0;font-size:14px;line-height:16px}.agenda-date-tile span{font-size:11px;line-height:16px;font-weight:900;text-transform:none}
.agenda-event-copy{grid-column:1/-1;padding:2px 3px}.agenda-event-copy h3{margin:0;font-size:16px;line-height:21px}.agenda-event-copy p{margin:5px 0 0;color:rgba(255,255,255,.72);font-size:11px;line-height:16px}
.agenda-style-card .event-source{justify-self:end;width:auto;min-width:86px;margin:0;padding:9px 12px;border-color:rgba(255,255,255,.18);border-radius:999px;background:#252628;color:#fff}.agenda-style-card .event-source b{font-size:13px;color:#9ee8ff}
.agenda-style-card .event-source-video{background:linear-gradient(135deg,#d9152d,#8c153b);border-color:rgba(255,126,145,.58);color:#fff}.agenda-style-card .event-source-video b{color:#fff1f3}
.agenda-style-card[data-theme~="famille"]:before,.agenda-style-card[data-theme~="fete"]:before{background:#ff3b35!important}.agenda-style-card[data-theme~="famille"] .agenda-visual-tile{background:linear-gradient(135deg,#d9ab23,#d27719 58%,#4b607e)}.agenda-style-card[data-theme~="famille"] .agenda-date-tile,.agenda-style-card[data-theme~="fete"] .agenda-date-tile{background:#5c211f;border-color:#973730}.agenda-style-card[data-theme~="musique"]:before{background:#22c55e!important}.agenda-style-card[data-theme~="musique"] .agenda-visual-tile{background:linear-gradient(135deg,#21a455,#08774e 58%,#3c67f1)}.agenda-style-card[data-theme~="musique"] .agenda-date-tile{background:#173f28;border-color:#2d7d4b}.agenda-style-card[data-theme~="sport"]:before{background:#f59e0b!important}.agenda-style-card[data-theme~="sport"] .agenda-visual-tile{background:linear-gradient(135deg,#d7b328,#d17a15 58%,#495f7d)}.agenda-style-card[data-theme~="sport"] .agenda-date-tile{background:#563b1c;border-color:#8d6025}.agenda-style-card[data-theme~="culture"] .agenda-visual-tile{background:linear-gradient(135deg,#713de1,#c43f9c 58%,#ff6c78)}
@media (max-width:759px){
  #page-agenda .page-title{text-align:center}
  #page-agenda .page-title p{margin-left:auto;margin-right:auto}
  #agenda-feed,.agenda-month,.agenda-month-events{width:100%;align-items:stretch}
  .agenda-month>h2,.agenda-results{text-align:center}
  .agenda-style-card{text-align:center}
  .agenda-visual-tile,.agenda-date-tile{align-items:center;text-align:center}
  .agenda-event-copy{text-align:center;padding-left:8px;padding-right:8px}
  .agenda-style-card .event-source{justify-self:center;justify-content:center}
  #page-photos .page-title{text-align:center}
  #page-photos .page-title p{margin-left:auto;margin-right:auto}
  #page-photos .facebook-tip{text-align:center;border-left:0;border-top:3px solid #1877f2;border-radius:9px}
  #facebook-feed{width:100%;text-align:center}
  .photo-period{flex-direction:column;justify-content:center;text-align:center}
  .photo-date-group,.photo-group-heading{text-align:center}
  .photo-date-preview{width:min(100%,340px);max-width:340px;margin-left:auto;margin-right:auto}
  .photo-facebook-actions{width:min(100%,340px);margin-left:auto;margin-right:auto}
  #page-photos .facebook-follow-btn,#page-photos .facebook-btn{width:min(100%,340px);box-sizing:border-box;margin-left:auto;margin-right:auto}
}
.home-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;border-radius:16px;overflow:hidden}.home-photo-grid>.loading-card,.home-photo-grid>.info-card{grid-column:1/-1;margin:0}.home-photo-grid a{display:block;aspect-ratio:1;background:#0f0f0f;overflow:hidden}.home-photo-grid img{width:100%;height:100%;object-fit:cover;display:block}
.photo-preview-card{display:block;background:#0f0f0f;border:1px solid rgba(255,255,255,.12);border-radius:17px;overflow:hidden;color:#fff;text-decoration:none;margin-bottom:13px}.photo-cover{height:190px;position:relative;background:#091537;display:grid;place-items:center}.photo-cover>img{width:100%;height:100%;object-fit:cover;display:block}.photo-cover>span{color:#9ee8ff;font-size:38px}.photo-cover>b{position:absolute;right:10px;bottom:10px;background:rgba(5,5,5,.78);padding:6px 8px;border-radius:8px;font-size:9px}.photo-copy{padding:13px}.photo-copy h3{font-size:14px;margin:0}.photo-copy p{font-size:10px;color:rgba(255,255,255,.62);margin:5px 0 0}.photo-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:0 2px 2px}.photo-strip img{width:100%;aspect-ratio:1.4;object-fit:cover;display:block}
.photo-period{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 17px;padding:11px 13px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#0f0f0f}.photo-period b{font-size:12px}.photo-period span{color:rgba(255,255,255,.55);font-size:10px}.photo-date-group{margin:0 0 22px}.photo-group-heading{margin:0 2px 9px}.photo-date-group h2{margin:0;color:#fff;font-size:14px;line-height:19px;font-weight:900;text-transform:none}.photo-group-heading p{margin:3px 0 0;color:#9ee8ff;font-size:10px;text-transform:capitalize}.photo-date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;border-radius:14px;overflow:hidden}.dated-photo-card{display:block;aspect-ratio:1;background:#0f0f0f;overflow:hidden}.dated-photo-card img{width:100%;height:100%;display:block;object-fit:cover}.facebook-year{margin:27px 0 4px}.facebook-year>h2{margin:0 0 10px;font-size:18px}.facebook-year .photo-preview-card{margin-bottom:0}
.photo-date-preview{grid-template-columns:minmax(0,1fr);max-width:300px}.photo-date-preview .dated-photo-card{aspect-ratio:4/3;border-radius:14px}.photo-facebook-link{display:inline-flex;margin-top:9px;padding:9px 12px;border-radius:10px;background:#1877f2;color:#fff;text-decoration:none;font-size:10px;font-weight:850}
.photo-facebook-actions{display:grid;grid-template-columns:1fr;gap:7px;margin-top:9px}.photo-facebook-actions .photo-facebook-link{display:flex;align-items:center;justify-content:center;margin:0;min-height:38px;box-sizing:border-box;text-align:center}.photo-facebook-page{display:flex;align-items:center;justify-content:center;min-height:38px;padding:9px 10px;box-sizing:border-box;border:1px solid rgba(24,119,242,.50);border-radius:10px;background:rgba(24,119,242,.12);color:#b8d8ff;text-decoration:none;text-align:center;font-size:9px;font-weight:850}
.facebook-tip{margin:-10px 0 16px;padding:10px 12px;border-left:3px solid #1877f2;border-radius:0 9px 9px 0;background:rgba(24,119,242,.08);color:rgba(255,255,255,.62);font-size:9px;line-height:14px}.facebook-tip b{color:#9ee8ff}

/* Lisibilité téléphone/tablette : les informations secondaires restent
   compactes, mais ne descendent plus à des corps de 8–9 px. */
.page-title p,.section-heading p{font-size:12px;line-height:17px}
.quick-card small,.card-copy p,.album-card p,.event-card p,.subtle,.privacy-note{font-size:11px;line-height:16px}
.bottom-nav button small{font-size:10px}
.link-list small{font-size:11px;line-height:15px}
.priority-actions-title b{font-size:14px}.priority-actions-title small{font-size:10px;line-height:14px}
.home-install-button>b,.push-button>b{font-size:13px}.home-install-button>small,.push-button>small{font-size:10px;line-height:13px}
.network-follow-row a{font-size:10px}
.photo-date-group h2{font-size:15px;line-height:20px}.photo-group-heading p,.photo-facebook-link{font-size:11px}.facebook-tip{font-size:10.5px;line-height:16px}
.agenda-filters label{font-size:10px}.agenda-filters select,.agenda-filters button{font-size:12px}.agenda-results{font-size:11px}.event-source{font-size:12px}
.push-button{width:100%;margin-top:18px;padding:13px 14px;border:1px solid rgba(89,211,255,.35);border-radius:13px;background:linear-gradient(135deg,#102838,#0a1822);color:#fff;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;text-align:left;cursor:pointer}.push-button>span{grid-row:1/3;align-self:center;font-size:22px}.push-button>b{font-size:12px}.push-button>small{margin-top:3px;color:#8fb5c7;font-size:9px}.push-button.enabled{border-color:#2ecb78;background:#0d2b1c}.push-button.enabled>small{color:#83e7ad}
.network-follow-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.network-follow-row a,.youtube-subscribe-btn,.facebook-follow-btn{display:flex;align-items:center;justify-content:center;gap:7px;min-height:41px;border-radius:11px;color:#fff;text-decoration:none;text-align:center;font-size:9px;font-weight:850}.network-follow-row img{width:17px;height:17px;object-fit:contain}.follow-facebook,.facebook-follow-btn{background:#1877f2}.follow-youtube,.youtube-subscribe-btn{background:#e50914}.youtube-subscribe-btn,.facebook-follow-btn{margin:0 0 8px;padding:11px 13px;font-size:11px}.facebook-follow-btn{margin-top:14px}.facebook-follow-btn+.facebook-btn{margin-top:8px}
.priority-actions{margin:0 0 16px;padding:14px;border:1px solid rgba(158,232,255,.18);border-radius:17px;background:linear-gradient(135deg,rgba(46,91,255,.10),rgba(10,12,16,.96))}.priority-actions-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 2px 9px}.priority-actions-title b{font-size:13px}.priority-actions-title small{color:rgba(255,255,255,.52);font-size:9px}.priority-actions .home-install-button,.priority-actions .push-button{margin-top:8px}
.global-priority-actions{margin:12px 17px 2px;position:relative;z-index:18}.global-priority-actions .network-follow-row{max-width:none}
.floating-contact{position:fixed;z-index:30;right:max(17px,calc((100vw - 620px)/2 + 17px));bottom:calc(80px + var(--safe-b));width:48px;height:48px;border-radius:50%;background:#2e5bff;color:#fff;text-decoration:none;display:grid;place-items:center;font-size:20px;box-shadow:0 8px 24px #0008,0 0 0 1px #ffffff18}
@media(min-width:621px){.floating-contact{bottom:98px}}
.home-install-button{width:100%;margin-top:12px;padding:13px 14px;border-radius:14px;background:#091537;border:1px solid rgba(158,232,255,.25);color:#fff;display:grid;grid-template-columns:35px 1fr;grid-template-rows:auto auto;text-align:left;column-gap:10px;align-items:center;cursor:pointer}.home-install-button>span{grid-row:1/3;width:35px;height:35px;border-radius:10px;background:#2e5bff;display:grid;place-items:center;font-size:21px}.home-install-button>b{font-size:12px;align-self:end}.home-install-button>small{font-size:9px;color:rgba(255,255,255,.58);align-self:start;margin-top:2px}.home-install-button[hidden],.install-button[hidden]{display:none}
.install-modal{position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.76);backdrop-filter:blur(10px);display:flex;align-items:flex-end;justify-content:center;padding:18px 14px calc(18px + var(--safe-b))}.install-modal[hidden]{display:none}.install-modal-card{width:min(100%,480px);background:#101114;border:1px solid rgba(255,255,255,.16);border-radius:25px;padding:22px;text-align:center;box-shadow:0 24px 80px #000}.install-app-icon{width:68px;height:68px;margin:0 auto 13px;border-radius:17px;overflow:hidden;box-shadow:0 8px 25px #0008}.install-app-icon img{width:100%;height:100%;display:block}.modal-kicker{color:#9ee8ff;font-size:9px;letter-spacing:2px;font-weight:900}.install-modal-card h2{font-size:23px;line-height:28px;margin:7px auto 8px;max-width:360px}.install-modal-card>p{font-size:12px;line-height:18px;color:rgba(255,255,255,.62);margin:0 auto 15px;max-width:330px}.ios-install-steps{background:#091537;border:1px solid rgba(158,232,255,.24);border-radius:15px;padding:5px 13px;text-align:left;margin:0 0 13px}.ios-install-steps[hidden]{display:none}.ios-install-steps>div{display:grid;grid-template-columns:27px 1fr;gap:8px;align-items:start;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.09)}.ios-install-steps>div:last-child{border-bottom:0}.ios-install-steps span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#2e5bff;color:#fff;font-size:11px;font-weight:900}.ios-install-steps p{margin:0;color:#fff;font-size:11px;line-height:15px}.ios-install-steps small{display:block;color:rgba(255,255,255,.62);font-size:9px;line-height:13px;margin-top:3px;font-weight:500}.share-symbol{display:inline-block;position:relative;font-style:normal;border:1.7px solid #9ee8ff;border-radius:2px;width:15px;height:14px;margin-left:3px;vertical-align:-2px;color:#9ee8ff}.share-symbol em{position:absolute;left:3px;top:-9px;font-size:15px;line-height:14px;font-style:normal}.modal-primary,.modal-later{width:100%;border-radius:12px;padding:13px;font-weight:850;cursor:pointer}.modal-primary{background:#2e5bff;color:#fff}.modal-later{background:none;color:rgba(255,255,255,.62);margin-top:3px}
@media(min-width:621px){.install-modal{align-items:center}}

/* Tablettes : on quitte progressivement la présentation téléphone. */
@media (min-width:760px){
  .app-shell{max-width:900px}
  .bottom-nav{width:min(100%,900px)}
  .page{padding:26px 30px 105px}
  .hero{min-height:410px}
  .quick-grid{grid-template-columns:repeat(3,1fr)}
  #facebook-feed,#youtube-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  #facebook-feed .photo-date-group{margin:0;padding:15px;background:#0d0f12;border:1px solid rgba(255,255,255,.10);border-radius:17px}
  .photo-date-preview{max-width:none}
  .photo-facebook-link{width:100%;justify-content:center}
  #youtube-feed .video-card{margin:0}
  .floating-contact{right:max(24px,calc((100vw - 900px)/2 + 24px))}
  .global-priority-actions{margin:14px 30px 2px;padding:13px 14px;background:linear-gradient(110deg,rgba(46,91,255,.09),rgba(9,21,55,.34) 45%,rgba(10,12,16,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
  .global-priority-actions .priority-actions-title{margin:0 2px 6px}
  .global-priority-actions .home-install-button,.global-priority-actions .push-button{min-height:58px;padding:10px 12px;border-radius:12px}
  .global-priority-actions .network-follow-row a{min-height:58px;border-radius:12px;font-size:10px}
}

/* Ordinateurs / Mac : vraie mise en page large, sans étirer l'UI mobile. */
@media (min-width:1100px){
  body{padding:18px 22px}
  .app-shell{max-width:1180px;min-height:calc(100dvh - 36px);border-radius:25px}
  .bottom-nav{width:min(calc(100% - 44px),1180px)}
  .topbar{padding-left:34px;padding-right:34px}
  .page{padding:34px 42px 110px}
  .page-title{padding:22px 4px 27px}.page-title h1{font-size:44px}.page-title p{font-size:15px;line-height:21px}
  .section-heading h2{font-size:23px}.section-heading p{font-size:13px;line-height:19px}
  .hero{min-height:460px}.hero-content{padding:42px}.hero h1{font-size:55px;max-width:560px}.hero p{font-size:16px;line-height:24px;max-width:500px}
  #facebook-feed,#youtube-feed{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
  #agenda-feed{display:grid;grid-template-columns:1fr;gap:12px}
  .agenda-month{gap:12px}.agenda-month>h2{margin:15px 2px 2px;font-size:32px;line-height:38px;letter-spacing:-1px}.agenda-month-events{gap:12px}
  .agenda-filters{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:end}.agenda-filters label:nth-child(5){grid-column:auto}.agenda-filters button{grid-column:auto;height:42px;min-height:42px;padding:0 8px;white-space:nowrap}.agenda-filters label{font-size:8px}.agenda-filters select{padding-left:8px;padding-right:19px;font-size:10px}
  .agenda-style-card{grid-template-columns:112px 132px minmax(0,1fr) auto;gap:14px!important;align-items:center!important;min-height:96px;padding:11px 14px 11px 17px!important}.agenda-visual-tile,.agenda-date-tile{min-height:72px}.agenda-visual-tile b{font-size:12px}.agenda-visual-tile span{font-size:9px}.agenda-date-tile span{font-size:13px;line-height:18px}.agenda-event-copy{grid-column:auto;padding:0}.agenda-event-copy h3{font-size:17px;line-height:22px}.agenda-event-copy p{font-size:12px;line-height:17px}.agenda-card-actions{grid-column:auto;justify-content:flex-end}.agenda-style-card .event-source{justify-self:auto;min-width:92px;margin:0}
  #page-more .link-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .network-follow-row{max-width:620px}
  .priority-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;align-items:stretch}.priority-actions-title{grid-column:1/-1;margin-bottom:1px}.priority-actions .home-install-button,.priority-actions .push-button,.priority-actions .network-follow-row{margin-top:0;max-width:none}.priority-actions .network-follow-row{height:100%}
  .global-priority-actions{margin:14px 42px 4px;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:11px;row-gap:7px}
  .global-priority-actions:has(.home-install-button[hidden]){grid-template-columns:repeat(3,minmax(0,1fr))}
  .global-priority-actions .network-follow-row{display:contents}
  .global-priority-actions .home-install-button,.global-priority-actions .push-button,.global-priority-actions .network-follow-row a{width:100%;height:66px;min-height:66px;box-sizing:border-box;margin:0;border-radius:14px}
  .global-priority-actions .push-button{grid-template-columns:38px 1fr;padding:11px 17px}.global-priority-actions .push-button>span{font-size:21px}.global-priority-actions .push-button>b{font-size:14px}.global-priority-actions .push-button>small{font-size:11px;line-height:14px}
  .global-priority-actions .home-install-button{grid-template-columns:36px 1fr;column-gap:10px;padding:11px 17px}.global-priority-actions .home-install-button>span{width:36px;height:36px;border-radius:10px;font-size:19px}
  .global-priority-actions .network-follow-row a{padding:0 18px;font-size:13px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12);transition:transform .16s ease,filter .16s ease}.global-priority-actions .network-follow-row a:hover{filter:brightness(1.09);transform:translateY(-2px)}
  .global-priority-actions .network-follow-row img{width:20px;height:20px}
  .global-priority-actions .priority-actions-title{margin:0 2px 5px}.global-priority-actions .priority-actions-title b{font-size:15px}.global-priority-actions .priority-actions-title small{font-size:11px;letter-spacing:.2px}
  .quick-card strong{font-size:18px}.quick-card small,.card-copy p,.event-card p,.link-list small{font-size:12px;line-height:17px}.card-copy h3,.event-card h3{font-size:16px;line-height:21px}.bottom-nav button small{font-size:11px}.facebook-tip{font-size:12px;line-height:18px}.photo-date-group h2{font-size:17px;line-height:22px}.photo-group-heading p,.photo-facebook-link{font-size:12px}.agenda-results{font-size:12px}
  .floating-contact{right:max(28px,calc((100vw - 1180px)/2 + 28px))}
}
