:root{--text-color:#FFF;--text-shadow:1px 1px 3px rgba(0,0,0,.6);--font-family-primary:'Helvetica Neue',Arial,sans-serif;--background-dark:rgba(0,0,0,.6)}body{margin:0;font-family:var(--font-family-primary);background-color:#000;display:flex;justify-content:center;align-items:center;min-height:100vh;width:100vw;overflow:hidden}.tv-screen{width:100vw;height:100vh;color:var(--text-color);position:relative;overflow:hidden}
/* Background Image */
#background-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1}
/* Fullscreen Button */
#fullscreen-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:1vw 2vw;font-size:2vw;font-weight:700;color:#FFF;background-color:rgba(200,50,50,.8);border:3px solid #FFF;border-radius:10px;cursor:pointer;z-index:100;opacity:0;transition:opacity .3s;pointer-events:none}.show-fullscreen-btn{opacity:1!important;pointer-events:auto!important}
/* Header Bar: Increased top padding to 3vh */
.header-bar{position:absolute;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:3vh 3vw 1.5vh;box-sizing:border-box;z-index:10;text-shadow:var(--text-shadow)}.header-left{display:flex;align-items:center}
/* Rounded Logo */
.header-logo{width:3.5vw;height:3.5vw;border-radius:10%;margin-right:1vw;object-fit:cover;background-color:#FFF;padding:.3vw}
/* Header Center: Background opacity lowered to 0.5 */
.header-center{display:flex;align-items:center;gap:1.5vw;font-size:1.8vw;font-weight:600;background:rgba(0,0,0,.5);padding:1.5vh 2vw;border-radius:1vw}.header-date-label{font-weight:400;opacity:.8}.header-date{font-weight:700}.header-right{display:flex;flex-direction:column;align-items:flex-end}
/* ⭐️ Clock is bigger */
.header-time{font-size:3.5vw;font-weight:700;line-height:1.1}
/* ⭐️ Date is bigger */
.header-day-date{font-size:2vw;font-weight:400;opacity:.9}
/* Main Content */
.main-content{position:absolute;top:20vh;left:5vw;z-index:10;text-shadow:var(--text-shadow)}
/* ⭐️ Bienvenue text is smaller */
.main-content h1{margin:0 0 1.5vh;font-size:4vw;font-weight:700;line-height:1.1}
/* ⭐️ Paragraph is smaller */
.main-content p{margin:0;font-size:1.5vw;width:50vw;line-height:1.4}

/* Footer - REMOVED BACKGROUND, ADDED SHADOW */
.footer{
    position:absolute;
    bottom:0; 
    left:0; 
    width:100vw; 
    display:flex;
    justify-content: center; 
    align-items: center;     
    z-index:10;
    /* background-color: rgb(0, 0, 0); <-- REMOVED */
    text-shadow: var(--text-shadow); /* <-- ADDED BACK */
    padding: 0.5vh 3vw;        
    box-sizing: border-box; 
    gap: 4vw;                
}

/* Contact Group (Used for both WiFi and Contact) */
.footer-left-contact{display:flex;flex-direction:column;align-items:flex-start;gap:.8vh;font-size:1.5vw}
.footer-left-contact .contact-item strong{font-size:1.8vw;margin-top:1vh;display:block}.contact-item{display:flex;align-items:center;gap:.8vw;line-height:1.2}
/* SVG Icon Styling (applies to both wifi and contact icons) */
.contact-icon{width:1.8vw;height:1.8vw;fill:var(--text-color);vertical-align:middle}.contact-item p{margin:0}
.footer-center-widget{flex:1 1 30vw;display:flex;justify-content:center;align-items:flex-end;padding-bottom:1vh;z-index:10}

.footer-qr-group{display:flex;gap:3vw;text-align:center}.qr-code-section{display:flex;flex-direction:column;align-items:center}.qr-code-section img{width:8vw;height:8vw;object-fit:contain;background-color:#FFF;padding:.3vw;border-radius:1vw;margin-bottom:.5vh}.qr-code-section p{margin:0;font-size:1.2vw;font-weight:600;line-height:1}

/* --- Style overrides for Meteomatics widget --- */
div[data-meteomatics-weather-widget] {
    /* background: transparent !important; <-- REMOVED */
    transform: scale(0.7); 
    transform-origin: center; 
}