:root{--ink:#10233b;--navy:#2563eb;--accent:#75b6e7;--paper:rgba(255,255,255,.94);--shadow:0 24px 65px rgba(8,25,49,.19);--widget-font-scale:1}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:#fff;font-family:Inter,system-ui,sans-serif;background:#8297a5}button,input,textarea{font:inherit}.wallpaper{position:fixed;inset:0;z-index:-3;background:url('haut-doubs.webp') center/cover no-repeat}.shade{position:fixed;inset:0;z-index:-2;background:linear-gradient(rgba(6,24,42,.42),rgba(7,23,38,.02) 42%,rgba(4,18,31,.38))}.page-shell{width:min(1240px,calc(100% - 56px));min-height:100vh;margin:auto;padding:20px 0 18px;display:flex;flex-direction:column}.topbar{display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:10px;width:max-content;color:#fff;text-decoration:none}.brand-copy{display:flex;flex-direction:column}.brand-copy b{font:800 26px/1 system-ui,sans-serif;letter-spacing:-1.2px}.brand-copy b span{color:var(--accent)}.brand-copy small{margin-top:5px;color:#ffffffbf;font-size:10px;letter-spacing:.03em}.compass{width:54px;filter:drop-shadow(0 8px 18px #01122355)}.compass rect{fill:var(--navy)}.outer-ring{fill:none;stroke:#fff;stroke-width:4}.graduations{fill:none;stroke:#fff;stroke-width:5;stroke-dasharray:.65 3.22;opacity:.62}.major-ticks{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round}.cardinals{fill:#fff}.compass text{fill:#fff;font:900 17px Arial;text-anchor:middle;dominant-baseline:middle}.needle-n{fill:#fff}.needle-s{fill:#ffffff47}.hub{fill:#fff}.accent{fill:var(--navy)}.top-actions{display:flex;align-items:center;gap:8px}.weather-peek,.save-button,.icon-button,.organize-button{height:42px;border:1px solid #ffffff61;border-radius:13px;color:#fff;background:#0c263a42;backdrop-filter:blur(16px);cursor:pointer}.weather-peek{display:flex;align-items:center;gap:8px;padding:0 12px;text-align:left}.weather-symbol{font-size:22px;color:#ffd265}.weather-peek span:last-child{display:flex;flex-direction:column}.weather-peek b{font-size:13px}.weather-peek small{font-size:9px;color:#ffffffc7}.save-button{display:flex;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:700}.save-button svg,.icon-button svg,.organize-button svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-button{width:42px;display:grid;place-items:center}.palette-button svg{width:21px}.palette-button svg circle{fill:currentColor;stroke:none}
.center-stage{margin:auto 0 0;padding-top:5vh}.search{width:min(720px,100%);height:62px;margin:auto;display:flex;align-items:center;gap:13px;padding:0 8px 0 20px;color:var(--ink);background:#fffffff2;border:1px solid #ffffffcc;border-radius:18px;box-shadow:0 22px 60px #06192d42}.google-g{font:700 24px Arial;color:#4285f4}.search input{flex:1;min-width:0;border:0;outline:0;background:none;font-size:17px}.search-submit{width:46px;height:46px;border:0;border-radius:13px;display:grid;place-items:center;color:#fff;background:var(--navy)}.search-submit svg{width:21px;fill:none;stroke:currentColor;stroke-width:1.8}
.shortcut-bar{position:relative;width:max-content;max-width:100%;margin:23px auto 0;padding:12px 19px 11px;border:1px solid #ffffff52;border-radius:23px;background:#081d2f4d;backdrop-filter:blur(18px)}.app-grid{display:flex;gap:12px}.app{position:relative;width:64px;display:flex;flex-direction:column;align-items:center;gap:6px;border:0;color:#fff;background:none;text-decoration:none;cursor:pointer}.app-tile{width:48px;height:48px;display:grid;place-items:center;overflow:hidden;border-radius:13px;background:#fff;box-shadow:0 9px 20px #0012214d;transition:.18s}.app:hover .app-tile{transform:translateY(-4px) scale(1.03)}.app img{display:block;width:35px;height:35px;object-fit:contain}.app em{width:100%;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-style:normal;font-weight:650;text-shadow:0 2px 9px #000a;white-space:nowrap}.add-app .app-tile{background:#ffffff21;border:1px dashed #ffffffad;color:#fff;box-shadow:none}.add-app svg{width:23px;fill:none;stroke:currentColor;stroke-width:1.6}.organize-button{position:absolute;right:-43px;top:22px;width:33px;height:33px;border-radius:10px;display:grid;place-items:center}.organize-button span{display:none}.app-grid.organizing .app:not(.add-app){animation:wiggle .28s infinite alternate}@keyframes wiggle{to{transform:rotate(1deg)}}
.daily{display:grid;grid-template-columns:1.12fr 1.2fr 1.05fr .92fr;gap:13px;margin-top:auto;padding-top:6vh}.daily article{min-height:184px;padding:20px;border-radius:21px;color:var(--ink);background:var(--paper);box-shadow:var(--shadow);backdrop-filter:blur(22px);transition:.2s}.daily article:hover{transform:translateY(-3px);background:#fff}.daily article.hidden{display:none}.eyebrow{color:#5f7082;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.story-top{display:flex;justify-content:space-between}.source{font-size:11px;font-weight:800;color:#58728c}.story-card h2{margin:18px 0 7px;font:700 21px/1.12 Georgia}.story-card p{margin:0;color:#617080;font-size:12px}.story-card a{display:block;margin-top:18px;color:var(--navy);font-size:12px;font-weight:800;text-decoration:none}.weather-card{display:flex;justify-content:space-between;gap:15px;background:linear-gradient(145deg,#ecf6f9f2,#fffffff0)!important}.weather-card strong{display:block;margin-top:9px;font:500 47px Georgia}.weather-card p{margin:1px 0;color:#667583;font-size:11px}.weather-days{display:flex;align-items:center;gap:9px}.weather-days span{display:flex;flex-direction:column;align-items:center;gap:8px}.weather-days b,.weather-days em{font-size:10px;font-style:normal}.weather-days i{font-size:19px;font-style:normal;color:#e8a52d}.program{display:flex;align-items:center;gap:10px;margin-top:15px}.channel{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;color:#fff;font-weight:850}.france2{background:#ed3c87}.france5{background:#38a184}.program div{display:grid;grid-template-columns:42px 1fr;width:100%}.program b{font-size:11px}.program strong{font:700 13px Georgia}.program small{grid-column:2;color:#788490;font-size:10px}.note-card{display:flex;flex-direction:column}.note-card textarea{flex:1;width:100%;margin-top:12px;border:0;outline:0;resize:none;background:transparent;font:italic 15px/1.5 Georgia}.note-card small{color:#7b8792;font-size:10px}footer{display:flex;justify-content:space-between;padding-top:18px;color:#ffffffc4;font-size:11px}footer nav{display:flex;gap:22px}footer a{color:inherit;text-decoration:none}
dialog{width:min(650px,calc(100% - 32px));padding:0;border:0;border-radius:24px;color:var(--ink);background:#fafcfd;box-shadow:0 35px 100px #05132561}dialog::backdrop{background:#030f1c78;backdrop-filter:blur(7px)}.dialog-card{padding:27px}.dialog-head{display:flex;justify-content:space-between}.dialog-head h2{margin:4px 0;font:700 27px Georgia}.dialog-close{width:36px;height:36px;border:0;border-radius:11px;background:#e8edf0;font-size:23px}.background-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:23px}.background-grid button{padding:7px;border:1px solid #dce3e7;border-radius:15px;background:#fff;text-align:left}.background-grid b{display:block;padding:7px 4px}.preview{display:block;height:85px;border-radius:10px}.paysage{background:url('haut-doubs.webp') center/cover}.atelier{background:linear-gradient(135deg,#657f96,#d5ba93)}.nuit{background:linear-gradient(145deg,#071a2b,#274962)}.clair{background:linear-gradient(145deg,#f3f5f3,#dce3e1)}.upload{display:block;margin-top:17px;padding:15px;border:1px dashed #b9c5cc;border-radius:15px}.upload span,.toggle span{display:flex;flex-direction:column}.upload small,.toggle small{color:#74818d}.upload input{display:none}.dialog-tabs{display:flex;margin-top:20px;padding:4px;background:#e9eef1;border-radius:13px}.dialog-tabs button{flex:1;padding:10px;border:0;background:none}.dialog-tabs .active{background:#fff;border-radius:10px}.tab-panel{display:none}.tab-panel.active{display:block}.panel-intro{color:#657581;font-size:13px}.catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.catalog button{padding:13px;border:1px solid #dfe5e8;border-radius:13px;background:#fff}.tab-panel label{display:flex;flex-direction:column;gap:7px;margin-top:14px;font-size:12px}.tab-panel input{height:45px;padding:0 13px;border:1px solid #d6dfe3;border-radius:12px}.helper{font-size:11px;color:#6f7e89}.primary{width:100%;height:45px;border:0;border-radius:13px;color:#fff;background:var(--navy)}.settings{position:fixed;z-index:20;top:16px;right:16px;width:min(380px,calc(100% - 32px));height:calc(100vh - 32px);padding:26px;border-radius:25px;color:var(--ink);background:#fafcfd;transform:translateX(calc(100% + 35px));transition:.28s}.settings.open{transform:none}.backdrop{position:fixed;z-index:19;inset:0;display:none;background:#030f1c4d}.backdrop.open{display:block}.toggle{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid #e1e7ea}.toggle b{font-size:13px}.toggle small{font-size:11px}
@media(max-width:1050px){.daily{grid-template-columns:repeat(2,1fr)}.app-grid{display:grid;grid-template-columns:repeat(5,70px)}.dayline span{display:none}.dayline{grid-template-columns:1fr}.dayline strong{padding:0;border:0}}@media(max-width:680px){.page-shell{width:calc(100% - 24px)}.dayline{display:none}.glass-button{width:43px;font-size:0}.center-stage{padding-top:8vh}.search{height:58px}.google-mark{display:none}.shortcut-bar{width:100%;padding:14px 8px}.app-grid{grid-template-columns:repeat(5,1fr);gap:14px 1px}.app{width:auto}.app-tile{width:49px;height:49px}.organize-button{right:5px;top:-44px}.daily{display:flex;overflow-x:auto}.daily article{min-width:270px}.background-grid{grid-template-columns:repeat(2,1fr)}}

/* Révision 2.0 : widgets détaillés et éléments normalisés */
.brand-copy b span{color:var(--navy);text-shadow:0 1px 9px #ffffffa8}.app img{width:100%;height:100%;padding:10px;border-radius:13px;object-fit:contain;background:transparent}.app-youtube .app-tile{background:#ff0033}.app-gmail .app-tile{background:#ea4335}.app-leboncoin .app-tile{background:#ff6e14}.app-amazon .app-tile{background:#17243a}.app-francetv .app-tile{background:#202124}.app-wikipedia .app-tile{background:#5d6670}.app-facebook .app-tile{background:#1877f2}.app-instagram .app-tile{background:linear-gradient(145deg,#833ab4,#e1306c 55%,#fcb045)}
.daily{grid-template-columns:1.15fr 1.05fr 1fr .82fr;gap:12px;padding-top:5vh}.daily article{min-height:198px;padding:17px;border-radius:19px}.panel-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid #dfe6eb}.panel-head>span{display:flex;align-items:center;gap:7px}.panel-head i{font-size:16px;font-style:normal;color:var(--navy)}.panel-head b{font-size:13px}.panel-head button{border:0;color:var(--navy);background:none;font-size:10px;font-weight:750;cursor:pointer}.weather-card{display:block!important;background:var(--paper)!important}.weather-main{display:flex;align-items:end;justify-content:space-between;padding:10px 0 7px}.weather-main strong{font:500 43px/1 Georgia}.weather-main p{margin:3px 0 0;color:#667583;font-size:10px}.weather-main>span{color:#6c7b88;font-size:9px;line-height:1.5;text-align:right}.weather-days{display:flex;justify-content:space-between;gap:6px}.weather-days span{gap:5px}.weather-days b,.weather-days em{font-size:9px}.weather-days i{font-size:16px}.program{margin-top:10px}.channel{width:31px;height:29px;flex:none;border-radius:8px;font-size:9px}.tf1{background:#152b55}.france2{background:#0096da}.arte{background:#ef3e54}.program div{grid-template-columns:40px 1fr}.program b{font-size:10px}.program strong{font:700 11px Inter,system-ui}.program small{font-size:9px}.calendar-title{display:flex;align-items:center;justify-content:space-between;padding:10px 0 8px}.calendar-title strong{font-size:11px}.calendar-title button{border:0;background:none;color:var(--navy);font-size:18px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}.calendar-grid b{color:#87939d;font-size:8px}.calendar-grid span{height:20px;display:grid;place-items:center;border-radius:6px;font-size:9px}.calendar-grid .today{color:#fff;background:var(--navy);font-weight:800}.note-card textarea{font-size:14px}.background-grid{grid-template-columns:repeat(3,1fr)}.preview.bretagne{background:url('bretagne.webp') center/cover}.preview.foret{background:url('foret.webp') center/cover}
@media(max-width:1050px){.daily{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.save-button span,.weather-peek small{display:none}.save-button{width:42px;padding:0;justify-content:center}.weather-peek{padding:0 9px}.brand-copy small{display:none}.daily{display:flex}.daily article{min-width:270px}.background-grid{grid-template-columns:repeat(2,1fr)}}

/* Couleurs de marque et widgets plus expressifs */
.brand-copy b span{color:var(--navy);text-shadow:none}.app-tile .brand-svg{width:100%;height:100%;padding:0}.app-leboncoin .app-tile{background:linear-gradient(145deg,#ff8a3d,#ff5a1f)}.app-leboncoin .brand-svg path{fill:#fff}.app-leboncoin .brand-svg circle{fill:#ff6e24}.app-amazon .app-tile{background:linear-gradient(145deg,#fff,#eef2f6)}.app-amazon .brand-svg text{fill:#182536;font:700 31px Arial;text-anchor:middle}.app-amazon .amazon-smile{fill:none;stroke:#ff9900;stroke-width:3;stroke-linecap:round}.app-francetv .app-tile{background:#fff}.app-francetv .dot-one{fill:#e84b67}.app-francetv .dot-two{fill:#5e58a6}.app-francetv .dot-three{fill:#38a7c7}
.app-leboncoin .app-tile{background:#ff6e14}.app-leboncoin img{padding:0}.app-francetv .app-tile{background:#fff}.app-francetv img{padding:10px 6px}.center-stage{position:relative}.center-stage::before{content:"";position:absolute;z-index:-1;left:50%;top:42%;width:min(940px,92vw);height:220px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse at var(--glow-x,50%) 50%,color-mix(in srgb,var(--navy) 42%,transparent),transparent 66%);filter:blur(26px);opacity:.62;transition:opacity .4s}.center-stage:focus-within::before,.center-stage:hover::before{opacity:.95}.search{position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.search::after{content:"";position:absolute;left:-30%;bottom:0;width:28%;height:2px;background:linear-gradient(90deg,transparent,#fff,var(--accent),transparent);filter:drop-shadow(0 0 7px var(--accent));animation:search-orbit 7s ease-in-out infinite}.search:focus-within{transform:translateY(-2px);box-shadow:0 24px 72px #06192d70,0 0 0 1px #ffffff}.shortcut-bar{transition:background .3s ease,box-shadow .3s ease}.shortcut-bar:hover{background:#071d305c;box-shadow:0 18px 50px #03142252}.app{transform:translateY(var(--dock-y,0)) scale(var(--dock-scale,1));transform-origin:center bottom;transition:transform .16s ease}.app:hover .app-tile{transform:none}.app-tile{position:relative}.app-tile::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,#ffffff42,transparent 45%);pointer-events:none}@keyframes search-orbit{0%,15%{left:-30%}65%,100%{left:105%}}
.daily article{position:relative;overflow:hidden;border:1px solid #ffffffd9}.daily article::before{content:"";position:absolute;inset:0 0 auto;height:4px}.weather-card{background:linear-gradient(145deg,#f7fcffed,#e7f5fbed)!important}.weather-card::before{background:linear-gradient(90deg,#1d95d0,#56c1dc)}.tv-card{background:linear-gradient(145deg,#fffafd,#f7edf5f2)}.tv-card::before{background:linear-gradient(90deg,#d92979,#7957b5)}.calendar-card{background:linear-gradient(145deg,#fffdf7,#f8f2e5f2)}.calendar-card::before{background:linear-gradient(90deg,#e8a12b,#f1c45e)}.note-card{background:linear-gradient(145deg,#fbfff9,#edf6e9f2)}.note-card::before{background:linear-gradient(90deg,#5b9f65,#9abe72)}.panel-head{border-bottom-color:#cfdde5}.weather-main strong{color:#1378ae}.tv-card .panel-head i,.tv-card .panel-head button{color:#a92a68}.calendar-card .panel-head i,.calendar-card .panel-head button{color:#b67a18}.note-card .panel-head i{color:#4f8d56}
@media(prefers-reduced-motion:reduce){.search::after{animation:none}.app{transition:none}}

.compass{width:50px}.brand{gap:9px}.brand-copy small{width:max-content;margin-top:4px;padding:3px 7px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:rgba(255,255,255,.88);background:rgba(7,25,42,.2);backdrop-filter:blur(8px);font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 4px rgba(0,0,0,.4)}.search{background:rgba(255,255,255,.82);border-color:rgba(255,255,255,.76);backdrop-filter:blur(18px) saturate(120%)}.daily article,.weather-card,.tv-card,.calendar-card,.note-card{background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(245,249,251,.88))!important;backdrop-filter:blur(22px) saturate(115%)}.panel-head>span i svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.tv-card .panel-head>span i svg path:last-child{fill:currentColor;stroke:none}
.brand-copy{justify-content:center}.brand-copy small{position:relative;width:auto;margin:5px 0 0 1px;padding:0;border:0;border-radius:0;color:rgba(255,255,255,.82);background:none;backdrop-filter:none;font-size:8.5px;font-weight:600;line-height:1.15;letter-spacing:.055em;text-transform:none;text-shadow:0 1px 5px rgba(0,0,0,.65)}.shade{background:radial-gradient(circle at 68% 10%,var(--time-glow,rgba(255,255,255,.05)),transparent 42%),linear-gradient(var(--time-top,rgba(6,24,42,.42)),rgba(7,23,38,.02) 42%,var(--time-bottom,rgba(4,18,31,.38)));transition:background 12s ease}.period-morning{--time-glow:rgba(255,210,155,.16);--time-top:rgba(27,37,52,.3);--time-bottom:rgba(27,34,45,.3)}.period-day{--time-glow:rgba(190,226,255,.1);--time-top:rgba(6,24,42,.34);--time-bottom:rgba(4,18,31,.32)}.period-evening{--time-glow:rgba(255,164,124,.15);--time-top:rgba(28,24,51,.4);--time-bottom:rgba(16,18,40,.46)}.period-night{--time-glow:rgba(93,137,193,.1);--time-top:rgba(3,15,31,.55);--time-bottom:rgba(2,10,24,.6)}.period-morning .weather-card,.period-day .weather-card,.period-evening .tv-card{transform:none}.daily article,.weather-card,.tv-card,.calendar-card,.note-card{background:linear-gradient(145deg,rgba(255,255,255,.91),rgba(244,248,250,.86))!important;box-shadow:0 18px 48px rgba(8,25,49,.22),inset 0 1px 0 rgba(255,255,255,.82)}.daily article::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 0,rgba(255,255,255,.38),transparent 38%);opacity:.55;transition:opacity .25s}.daily article:hover::after{opacity:.9}.preview.aube{background:radial-gradient(circle at 72% 20%,#ffd7b4 0 6%,transparent 32%),linear-gradient(145deg,#7c8eaa,#d8a7a0 55%,#f0c9a3)}.preview.lagon{background:radial-gradient(circle at 25% 20%,#78d8d0,transparent 35%),linear-gradient(145deg,#0b6774,#1595a1 50%,#acd7c7)}.preview.crepuscule{background:radial-gradient(circle at 70% 25%,#efb27d,transparent 28%),linear-gradient(145deg,#253653,#765779 55%,#d18378)}.preview.sauge{background:radial-gradient(circle at 20% 15%,#dce5cb,transparent 32%),linear-gradient(145deg,#536d66,#829986 52%,#c7c9a7)}
.app em{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.shortcut-bar{padding:12px 18px}.app{width:54px;gap:0}.app-gmail .app-tile,.app-leboncoin .app-tile{background:#fff}.app-gmail img,.app-leboncoin img{padding:0;border-radius:13px}.center-stage::before{display:none}.search{isolation:isolate;background:rgba(255,255,255,.92);border-color:rgba(255,255,255,.9)}.search::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(140px circle at var(--search-x,50%) 50%,color-mix(in srgb,var(--accent) 25%,white),transparent 75%);opacity:0;transition:opacity .3s}.search:hover::before,.search:focus-within::before{opacity:1}.search::after{bottom:0;height:3px;width:42%;background:linear-gradient(90deg,transparent,var(--accent) 22%,#fff 50%,var(--navy) 78%,transparent);filter:drop-shadow(0 0 8px var(--accent));animation-duration:5.8s}.search:focus-within{box-shadow:0 26px 76px #06192d78,0 0 0 1px #fff,0 0 34px color-mix(in srgb,var(--accent) 45%,transparent)}
.brand-copy b,.brand-copy b span{text-shadow:0 2px 12px rgba(0,0,0,.68),0 1px 2px rgba(0,0,0,.72)}.compass{overflow:visible}.cardinals{filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))}.app{width:48px}.app-tile{width:42px;height:42px;border-radius:12px;box-shadow:0 7px 16px #00122140}.app img{border-radius:12px}.app-gmail img,.app-leboncoin img{border-radius:12px}.shortcut-bar{padding:10px 15px}.search::before{background:radial-gradient(115px circle at var(--search-x,50%) 50%,color-mix(in srgb,var(--accent) 18%,white),transparent 78%)}.search::after{left:0;bottom:0;width:34%;height:1px;background:linear-gradient(90deg,transparent 0%,var(--accent) 28%,#fff 50%,var(--accent) 72%,transparent 100%);filter:none;animation:search-pass 22s cubic-bezier(.45,.05,.55,.95) 4s infinite;transform:translateX(-120%)}@keyframes search-pass{0%,8%{transform:translateX(-120%);opacity:0}10%{opacity:1}28%{transform:translateX(395%);opacity:1}30%,100%{transform:translateX(395%);opacity:0}}
.daily article::before{display:none}.daily article{border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 48px rgba(8,25,49,.22),inset 0 1px 0 rgba(255,255,255,.8)}.panel-head>span i{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;color:#fff!important}.weather-card .panel-head>span i{background:linear-gradient(145deg,#1d95d0,#54c1dc)}.tv-card .panel-head>span i{background:linear-gradient(145deg,#d92979,#7957b5)}.calendar-card .panel-head>span i{background:linear-gradient(145deg,#e39a23,#f0c45b)}.note-card .panel-head>span i{background:linear-gradient(145deg,#4f955b,#9abe72)}.period-morning .weather-card,.period-day .weather-card,.period-evening .tv-card{box-shadow:0 22px 60px rgba(8,25,49,.28),0 0 0 1px color-mix(in srgb,var(--navy) 20%,transparent);transform:translateY(-3px)}
@media(prefers-reduced-motion:reduce){.search::after{animation:none}.app{transition:none}}

/* Correctifs finaux de transparence et d'uniformité des cartes. */
.search{background:rgba(255,255,255,.76);border-color:rgba(255,255,255,.68);-webkit-backdrop-filter:blur(18px) saturate(125%);backdrop-filter:blur(18px) saturate(125%)}
.daily article,.weather-card,.tv-card,.calendar-card,.note-card,.period-morning .weather-card,.period-day .weather-card,.period-evening .tv-card{background:linear-gradient(145deg,rgba(255,255,255,.91),rgba(244,248,250,.86))!important;box-shadow:0 18px 48px rgba(8,25,49,.22),inset 0 1px 0 rgba(255,255,255,.82);transform:none}
.daily article:hover,.period-morning .weather-card:hover,.period-day .weather-card:hover,.period-evening .tv-card:hover{transform:translateY(-3px)}
.brand-copy b{color:#fff;text-shadow:0 1px 5px rgba(0,0,0,.48)}.brand-copy b span{color:color-mix(in srgb,var(--navy) 42%,white);text-shadow:0 1px 5px rgba(0,0,0,.48)}.app{width:42px}.app-tile{width:36px;height:36px;border-radius:10px;box-shadow:0 6px 13px rgba(0,18,33,.25)}.app img,.app-gmail img,.app-leboncoin img{border-radius:10px}.app-grid{gap:9px}.app[draggable="true"],.daily article[draggable="true"]{cursor:grab}.app.dragging,.daily article.dragging{opacity:.38;cursor:grabbing}.daily article{transition:transform .2s,box-shadow .2s,opacity .16s}.daily article.dragging{transform:scale(.97)!important}.app.dragging{transform:scale(.9)!important}@media(max-width:680px){.app-tile{width:36px;height:36px}.app-grid{gap:12px 2px}}
.search{background:rgba(255,255,255,.64);border-color:rgba(255,255,255,.58);-webkit-backdrop-filter:blur(20px) saturate(130%);backdrop-filter:blur(20px) saturate(130%)}.daily{grid-template-columns:repeat(4,minmax(0,1fr))}.daily article,.weather-card,.tv-card,.calendar-card,.note-card,.todo-card,.timer-card,.quote-card,.period-morning .weather-card,.period-day .weather-card,.period-evening .tv-card{min-width:0;background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(240,246,249,.68))!important;border-color:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(25px) saturate(120%);backdrop-filter:blur(25px) saturate(120%)}.todo-card .panel-head>span i{background:linear-gradient(145deg,#5678d4,#7e9ee9)}.timer-card .panel-head>span i{background:linear-gradient(145deg,#7b56c8,#a77ce1)}.quote-card .panel-head>span i{background:linear-gradient(145deg,#bd6d45,#e3a26e)}.todo-list{display:flex;flex-direction:column;gap:10px;margin:15px 0;font-size:12px}.todo-list label{display:flex;gap:8px;align-items:center}.todo-card form{display:flex;gap:7px}.todo-card form input{min-width:0;flex:1;height:34px;padding:0 10px;border:1px solid rgba(97,112,128,.25);border-radius:9px;background:rgba(255,255,255,.55)}.todo-card form button,.timer-actions button,.copy-code{border:0;border-radius:9px;color:var(--navy);background:rgba(255,255,255,.62);font-weight:750}.todo-card form button{width:34px}.timer-display{display:block;margin:22px 0 18px;text-align:center;font:500 38px/1 Georgia}.timer-actions{display:flex;justify-content:center;gap:8px}.timer-actions button{padding:9px 12px}.quote-card blockquote{margin:22px 0 12px;font:italic 17px/1.45 Georgia}.quote-card>small{color:#667583}.sync-block{display:grid;gap:10px;margin-top:18px;padding:16px;border:1px solid #dfe6ea;border-radius:16px;background:#fff}.sync-block output{display:block;padding:6px;text-align:center;color:var(--navy);font:800 28px/1.2 ui-monospace,monospace;letter-spacing:.12em}.sync-block input{height:44px;padding:0 13px;border:1px solid #d6dfe3;border-radius:11px;text-align:center;font:700 18px ui-monospace,monospace;letter-spacing:.12em}.sync-block small{color:#78858f;font-size:10px}.copy-code{padding:9px}.settings{overflow-y:auto}@media(max-width:1050px){.daily{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.daily{display:flex}.daily article{min-width:270px}}
.app{transform:none;transition:none}.app:hover .app-tile{transform:translateY(-3px) scale(1.03)}.app-tile{transition:transform .18s ease,box-shadow .18s ease}.app-grid.organizing .app:not(.add-app){animation:none}.app-grid.organizing .app-tile{box-shadow:0 0 0 2px rgba(255,255,255,.72),0 7px 16px rgba(0,18,33,.28)}

/* Première base fonctionnelle 3.0 : cinq cartes égales et états dynamiques. */
.daily{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}
.daily article{height:240px;min-height:240px;padding:17px}
.weather-card,.tv-card,.news-card,.calendar-card,.note-card{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(240,246,249,.68))!important}
.news-card .panel-head>span i{background:linear-gradient(145deg,#e25845,#ee8a55)}
.news-card .panel-head button{color:#b34836}
.program-list,.news-list{display:flex;flex-direction:column;gap:7px;margin-top:9px}
.program-list .program{margin:0}
.news-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;align-items:center;color:inherit;text-decoration:none}
.news-item time{display:grid;place-items:center;min-height:35px;border-radius:9px;color:#a64838;background:rgba(255,255,255,.48);font-size:11px;font-weight:800}
.news-item strong{display:-webkit-box;overflow:hidden;font-size:13px;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.widget-state{margin:auto;color:#566a7a;font-size:13px;line-height:1.45}
.calendar-grid{gap:2px}
.calendar-grid span{height:17px}
.calendar-grid .outside{opacity:.28}
.calendar-grid .has-event{box-shadow:inset 0 -2px 0 var(--navy)}
.sync-status{min-height:18px;margin:14px 0 0;color:#536676;font-size:12px;text-align:center}
.sync-status.error{color:#a63d35}.sync-status.success{color:#267047}
.weather-card.loading,.tv-card.loading,.news-card.loading{opacity:.88}
@media(max-width:1180px){.daily{grid-template-columns:repeat(3,minmax(0,1fr))}.daily article{height:auto;min-height:210px}}
@media(max-width:820px){.daily{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.daily{display:flex}.daily article{height:240px;min-width:280px}}

/* Lisibilité quotidienne : aucun texte utile n'est réduit pour tenir artificiellement. */
.panel-head b{font-size:14px}.panel-head button{font-size:12px}
.weather-main p{font-size:12px;line-height:1.3}.weather-main>span{font-size:11px}.weather-days b,.weather-days em{font-size:11px}
.program{gap:11px}.program div{grid-template-columns:45px 1fr}.program b{font-size:12px}.program strong{font-size:13px;line-height:1.25}.program small{font-size:11px;line-height:1.3}
.calendar-title strong{font-size:13px;text-transform:capitalize}.calendar-grid b{font-size:10px}.calendar-grid span{height:19px;font-size:11px}
.note-card textarea{font-size:16px}.note-card small,.quote-card>small{font-size:11px}
.timer-duration{display:flex;align-items:center;justify-content:space-between;margin-top:12px;color:#657581;font-size:12px;font-weight:700}
.timer-duration select{height:32px;padding:0 28px 0 10px;border:1px solid rgba(97,112,128,.25);border-radius:9px;color:var(--ink);background:rgba(255,255,255,.62)}
.timer-display{margin:12px 0 13px}.timer-actions button{font-size:12px}
#backgroundDialog .dialog-card{max-height:min(760px,calc(100vh - 32px));overflow:auto}
.preview.alpes{background:url('alpes.webp') center/cover}.preview.provence{background:url('provence.webp') center/cover}.preview.dunes{background:url('dunes.webp') center/cover}.preview.paris{background:url('paris.webp') center/cover}.preview.jura-hiver{background:url('jura-hiver.webp') center/cover}.preview.loire{background:url('loire.webp') center/cover}

/* Lecture confortable et nouveaux outils personnels. */
.page-shell{width:min(1380px,calc(100% - 56px))}
.daily article{height:260px;min-height:260px}
.panel-head b{font-size:16px}.panel-head button{font-size:13px}
.weather-main p{font-size:14px}.weather-main>span{font-size:12px}.weather-days b,.weather-days em{font-size:12px}.weather-days i{font-size:18px}
.program div{grid-template-columns:48px 1fr}.program b{font-size:13px}.program strong{font-size:14px}.program small{font-size:12px}
.news-item time{font-size:12px}.news-item strong{font-size:14px;line-height:1.35}
.calendar-title strong{font-size:14px}.calendar-grid b{font-size:11px}.calendar-grid span{height:21px;font-size:12px}
.note-card textarea{font-size:17px}.note-card small,.quote-card>small{font-size:12px}.widget-state{font-size:14px}
.widget-help{margin:11px 0 8px;color:#60717f;font-size:13px;line-height:1.35}
.todo-empty{margin:17px 0;color:#74838e;font-size:13px;font-style:italic}
.todo-list{min-height:0;max-height:105px;margin:7px 0 10px;gap:5px;overflow:auto;font-size:14px}
.todo-row{display:flex;align-items:center;gap:7px;padding:4px 2px;border-bottom:1px solid rgba(110,128,141,.14)}
.todo-row label{min-width:0;flex:1}.todo-row label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-row.done label span{text-decoration:line-through;opacity:.55}
.todo-remove{width:26px;height:26px;border:0;border-radius:8px;color:#71808b;background:rgba(255,255,255,.48);font-size:18px;cursor:pointer}
.todo-card form input{height:38px;font-size:13px}.todo-card form button{width:auto;padding:0 12px;font-size:12px}
.session-duration{display:flex;justify-content:center;gap:8px;margin:8px 0 6px}.session-duration label{display:flex;align-items:center;gap:4px;color:#62727e;font-size:12px;font-weight:700}.session-duration input{width:50px;height:34px;border:1px solid rgba(97,112,128,.25);border-radius:9px;color:var(--ink);background:rgba(255,255,255,.58);font-size:15px;font-weight:750;text-align:center}
.timer-presets{display:flex;justify-content:center;gap:5px}.timer-presets button{padding:5px 7px;border:0;border-radius:8px;color:#695196;background:rgba(255,255,255,.48);font-size:11px;font-weight:750;cursor:pointer}
.timer-display{margin:8px 0 9px;font-size:36px}.timer-actions button{font-size:13px}
.timer-end-card{text-align:center}.timer-end-icon{display:grid;width:58px;height:58px;margin:0 auto 16px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#5678d4,#7e9ee9);font-size:29px;font-weight:800}.timer-end-card h2{margin:0 0 8px}.timer-end-actions{display:flex;justify-content:center;gap:9px;margin-top:19px}.timer-end-actions button{min-height:42px;padding:0 17px;border:0;border-radius:11px;font-weight:750;cursor:pointer}.timer-end-actions button:not(.primary){color:var(--navy);background:#edf2f5}
.preview.vert{background:url('vert.webp') center/cover}.preview.bleu{background:url('bleu.webp') center/cover}.preview.rose{background:url('rose.webp') center/cover}.preview.violet{background:url('violet.webp') center/cover}.preview.noir{background:url('noir.webp') center/cover}.preview.monochrome{background:url('monochrome.webp') center/cover}
@media(max-width:1180px){.daily article{height:auto;min-height:235px}}
@media(max-width:680px){.page-shell{width:calc(100% - 28px)}.daily article{height:260px;min-width:292px}}

/* Organisation des raccourcis et alerte de fin de session. */
.remove-app{position:absolute;z-index:4;top:-7px;right:-4px;width:22px;height:22px;display:none;place-items:center;border:2px solid rgba(255,255,255,.9);border-radius:50%;color:#fff;background:#d84f4f;box-shadow:0 3px 9px rgba(20,27,36,.28);font:800 17px/1 Arial;cursor:pointer}
.app-grid.organizing .remove-app{display:grid}.app-grid.organizing .app{cursor:grab}.app-grid.organizing .app:focus-within .remove-app,.remove-app:focus{outline:2px solid #fff;outline-offset:2px}
.timer-notify{display:block;width:100%;margin-top:8px;padding:6px 8px;border:0;border-radius:9px;color:#695196;background:rgba(255,255,255,.5);font-size:12px;font-weight:750;cursor:pointer}.timer-notify:disabled{cursor:default;opacity:.72}.timer-notify-status{display:block;margin-top:4px;color:#687985;font-size:11px;text-align:center}

/* Confort de lecture, clavier et aides contextuelles. */
.skip-link{position:fixed;z-index:100;left:16px;top:12px;padding:12px 16px;border-radius:10px;color:#fff;background:#10233b;transform:translateY(-150%);transition:transform .15s}.skip-link:focus{transform:none}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:where(a,button,input,textarea,[tabindex]):focus-visible{outline:3px solid #ffd35a;outline-offset:3px}.daily article:focus-within{box-shadow:0 0 0 4px rgba(255,211,90,.8),var(--shadow)}
.has-tip{position:relative}.has-tip::after{content:attr(data-tip);position:absolute;z-index:50;top:calc(100% + 10px);left:50%;width:max-content;max-width:240px;padding:9px 11px;border:1px solid rgba(255,255,255,.24);border-radius:10px;color:#fff;background:rgba(8,25,43,.96);box-shadow:0 12px 28px rgba(0,0,0,.24);font-size:13px;font-weight:650;line-height:1.3;text-align:center;white-space:normal;opacity:0;pointer-events:none;transform:translate(-50%,-4px);transition:opacity .16s,transform .16s}.has-tip:hover::after,.has-tip:focus-visible::after{opacity:1;transform:translate(-50%,0)}.organize-button.has-tip::after{top:auto;right:calc(100% + 9px);bottom:50%;left:auto;transform:translate(4px,50%)}.organize-button.has-tip:hover::after,.organize-button.has-tip:focus-visible::after{transform:translate(0,50%)}
.accessibility-settings{margin:18px -6px 8px;padding:14px 6px;border-block:1px solid #dfe6ea}.accessibility-settings h3,.settings-section-title{margin:0 0 10px;color:#405568;font-size:14px}.settings-section-title{margin-top:18px}.font-size-setting{display:block;padding:8px 0 12px}.font-size-setting>span{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.font-size-setting b{font-size:14px}.font-size-setting output{color:var(--navy);font-size:14px;font-weight:800}.font-size-setting input{width:100%;accent-color:var(--navy)}.toggle input{width:22px;height:22px;accent-color:var(--navy)}
.minute-stepper{display:grid!important;grid-template-columns:32px 50px 32px auto;gap:3px!important}.minute-stepper button{width:32px;height:34px;border:1px solid rgba(97,112,128,.25);border-radius:9px;color:#695196;background:rgba(255,255,255,.72);font-size:20px;font-weight:800;cursor:pointer}.minute-stepper span{align-self:center;margin-left:1px}.session-duration input{font-variant-numeric:tabular-nums}
.panel-head b{font-size:calc(16px * var(--widget-font-scale))}.panel-head button{font-size:calc(13px * var(--widget-font-scale))}.weather-main p{font-size:calc(14px * var(--widget-font-scale))}.weather-main>span{font-size:calc(12px * var(--widget-font-scale))}.weather-days b,.weather-days em{font-size:calc(12px * var(--widget-font-scale))}.program b{font-size:calc(13px * var(--widget-font-scale))}.program strong{font-size:calc(14px * var(--widget-font-scale))}.program small{font-size:calc(12px * var(--widget-font-scale))}.news-item time{font-size:calc(12px * var(--widget-font-scale))}.news-item strong{font-size:calc(14px * var(--widget-font-scale))}.calendar-title strong{font-size:calc(14px * var(--widget-font-scale))}.calendar-grid b{font-size:calc(11px * var(--widget-font-scale))}.calendar-grid span{min-height:calc(21px * var(--widget-font-scale));height:auto;font-size:calc(12px * var(--widget-font-scale))}.note-card textarea{font-size:calc(17px * var(--widget-font-scale))}.note-card small,.quote-card>small,.timer-notify-status{font-size:calc(12px * var(--widget-font-scale))}.widget-state{font-size:calc(14px * var(--widget-font-scale))}.widget-help,.todo-empty{font-size:calc(13px * var(--widget-font-scale))}.todo-list{font-size:calc(14px * var(--widget-font-scale))}.todo-card form input,.todo-card form button,.timer-actions button,.timer-notify{font-size:calc(13px * var(--widget-font-scale))}.session-duration label{font-size:calc(12px * var(--widget-font-scale))}.session-duration input{font-size:calc(15px * var(--widget-font-scale))}.timer-presets button{font-size:calc(11px * var(--widget-font-scale))}.timer-display{font-size:calc(36px * var(--widget-font-scale))}.daily article{height:auto;min-height:calc(260px * var(--widget-font-scale));overflow:auto}
body.high-contrast .shade{background:rgba(0,15,28,.55)}body.high-contrast .daily article,body.high-contrast .weather-card,body.high-contrast .tv-card,body.high-contrast .news-card,body.high-contrast .calendar-card,body.high-contrast .note-card,body.high-contrast .todo-card,body.high-contrast .timer-card,body.high-contrast .quote-card{background:#fff!important;border:2px solid #10233b;color:#07192a;backdrop-filter:none}body.high-contrast .search{background:#fff;border:2px solid #10233b}body.high-contrast .panel-head{border-bottom-color:#627487}body.high-contrast .top-actions button{background:#07192a;border-color:#fff}
body.reduce-motion *,body.reduce-motion *::before,body.reduce-motion *::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}body.reduce-motion .daily article:hover,body.reduce-motion .app:hover .app-tile,body.reduce-motion .search:focus-within{transform:none}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.daily article:hover,.app:hover .app-tile,.search:focus-within{transform:none}}
@media(forced-colors:active){.wallpaper,.shade{display:none}.daily article,.search,.settings,dialog{forced-color-adjust:auto;border:1px solid CanvasText}.panel-head>span i{background:CanvasText!important;color:Canvas!important}.has-tip::after{border:1px solid CanvasText}}
@media(max-width:680px){.has-tip::after{display:none}.top-actions{gap:5px}.save-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.save-button{width:42px;padding:0;justify-content:center}}

/* Icônes lisibles, guide TNT complet et code de sauvegarde bien visible. */
.app-youtube .app-tile,.app-wikipedia .app-tile,.app-facebook .app-tile,.app-instagram .app-tile,.app-francetv .app-tile{background:#fff}
.app-youtube img,.app-wikipedia img,.app-facebook img,.app-instagram img{padding:4px;object-fit:contain}
.app-francetv img{padding:5px 3px}.app-amazon .brand-svg{padding:2px}.app-user .app-tile{background:rgba(255,255,255,.96)}.app-user img{padding:3px;object-fit:contain}
.tv-card{overflow:hidden!important}.tv-count{color:#875070;font-size:calc(12px * var(--widget-font-scale));font-weight:800;white-space:nowrap}.tnt-list{max-height:calc(205px * var(--widget-font-scale));margin-right:-7px;padding-right:7px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#b88ba4 transparent;scrollbar-width:thin}.tnt-list::-webkit-scrollbar{width:7px}.tnt-list::-webkit-scrollbar-thumb{border-radius:99px;background:#b88ba4}.tnt-list .program{flex:none;gap:9px;padding:5px 2px 7px;border-bottom:1px solid rgba(116,92,110,.13)}.tnt-list .channel{width:42px;height:32px;padding:0 3px;color:#fff;font-size:10px;line-height:1;text-align:center}.tnt-list .program>div{min-width:0;grid-template-columns:48px minmax(0,1fr)}.tnt-list .program strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tnt-list .program small{grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sync-block output{border:2px dashed #9fb6c7;border-radius:12px;background:#f2f7fa}.sync-block output.revealed{border:3px solid var(--navy);color:#fff;background:var(--navy);box-shadow:0 9px 25px color-mix(in srgb,var(--navy) 30%,transparent);transform:scale(1.03)}.sync-status.success{padding:10px;border-radius:10px;background:#eaf7ee;font-size:14px;font-weight:750;line-height:1.4}

/* Ajustements d'empilement et barre de raccourcis. */
.topbar{position:relative;z-index:100}.center-stage{z-index:20}.daily{position:relative;z-index:1}.has-tip::after{z-index:200}.shortcut-bar{z-index:30;display:block;width:max-content;max-width:100%;overflow:visible}.app-grid,.app-grid:not(.organizing){display:flex!important;flex-wrap:wrap!important;max-width:min(720px,calc(100vw - 110px));overflow:visible;white-space:normal}.app{flex:0 0 42px}.organize-button{position:absolute;right:-43px;top:50%;transform:translateY(-50%)}.minute-stepper{display:contents!important}.session-duration input[type="number"]{appearance:auto;-moz-appearance:auto}.timer-display{font-variant-numeric:tabular-nums;white-space:nowrap}
.top-actions .has-tip:nth-last-child(-n+2)::after{right:0;left:auto;transform:translateY(-4px)}.top-actions .has-tip:nth-last-child(-n+2):hover::after,.top-actions .has-tip:nth-last-child(-n+2):focus-visible::after{transform:translateY(0)}
@media(max-width:1050px){.app-grid,.app-grid:not(.organizing){display:grid!important;grid-template-columns:repeat(5,70px)!important;max-width:none}}
@media(max-width:680px){.shortcut-bar{width:calc(100% - 20px);max-width:calc(100% - 20px);margin-inline:10px;padding-inline:0}.app-grid,.app-grid:not(.organizing){grid-template-columns:repeat(5,minmax(0,1fr))!important;min-width:0}.organize-button{right:5px;top:-44px;transform:none}.timer-display{font-size:calc(28px * var(--widget-font-scale))}}

/* Programme TV : aperçu compact et guide complet inspiré de Navigoo 2.0. */
.tnt-list .tv-logo{width:42px;height:32px;flex:none}.tv-logo{display:grid;width:64px;height:54px;place-items:center;overflow:hidden;border:1px solid rgba(37,55,70,.13);border-radius:11px;color:#fff;background:#fff;font-size:12px;font-weight:850;line-height:1.05;text-align:center;text-decoration:none}.tv-logo img{display:block;width:100%;height:100%;padding:4px;object-fit:contain}.tv-logo-compact img{padding:3px}.tnt-list .program>div{grid-template-columns:48px minmax(0,1fr)}
.tv-dialog{width:min(1100px,calc(100% - 28px));max-width:none;padding:0;border:0;border-radius:22px;background:transparent}.tv-dialog::backdrop{background:rgba(4,17,29,.7);backdrop-filter:blur(5px)}.tv-dialog-card{width:100%;max-width:none;height:min(820px,calc(100vh - 40px));display:flex;flex-direction:column;padding:24px;overflow:hidden}.tv-guide-tabs{display:flex;gap:8px;margin:2px 0 16px}.tv-guide-tabs button{min-height:42px;padding:0 18px;border:1px solid #d4dfe5;border-radius:999px;color:#546879;background:#eef3f6;font-size:15px;font-weight:800;cursor:pointer}.tv-guide-tabs button.active{border-color:var(--navy);color:#fff;background:var(--navy)}.tv-guide-list{display:flex;min-height:0;flex:1;flex-direction:column;gap:10px;padding:2px 8px 8px 2px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#8ba5b5 transparent}.tv-guide-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;padding:12px;border:1px solid #dfe7eb;border-radius:16px;background:#f7fafbee}.tv-guide-channel{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:7px;color:#30485a;font-size:14px;text-align:center}.tv-guide-channel b{line-height:1.15}.tv-guide-programs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tv-guide-program{min-height:94px;display:grid;grid-template-columns:124px minmax(0,1fr);gap:11px;overflow:hidden;border:1px solid #e1e8ec;border-radius:13px;background:#fff}.tv-guide-program>img{width:124px;height:100%;min-height:94px;object-fit:cover}.tv-guide-program>div{min-width:0;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;padding:10px 11px 10px 0}.tv-guide-program small{color:#71818c;font-size:12px;font-weight:750}.tv-guide-program strong{max-width:100%;margin:4px 0 6px;overflow:hidden;color:#172b3b;font-size:15px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.tv-guide-program span{padding:3px 7px;border-radius:999px;color:#78556c;background:#f5eaf0;font-size:12px;font-weight:750}.tv-guide-program.is-empty{display:grid;place-items:center;padding:16px;color:#74828c;font-size:14px}.tv-card #openTvGuide{font-weight:800}
@media(max-width:820px){.tv-dialog-card{height:calc(100vh - 18px);padding:18px}.tv-guide-row{grid-template-columns:72px minmax(0,1fr);gap:10px;padding:9px}.tv-guide-channel b{font-size:12px}.tv-logo{width:52px;height:46px}.tv-guide-programs{grid-template-columns:1fr}.tv-guide-program{grid-template-columns:92px minmax(0,1fr);min-height:82px}.tv-guide-program>img{width:92px;min-height:82px}.tv-guide-program:nth-child(2){display:none}}
@media(max-width:480px){.tv-dialog{width:100%;height:100%;max-height:none;margin:0;border-radius:0}.tv-dialog-card{height:100vh;border-radius:0}.tv-guide-tabs button{flex:1;padding-inline:8px}.tv-guide-row{grid-template-columns:58px minmax(0,1fr)}.tv-logo{width:46px;height:42px}.tv-guide-program{grid-template-columns:74px minmax(0,1fr)}.tv-guide-program>img{width:74px}.tv-guide-program strong{font-size:14px}}

/* Guide TV compact : logos carrés et détails complets au survol. */
.tnt-list .tv-logo{width:44px;height:44px;border-radius:11px}.tv-logo{width:60px;height:60px;aspect-ratio:1;border-radius:13px}.tv-logo.tv-logo-france{background:linear-gradient(145deg,#eef1f3,#b8c0c5)}.tv-logo img{padding:5px;object-fit:contain}.tv-logo-compact img{padding:4px}.tnt-list .program>div{grid-template-columns:50px minmax(0,1fr)}
.tv-dialog-card{position:relative;padding:20px 22px 22px}.tv-dialog-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-bottom:12px}.tv-dialog-title{display:flex;align-items:baseline;gap:10px;white-space:nowrap}.tv-dialog-head h2{margin:0;font-size:25px}.tv-guide-tabs{justify-content:center;margin:0}.tv-guide-tabs button{min-height:38px;padding-inline:17px;font-size:14px}.tv-guide-list{gap:9px}.tv-guide-row{grid-template-columns:72px minmax(0,1fr);gap:10px;padding:10px}.tv-guide-channel{display:grid;place-items:center}.tv-guide-program{min-height:92px;grid-template-columns:122px minmax(0,1fr);cursor:help}.tv-guide-program.no-image{grid-template-columns:minmax(0,1fr)}.tv-guide-program>img{width:122px;min-height:92px}.tv-guide-program.no-image>div{padding:12px 15px}.tv-guide-program:focus-visible{outline:3px solid var(--navy);outline-offset:2px}.tv-guide-program.is-empty{cursor:default}
.tv-program-tooltip{position:fixed;z-index:30;width:min(380px,calc(100vw - 24px));padding:16px;border:1px solid rgba(255,255,255,.22);border-radius:15px;color:#fff;background:rgba(9,28,44,.97);box-shadow:0 18px 45px rgba(0,0,0,.32);pointer-events:none}.tv-program-tooltip[hidden]{display:none}.tv-program-tooltip strong{display:block;font:700 19px/1.25 Georgia}.tv-program-tooltip span{display:block;margin-top:5px;color:#ccdae3;font-size:13px;font-weight:700}.tv-program-tooltip b{display:inline-block;margin-top:10px;padding:4px 8px;border-radius:999px;color:#ffe1ee;background:rgba(210,106,155,.24);font-size:12px}.tv-program-tooltip p{max-height:8.2em;margin:10px 0 0;overflow:hidden;color:#f4f7f9;font-size:14px;line-height:1.45}
@media(max-width:820px){.tv-dialog-card{padding:14px}.tv-dialog-head{grid-template-columns:1fr auto;gap:8px 12px}.tv-dialog-title{align-items:flex-start;flex-direction:column;gap:1px}.tv-dialog-head h2{font-size:22px}.tv-guide-tabs{grid-column:1/-1;grid-row:2}.tv-guide-row{grid-template-columns:58px minmax(0,1fr);gap:9px;padding:8px}.tv-logo{width:50px;height:50px}.tv-guide-program{grid-template-columns:92px minmax(0,1fr)}.tv-program-tooltip{display:none!important}}
@media(max-width:480px){.tv-guide-row{grid-template-columns:50px minmax(0,1fr)}.tv-logo{width:44px;height:44px}.tv-guide-program{grid-template-columns:74px minmax(0,1fr)}}

/* Guide TV v30 : couleurs par genre, détails illustrés et widget du soir. */
.tv-dialog-card{background:linear-gradient(145deg,#fff,#f1f7fb)}
.tv-dialog-head{grid-template-columns:1fr auto 1fr}.tv-dialog-title{justify-self:start}.tv-dialog-head>.dialog-close{justify-self:end}.tv-guide-tabs{justify-self:center}
.tv-guide-row{border-color:#d8e4eb;background:linear-gradient(135deg,#f9fcfe,#eef5f8)}
.tv-guide-program{position:relative;grid-template-columns:122px minmax(0,1fr);border-width:0 0 0 5px;box-shadow:0 5px 16px rgba(22,49,67,.09);background:#fff}
.tv-guide-program.no-image{grid-template-columns:122px minmax(0,1fr)}
.tv-guide-placeholder{display:grid;width:122px;height:100%;min-height:92px;place-items:center;background:linear-gradient(145deg,#f5f8fa,#e3ebef)}
.tv-guide-placeholder .tv-logo{width:68px;height:68px}
.tv-guide-program.no-image>div:not(.tv-guide-placeholder){padding:10px 11px 10px 0}
.tv-guide-program.program-film{border-left-color:#d64e82}.tv-guide-program.program-documentary{border-left-color:#2e9b72}.tv-guide-program.program-series{border-left-color:#7759bb}.tv-guide-program.program-sport{border-left-color:#e4822f}.tv-guide-program.program-news{border-left-color:#2582b9}.tv-guide-program.program-youth{border-left-color:#e4b52c}.tv-guide-program.program-music{border-left-color:#a746a4}.tv-guide-program.program-entertainment{border-left-color:#e65454}.tv-guide-program.program-other{border-left-color:#78909d}
.tv-guide-program.program-film span,.tv-program-tooltip b.program-film{color:#8f2450;background:#fbe4ee}.tv-guide-program.program-documentary span,.tv-program-tooltip b.program-documentary{color:#176c4c;background:#def4e9}.tv-guide-program.program-series span,.tv-program-tooltip b.program-series{color:#57349b;background:#ebe3fa}.tv-guide-program.program-sport span,.tv-program-tooltip b.program-sport{color:#9a4b11;background:#ffead7}.tv-guide-program.program-news span,.tv-program-tooltip b.program-news{color:#176189;background:#dceff9}.tv-guide-program.program-youth span,.tv-program-tooltip b.program-youth{color:#765900;background:#fff1bd}.tv-guide-program.program-music span,.tv-program-tooltip b.program-music{color:#7d287b;background:#f5def4}.tv-guide-program.program-entertainment span,.tv-program-tooltip b.program-entertainment{color:#982e2e;background:#fae1e1}
.tv-progress{width:100%;height:5px;margin-top:9px;border-radius:99px;background:#dfe8ed}.tv-progress i{position:relative;display:block;height:100%;border-radius:99px;background:var(--navy)}.tv-progress i::after{content:"";position:absolute;right:-4px;top:50%;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:var(--navy);box-shadow:0 1px 4px rgba(0,0,0,.28);transform:translateY(-50%)}
.tv-program-tooltip{width:min(520px,calc(100vw - 24px));display:grid;grid-template-columns:160px minmax(0,1fr);gap:15px;padding:0;overflow:hidden;background:rgba(9,28,44,.98)}.tv-tooltip-media{display:grid;min-height:220px;place-items:center;background:#e6edf1}.tv-tooltip-media>img{width:100%;height:100%;object-fit:cover}.tv-tooltip-media.uses-logo{background:linear-gradient(145deg,#f4f7f9,#cdd9df)}.tv-tooltip-media .tv-logo{width:82px;height:82px}.tv-tooltip-body{padding:16px 16px 16px 0}.tv-tooltip-body>em{display:block;margin-top:4px;color:#d8e3e9;font-size:13px}.tv-program-tooltip b{color:#e8eef2;background:rgba(255,255,255,.12)}.tv-tooltip-body>small{display:block;margin-top:10px;color:#b7c7d0;font-size:12px;line-height:1.35}
.tnt-list{max-height:calc(205px * var(--widget-font-scale));padding-right:5px}.tnt-list .tv-feature{width:100%;min-height:74px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;margin:2px 0 5px;padding:9px 12px;border:0;border-left:5px solid #d64e82;border-radius:11px;color:#fff;background-color:#173047;background-position:center;background-size:cover;text-align:left;cursor:pointer}.tv-feature small{font-size:11px;font-weight:800;text-transform:uppercase}.tv-feature strong{max-width:100%;margin:2px 0;overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.tv-feature span{font-size:11px;opacity:.9}
.tnt-list .program{gap:7px;min-height:36px;padding:3px 2px 4px}.tnt-list .tv-logo{width:34px;height:34px;border-radius:9px}.tnt-list .tv-logo img{padding:3px}.tnt-list .program>div{grid-template-columns:44px minmax(0,1fr)}.tnt-list .program b{font-size:12px}.tnt-list .program strong{font-size:13px}.tnt-list .program small{font-size:10px}.tnt-list .program{border-left:3px solid transparent}.tnt-list .program-film{border-left-color:#d64e82}.tnt-list .program-documentary{border-left-color:#2e9b72}.tnt-list .program-series{border-left-color:#7759bb}.tnt-list .program-sport{border-left-color:#e4822f}.tnt-list .program-news{border-left-color:#2582b9}.tnt-list .program-youth{border-left-color:#e4b52c}.tnt-list .program-music{border-left-color:#a746a4}.tnt-list .program-entertainment{border-left-color:#e65454}
@media(max-width:820px){.tv-dialog-head{grid-template-columns:1fr auto}.tv-guide-tabs{justify-self:stretch}.tv-guide-program,.tv-guide-program.no-image{grid-template-columns:92px minmax(0,1fr)}.tv-guide-placeholder{width:92px}.tv-guide-placeholder .tv-logo{width:56px;height:56px}.tv-program-tooltip{display:none!important}}
@media(max-width:480px){.tv-guide-program,.tv-guide-program.no-image{grid-template-columns:74px minmax(0,1fr)}.tv-guide-placeholder{width:74px}.tv-guide-placeholder .tv-logo{width:48px;height:48px}}

/* Accès discret au guide complet. */
.tv-card .tv-open-button{width:36px;height:34px;display:grid;place-items:center;padding:0;border:1px solid rgba(169,42,104,.2);border-radius:10px;color:#92245d;background:rgba(255,255,255,.5);cursor:pointer}
.tv-card .tv-open-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.tv-card .tv-open-button svg path{fill:currentColor;stroke:none}.tv-card .tv-open-button:hover{background:#fff;transform:translateY(-1px)}

/* Ajustements v32 : repères sobres, code visible et actualités illustrées. */
:where(a,button,input,textarea,[tabindex]):focus-visible{outline-color:color-mix(in srgb,var(--navy) 78%,white)}.daily article:focus-within{box-shadow:0 0 0 4px color-mix(in srgb,var(--navy) 62%,white),var(--shadow)}
.tv-guide-program{border:1px solid #e1e8ec}.tv-guide-program.program-film,.tv-guide-program.program-documentary,.tv-guide-program.program-series,.tv-guide-program.program-sport,.tv-guide-program.program-news,.tv-guide-program.program-youth,.tv-guide-program.program-music,.tv-guide-program.program-entertainment,.tv-guide-program.program-other{border-left-color:#e1e8ec}.tnt-list .program{border-left:0}.tnt-list .tv-feature{border-left:0}
.tv-guide-program>.tv-guide-placeholder{display:grid;place-items:center;padding:0}.tv-guide-program>.tv-guide-placeholder .tv-logo{margin:auto}
.sync-block .sync-code{width:100%;height:auto;padding:10px 8px;border:2px dashed #9fb6c7;border-radius:12px;color:var(--navy);background:#f2f7fa;text-align:center;font:800 28px/1.2 ui-monospace,monospace;letter-spacing:.12em}.sync-block .sync-code.revealed{border:3px solid var(--navy);color:#fff;background:var(--navy);box-shadow:0 9px 25px color-mix(in srgb,var(--navy) 30%,transparent);transform:scale(1.03)}
.news-card .panel-head b small{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:999px;color:#8e382c;background:rgba(255,255,255,.58);font-size:10px;vertical-align:2px}.news-feature{grid-template-columns:78px minmax(0,1fr);gap:10px}.news-visual{display:grid;width:78px;height:58px;overflow:hidden;place-items:center;border-radius:10px;background:#dce4e8}.news-visual img{width:100%;height:100%;object-fit:cover}.news-visual-fallback{color:#fff;background:linear-gradient(145deg,#273f85,#e12738);font-size:12px;font-weight:900}.news-copy{min-width:0;display:flex;align-items:flex-start;flex-direction:column;gap:4px}.news-feature time{min-height:0;padding:2px 6px}.news-feature strong{-webkit-line-clamp:2}

/* Prime time réel, lignes TV denses et actualités occupant tout le widget. */
.tnt-list .program{gap:5px;min-height:35px;padding:2px 1px 3px}.tnt-list .tv-logo{width:28px;height:28px;border-radius:8px}.program-thumbnail{width:50px;height:32px;display:grid;flex:0 0 50px;overflow:hidden;place-items:center;border-radius:7px;background:#e3eaee}.program-thumbnail img{width:100%;height:100%;object-fit:cover}.program-thumbnail.uses-logo img{padding:4px;object-fit:contain}.tnt-list .program>div{grid-template-columns:40px minmax(0,1fr)}.tnt-list .program b{font-size:11px}.tnt-list .program strong{font-size:12px}.tnt-list .program small{font-size:9px}
.news-card{display:flex;flex-direction:column}.news-card .news-list{min-height:0;flex:1;gap:5px}.news-feature{position:relative;height:92px;display:block;overflow:hidden;border-radius:11px}.news-feature .news-visual{width:100%;height:100%;border-radius:0}.news-feature .news-visual::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(5,18,31,.9))}.news-feature .news-copy{position:absolute;z-index:1;right:9px;bottom:8px;left:9px;gap:2px;color:#fff}.news-feature time{align-self:flex-start;color:#fff;background:rgba(5,18,31,.66);font-size:10px}.news-feature strong{color:#fff;font-size:13px;line-height:1.25;text-shadow:0 1px 5px rgba(0,0,0,.8)}.news-card .news-item:not(.news-feature){min-height:31px}.news-card .news-item:not(.news-feature) time{min-height:29px}.news-card .news-item:not(.news-feature) strong{-webkit-line-clamp:1}

/* Densité TV, paliers responsifs stables et actions accessibles. */
.tnt-list{gap:0}.tnt-list .program{min-height:32px;margin-top:0;padding:1px 0;line-height:1.05}.tnt-list .tv-logo,.tnt-list .program-thumbnail{width:32px;height:32px;flex-basis:32px;border-radius:8px}.tnt-list .program-thumbnail{padding:0;border:0;cursor:pointer}.tnt-list .program>div{grid-template-columns:38px minmax(0,1fr);line-height:1.05}.tnt-list .program-title{min-width:0;padding:0;border:0;overflow:hidden;color:inherit;background:none;font-size:12px;font-weight:750;line-height:1.05;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.tnt-list .program small{line-height:1}.tnt-list .program-title:hover,.tnt-list .program-title:focus-visible{text-decoration:underline}.tnt-list .program-thumbnail:focus-visible,.tnt-list .program-title:focus-visible{outline-width:2px;outline-offset:1px}
.tv-dialog-title{min-width:1px}.tv-dialog-head{grid-template-columns:1fr auto 1fr}
.sync-block .sync-code::placeholder{color:#81909a;opacity:.65}
@media(max-width:1320px){.daily{grid-template-columns:repeat(3,minmax(280px,1fr))}}
@media(max-width:960px){.daily{grid-template-columns:repeat(2,minmax(280px,1fr))}}
@media(max-width:680px){.daily{display:flex}.organize-button{right:0;top:calc(100% + 8px);transform:none}}

/* Ajustements v35 : guide TV plus calme et aide d’installation contextuelle. */
.install-guide{margin:14px 0;padding:14px 16px;border:1px solid #d9e5ec;border-radius:14px;color:#243b4d;background:#f2f7fa}.install-guide h3{margin:0 0 9px;font-size:17px}.install-guide ol{margin:0;padding-left:22px}.install-guide li{margin:5px 0;line-height:1.4}.install-guide p{margin:10px 0 0;color:#587083;font-size:13px;line-height:1.4}
.tnt-list .program{padding:2px 4px;border:0;border-radius:9px;background:color-mix(in srgb,var(--channel-color) 15%,#fff)}
.tnt-list .program+.program{margin-top:2px}.tnt-list .tv-logo,.tnt-list .program-thumbnail{background:#fff}.tnt-list .program-title{color:#172b3b}.tnt-list .program b{color:#30485a}.tnt-list .program small{color:#617281}
.tv-logo.tv-logo-france{background:#fff}
.tv-guide-program.program-film{background:#fff0f6}.tv-guide-program.program-documentary{background:#eaf8f1}.tv-guide-program.program-series{background:#f1ebfb}.tv-guide-program.program-sport{background:#fff1e5}.tv-guide-program.program-news{background:#e9f5fb}.tv-guide-program.program-youth{background:#fff7d8}.tv-guide-program.program-music{background:#f9eafa}.tv-guide-program.program-entertainment{background:#fceaea}.tv-guide-program.program-other{background:#eef3f5}
.tv-guide-program{border-color:rgba(61,86,103,.13);box-shadow:0 5px 16px rgba(22,49,67,.12)}
.tv-guide-program>div:not(.tv-guide-placeholder){padding-right:13px}

/* Ajustements v36 : une palette TV unifiée et des logos plus lisibles. */
.tnt-list .program{background:rgba(247,250,252,.94)}
.tnt-list .program:hover,.tnt-list .program:focus-within{background:#fff;box-shadow:0 2px 8px rgba(27,55,73,.11)}
.tv-dialog-card{background:linear-gradient(145deg,#f5fafc,#dceaf2 58%,#cbdde8)}
.tv-guide-row{border-color:rgba(65,94,112,.15);background:rgba(255,255,255,.46)}
.tv-guide-program,.tv-guide-program.program-film,.tv-guide-program.program-documentary,.tv-guide-program.program-series,.tv-guide-program.program-sport,.tv-guide-program.program-news,.tv-guide-program.program-youth,.tv-guide-program.program-music,.tv-guide-program.program-entertainment,.tv-guide-program.program-other{background:rgba(255,255,255,.94)}
.tv-logo img[src*="/02.png"],.tv-logo img[src*="/03.png"],.tv-logo img[src*="/04.png"],.tv-logo img[src*="/05.png"],.tv-logo img[src*="/25.png"]{padding:2px}.tv-logo img[src*="/16.png"]{padding:0}

/* Ajustements v37 : en-têtes plus compacts et météo détaillée. */
.panel-head{padding-bottom:7px}.program-list,.news-list{margin-top:5px}.calendar-title{padding-top:6px}.note-card textarea{margin-top:7px}.todo-list{margin-top:4px}.timer-display{margin-top:5px}.quote-card blockquote{margin-top:13px}
.weather-card{overflow:hidden!important}.weather-scroll{max-height:calc(210px * var(--widget-font-scale));margin-top:4px;padding-right:5px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#80b8d3 transparent}.weather-scroll::-webkit-scrollbar{width:6px}.weather-scroll::-webkit-scrollbar-thumb{border-radius:99px;background:#80b8d3}.weather-main{padding:3px 1px 5px}.weather-main strong{margin-top:0}.weather-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-bottom:5px}.weather-metrics span{display:flex;align-items:baseline;justify-content:space-between;gap:4px;padding:5px 7px;border-radius:8px;background:rgba(255,255,255,.48)}.weather-metrics small{color:#647786;font-size:calc(10px * var(--widget-font-scale))}.weather-metrics b{color:#254a60;font-size:calc(11px * var(--widget-font-scale));white-space:nowrap}.weather-sun{margin:3px 1px 7px!important;color:#627785!important;font-size:calc(10px * var(--widget-font-scale))!important}.weather-section-title{margin:5px 0;color:#3c5b6d;font-size:calc(11px * var(--widget-font-scale));letter-spacing:.02em}.weather-hours{min-width:max-content;justify-content:flex-start;gap:5px;padding-bottom:5px;overflow-x:auto;scrollbar-width:thin}.weather-hours>span{width:54px;flex:0 0 54px;gap:2px;padding:5px 3px;border-radius:9px;background:rgba(255,255,255,.46)}.weather-hours small{color:#607686;font-size:calc(9px * var(--widget-font-scale));white-space:nowrap}.weather-forecast{display:flex;flex-direction:column;gap:3px;padding-bottom:2px}.weather-forecast>div{display:grid;grid-template-columns:minmax(76px,1fr) 26px 68px 54px;align-items:center;gap:5px;padding:5px 7px;border-radius:8px;background:rgba(255,255,255,.46);font-size:calc(11px * var(--widget-font-scale))}.weather-forecast>div>b{text-transform:capitalize}.weather-forecast i{font-size:17px;font-style:normal;text-align:center}.weather-forecast span{text-align:right;white-space:nowrap}.weather-forecast small{color:#607686;text-align:right;white-space:nowrap}

/* Ajustements v38 : logos TV informatifs et aperçus dans le guide modal. */
.tv-logo{padding:0;font:inherit;cursor:pointer}.tv-logo:focus-visible{outline:3px solid var(--navy);outline-offset:2px}.tv-dialog-card .tv-program-tooltip{z-index:60}

/* Ajustements v39 : infobulles de chaînes lisibles dans le guide détaillé. */
.tv-channel-tooltip{position:fixed;z-index:80;max-width:min(310px,calc(100vw - 20px));padding:9px 13px;border:1px solid rgba(255,255,255,.7);border-radius:10px;color:#fff;background:linear-gradient(145deg,#17364a,#0b2233);box-shadow:0 10px 28px rgba(5,22,34,.28);font-size:13px;font-weight:750;line-height:1.25;text-align:center;pointer-events:none}.tv-channel-tooltip::after{position:absolute;left:50%;bottom:-5px;width:10px;height:10px;content:"";background:#0b2233;transform:translateX(-50%) rotate(45deg)}.tv-channel-tooltip[hidden]{display:none}@media(max-width:820px){.tv-channel-tooltip{font-size:12px}}

/* Ajustements v40 : raccourcis toujours visibles, météo jour/nuit et détails d’actualité. */
.app-fallback-icon{position:absolute;inset:0;display:none;place-items:center;border-radius:inherit;color:#fff;background:linear-gradient(145deg,hsl(var(--app-fallback-hue) 67% 55%),hsl(var(--app-fallback-hue) 72% 38%));font-size:20px;font-weight:900;text-shadow:0 1px 3px rgba(0,0,0,.25)}.app.icon-failed img{display:none}.app.icon-failed .app-fallback-icon{display:grid}.app-user .app-tile{background:linear-gradient(145deg,hsl(var(--app-fallback-hue) 55% 94%),hsl(var(--app-fallback-hue) 52% 83%))}.app-youtube .app-tile{background:#fff0f2}.app-wikipedia .app-tile{background:#e8edf1}.app-facebook .app-tile{background:#e9f2ff}.app-instagram .app-tile{background:linear-gradient(145deg,#f9e8ff,#ffe9e6)}.app-francetv .app-tile{background:#eef1f3}
.weather-current{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:start;column-gap:8px}.weather-current-icon{font-size:35px;line-height:1;filter:drop-shadow(0 2px 3px rgba(29,92,126,.2))}.weather-current p{grid-column:1/-1}.weather-hours>span.is-night{color:#eaf4ff;background:linear-gradient(145deg,#304b68,#172d49)}.weather-hours>span.is-night small{color:#d0e1ef}.weather-hours>span.is-night i{filter:drop-shadow(0 0 5px rgba(184,216,255,.34))}.weather-forecast>div{grid-template-columns:minmax(105px,1.25fr) 30px minmax(98px,1fr) 66px}.weather-forecast>div>b{display:flex;min-width:0;flex-direction:column}.weather-forecast>div>b>small{margin-top:2px;overflow:hidden;color:#607686;font-size:calc(9px * var(--widget-font-scale));font-weight:600;text-overflow:ellipsis;white-space:nowrap}.weather-forecast>div>span{display:flex;align-items:flex-end;flex-direction:column;gap:1px}.weather-forecast>div>span>em{color:#617586;font-size:calc(10px * var(--widget-font-scale));font-style:normal}.weather-forecast>div>small{font-size:calc(9px * var(--widget-font-scale))}
.news-tooltip{position:fixed;z-index:500;width:min(390px,calc(100vw - 20px));padding:14px 15px;border:1px solid rgba(255,255,255,.72);border-radius:13px;color:#fff;background:linear-gradient(145deg,#17364a,#0b2233);box-shadow:0 16px 38px rgba(5,22,34,.32);pointer-events:none}.news-tooltip[hidden]{display:none}.news-tooltip strong{display:block;font:700 16px/1.3 Georgia,serif}.news-tooltip p{margin:8px 0 0;color:#dbe7ee;font-size:13px;line-height:1.42}@media(max-width:680px){.news-tooltip{display:none!important}.weather-forecast>div{grid-template-columns:minmax(94px,1.2fr) 28px minmax(90px,1fr) 58px}}

/* Ajustements v41 : mêmes logos sur tous les domaines et prévisions quotidiennes sans chevauchement. */
.app-youtube .app-tile,.app-wikipedia .app-tile,.app-facebook .app-tile,.app-instagram .app-tile,.app-francetv .app-tile{background:#fff}.shortcut-tooltip{position:fixed;z-index:500;width:max-content;max-width:min(280px,calc(100vw - 20px));padding:10px 13px;border:1px solid rgba(255,255,255,.72);border-radius:11px;color:#fff;background:linear-gradient(145deg,#17364a,#0b2233);box-shadow:0 13px 32px rgba(5,22,34,.3);pointer-events:none}.shortcut-tooltip[hidden]{display:none}.shortcut-tooltip strong{display:block;font-size:14px;line-height:1.2}.shortcut-tooltip span{display:block;margin-top:3px;color:#d4e2ea;font-size:11px;line-height:1.3}
.weather-forecast{gap:6px}.weather-forecast>div.weather-day{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"identity icon" "temps rain";align-items:center;gap:5px 10px;padding:8px 10px;border:1px solid rgba(74,113,137,.16);border-radius:11px;box-shadow:0 3px 9px rgba(35,72,94,.08);font-size:calc(11px * var(--widget-font-scale))}.weather-forecast>div.weather-day>b{grid-area:identity;display:flex;min-width:0;flex-direction:column;color:#29485b;line-height:1.15;text-align:left}.weather-forecast>div.weather-day>b>small{margin-top:3px;overflow:visible;color:#557184;font-size:calc(10px * var(--widget-font-scale));font-weight:650;line-height:1.15;text-overflow:clip;white-space:normal}.weather-forecast>div.weather-day>i{grid-area:icon;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.64);font-size:21px}.weather-forecast>div.weather-day>span{grid-area:temps;display:flex;align-items:center;flex-direction:row;gap:6px;text-align:left;white-space:normal}.weather-forecast>div.weather-day>span>strong,.weather-forecast>div.weather-day>span>em{padding:3px 6px;border-radius:999px;font-size:calc(10px * var(--widget-font-scale));font-style:normal;white-space:nowrap}.weather-forecast>div.weather-day>span>strong{color:#a74728;background:rgba(255,255,255,.66)}.weather-forecast>div.weather-day>span>em{color:#23658b;background:rgba(255,255,255,.66)}.weather-forecast>div.weather-day>.weather-rain{grid-area:rain;color:#315d78;font-size:calc(10px * var(--widget-font-scale));font-weight:750;text-align:right;white-space:nowrap}.weather-day-clear{background:linear-gradient(135deg,#fff4c9,#ffe8ad)}.weather-day-cloud{background:linear-gradient(135deg,#edf4f8,#dce8ef)}.weather-day-fog{background:linear-gradient(135deg,#eff2f3,#dfe5e7)}.weather-day-rain{background:linear-gradient(135deg,#e6f3fa,#cfe6f2)}.weather-day-snow{background:linear-gradient(135deg,#f7fbff,#e5f1f8)}.weather-day-storm{background:linear-gradient(135deg,#eeeafb,#ddd6f4)}.weather-day-mixed{background:linear-gradient(135deg,#eef6f1,#deece4)}@media(max-width:680px){.shortcut-tooltip{display:none!important}.weather-forecast>div.weather-day{grid-template-columns:minmax(0,1fr) auto}}
.weather-forecast>div.weather-day-clear{background:linear-gradient(135deg,#fff4c9,#ffe8ad)}.weather-forecast>div.weather-day-cloud{background:linear-gradient(135deg,#edf4f8,#dce8ef)}.weather-forecast>div.weather-day-fog{background:linear-gradient(135deg,#eff2f3,#dfe5e7)}.weather-forecast>div.weather-day-rain{background:linear-gradient(135deg,#e6f3fa,#cfe6f2)}.weather-forecast>div.weather-day-snow{background:linear-gradient(135deg,#f7fbff,#e5f1f8)}.weather-forecast>div.weather-day-storm{background:linear-gradient(135deg,#eeeafb,#ddd6f4)}.weather-forecast>div.weather-day-mixed{background:linear-gradient(135deg,#eef6f1,#deece4)}
.weather-icon-svg{display:block;width:100%;height:100%;overflow:visible}.weather-svg-sun circle{fill:#ffd34e}.weather-svg-sun path{fill:none;stroke:#f4a928;stroke-width:2.3;stroke-linecap:round}.weather-svg-moon{fill:#88aee8;stroke:#5f86c6;stroke-width:1.2}.weather-svg-cloud>path:first-child{fill:#9eb7c8;stroke:#7898ad;stroke-width:1}.weather-svg-cloud-light{fill:#dceaf2}.weather-svg-rain path{fill:none;stroke:#378fd0;stroke-width:2.5;stroke-linecap:round}.weather-svg-snow path{fill:none;stroke:#4ea3d8;stroke-width:1.8;stroke-linecap:round}.weather-svg-fog path{fill:none;stroke:#8299a8;stroke-width:2.4;stroke-linecap:round}.weather-svg-lightning{fill:#ffc83d;stroke:#e49b13;stroke-width:.8}.weather-symbol{width:25px;height:25px;display:grid;place-items:center}.weather-current-icon{width:40px;height:40px;display:block}.weather-hours i{width:27px;height:27px;display:block}.weather-forecast>div.weather-day>i .weather-icon-svg{width:29px;height:29px}
.app img,.app-gmail img,.app-leboncoin img,.app-francetv img,.app-youtube img,.app-wikipedia img,.app-facebook img,.app-instagram img,.app-user img{padding:0!important}.app-amazon .brand-svg{padding:0}.tnt-list .program+.program{margin-top:4px}.tnt-list .program{padding:3px 4px}.tnt-list .program>div{align-items:baseline;column-gap:5px;line-height:1.12}.tnt-list .program b{font-size:calc(12px * var(--widget-font-scale));line-height:1.15}.tnt-list .program-title{font-size:calc(13px * var(--widget-font-scale));line-height:1.15}.tnt-list .program small{font-size:calc(10px * var(--widget-font-scale));line-height:1.15}.weather-scroll{overflow-x:hidden}.weather-hours-viewport{width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#65a9c9 rgba(255,255,255,.32)}.weather-hours-viewport::-webkit-scrollbar{height:7px}.weather-hours-viewport::-webkit-scrollbar-track{border-radius:99px;background:rgba(255,255,255,.32)}.weather-hours-viewport::-webkit-scrollbar-thumb{border-radius:99px;background:#65a9c9}.weather-hours{width:max-content;min-width:100%;overflow:visible}.weather-hours>span{width:60px;flex-basis:60px}.weather-hours b{white-space:nowrap}.weather-forecast{gap:7px}.weather-forecast>div.weather-day{grid-template-areas:"identity icon" "temps rain" "comment comment";gap:5px 10px;padding:9px 10px;border-color:rgba(51,92,116,.2);box-shadow:0 5px 12px rgba(35,72,94,.13)}.weather-forecast>div.weather-day>i{background:rgba(255,255,255,.78);box-shadow:0 3px 9px rgba(34,73,96,.13)}.weather-forecast>div.weather-day>span>strong,.weather-forecast>div.weather-day>span>em{font-size:calc(11px * var(--widget-font-scale));font-weight:850}.weather-forecast>div.weather-day>.weather-rain{padding:3px 7px;border-radius:999px;color:#1d587b;background:rgba(255,255,255,.7)}.weather-comment{grid-area:comment;margin:1px 0 0!important;color:#36596d!important;font-size:calc(10px * var(--widget-font-scale))!important;font-weight:700;line-height:1.25}.weather-forecast>div.weather-day-clear{background:linear-gradient(135deg,#fff0a8,#ffd777)}.weather-forecast>div.weather-day-cloud{background:linear-gradient(135deg,#e3edf4,#bdd2df)}.weather-forecast>div.weather-day-fog{background:linear-gradient(135deg,#e8ecee,#c5d0d4)}.weather-forecast>div.weather-day-rain{background:linear-gradient(135deg,#d9f0fb,#9fd0e8)}.weather-forecast>div.weather-day-snow{background:linear-gradient(135deg,#f7fcff,#d4eaf7)}.weather-forecast>div.weather-day-storm{background:linear-gradient(135deg,#e8defb,#c3afea)}.weather-forecast>div.weather-day-mixed{background:linear-gradient(135deg,#e0f2e6,#b9ddc6)}
.app-youtube img,.app-facebook img,.app-instagram img,.app-wikipedia img{padding:4px!important}
footer nav button{padding:0;border:0;color:inherit;background:none;font:inherit;cursor:pointer}footer nav button:hover,footer a:hover{color:#fff}
.weather-forecast>div.weather-day{grid-template-areas:"identity icon" "temps rain" "periods periods" "comment comment"}.weather-periods{grid-area:periods;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.weather-periods>span{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label icon" "temp icon";align-items:center;gap:0 4px;padding:5px 6px;border:1px solid rgba(255,255,255,.52);border-radius:8px;background:rgba(255,255,255,.45);text-align:left!important;white-space:normal!important}.weather-periods b{grid-area:label;color:#526d7d;font-size:calc(9px * var(--widget-font-scale));line-height:1.1}.weather-periods i{grid-area:icon!important;width:25px!important;height:25px!important;background:none!important;box-shadow:none!important}.weather-periods em{grid-area:temp;color:#234f69;font-size:calc(11px * var(--widget-font-scale));font-style:normal;font-weight:850}.weather-periods .weather-icon-svg{width:25px!important;height:25px!important}@media(max-width:680px){.weather-periods{gap:4px}.weather-periods>span{padding:4px}}
.weather-periods>span{grid-template-areas:"label icon" "temp icon" "detail detail"}.weather-periods>span>small{grid-area:detail;white-space:normal;text-align:left;font-size:calc(10px * var(--widget-font-scale));line-height:1.35;margin-top:4px}footer nav{flex-wrap:wrap;justify-content:flex-end}

/* Gestion unifiée des raccourcis et correction du masquage des widgets. */
.daily article.hidden{display:none!important}
.favorite-remove-list button{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#71323a;text-align:left}
.favorite-remove-list button::after{content:"×";font-size:20px;font-weight:800;line-height:1}

/* Fond Univers, bouton de gestion équilibré et dialogues plus contrastés. */
.preview.univers{background:url('univers.webp') center/cover}
.manage-symbol{display:flex;align-items:center;justify-content:center;gap:1px;color:#fff;font:800 18px/1 Inter,system-ui,sans-serif;letter-spacing:-1px}
.manage-symbol b{width:13px;font:inherit;text-align:center}.manage-symbol i{width:8px;font:700 19px/1 Georgia,serif;text-align:center}
dialog:not(.tv-dialog){border:1px solid rgba(255,255,255,.82);background:transparent;box-shadow:0 34px 100px rgba(1,15,29,.58)}
dialog:not(.tv-dialog)>.dialog-card{border:1px solid #fff;border-radius:23px;background:linear-gradient(145deg,#fff 0%,#edf4f8 54%,#dce8ef 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
dialog:not(.tv-dialog) .dialog-head{align-items:center;padding-bottom:14px;border-bottom:1px solid #c9d8e1}
dialog:not(.tv-dialog) .dialog-head h2{color:#102d46}
dialog:not(.tv-dialog) .dialog-close{border:1px solid #c4d3dd;color:#173d58;background:#dce8ef;box-shadow:0 3px 9px rgba(18,51,74,.12)}
dialog:not(.tv-dialog) .dialog-close:hover{color:#fff;background:var(--navy)}
dialog:not(.tv-dialog) .dialog-tabs{background:#d5e1e9}
dialog:not(.tv-dialog) .dialog-tabs button{color:#405b6e;font-weight:750}
dialog:not(.tv-dialog) .dialog-tabs .active{color:#123b58;background:#fff;box-shadow:0 3px 10px rgba(20,55,78,.13)}
dialog:not(.tv-dialog) .catalog button,dialog:not(.tv-dialog) .tab-panel input{border-color:#bfd0db;color:#17364d;background:#fff;box-shadow:0 2px 7px rgba(25,58,80,.07)}
.has-tip::before,.has-tip::after{display:none!important}
.common-tooltip,.shortcut-tooltip,.news-tooltip,.tv-channel-tooltip,.tv-program-tooltip{color:#fff!important;background:var(--navy,#174b72)!important;border:1px solid rgba(255,255,255,.4)!important;border-radius:13px!important;box-shadow:0 12px 35px #071e3a44!important;font:500 13px/1.4 system-ui,sans-serif}
.common-tooltip{position:fixed;z-index:9999;width:max-content;max-width:min(320px,calc(100vw - 16px));padding:9px 12px;pointer-events:none}.common-tooltip[hidden]{display:none}.shortcut-tooltip{padding:9px 12px}.shortcut-tooltip strong{font-size:13px}.shortcut-tooltip span{font-size:10px}.news-tooltip{padding:12px 13px}.news-tooltip strong{font-size:15px}.news-tooltip p{font-size:12px}.tv-channel-tooltip{font-size:12px}.tv-tooltip-body>strong{font-size:17px}.tv-tooltip-body>small{font-size:11px}.news-tooltip p,.tv-program-tooltip p,.tv-program-tooltip span{color:#f0f6ff!important}.share-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.share-options a,.share-options button{padding:14px;border:1px solid #b2c7d8;border-radius:12px;background:#eef5fa;color:var(--navy);font:700 15px system-ui;text-align:center;text-decoration:none;cursor:pointer}.share-options button[hidden]{display:none}

/* Ajustements v50 : widget TV réellement fluide et infobulles plus discrètes. */
.tv-card,.tv-card .panel-head,.tv-card .panel-head>span,.tv-card .program-list,.tnt-list,.tnt-list .program,.tnt-list .program>div{min-width:0;max-width:100%}
.tv-card .panel-head{gap:6px}.tv-card .panel-head>span{flex:1;overflow:hidden}.tv-card .panel-head b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-card #openTvGuide{max-width:48%;padding-inline:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:680px){.daily article{min-width:min(292px,100%);max-width:100%}.tv-card{min-width:min(270px,100%)}}

/* Ajustements v52 : widgets étroits, suppression et ajout en série. */
.favorite-status{min-height:20px;margin:14px 0 0;color:#276b4d;font-size:13px;font-weight:750;text-align:center}
@media(max-width:680px){.daily{display:grid!important;grid-template-columns:minmax(0,1fr)!important;overflow:visible!important}.daily article,.tv-card{width:100%;min-width:0!important;max-width:100%}.organize-button{right:12px;top:-18px;transform:none}}

/* Ajustements v56 : dialogues adaptatifs et commandes clarifiées. */
.manage-symbol i{position:relative;width:8px;height:20px}.manage-symbol i::before{content:"";position:absolute;left:3px;top:1px;width:2px;height:18px;border-radius:2px;background:currentColor;transform:rotate(45deg)}
dialog:not(.tv-dialog)>.dialog-card{background:linear-gradient(145deg,#fff 0%,color-mix(in srgb,var(--dialog-tint,var(--navy)) 9%,#edf4f8) 55%,color-mix(in srgb,var(--dialog-tint,var(--navy)) 16%,#dce8ef) 100%)}
.weather-forecast>div.weather-day>span{align-items:flex-start;flex-direction:column;gap:4px}
.sync-photo-option{display:flex;align-items:flex-start;gap:9px;margin:14px 0;color:#40596a;font-size:13px;line-height:1.4}.sync-photo-option input{margin-top:2px}.danger-button{width:100%;padding:11px;border:1px solid #b94d4d;border-radius:11px;color:#8c2525;background:#fff7f7;font-weight:750;cursor:pointer}

/* Ajustements v57 : outils, calendrier et dialogues Navigoo. */
#syncDialog .dialog-card{width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
#syncDialog .dialog-head{position:sticky;z-index:3;top:-1px;padding:5px 0 12px;background:color-mix(in srgb,var(--dialog-tint,var(--navy)) 7%,#f8fbfc 93%)}
.sync-explanation,.reset-zone p{margin:0;color:#536a79;font-size:13px;line-height:1.45}.sync-photo-option{margin:2px 0;padding:10px;border-radius:11px;background:color-mix(in srgb,var(--dialog-tint,var(--navy)) 7%,#fff)}.sync-photo-option small{display:block;margin-top:3px;color:#6b7d88}.reset-zone{margin-top:16px;padding:14px;border:1px solid #e0c5c5;border-radius:14px;background:#fff9f9}.reset-zone p{margin:5px 0 11px}
.manage-symbol{position:relative;width:39px;height:31px;display:block}.manage-symbol b{position:absolute;width:auto}.manage-symbol b:first-child{left:2px;top:1px}.manage-symbol b:last-child{right:2px;bottom:1px}.manage-symbol i{position:absolute;left:18px;top:3px;width:3px;height:27px}.manage-symbol i::before{left:0;top:0;width:3px;height:27px}
.calculator-card .panel-head>span i{background:linear-gradient(145deg,#168a86,#56c3ac)}.converter-card .panel-head>span i{background:linear-gradient(145deg,#cc6c36,#e7a15f)}.tool-display,.tool-select,.converter-row input,.converter-row select{width:100%;padding:10px;border:1px solid #cbdbe3;border-radius:10px;background:#ffffffc9;color:#173247}.tool-display{margin:15px 0 10px;text-align:right;font-size:20px;font-weight:800}.calculator-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.calculator-keys button{min-height:36px;border:1px solid #d5e1e7;border-radius:9px;color:#24485e;background:#ffffffb8;font-weight:800;cursor:pointer}.calculator-equals{grid-column:1/-1;color:#fff!important;background:var(--navy)!important}.tool-select{margin:8px 0}.converter-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.converter-row output{display:flex;align-items:center;min-height:42px;padding:10px;border-radius:10px;background:#fff;font-weight:850}.converter-arrow{text-align:center;color:var(--navy);font-size:22px}
.calendar-dialog .dialog-card{width:min(760px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto}.calendar-dialog-nav{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;margin:15px 0}.calendar-dialog-nav strong{text-align:center;text-transform:capitalize}.calendar-dialog-nav button,.calendar-dialog-grid button{border:0;border-radius:9px;color:var(--navy);background:#ffffffa8;cursor:pointer}.calendar-dialog-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-dialog-grid>b{padding:5px;color:#647b88;font-size:11px;text-align:center}.calendar-dialog-grid button{min-height:44px}.calendar-dialog-grid button.outside{opacity:.35}.calendar-dialog-grid button.has-event{box-shadow:inset 0 -4px 0 var(--navy);font-weight:850}.calendar-event-form{display:grid;grid-template-columns:150px 1fr auto;align-items:end;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid #ccdae1}.calendar-event-form label{color:#536a79;font-size:12px;font-weight:750}.calendar-event-form input{width:100%;height:42px;margin-top:4px;padding:0 10px;border:1px solid #cbd8df;border-radius:9px}.calendar-event-form button{height:42px}.calendar-event-list{display:grid;gap:7px;margin-top:13px}.calendar-event-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-radius:10px;background:#ffffff9e}.calendar-event-list button{border:0;color:#9b3434;background:none;cursor:pointer}@media(max-width:620px){.calendar-event-form{grid-template-columns:1fr}.calendar-event-form button{width:100%}.calendar-dialog-grid{gap:3px}.calendar-dialog-grid button{min-height:38px}}

/* Ajustements v58 : partage illustré et devises. */
.share-options a,.share-options button{display:flex;align-items:center;justify-content:flex-start;gap:11px;text-align:left}.share-options img{width:30px;height:30px;flex:0 0 30px}.converter-status{display:block;margin-top:9px;color:#627785;font-size:11px;line-height:1.35}

/* Ajustements v59 : une seule zone de défilement et restauration visible. */
#syncDialog{width:min(980px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:24px;background:transparent;overflow:hidden}
#syncDialog>.dialog-card{width:100%;max-height:calc(100dvh - 24px);padding:22px;overflow-y:auto;overscroll-behavior:contain}
#syncDialog .dialog-head{position:static;padding:0 0 10px;background:transparent}
.sync-columns{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:14px}.sync-columns .sync-block{height:100%;margin-top:12px}.sync-block .sync-code.revealed{font-size:24px;transform:none}.sync-block .primary{min-height:48px}.reset-zone{margin-top:14px}
.manage-symbol b:first-child{left:10px;top:8px;right:auto;bottom:auto;transform:translate(-50%,-50%)}.manage-symbol b:last-child{left:29px;top:23px;right:auto;bottom:auto;transform:translate(-50%,-50%)}.manage-symbol i{left:18px;top:2px;height:28px}.manage-symbol i::before{height:28px}
@media(max-width:760px){#syncDialog{width:min(620px,calc(100vw - 16px));max-height:calc(100dvh - 16px)}#syncDialog>.dialog-card{max-height:calc(100dvh - 16px);padding:17px}.sync-columns{grid-template-columns:1fr}.sync-columns .sync-block{height:auto}.sync-block .sync-code.revealed{font-size:21px}}

/* Ajustements v60 : minuteur allégé, éphéméride et calendrier compact. */
.manage-symbol b:last-child{left:28px;top:22px}
.timer-card .widget-help{margin-bottom:8px}.session-duration{margin-top:5px}.timer-display{margin:10px 0 12px}.ephemeris{display:grid;gap:5px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(92,113,126,.2);color:#526b79;font-size:11px;line-height:1.35}.ephemeris b{color:#274c61;font-size:13px;text-transform:capitalize}.ephemeris span:nth-of-type(2){color:var(--navy);font-weight:750}.ephemeris a{width:max-content;color:#748792;font-size:9px;text-decoration:none}
.calendar-dialog{width:min(650px,calc(100vw - 20px));max-width:none;max-height:calc(100dvh - 20px);padding:0;border:0;border-radius:23px;background:transparent;overflow:hidden}.calendar-dialog .dialog-card{width:100%;max-height:calc(100dvh - 20px);padding:18px;overflow-y:auto}.calendar-dialog-nav{margin:8px 0}.calendar-dialog-grid{gap:3px}.calendar-dialog-grid>b{padding:2px}.calendar-dialog-grid button{min-height:32px}.calendar-event-form{margin-top:10px;padding-top:10px}.calendar-event-list{margin-top:8px}

/* Ajustements v62 : partages, éphéméride et widgets compacts. */
.daily{grid-template-columns:repeat(auto-fit,minmax(min(100%,calc(230px * var(--widget-font-scale))),1fr));align-items:stretch}.daily article{align-self:stretch}.weather-card,.tv-card{min-height:0!important}
.ephemeris{margin-top:12px;padding-top:0;border-top:0;font-size:calc(11px * var(--widget-font-scale));overflow-wrap:break-word}.ephemeris-date{font-size:calc(16px * var(--widget-font-scale))!important;line-height:1.25}.ephemeris-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.ephemeris-facts>span{min-width:0;display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:10px;background:rgba(255,255,255,.55)}.ephemeris-facts small{color:#6b7c87;font-size:calc(9px * var(--widget-font-scale))}.ephemeris-facts strong{color:#244b61;font-size:calc(12px * var(--widget-font-scale));line-height:1.2}.ephemeris-names{padding:8px;border-radius:10px;color:var(--navy)!important;background:rgba(255,255,255,.55);font-size:calc(11px * var(--widget-font-scale));font-weight:750}.ephemeris a{max-width:100%;font-size:calc(9px * var(--widget-font-scale))}.panel-head>span{min-width:0}.panel-head b,.daily article p{overflow-wrap:break-word}.daily article small,.daily article strong,.daily article button{overflow-wrap:normal;word-break:normal}.timer-display{font-size:calc(34px * var(--widget-font-scale))}
@media(max-width:680px){.weather-peek .weather-symbol{display:none}.weather-peek{min-width:52px;justify-content:center;padding:0 10px}.weather-peek span:last-child{display:block}.weather-peek b{font-size:14px}.weather-card,.tv-card{height:auto!important;min-height:0!important}}

/* Ajustements v63 : hauteur utile, en-têtes alignés et éphéméride enrichie. */
.weather-card,.tv-card{display:flex!important;flex-direction:column}.weather-card .weather-scroll,.tv-card .tnt-list{max-height:none;min-height:0;flex:1}.panel-head{min-height:48px;align-items:center}.panel-head>span{min-height:34px;align-items:center}.panel-head>span i{width:34px!important;height:34px!important;min-width:34px;flex:0 0 34px;aspect-ratio:1;border-radius:10px!important}.panel-head>span i svg{width:20px!important;height:20px!important}.tv-card .panel-head>span i{border-radius:10px!important}.panel-head b{line-height:1.15}
.ephemeris{gap:8px}.ephemeris-hero{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,239,218,.58))}.ephemeris-hero>span{min-width:0;display:flex;flex-direction:column}.ephemeris-hero small,.ephemeris-moon small,.ephemeris-saying small{color:#7c6b5d;font-size:calc(9px * var(--widget-font-scale));font-weight:800;text-transform:uppercase;letter-spacing:.07em}.ephemeris-hero time{flex:none;color:#a75d34;font:800 calc(22px * var(--widget-font-scale))/1 Georgia}.ephemeris-moon{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:rgba(38,54,91,.08)}.ephemeris-moon>span:first-child{font-size:calc(25px * var(--widget-font-scale));line-height:1}.ephemeris-moon>span:last-child{min-width:0;display:flex;flex-direction:column}.ephemeris-moon strong{color:#344a6b;font-size:calc(11px * var(--widget-font-scale))}.ephemeris-saying{margin:0;padding:9px 10px;border-left:3px solid #d58b55;border-radius:3px 10px 10px 3px;background:rgba(255,247,238,.62)}.ephemeris-saying span{display:block;margin-top:3px;color:#5d5149;font:italic calc(11px * var(--widget-font-scale))/1.35 Georgia}.ephemeris-date{font-size:calc(15px * var(--widget-font-scale))!important}

/* Ajustements v64 : centrage régulier des raccourcis. */
.app-grid,.app-grid:not(.organizing){justify-content:center}.app{justify-content:center}.app-tile{margin-inline:auto}.shortcut-bar{padding-inline:15px}

/* Ajustements v65 : hauteur maîtrisée des lignes de widgets. */
@media(min-width:681px){.daily article{height:min(75vh,calc(380px * var(--widget-font-scale)));min-height:280px;overflow-y:auto}.weather-card,.tv-card{overflow:hidden!important}.weather-card .weather-scroll,.tv-card .tnt-list{height:0;min-height:0;flex:1;overflow-y:auto}}

/* Ajustements v67 : ascenseurs en marge et éphéméride simplifiée. */
.weather-card .weather-scroll,.tv-card .tnt-list{margin-right:-13px;padding-right:13px;scrollbar-gutter:stable}.ephemeris-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.ephemeris-facts>span{padding:7px 6px}.ephemeris-facts small{font-size:calc(8px * var(--widget-font-scale))}.ephemeris-saying{padding-block:8px}.manage-symbol b:last-child{left:27px;top:21px}

/* Ajustements v68 : widget lunaire et ascenseur TV neutre. */
.tv-card .tnt-list{scrollbar-width:thin;scrollbar-color:#98a4ab transparent}.tv-card .tnt-list::-webkit-scrollbar{width:6px}.tv-card .tnt-list::-webkit-scrollbar-track{background:transparent}.tv-card .tnt-list::-webkit-scrollbar-thumb{border-radius:99px;background:#98a4ab}.moon-garden-card .panel-head>span i{background:linear-gradient(145deg,#476b4e,#8eaf68)}.moon-garden-card{display:flex;flex-direction:column;gap:10px}.moon-garden-hero{display:flex;align-items:center;gap:11px;padding:11px;border-radius:12px;background:linear-gradient(135deg,rgba(30,45,78,.12),rgba(255,243,205,.55))}.moon-garden-hero>span:first-child{font-size:31px;line-height:1}.moon-garden-hero>span:last-child{min-width:0;display:flex;flex-direction:column}.moon-garden-card small{color:#687985;font-size:calc(9px * var(--widget-font-scale));line-height:1.3}.moon-garden-hero strong{color:#33526a;font-size:calc(14px * var(--widget-font-scale))}.moon-garden-type,.moon-garden-advice{padding:10px;border-radius:11px;background:rgba(255,255,255,.52)}.moon-garden-type{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 8px}.moon-garden-type small{grid-column:1/-1;text-transform:uppercase;letter-spacing:.06em}.moon-garden-type strong{color:#56723e;font-size:calc(15px * var(--widget-font-scale));text-transform:capitalize}.moon-garden-type span{color:#60717b;font-size:calc(10px * var(--widget-font-scale));text-align:right}.moon-garden-advice small{font-weight:800;text-transform:uppercase;letter-spacing:.06em}.moon-garden-advice p{margin:4px 0 0;color:#3c5360;font-size:calc(11px * var(--widget-font-scale));line-height:1.4}.moon-garden-note{margin-top:auto;padding-top:8px;border-top:1px solid rgba(83,105,116,.18)}

/* Ajustements v70 : largeur utile du programme TV restaurée. */
.tv-card .tnt-list{width:calc(100% + 13px);margin-right:-13px;padding-right:0;scrollbar-gutter:auto}.tv-card .tnt-list .program{width:calc(100% - 6px);margin-right:0}

/* Ajustements v72 : grille d'applications et widgets plus compacts. */
@media (min-width:681px) and (max-width:1050px){.shortcut-bar{width:min(440px,calc(100% - 40px));max-width:calc(100% - 40px);padding-inline:15px}.app-grid,.app-grid:not(.organizing){width:100%;grid-template-columns:repeat(5,minmax(0,1fr))!important;justify-content:stretch}.app{width:100%}}
.ephemeris{gap:6px}.ephemeris-saying{padding-block:5px}.ephemeris-saying span{margin-top:2px}.weather-card .panel-head{padding-bottom:4px}.weather-card .weather-scroll{margin-top:0}

/* Ajustements v73 : centrage mobile et en-tête respirant. */
@media(max-width:680px){.weather-peek{display:none}.topbar{gap:12px}.brand{min-width:0}.top-actions{flex:none}.top-actions #installButton{order:1}.top-actions #backgroundButton{order:2}.top-actions #syncButton{order:3}.top-actions #settingsButton{order:4}.shortcut-bar{width:calc(100% - 40px);max-width:calc(100% - 40px);margin-inline:20px;padding-inline:12px}.app-grid,.app-grid:not(.organizing){width:100%;justify-content:stretch}.app{width:100%!important}.app-tile{margin-inline:auto}}

/* Ajustements v74 : davantage d'applications par ligne et ascenseurs harmonisés. */
@media(min-width:681px){.shortcut-bar{width:min(680px,calc(100% - 40px));max-width:calc(100% - 40px)}.app-grid,.app-grid:not(.organizing){display:flex!important;width:100%;max-width:none;flex-wrap:wrap!important;justify-content:center;gap:9px 0}.app{width:auto!important;flex:0 0 calc(100% / 7)}}
.quote-card,.tv-card .tnt-list{scrollbar-width:thin;scrollbar-color:rgba(116,128,135,.72) transparent}.quote-card::-webkit-scrollbar,.tv-card .tnt-list::-webkit-scrollbar{width:6px}.quote-card::-webkit-scrollbar-track,.tv-card .tnt-list::-webkit-scrollbar-track{background:transparent}.quote-card::-webkit-scrollbar-thumb,.tv-card .tnt-list::-webkit-scrollbar-thumb{border-radius:99px;background:rgba(116,128,135,.72)}

/* Ajustements v75 : colonnes alignées et titre de l'éphéméride fixe. */
@media(min-width:1051px){.shortcut-bar{width:min(760px,calc(100% - 40px))}.app-grid,.app-grid:not(.organizing){display:grid!important;grid-template-columns:repeat(10,minmax(0,1fr))!important;gap:9px 0;justify-content:stretch}.app{width:100%!important}}
@media(min-width:681px) and (max-width:1050px){.app-grid,.app-grid:not(.organizing){display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:9px 0;justify-content:stretch}.app{width:100%!important}}
@media(min-width:681px){.quote-card{display:flex;flex-direction:column;overflow:hidden!important}.quote-card .ephemeris{height:0;min-height:0;flex:1;margin-right:-13px;padding-right:13px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(116,128,135,.72) transparent}.quote-card .ephemeris::-webkit-scrollbar{width:6px}.quote-card .ephemeris::-webkit-scrollbar-track{background:transparent}.quote-card .ephemeris::-webkit-scrollbar-thumb{border-radius:99px;background:rgba(116,128,135,.72)}}

/* Ajustements v76 : raccourcis compacts à retour automatique. */
.shortcut-bar{width:min(760px,calc(100% - 40px));max-width:calc(100% - 40px);padding-inline:15px}
.app-grid,.app-grid:not(.organizing){display:flex!important;width:100%;max-width:none;flex-wrap:wrap!important;grid-template-columns:none!important;justify-content:flex-start;align-content:center;gap:9px 8px}
.app{width:42px!important;flex:0 0 42px!important}
@media(max-width:680px){.shortcut-bar{width:calc(100% - 40px);max-width:calc(100% - 40px);margin-inline:20px;padding-inline:12px}.app-grid,.app-grid:not(.organizing){display:flex!important;gap:9px 8px}.app{width:42px!important;flex-basis:42px!important}}

/* Ajustements v77 : nombre maximal de raccourcis et marges latérales égales. */
.app-grid,.app-grid:not(.organizing){display:grid!important;grid-template-columns:repeat(auto-fit,42px)!important;justify-content:center;align-content:center;gap:9px 8px}
.app{width:42px!important}
@media(max-width:680px){.app-grid,.app-grid:not(.organizing){display:grid!important;grid-template-columns:repeat(auto-fit,42px)!important;justify-content:center}}

/* Ajustements v78 : gestes mobiles, ordre des actions et symbole de gestion. */
.manage-symbol{width:36px;height:31px}
.manage-symbol b:first-child{left:9px;top:8px}
.manage-symbol b:last-child{left:27px;top:21px}
.manage-symbol i{left:16.5px}
@media(max-width:680px){.top-actions #installButton{order:1}.top-actions #syncButton{order:2}.top-actions #backgroundButton{order:3}.top-actions #settingsButton{order:4}}
@media(max-width:680px),(pointer:coarse){.daily article{touch-action:auto}.weather-card .weather-scroll,.tv-card .tnt-list{height:auto!important;max-height:none!important;overflow-y:visible!important;overscroll-behavior-y:auto!important}}

/* Ajustements v79 : gestion des raccourcis illustrée et espacement optique. */
#organizeButton{transform:translateX(-4px)}
#favoriteDialog .dialog-card{max-height:calc(100dvh - 24px);overflow-y:auto}
#favoriteDialog .catalog button{min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:9px;padding:10px;text-align:left}
#favoriteDialog .catalog button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#favoriteDialog .catalog-icon{width:28px;height:28px;flex:0 0 28px;padding:2px;border-radius:8px;background:#fff;object-fit:contain}
#favoriteDialog .favorite-remove-list button::after{margin-left:auto}
@media(max-width:680px){#favoriteDialog .catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Ajustements v80 : catalogue complet des sites suggérés. */
#favoriteDialog #catalog{max-height:min(390px,50dvh);padding-right:6px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8399a7 transparent}
#favoriteDialog #catalog::-webkit-scrollbar{width:6px}
#favoriteDialog #catalog::-webkit-scrollbar-track{background:transparent}
#favoriteDialog #catalog::-webkit-scrollbar-thumb{border-radius:99px;background:#8399a7}
@media(max-width:680px){#favoriteDialog #catalog{max-height:48dvh}}

/* Ajustements v81 : alignement du bouton de gestion selon l’écran. */
#organizeButton{padding:0;appearance:none;-webkit-appearance:none;transform:none}
@media(max-width:680px){#organizeButton{transform:translateX(-4px)}}

/* Ajustements v82 : centrage tactile sans modifier le rendu ordinateur. */
@media(max-width:1050px),(pointer:coarse){#organizeButton{transform:none}}

/* Ajustements v83 : présentation éditoriale de l’accueil. */
.home-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-top:30px;padding:19px 22px;border:1px solid rgba(255,255,255,.62);border-radius:20px;color:#fff;background:linear-gradient(135deg,rgba(7,31,48,.72),rgba(18,72,86,.56));box-shadow:0 18px 45px rgba(3,20,33,.28);-webkit-backdrop-filter:blur(18px) saturate(115%);backdrop-filter:blur(18px) saturate(115%)}
.home-intro h1{margin:0 0 7px;font:700 clamp(21px,2.2vw,29px)/1.15 Georgia,serif;text-shadow:0 2px 9px rgba(0,0,0,.4)}
.home-intro p{max-width:800px;margin:0;color:rgba(255,255,255,.87);font-size:13px;line-height:1.55}
.home-intro nav{display:flex;max-width:330px;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.home-intro a{padding:8px 11px;border:1px solid rgba(255,255,255,.36);border-radius:999px;color:#fff;background:rgba(255,255,255,.11);font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}
.home-intro a:hover{background:rgba(255,255,255,.22)}
body.high-contrast .home-intro{color:#fff;background:#07192a;border:2px solid #fff;backdrop-filter:none}
@media(max-width:780px){.home-intro{grid-template-columns:1fr}.home-intro nav{max-width:none;justify-content:flex-start}}
@media(max-width:680px){.home-intro{margin-top:22px;padding:17px}.home-intro h1{font-size:22px}.home-intro p{font-size:12px}.home-intro nav{display:grid;grid-template-columns:1fr}.home-intro a{text-align:center}}
