:root{--bg-chaux:#FBF8F3;--bg-sable:#F3ECE1;--bg-carte:#FFFDF9;--border-pierre:#DFD5C5;--border-pierre-strong:#C5B69E;--ink-noir:#18222F;--ink-secondaire:#465467;--ink-doux:#68778D;--sidi-cobalt:#0B4F9F;--sidi-cobalt-dark:#07356E;--sidi-azur:#1971C2;--sidi-ciel:#E8F3FC;--mer-turquoise:#0C8599;--sahara-ocre:#C85A17;--sahara-or:#D99B26;--sahara-sable-chaud:#FDF3DF;--kairouan-vert:#122A24;--kairouan-vert-card:#1A3A32;--kairouan-or:#E2B94B;--stade-rouge:#C92A2A;--stade-rouge-pale:#FFF0F0;--flag-vert-bg:#E6F4EA;--flag-vert-txt:#1B6E32;--flag-orange-bg:#FEF3D6;--flag-orange-txt:#9C5700;--font-serif:'Fraunces',Georgia,serif;--font-sans:'Plus Jakarta Sans',system-ui,sans-serif;--font-arabic:'Amiri',serif;--fs-xs:0.78rem;--fs-sm:0.88rem;--fs-base:1.05rem;--fs-body:1.125rem;--fs-lg:1.25rem;--fs-xl:1.45rem;--fs-2xl:clamp(1.55rem,2.5vw,2.15rem);--fs-hero-temp:clamp(4.2rem,6vw,5.4rem);--space-1:6px;--space-2:10px;--space-3:14px;--space-4:18px;--space-5:24px;--space-6:32px;--space-7:48px;--space-section-mobile:56px;--space-section-desktop:76px;--container-max:1280px;--gutter-mobile:18px;--gutter-tablet:28px;--gutter-desktop:40px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:28px;--radius-arch:120px 120px 20px 20px;--radius-prayer-arch:36px 36px 14px 14px;--shadow-soft:0 8px 28px -6px rgba(24,34,47,0.06);--shadow-hover:0 14px 30px -8px rgba(11,79,159,0.12);--shadow-hero:0 20px 44px -12px rgba(7,53,110,0.32);--shadow-ticket:0 4px 0 var(--border-pierre);--med-deep-blue:var(--ink-noir);--med-ivory:var(--bg-chaux);--med-terracotta:var(--sahara-ocre);--med-solar-yellow:var(--sahara-or);--med-lagoon-teal:var(--mer-turquoise);--med-text-main:var(--ink-noir);--med-text-muted:var(--ink-secondaire);--med-border:var(--border-pierre);--med-font-serif:var(--font-serif);--bg-page:var(--bg-chaux);--bg-page-gradient:none;--bg-surface:var(--bg-carte);--bg-surface-alt:var(--sidi-ciel);--bg-hero:linear-gradient(132deg,var(--sidi-cobalt-dark) 0%,var(--sidi-cobalt) 48%,var(--sidi-azur) 100%);--bg-card-subtle:var(--bg-chaux);--primary-900:var(--sidi-cobalt-dark);--primary-800:var(--sidi-cobalt);--primary-700:var(--sidi-cobalt);--primary-600:var(--sidi-azur);--primary-500:var(--sidi-azur);--primary-400:var(--mer-turquoise);--primary-100:var(--sidi-ciel);--primary-50:var(--sidi-ciel);--accent-sun:var(--sahara-or);--accent-sun-bright:var(--sahara-or);--accent-sun-soft:var(--sahara-sable-chaud);--sand-warm:var(--bg-sable);--sand-border:var(--border-pierre);--sand-accent:var(--sahara-ocre);--accent-teal:var(--mer-turquoise);--accent-teal-soft:var(--sidi-ciel);--accent-green:var(--flag-vert-txt);--accent-green-soft:var(--flag-vert-bg);--accent-red:var(--stade-rouge);--accent-red-soft:var(--stade-rouge-pale);--text-main:var(--ink-noir);--text-secondary:var(--ink-secondaire);--text-muted:var(--ink-doux);--text-on-dark:var(--bg-carte);--text-on-dark-muted:var(--sidi-ciel);--border-color:var(--border-pierre);--border-radius-sm:var(--radius-sm);--border-radius-md:var(--radius-md);--border-radius-lg:var(--radius-lg);--border-radius-pill:9999px;--shadow-xs:var(--shadow-soft);--shadow-sm:var(--shadow-soft);--shadow-md:var(--shadow-hover);--shadow-lg:var(--shadow-hero);--header-height:76px;--transition-fast:180ms cubic-bezier(0.22,1,0.36,1)}body[data-weather-mood="sunny"]{--bg-hero:linear-gradient(130deg,var(--sidi-cobalt-dark) 0%,var(--sidi-cobalt) 50%,var(--sidi-azur) 100%)}body[data-weather-mood="cloudy"]{--bg-hero:linear-gradient(132deg,var(--ink-noir) 0%,var(--sidi-cobalt-dark) 52%,var(--sidi-cobalt) 100%)}body[data-weather-mood="rainy"]{--bg-hero:linear-gradient(135deg,var(--ink-noir) 0%,var(--sidi-cobalt-dark) 50%,var(--mer-turquoise) 100%)}body[data-weather-mood="night"]{--bg-hero:linear-gradient(135deg,var(--ink-noir) 0%,var(--sidi-cobalt-dark) 65%,var(--sidi-cobalt) 100%)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:100%;overflow-x:clip;max-width:100%}body{font-family:var(--font-sans);background-color:var(--bg-chaux);color:var(--ink-noir);line-height:1.6;font-size:var(--fs-body);min-height:100vh;max-width:100%;display:flex;flex-direction:column;overflow-x:clip;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,.font-serif{font-family:var(--font-serif);color:var(--ink-noir);line-height:1.22;letter-spacing:-0.015em}[lang="ar"],.font-arabic,.city-dir-ar,.prayer-arabic,.seo-arabic-badge{font-family:var(--font-arabic)}a{color:inherit;text-decoration:none}ul{list-style:none}button,input,select{font:inherit;color:inherit;border:none;background:none}button,select{cursor:pointer}:focus-visible{outline:2px solid var(--sidi-cobalt);outline-offset:2px}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--gutter-mobile)}@media (min-width:640px){.container{padding-inline:var(--gutter-tablet)}}@media (min-width:1024px){.container{padding-inline:var(--gutter-desktop)}}.tunis-divider{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--gutter-mobile);margin-block:var(--space-6);color:var(--sahara-or)}.tunis-divider::before,.tunis-divider::after{content:"";flex:1;height:1px;background:linear-gradient( 90deg,transparent 0%,var(--border-pierre-strong) 20%,var(--sahara-or) 50%,var(--border-pierre-strong) 80%,transparent 100% )}.tunis-divider-motif{display:inline-flex;align-items:center;justify-content:center;text-align:center;max-width:100%;gap:var(--space-2);font-family:var(--font-serif);font-size:var(--fs-xs);color:var(--sahara-ocre);letter-spacing:0.06em;text-transform:uppercase;padding:var(--space-1) var(--space-3);background:var(--bg-sable);border:1px solid var(--border-pierre);border-radius:var(--border-radius-pill);box-shadow:var(--shadow-soft)}.section-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-4)}.section-title{font-family:var(--font-serif);font-size:var(--fs-2xl);font-weight:700;color:var(--ink-noir);display:flex;align-items:center;gap:var(--space-2);letter-spacing:-0.015em}.section-subtitle{font-family:var(--font-sans);font-size:var(--fs-base);color:var(--ink-secondaire)}.section-link{font-size:var(--fs-sm);font-weight:700;color:var(--sidi-cobalt);display:inline-flex;align-items:center;gap:var(--space-1);transition:color var(--transition-fast)}.section-link:hover{color:var(--sidi-cobalt-dark);text-decoration:underline}::selection{background:var(--sidi-ciel);color:var(--sidi-cobalt-dark)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:1000;background:var(--bg-carte);border-bottom:1px solid var(--border-pierre);box-shadow:var(--shadow-soft);width:100%}.site-header::before{content:"";display:block;height:4px;background:linear-gradient( 90deg,var(--sidi-cobalt-dark) 0%,var(--sidi-cobalt) 35%,var(--mer-turquoise) 68%,var(--sahara-or) 100% )}.header-inner{min-height:var(--header-height);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-2)}.brand-logo{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-serif);font-weight:800;font-size:var(--fs-lg);color:var(--sidi-cobalt-dark);letter-spacing:-0.02em;flex-shrink:0}.brand-img{display:block;height:54px;width:auto;border-radius:var(--radius-sm)}.brand-logo-footer{display:inline-flex}.brand-logo-footer .brand-img{height:72px;border-radius:var(--radius-sm);border:1px solid var(--border-pierre)}.header-search-wrapper{display:none}.header-search-box{background:var(--bg-chaux);border:1.5px solid var(--border-pierre);border-radius:var(--border-radius-pill);box-shadow:var(--shadow-soft);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-3)}.header-search-box:focus-within{background:var(--bg-carte);border-color:var(--sidi-cobalt);box-shadow:var(--shadow-hover)}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-sm);border:1px solid var(--border-pierre);color:var(--sidi-cobalt-dark);background:var(--bg-chaux);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.nav-toggle:hover{background:var(--sidi-ciel);border-color:var(--sidi-cobalt)}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg-carte);border-bottom:1px solid var(--border-pierre);box-shadow:var(--shadow-hover);padding:var(--space-3) var(--gutter-mobile) var(--space-4)}.main-nav.is-open{display:block}.nav-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}@media (max-width:380px){.nav-list{grid-template-columns:1fr}}.nav-link{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:700;color:var(--ink-secondaire);border:1px solid transparent;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);white-space:nowrap}.nav-link:hover{background-color:var(--bg-sable);color:var(--sidi-cobalt-dark);border-color:var(--border-pierre)}.nav-link.is-active{background-color:var(--sidi-cobalt);color:var(--bg-carte);border-color:var(--sidi-cobalt-dark);box-shadow:var(--shadow-soft)}.nav-item-mobile-only{display:block}.hero-section{background:var(--bg-hero);color:var(--text-on-dark);padding:1.5rem 0 2rem;position:relative;overflow:hidden}.hero-section::before{content:"";position:absolute;top:-120px;right:-80px;width:340px;height:340px;background:radial-gradient(circle,rgba(245,158,11,0.22) 0%,rgba(245,158,11,0) 70%);pointer-events:none}.hero-controls{display:flex;flex-direction:column;gap:0.85rem;margin-bottom:1.25rem}.search-and-select-row{display:flex;flex-direction:column;gap:0.75rem}.search-wrapper{position:relative;flex:1}.search-box{display:flex;align-items:center;background:rgba(255,255,255,0.96);border-radius:var(--border-radius-pill);padding:0.3rem 0.35rem 0.3rem 1rem;box-shadow:var(--shadow-md);border:2px solid transparent;transition:border-color var(--transition-fast)}.search-box:focus-within{border-color:var(--accent-sun)}.search-icon{color:var(--primary-700);flex-shrink:0;margin-right:0.6rem}.search-input{width:100%;color:var(--text-main);font-size:0.92rem;font-weight:500;padding:0.45rem 0;outline:none}.search-input::placeholder{color:var(--text-muted);font-weight:400}.search-btn{background:var(--primary-700);color:#fff;font-weight:600;font-size:0.84rem;padding:0.52rem 1rem;border-radius:var(--border-radius-pill);transition:background-color var(--transition-fast);flex-shrink:0}.search-btn:hover{background:var(--primary-900)}.city-select-wrap{display:none;align-items:center;background:rgba(255,255,255,0.14);border:1px solid rgba(255,255,255,0.28);border-radius:var(--border-radius-pill);padding:0.25rem 0.9rem;color:#fff;min-height:44px}@media (min-width:768px){.city-select-wrap{display:flex}}.city-select-label{font-size:0.78rem;color:var(--text-on-dark-muted);margin-right:0.5rem;white-space:nowrap;font-weight:600}.city-select{color:#fff;font-weight:700;font-size:0.9rem;padding-right:0.5rem;outline:none;width:100%}.city-select option{color:var(--text-main);background:var(--bg-surface)}.autocomplete-list{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--bg-surface);color:var(--text-main);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);max-height:260px;overflow-y:auto;z-index:50;display:none}.autocomplete-list.is-visible{display:block}.autocomplete-item{width:100%;text-align:left;padding:0.65rem 1rem;display:flex;align-items:center;justify-content:space-between;font-size:0.9rem;border-bottom:1px solid #f1f5f9;transition:background-color var(--transition-fast)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover,.autocomplete-item:focus{background-color:var(--primary-50)}.autocomplete-gov{font-size:0.78rem;color:var(--text-muted);background:#f1f5f9;padding:0.15rem 0.5rem;border-radius:var(--border-radius-pill)}.autocomplete-item.is-competition{background-color:#f8fafc;border-left:3px solid var(--primary-color)}.autocomplete-item.is-competition:hover,.autocomplete-item.is-competition:focus{background-color:#eef6ff}.autocomplete-gov.is-comp{background:#e0f2fe;color:#0369a1;font-weight:600}.autocomplete-item.is-service{background-color:#FAF5EB;border-left:3px solid #D96C45}.autocomplete-item.is-service:hover,.autocomplete-item.is-service:focus{background-color:#FFF2EB}.autocomplete-gov.is-service{background:rgba(217,108,69,0.15);color:#D96C45;font-weight:700}.ac-item-left{display:flex;align-items:center;gap:0.65rem;flex:1;min-width:0}.ac-item-icon{font-size:1.25rem;flex-shrink:0}.ac-item-text{display:flex;flex-direction:column;min-width:0}.ac-item-text strong{font-size:0.88rem;color:#102C3A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ac-item-text small{font-size:0.74rem;color:#516269;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vp-directory-card,.vp-date-item,.vp-alert-card,.vp-hub-card,#matchs-direct,#classement{scroll-margin-top:90px}.vp-directory-card:target,.vp-date-item:target,.vp-alert-card:target,.vp-hub-card:target{border-color:#D96C45 !important;box-shadow:0 0 0 3px rgba(217,108,69,0.25),0 8px 24px rgba(217,108,69,0.18) !important;animation:vpTargetPulse 1.8s ease-out}@keyframes vpTargetPulse{0%{transform:scale(1.02)}50%{transform:scale(1.01)}100%{transform:scale(1)}}.quick-cities{display:flex;align-items:center;gap:0.45rem;overflow-x:auto;padding-bottom:0.25rem;scrollbar-width:none}.quick-cities::-webkit-scrollbar{display:none}.quick-cities-label{font-size:0.78rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-on-dark-muted);font-weight:700;flex-shrink:0;margin-right:0.2rem}.city-pill{padding:0.38rem 0.85rem;border-radius:var(--border-radius-pill);background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.2);color:#fff;font-size:0.83rem;font-weight:600;white-space:nowrap;transition:all var(--transition-fast)}.city-pill:hover{background:rgba(255,255,255,0.24)}.city-pill.is-active{background:var(--accent-sun);border-color:var(--accent-sun);color:#0f172a;box-shadow:0 2px 10px rgba(245,158,11,0.4)}@keyframes spinLoader{to{transform:rotate(360deg)}}.loader-badge,.loader-badge.is-active{display:none !important}.spinner-ring{width:14px;height:14px;border:2px solid rgba(253,230,138,0.35);border-top-color:#fde68a;border-radius:50%;animation:spinLoader 0.65s linear infinite}.api-error-banner{display:none;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.75rem;background:rgba(220,38,38,0.92);border:1px solid rgba(254,202,202,0.5);color:#fff;padding:0.75rem 1rem;border-radius:var(--border-radius-md);margin-bottom:1rem;font-size:0.88rem;box-shadow:var(--shadow-sm)}.api-error-banner.is-visible{display:flex}.retry-btn{background:#fff;color:var(--accent-red);font-weight:700;font-size:0.8rem;padding:0.35rem 0.8rem;border-radius:var(--border-radius-pill);transition:opacity var(--transition-fast)}.retry-btn:hover{opacity:0.9}.hero-weather-card,.forecast-strip{transition:opacity 180ms ease}.is-fetching{opacity:0.68;pointer-events:none}.hero-weather-card{background:rgba(255,255,255,0.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);border-radius:var(--border-radius-lg);padding:1.25rem;display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;box-shadow:var(--shadow-lg);max-width:100%}.hero-main-info{display:flex;flex-direction:column;gap:0.75rem;min-width:0}.hero-location-row{grid-column:1 / -1;width:100%;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem}.hero-city-name{font-size:1.65rem;font-weight:800;letter-spacing:-0.02em;display:flex;align-items:center;gap:0.45rem}.hero-badges-wrap{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}.hero-region-badge{font-size:0.78rem;font-weight:600;padding:0.2rem 0.65rem;border-radius:var(--border-radius-pill);background:rgba(255,255,255,0.16);color:var(--text-on-dark)}.hero-date{font-size:0.85rem;color:var(--text-on-dark-muted);display:flex;align-items:center;gap:0.4rem;flex-wrap:wrap}.live-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 8px #4ade80;display:inline-block}.hero-temp-block{display:flex;align-items:center;gap:1rem;margin:0.25rem 0}.hero-weather-icon-box{width:74px;height:74px;border-radius:18px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.18);display:flex;align-items:center;justify-content:center;font-size:2.6rem;flex-shrink:0;box-shadow:0 6px 16px rgba(0,0,0,0.15)}.hero-temp-value{font-size:3.3rem;font-weight:800;line-height:1;letter-spacing:-0.04em}.hero-condition-text{font-size:1.05rem;font-weight:600;color:#fff;margin-top:0.15rem}.hero-feels-like{font-size:0.85rem;color:var(--text-on-dark-muted);margin-top:0.15rem}.hero-metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0.75rem}.metric-tile{background:rgba(7,42,71,0.42);border:1px solid rgba(255,255,255,0.14);border-radius:var(--border-radius-md);padding:0.8rem 0.9rem;display:flex;align-items:center;gap:0.7rem}.metric-icon{width:36px;height:36px;border-radius:9px;background:rgba(255,255,255,0.12);display:inline-flex;align-items:center;justify-content:center;color:#7dd3fc;flex-shrink:0}.metric-label{font-size:0.76rem;color:#e0f2fe;display:block}.metric-value{font-size:1rem;font-weight:700;color:#fff}.main-content{flex:1;padding-block:1.75rem 2.5rem;display:flex;flex-direction:column;gap:2.25rem}.forecast-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.65rem;width:100%;min-width:0}.forecast-day-card{min-width:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:0.9rem 0.7rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:0.4rem;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),border-color var(--transition-fast)}.forecast-day-card:first-child{grid-column:1 / -1}.forecast-day-card:hover{transform:translateY(-2px);border-color:var(--primary-400)}.forecast-day-card.is-today{background:linear-gradient(180deg,#eff6ff 0%,#ffffff 100%);border-color:var(--primary-500);box-shadow:0 6px 16px rgba(30,136,229,0.14)}.forecast-day-name{font-weight:700;font-size:0.92rem;color:var(--primary-900);text-transform:capitalize}.forecast-day-date{font-size:0.75rem;color:var(--ink-secondaire)}.forecast-emoji{font-size:2rem;line-height:1.15;margin:0.2rem 0}.forecast-rain-badge{font-size:0.72rem;font-weight:700;color:var(--primary-700);background:var(--primary-50);padding:0.12rem 0.5rem;border-radius:var(--border-radius-pill);display:inline-flex;align-items:center;gap:0.2rem}.forecast-condition{font-size:0.76rem;color:var(--text-secondary);min-height:2.3em;display:flex;align-items:center;justify-content:center;line-height:1.25}.forecast-temps{width:100%;display:flex;align-items:center;justify-content:space-between;font-size:0.88rem;padding-top:0.4rem;border-top:1px solid #f1f5f9}.temp-max{font-weight:800;color:var(--primary-900)}.temp-min{font-weight:600;color:var(--ink-secondaire)}.thematic-grid{display:grid;grid-template-columns:1fr;gap:1.15rem}.thematic-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:space-between;gap:1rem;transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.thematic-card:hover{box-shadow:var(--shadow-md);border-color:#b9d2ee}.thematic-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:0.75rem}.thematic-title-group{display:flex;align-items:center;gap:0.65rem}.thematic-badge-icon{width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.badge-rain{background:var(--primary-100);color:var(--primary-700)}.badge-marine{background:#e0f2fe;color:#0369a1}.badge-beach{background:var(--accent-sun-soft);color:#b45309}.badge-satellite{background:var(--accent-teal-soft);color:var(--accent-teal)}.thematic-card-title{font-size:1.05rem;font-weight:700;color:var(--primary-900)}.thematic-card-sub{font-size:0.8rem;color:var(--text-muted)}.status-pill{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.74rem;font-weight:700;padding:0.25rem 0.65rem;border-radius:var(--border-radius-pill);white-space:nowrap}.status-pill.green{background:var(--accent-green-soft);color:var(--accent-green)}.status-pill.orange{background:var(--accent-sun-soft);color:#b45309}.status-pill.red{background:var(--accent-red-soft);color:var(--accent-red)}.status-pill.blue{background:var(--primary-100);color:var(--primary-700)}.prayer-countdown-pill{display:inline-flex;align-items:center;gap:0.35rem;background:rgba(56,189,248,0.18);border:1px solid rgba(56,189,248,0.45);color:#e0f2fe;padding:0.24rem 0.75rem;border-radius:var(--border-radius-pill);font-weight:700;font-size:0.8rem;font-variant-numeric:tabular-nums}.thematic-visual{background:var(--bg-card-subtle);border:1px solid #e2ecf7;border-radius:var(--border-radius-md);padding:0.9rem}.visual-radar-map{background:linear-gradient(135deg,#0b395c 0%,#135a8a 100%);color:#fff;border-radius:var(--border-radius-sm);padding:0.85rem;display:flex;align-items:center;justify-content:space-between;gap:0.75rem}.data-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0.6rem}.data-item{background:#fff;border:1px solid #e5edf6;border-radius:var(--border-radius-sm);padding:0.55rem 0.7rem}.data-item-label{font-size:0.74rem;color:var(--text-muted);display:block}.data-item-val{font-size:0.9rem;font-weight:700;color:var(--primary-900)}.thematic-footer{display:flex;align-items:center;justify-content:space-between;padding-top:0.5rem;border-top:1px solid #f1f5f9;font-size:0.82rem;color:var(--text-muted)}.prayer-widget{background:linear-gradient(135deg,#082f49 0%,#0f4c75 100%);color:#fff;border-radius:var(--border-radius-lg);padding:1.35rem;box-shadow:var(--shadow-md)}.prayer-header{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:1.15rem;padding-bottom:0.9rem;border-bottom:1px solid rgba(255,255,255,0.14)}.prayer-title-wrap{display:flex;align-items:center;gap:0.6rem}.prayer-title{font-size:1.2rem;font-weight:700;color:#fff}.prayer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:0.6rem;font-size:0.84rem;color:var(--text-on-dark-muted)}.next-prayer-pill{background:rgba(245,158,11,0.2);border:1px solid rgba(245,158,11,0.5);color:#fde68a;padding:0.22rem 0.7rem;border-radius:var(--border-radius-pill);font-weight:600;font-size:0.8rem}.prayer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.65rem}.prayer-card{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.14);border-radius:var(--border-radius-md);padding:0.8rem 0.75rem;text-align:center;display:flex;flex-direction:column;gap:0.25rem;min-width:0;transition:transform var(--transition-fast),background-color var(--transition-fast)}.prayer-card.is-next{background:rgba(245,158,11,0.22);border-color:var(--accent-sun);box-shadow:0 4px 12px rgba(245,158,11,0.2)}.prayer-name{font-size:0.82rem;font-weight:600;color:var(--text-on-dark-muted);text-transform:uppercase;letter-spacing:0.04em}.prayer-card.is-next .prayer-name{color:#fde68a}.prayer-time{font-size:1.25rem;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}.prayer-arabic{font-size:0.78rem;color:rgba(255,255,255,0.65)}.site-footer{background:var(--ink-noir);color:var(--bg-sable);padding:var(--space-section-mobile) 0 var(--space-6);margin-top:auto;border-top:4px solid var(--sahara-or);position:relative}@media (min-width:960px){.site-footer{padding:var(--space-section-desktop) 0 var(--space-7)}}.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid rgba(223,213,197,0.16)}.footer-brand-desc{margin-top:var(--space-3);font-size:var(--fs-sm);color:var(--bg-sable);max-width:38ch;line-height:1.65}.footer-col-title{font-family:var(--font-serif);color:var(--bg-chaux);font-size:var(--fs-base);font-weight:700;margin-bottom:var(--space-3);letter-spacing:0.02em}.footer-links{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--fs-sm);color:var(--bg-sable)}.footer-links a{transition:color var(--transition-fast)}.footer-links a:hover{color:var(--sahara-or);text-decoration:underline}.footer-bottom{padding-top:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--fs-xs);color:var(--bg-sable);justify-content:space-between;align-items:center;text-align:center}.attribution-badge{display:inline-flex;align-items:center;gap:var(--space-2);background:rgba(217,155,38,0.16);color:var(--sahara-or);border:1px solid var(--sahara-or);padding:var(--space-1) var(--space-3);border-radius:var(--border-radius-pill);font-size:var(--fs-xs);font-weight:700;transition:background-color var(--transition-fast),color var(--transition-fast)}.attribution-badge:hover{background:var(--sahara-or);color:var(--ink-noir)}.city-service-tabs{display:none}@media (min-width:768px){.city-service-tabs{display:flex;flex-wrap:wrap;gap:0.5rem;grid-column:1 / -1;width:100%;margin-top:0.25rem;padding-top:0.95rem;border-top:1px solid rgba(255,255,255,0.16)}}.city-service-tab{display:inline-flex;align-items:center;gap:0.4rem;padding:0.45rem 0.9rem;border-radius:var(--border-radius-pill);font-size:0.84rem;font-weight:700;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.22);color:#fff;transition:all var(--transition-fast)}.city-service-tab:hover{background:rgba(255,255,255,0.24)}.city-service-tab.is-active{background:#fff;color:var(--primary-900);border-color:#fff;box-shadow:var(--shadow-sm)}.hero-weather-card.hero-prayer-mode,.hero-weather-card.hero-forecast-mode{grid-template-columns:minmax(0,1fr)}.hero-forecast-strip{margin-top:0.45rem}.hero-forecast-strip .forecast-day-card{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.18);color:#fff;box-shadow:none}.hero-forecast-strip .forecast-day-card.is-today{background:rgba(245,158,11,0.22);border-color:var(--accent-sun);box-shadow:0 4px 14px rgba(245,158,11,0.2)}.hero-forecast-strip .forecast-day-name{color:#fff}.hero-forecast-strip .forecast-day-card.is-today .forecast-day-name{color:#fde68a}.hero-forecast-strip .forecast-day-date{color:#e2e8f0}.hero-forecast-strip .forecast-rain-badge{background:rgba(56,189,248,0.2);color:#bae6fd;border:1px solid rgba(56,189,248,0.35)}.hero-forecast-strip .forecast-condition{color:#f8fafc}.hero-forecast-strip .forecast-temps{border-top-color:rgba(255,255,255,0.16)}.hero-forecast-strip .temp-max{color:#fff}.hero-forecast-strip .temp-min,.hero-weather-card .temp-min{color:#bae6fd;font-weight:700}.hero-prayer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0.65rem;margin-top:0.35rem}@media (min-width:640px){.hero-prayer-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:960px){.hero-prayer-grid{grid-template-columns:repeat(6,1fr)}}.seo-climate-card{background:var(--bg-surface);border:1px solid var(--border-color);border-left:4px solid var(--primary-600);border-radius:var(--border-radius-lg);padding:1.25rem 1.35rem;box-shadow:var(--shadow-sm)}.seo-climate-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0.5rem;margin-bottom:0.6rem}.seo-climate-title{font-size:1.1rem;font-weight:700;color:var(--primary-900)}.seo-arabic-badge{font-size:0.95rem;font-weight:700;color:var(--primary-700);background:var(--primary-50);border:1px solid var(--primary-100);padding:0.18rem 0.65rem;border-radius:var(--border-radius-pill)}.seo-climate-text{font-size:0.93rem;color:var(--text-secondary);line-height:1.65}.cities-directory-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:1.35rem;box-shadow:var(--shadow-sm)}.cities-directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.5rem;margin-top:0.9rem}.city-dir-link{display:flex;align-items:center;justify-content:space-between;gap:0.35rem;min-width:0;overflow:hidden;padding:0.5rem 0.75rem;border-radius:var(--border-radius-sm);background:var(--bg-card-subtle);border:1px solid #e2ecf7;font-size:0.84rem;font-weight:600;color:var(--primary-900);transition:all var(--transition-fast)}.city-dir-link:hover,.city-dir-link.is-active{background:var(--primary-50);border-color:var(--primary-400);color:var(--primary-700)}.city-dir-ar{font-size:0.78rem;color:var(--text-muted);font-weight:500}.is-hidden-inland{display:none !important}@media (min-width:640px){.container{padding-inline:var(--gutter-tablet)}.search-and-select-row{flex-direction:row;align-items:center}.hero-metrics-grid{grid-template-columns:repeat(4,1fr)}.forecast-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:0.75rem}.forecast-day-card:first-child{grid-column:span 2}.thematic-grid{grid-template-columns:repeat(2,1fr)}.prayer-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.cities-directory-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:960px){.container{padding-inline:var(--gutter-desktop)}.nav-toggle{display:none}.main-nav{display:block !important;position:static;background:transparent;border:none;box-shadow:none;padding:0}.nav-list{display:flex;align-items:center;gap:var(--space-1)}.nav-item-mobile-only{display:none !important}.header-search-wrapper{display:block;flex:1;max-width:420px;margin-inline:var(--space-3)}.hero-controls{flex-direction:row;align-items:center;justify-content:flex-start}.search-and-select-row{display:none}.hero-weather-card{grid-template-columns:1.15fr 1fr;align-items:center;padding:1.75rem 2rem}.hero-location-row{flex-wrap:nowrap;align-items:flex-start;justify-content:space-between;gap:1rem}.hero-city-name{flex:1 1 auto;min-width:0}.hero-badges-wrap{flex-shrink:0;margin-left:auto;justify-content:flex-end;align-self:flex-start}.hero-metrics-grid{grid-template-columns:repeat(2,1fr)}.forecast-strip{grid-template-columns:repeat(7,minmax(0,1fr))}.forecast-day-card:first-child{grid-column:auto}.prayer-header{flex-direction:row;align-items:center;justify-content:space-between}.prayer-grid{grid-template-columns:repeat(6,1fr)}.footer-grid{grid-template-columns:1.35fr 1fr 1fr 1fr}.footer-bottom{flex-direction:row;text-align:left}.cities-directory-grid{grid-template-columns:repeat(5,1fr)}}.hero-section::before{content:"";position:absolute;top:-110px;right:-60px;width:420px;height:420px;background:radial-gradient(circle,rgba(251,191,36,0.34) 0%,rgba(251,191,36,0.08) 42%,transparent 70%);pointer-events:none;transition:background 500ms ease}.hero-section::after{content:"";position:absolute;bottom:-140px;left:-80px;width:380px;height:380px;background:radial-gradient(circle,rgba(56,189,248,0.22) 0%,transparent 68%);pointer-events:none}body[data-weather-mood="night"] .hero-section::before{background:radial-gradient(circle,rgba(253,224,71,0.18) 0%,rgba(56,189,248,0.08) 45%,transparent 70%)}.hero-weather-card{background:linear-gradient(145deg,rgba(255,255,255,0.15) 0%,rgba(255,255,255,0.06) 100%);border:1px solid rgba(255,255,255,0.26);box-shadow:0 22px 48px rgba(4,22,42,0.26),inset 0 1px 0 rgba(255,255,255,0.28);position:relative;overflow:hidden}.hero-daily-advice{display:flex;align-items:center;gap:0.6rem;background:linear-gradient(90deg,rgba(251,191,36,0.2) 0%,rgba(255,255,255,0.08) 100%);border:1px solid rgba(251,191,36,0.38);border-inline-start:4px solid var(--accent-sun-bright);border-radius:var(--border-radius-md);padding:0.6rem 0.9rem;font-size:0.86rem;font-weight:500;color:#fff;line-height:1.45}.advice-spark{font-size:1.05rem;flex-shrink:0}@keyframes wxSunPulse{0%,100%{transform:scale(1) rotate(0deg)}50%{transform:scale(1.06) rotate(8deg)}}@keyframes wxCloudFloat{0%,100%{transform:translateX(0px) translateY(0px)}50%{transform:translateX(3px) translateY(-2px)}}@keyframes wxRainDrop{0%{opacity:0.3;transform:translateY(-2px)}50%{opacity:1}100%{opacity:0.3;transform:translateY(3px)}}.wx-svg{display:block;overflow:visible;filter:drop-shadow(0 4px 10px rgba(0,0,0,0.16))}.wx-sun-rays{transform-origin:24px 24px;animation:wxSunPulse 6s ease-in-out infinite}.wx-cloud-body{animation:wxCloudFloat 5s ease-in-out infinite}.wx-rain-drops{animation:wxRainDrop 1.8s ease-in-out infinite}@keyframes flagWave{0%,100%{transform:skewY(0deg) scaleX(1)}50%{transform:skewY(-3deg) scaleX(0.95)}}.flag-svg,.sea-state-svg{flex-shrink:0;vertical-align:middle}.flag-cloth{transform-origin:4px 6px;animation:flagWave 2.8s ease-in-out infinite}.data-item-val,.metric-value{display:inline-flex;align-items:center;gap:0.35rem;flex-wrap:wrap}.hourly-card,.hourly-forecast-card{background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-xl);padding:1.25rem 1.35rem;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.hourly-card::before,.hourly-forecast-card::before{content:"";position:absolute;top:0;inset-inline:0;height:4px;background:linear-gradient(90deg,var(--sidi-cobalt) 0%,var(--mer-turquoise) 55%,var(--sahara-or) 100%)}.hourly-live-pill{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.76rem;font-weight:700;color:var(--sidi-cobalt-dark);background:var(--sidi-ciel);border:1px solid rgba(11,79,159,0.15);padding:0.25rem 0.7rem;border-radius:var(--border-radius-pill)}.hourly-strip{display:flex;gap:0.65rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding:0.35rem 0.2rem 0.65rem 0.2rem;scrollbar-width:thin;scrollbar-color:var(--border-pierre-strong) transparent}.hourly-strip::-webkit-scrollbar{height:5px}.hourly-strip::-webkit-scrollbar-track{background:rgba(223,213,197,0.35);border-radius:999px}.hourly-strip::-webkit-scrollbar-thumb{background:var(--border-pierre-strong);border-radius:999px}@media (min-width:860px){.hourly-strip{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0.7rem;overflow-x:visible;padding:0.25rem 0}}.hourly-slot{flex:0 0 88px;min-width:88px;scroll-snap-align:start;background:var(--bg-chaux);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md);padding:0.85rem 0.45rem;display:flex;flex-direction:column;align-items:center;gap:0.35rem;text-align:center;position:relative;box-sizing:border-box;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}@media (min-width:860px){.hourly-slot{flex:1 1 0;min-width:0;padding:0.85rem 0.35rem}}.hourly-slot:hover{transform:translateY(-3px);border-color:var(--sidi-azur);box-shadow:var(--shadow-hover)}.hourly-slot.is-now{background:linear-gradient(180deg,#f0f7ff 0%,var(--bg-carte) 100%);border-color:var(--sidi-azur);box-shadow:0 6px 18px rgba(11,79,159,0.12)}.hourly-slot.is-now::before{content:"";position:absolute;top:-1.5px;left:18%;right:18%;height:3px;background:var(--sidi-cobalt);border-radius:999px}.hourly-slot.is-night{background:linear-gradient(180deg,#f4f6f8 0%,var(--bg-sable) 100%);border-color:var(--border-pierre)}.hourly-time{font-size:0.76rem;font-weight:700;color:var(--ink-secondaire);letter-spacing:-0.01em;white-space:nowrap}.hourly-slot.is-now .hourly-time{color:var(--sidi-cobalt);font-weight:800}.hourly-slot.is-night .hourly-time{color:var(--ink-doux)}.hourly-icon{font-size:1.7rem;line-height:1;margin:0.15rem 0;filter:drop-shadow(0 2px 4px rgba(24,34,47,0.08))}.hourly-temp{font-family:var(--font-serif);font-size:1.25rem;font-weight:800;color:var(--ink-noir);line-height:1.1;letter-spacing:-0.02em}.hourly-slot.is-now .hourly-temp{color:var(--sidi-cobalt-dark)}.hourly-bar-track{width:6px;height:36px;background:rgba(223,213,197,0.55);border-radius:999px;display:flex;align-items:flex-end;overflow:hidden;margin:0.2rem 0}.hourly-bar-fill{width:100%;border-radius:999px;background:linear-gradient(180deg,var(--sahara-or) 0%,var(--sidi-azur) 100%);transition:height 350ms ease}.hourly-wind{font-size:0.7rem;font-weight:600;color:var(--ink-secondaire);white-space:nowrap;background:rgba(255,255,255,0.85);border:1px solid var(--border-pierre);border-radius:999px;padding:0.2rem 0.45rem;line-height:1;display:inline-flex;align-items:center;gap:0.2rem}@media (max-width:767px){.hourly-card,.hourly-forecast-card{padding:1.05rem 0.85rem;border-radius:var(--radius-lg)}.hourly-card .section-header,.hourly-forecast-card .section-header{margin-bottom:0.65rem !important;gap:0.45rem}.hourly-card .section-title,.hourly-forecast-card .section-title{font-size:clamp(1.18rem,4.4vw,1.4rem);line-height:1.25;gap:0.45rem}.hourly-card .section-title svg,.hourly-forecast-card .section-title svg{width:20px;height:20px;flex-shrink:0}.hourly-card .section-subtitle,.hourly-forecast-card .section-subtitle{font-size:0.82rem;line-height:1.35;margin-top:0.15rem;color:var(--ink-doux)}.hourly-live-pill{font-size:0.72rem;padding:0.2rem 0.55rem;align-self:flex-start}.hourly-card::after,.hourly-forecast-card::after{content:"";position:absolute;top:60px;bottom:14px;right:0;width:26px;background:linear-gradient(90deg,rgba(255,253,249,0) 0%,var(--bg-carte) 92%);pointer-events:none;z-index:2;border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}}@media (max-width:360px){.hourly-slot{flex:0 0 82px;min-width:82px;padding:0.75rem 0.35rem}.hourly-time{font-size:0.72rem}.hourly-temp{font-size:1.15rem}.hourly-wind{font-size:0.66rem;padding:0.18rem 0.35rem}}.temp-range-bar{flex:1;height:6px;background:rgba(148,163,184,0.25);border-radius:999px;margin-inline:0.45rem;overflow:hidden;position:relative}.temp-range-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#38bdf8 0%,#fbbf24 65%,#f59e0b 100%)}.seo-climate-card{background:linear-gradient(135deg,#ffffff 0%,var(--sand-warm) 100%);border:1px solid var(--sand-border);border-inline-start:5px solid var(--primary-600);box-shadow:var(--shadow-sm)}.site-footer{border-top:4px solid transparent;border-image:linear-gradient( 90deg,var(--sidi-cobalt) 0%,var(--mer-turquoise) 35%,var(--sahara-or) 68%,var(--sidi-cobalt) 100% ) 1}.national-overview-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:1.25rem 1.35rem;box-shadow:var(--shadow-sm)}.national-gov-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.6rem}@media (min-width:640px){.national-gov-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:960px){.national-gov-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.national-gov-card{display:flex;flex-direction:column;justify-content:space-between;gap:0.35rem;padding:0.65rem 0.75rem;border-radius:var(--border-radius-md);background:var(--bg-card-subtle);border:1px solid #e2ecf7;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.national-gov-card:hover{transform:translateY(-2px);border-color:var(--primary-400);background:#fff;box-shadow:var(--shadow-sm)}.nat-gov-top{display:flex;align-items:center;justify-content:space-between;gap:0.3rem}.nat-gov-name{font-size:0.84rem;font-weight:800;color:var(--primary-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nat-gov-ar{font-size:0.74rem;color:var(--text-muted);font-weight:600}.nat-gov-mid{display:flex;align-items:center;justify-content:space-between;gap:0.4rem;margin:0.1rem 0}.nat-gov-icon{font-size:1.35rem;line-height:1}.nat-gov-temps{display:flex;align-items:baseline;gap:0.3rem}.nat-temp-max{font-size:0.96rem;font-weight:800;color:var(--primary-900)}.nat-temp-min{font-size:0.8rem;font-weight:600;color:var(--text-muted)}.nat-gov-bot{display:flex;align-items:center;justify-content:space-between;gap:0.25rem;font-size:0.7rem;color:var(--text-secondary);border-top:1px solid #e9f0f8;padding-top:0.28rem}.nat-gov-cond{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.nat-gov-rain{font-weight:700;color:var(--primary-700);flex-shrink:0}.daily-tools-container{min-height:52px}.daily-tools-bar{display:flex;flex-direction:column;align-items:flex-start;gap:0.5rem;padding:0.65rem 0.75rem;border-radius:var(--border-radius-md);background:#ffffff;border:1px solid var(--primary-100);box-shadow:var(--shadow-sm);width:100%;max-width:100%;box-sizing:border-box}@media (min-width:640px){.daily-tools-bar{flex-direction:row;align-items:center;justify-content:space-between;gap:0.65rem 1rem;padding:0.55rem 0.95rem}}.tools-group{display:flex;flex-wrap:wrap;align-items:center;gap:0.45rem}.tools-badge-label{font-size:0.78rem;font-weight:700;color:var(--primary-800);text-transform:uppercase;letter-spacing:0.03em}.tool-pill{display:inline-flex;align-items:center;gap:0.3rem;font-size:0.82rem;font-weight:600;color:var(--text-primary);background:var(--bg-card-subtle);border:1px solid #dbe7f4;border-radius:var(--border-radius-pill);padding:0.22rem 0.7rem;font-variant-numeric:tabular-nums}.tool-pill strong{color:var(--primary-700);font-weight:800}.live-hub-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:1.25rem 1.35rem;box-shadow:var(--shadow-sm);min-height:240px}.matches-header-actions{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}.live-updated-badge{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.75rem;font-weight:600;color:var(--text-muted);background:var(--bg-card-subtle);border:1px solid var(--border-color);padding:0.22rem 0.65rem;border-radius:var(--border-radius-pill);font-variant-numeric:tabular-nums;line-height:1.2}.live-updated-badge .live-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-green);display:inline-block;box-shadow:0 0 0 2px rgba(21,128,61,0.2);flex-shrink:0}.matches-list{display:flex;flex-direction:column;gap:0.85rem;max-width:760px;margin:0 auto;min-height:180px}.competition-group{display:flex;flex-direction:column;gap:0.55rem;padding:0.85rem 1rem;background:var(--bg-card-subtle);border:1px solid var(--border-color);border-radius:var(--border-radius-md);transition:border-color var(--transition-fast)}.competition-header{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;padding:0.45rem 0.65rem;margin:-0.2rem -0.35rem 0.45rem;border-radius:var(--border-radius-sm);border-bottom:1px solid #e2ecf7;text-decoration:none;color:inherit;transition:background var(--transition-fast),color var(--transition-fast);cursor:pointer}.competition-header:hover{background:#f0f7ff}.competition-header:hover .competition-name{color:var(--primary-600)}.competition-header:hover .competition-chevron{transform:translateX(4px);color:var(--primary-600)}.competition-title-wrap{display:flex;align-items:center;gap:0.45rem;min-width:0}.competition-chevron{font-size:1.2rem;font-weight:800;line-height:1;color:var(--primary-500);transition:transform var(--transition-fast),color var(--transition-fast);display:inline-block;user-select:none;margin-left:0.15rem}.competition-logo{width:20px;height:20px;object-fit:contain;flex-shrink:0}.competition-logo-fallback{font-size:0.95rem;line-height:1}.competition-name{font-size:0.92rem;font-weight:700;color:var(--primary-900);margin:0;letter-spacing:-0.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.competition-badge{font-size:0.72rem;font-weight:600;color:var(--text-muted);background:#ffffff;border:1px solid var(--border-color);padding:0.12rem 0.5rem;border-radius:var(--border-radius-pill);flex-shrink:0;font-variant-numeric:tabular-nums}.competition-matches{display:flex;flex-direction:column;gap:0.45rem}.competition-footer{display:flex;justify-content:center;padding-top:0.25rem}.btn-more-competition{display:inline-flex;align-items:center;justify-content:center;gap:0.35rem;font-size:0.78rem;font-weight:700;color:var(--primary-600);background:#ffffff;border:1px solid #dbeafe;padding:0.35rem 0.95rem;border-radius:var(--border-radius-pill);transition:all var(--transition-fast);cursor:pointer}.btn-more-competition:hover{background:var(--primary-50);border-color:var(--primary-300);color:var(--primary-800);transform:translateY(-1px)}.dedicated-page-header{margin-bottom:1.5rem;padding:1.25rem 1.4rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.breadcrumb-nav{display:flex;align-items:center;gap:0.45rem;font-size:0.8rem;color:var(--text-muted);margin-bottom:0.75rem;flex-wrap:wrap}.breadcrumb-nav a{color:var(--primary-600);font-weight:600;text-decoration:none}.breadcrumb-nav a:hover{text-decoration:underline}.bc-sep{color:#94a3b8;font-weight:700;user-select:none}.dedicated-title-row{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.5rem;flex-wrap:wrap}.dedicated-logo{width:36px;height:36px;object-fit:contain;flex-shrink:0}.dedicated-h1{font-size:1.45rem;font-weight:800;color:var(--primary-900);letter-spacing:-0.015em;margin:0;line-height:1.25}.dedicated-desc{font-size:0.88rem;color:var(--text-muted);line-height:1.55;margin-bottom:0.85rem;max-width:820px}.dedicated-meta-row{display:flex;align-items:center;gap:0.65rem;flex-wrap:wrap}.comp-tv-badge{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.75rem;font-weight:600;color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd;padding:0.2rem 0.65rem;border-radius:var(--border-radius-pill)}.comp-filter-bar{display:flex;align-items:center;gap:0.5rem;overflow-x:auto;padding-bottom:0.65rem;margin-bottom:1rem;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.comp-filter-chip{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.78rem;font-weight:700;color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border-color);padding:0.35rem 0.85rem;border-radius:var(--border-radius-pill);white-space:nowrap;transition:all var(--transition-fast);cursor:pointer;flex-shrink:0}.comp-filter-chip:hover{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-700)}.comp-filter-chip.is-active{background:var(--primary-600);border-color:var(--primary-600);color:#fff;box-shadow:0 2px 6px rgba(18,102,181,0.25)}.matches-tabs-nav{display:flex;flex-direction:column;width:100%;gap:0.4rem;background:#f1f5f9;padding:0.4rem;border-radius:var(--border-radius-md);margin-bottom:1rem}.match-tab-btn{display:flex;align-items:center;justify-content:center;width:100%;gap:0.35rem;font-size:0.85rem;font-weight:700;padding:0.65rem 1rem;border-radius:var(--border-radius-sm);color:#64748b;background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast)}.match-tab-btn:hover{color:var(--primary-900)}.match-tab-btn.is-active{background:#ffffff;color:var(--primary-900);box-shadow:var(--shadow-xs)}@media (min-width:640px){.matches-tabs-nav{flex-direction:row;width:fit-content;border-radius:var(--border-radius-pill);padding:0.3rem}.match-tab-btn{display:inline-flex;width:auto;padding:0.4rem 1rem;border-radius:var(--border-radius-pill)}}.match-tab-pane{display:none}.match-tab-pane.is-active{display:flex;flex-direction:column;gap:12px;margin-top:12px}.matches-empty{grid-column:1 / -1;text-align:center;padding:1.5rem 1rem;color:var(--ink-secondaire);font-size:0.95rem}.standings-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:0.85rem 0.65rem;box-shadow:var(--shadow-sm);margin-top:1.25rem;margin-bottom:1.25rem;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}@media (min-width:640px){.standings-card{border-radius:var(--border-radius-lg);padding:1.25rem 1.4rem;margin-top:1.5rem;margin-bottom:1.5rem}}.standings-groups-grid{display:grid;grid-template-columns:100%;gap:1rem;width:100%;max-width:100%;min-width:0;box-sizing:border-box}@media (min-width:900px){.standings-groups-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}}.standings-group-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:0.65rem 0.5rem;box-shadow:var(--shadow-xs);display:flex;flex-direction:column;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}@media (min-width:640px){.standings-group-card{border-radius:var(--border-radius-md);padding:1rem 0.85rem}}.standings-group-card.is-tunisian-group{border:2px solid #16a34a;background:linear-gradient(180deg,#f0fdf4 0%,#ffffff 32%);box-shadow:0 4px 18px rgba(22,163,74,0.12)}.standings-group-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.35rem;padding-bottom:0.5rem;margin-bottom:0.5rem;border-bottom:1px solid #e2ecf7;width:100%;box-sizing:border-box}.standings-group-title{font-size:0.95rem;font-weight:700;color:var(--primary-900)}@media (min-width:640px){.standings-group-title{font-size:1.05rem}}.standings-group-note{font-size:0.78rem;color:#15803d;font-weight:600;margin-top:0.1rem}.group-tunisia-pill{display:inline-flex;align-items:center;gap:0.25rem;background:#dcfce7;color:#15803d;border:1px solid #86efac;font-size:0.72rem;font-weight:700;padding:0.15rem 0.45rem;border-radius:var(--border-radius-pill)}.standings-table-wrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}.standings-table{width:100%;border-collapse:collapse;font-size:0.78rem;text-align:center;box-sizing:border-box}@media (min-width:640px){.standings-table{font-size:0.85rem}}.standings-table th{padding:0.45rem 0.2rem;font-weight:700;color:var(--text-muted);font-size:0.68rem;text-transform:uppercase;letter-spacing:0.02em;border-bottom:1px solid #e2ecf7;background:#f8fafc;white-space:nowrap}@media (min-width:640px){.standings-table th{padding:0.6rem 0.45rem;font-size:0.74rem}}.standings-table td{padding:0.5rem 0.2rem;border-bottom:1px solid #f1f5f9;color:#1e293b;font-variant-numeric:tabular-nums;white-space:nowrap}@media (min-width:640px){.standings-table td{padding:0.65rem 0.45rem}}.standings-table tr:hover td{background:#f8fbff}.standings-table .col-club{text-align:left;display:flex;align-items:center;gap:0.35rem;font-weight:600;min-width:0;max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.standings-table .col-club span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width:480px){.standings-table .col-club{max-width:160px;gap:0.45rem}}@media (min-width:768px){.standings-table .col-club{max-width:200px}}.standings-table .team-logo-small{width:16px;height:16px;object-fit:contain;flex-shrink:0}@media (min-width:640px){.standings-table .team-logo-small{width:20px;height:20px}}.standings-table .col-pos{width:24px;font-weight:700;padding-left:0.15rem;padding-right:0.15rem}@media (min-width:640px){.standings-table .col-pos{width:34px}}.standings-table .col-pts{font-weight:800;color:var(--primary-900);background:#f8fbff}.pos-indicator{display:inline-block;width:3px;height:14px;border-radius:2px;margin-right:4px;vertical-align:middle}@media (min-width:640px){.pos-indicator{width:4px;height:18px;margin-right:6px}}.pos-ucl{background:#16a34a}.pos-uel{background:#2563eb}.pos-uecl{background:#0891b2}.pos-rel{background:#dc2626}.standings-table tr.row-tunisian-team td{background:#f0fdf4;font-weight:700;color:#14532d}.standings-table tr.row-tunisian-team:hover td{background:#dcfce7}.badge-tunisia-team{display:inline-block;margin-left:0.25rem;font-size:0.85rem;vertical-align:middle}.comp-news-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:1.25rem 1.4rem;box-shadow:var(--shadow-sm);margin-top:1.5rem;margin-bottom:1.5rem}.comp-news-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:0.85rem}@media (min-width:640px){.comp-news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.comp-news-card{padding:1rem;border-radius:var(--border-radius-md);background:var(--bg-card-subtle);border:1px solid #e2ecf7;display:flex;flex-direction:column;gap:0.4rem}.comp-news-date{font-size:0.72rem;font-weight:700;color:var(--primary-600);text-transform:uppercase;letter-spacing:0.03em}.comp-news-title{font-size:0.95rem;font-weight:700;color:var(--primary-900);line-height:1.35;margin:0}.comp-news-desc{font-size:0.82rem;color:var(--text-muted);line-height:1.45;margin:0}.match-row-card{display:grid;grid-template-columns:1fr;align-items:center;gap:0.55rem;padding:0.75rem 1rem;border-radius:var(--border-radius-md);background:#ffffff;border:1px solid #e2ecf7;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}@media (min-width:640px){.match-row-card{grid-template-columns:auto 1fr;gap:0.85rem}}.match-row-card:hover{border-color:var(--primary-400);background:#fff;box-shadow:var(--shadow-sm)}.match-row-card.is-live{border-left:4px solid #16a34a;background:#f8fafc}.match-row-card.is-collapsed{display:none}.match-meta-col{display:flex;align-items:center;gap:0.35rem;flex-wrap:wrap;min-width:0}.match-tv-pill{display:inline-flex;align-items:center;gap:0.25rem;font-size:0.7rem;font-weight:700;color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd;padding:0.12rem 0.45rem;border-radius:var(--border-radius-pill);white-space:nowrap;line-height:1.2}.match-tv-pill svg{flex-shrink:0}@keyframes liveDotPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.35;transform:scale(0.82)}}.live-pulse-dot{width:7px;height:7px;border-radius:50%;background:#dc2626;display:inline-block;animation:liveDotPulse 1.2s ease-in-out infinite}.match-status-pill{display:inline-flex;align-items:center;gap:0.3rem;font-size:0.72rem;font-weight:700;padding:0.16rem 0.55rem;border-radius:var(--border-radius-pill);white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums}.match-status-pill.is-ns{background:var(--primary-100);color:var(--primary-700)}.match-status-pill.is-live{background:#dcfce7;color:#15803d;border:1px solid #86efac}.match-status-pill.is-ft{background:#e2e8f0;color:#475569}.match-versus-col{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:0.65rem;min-width:0}.match-team{display:flex;align-items:center;gap:0.45rem;min-width:0;color:var(--primary-900);font-weight:600}.match-team.is-home{justify-content:flex-end;text-align:right}.match-team.is-away{justify-content:flex-start;text-align:left}.match-team.is-winner{font-weight:800;color:#15803d}.match-team.is-loser{opacity:0.65}.match-team.is-draw{color:#334155}.match-team-name{font-size:0.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.match-team-logo{width:22px;height:22px;object-fit:contain;flex-shrink:0}.match-team-crest{font-size:0.92rem;line-height:1;flex-shrink:0}@media (max-width:639px){.match-versus-col,.match-ticket-upper{gap:8px;padding:12px 10px}.match-team,.ticket-team{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px}.match-team.is-home,.match-team.is-away,.ticket-team.is-home,.ticket-team.is-away{text-align:center;justify-content:center}.match-team .match-team-logo,.match-team .match-team-crest,.ticket-team .match-team-logo,.ticket-team .match-team-crest{order:1;width:26px;height:26px}.match-team .match-team-name,.ticket-team .ticket-team-name{order:2;text-align:center;font-size:0.82rem;line-height:1.25;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;max-width:100%}}.match-score-pill{display:inline-flex;align-items:center;justify-content:center;gap:0.25rem;min-width:68px;padding:0.2rem 0.45rem;border-radius:var(--border-radius-sm);background:#fff;border:1px solid #dbe7f4;font-variant-numeric:tabular-nums}.match-score-pill.is-live{border-color:#86efac;box-shadow:0 0 0 2px rgba(22,163,74,0.12)}.match-score-pill.is-upcoming{background:#f1f5f9;color:#475569;font-size:0.78rem;font-weight:700}.match-score-num{font-size:0.9rem;font-weight:700;padding:0.08rem 0.36rem;border-radius:5px;color:#334155}.match-score-num.is-winner{font-weight:800;color:#15803d;background:#dcfce7}.match-score-num.is-loser{opacity:0.65}.match-score-num.is-draw{color:#475569}.match-score-sep{font-size:0.8rem;color:#94a3b8;font-weight:700}.matches-actions-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0.85rem 1.25rem;max-width:760px;margin:0.95rem auto 0}.btn-more-matches{display:inline-flex;align-items:center;justify-content:center;gap:0.4rem;padding:0.5rem 1.15rem;border-radius:var(--border-radius-pill);background:var(--primary-50);border:1px solid var(--primary-200);color:var(--primary-800);font-size:0.84rem;font-weight:700;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.btn-more-matches:hover{background:var(--primary-100);border-color:var(--primary-400)}.matches-empty{margin:0;padding:1.1rem;text-align:center;color:#64748b;font-size:0.92rem;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px}.btn-more-matches[hidden]{display:none}.comp-index-grid{display:grid;grid-template-columns:1fr;gap:0.65rem;width:100%;max-width:100%;box-sizing:border-box}@media (min-width:540px){.comp-index-grid{grid-template-columns:repeat(2,1fr);gap:0.75rem}}@media (min-width:900px){.comp-index-grid{grid-template-columns:repeat(4,1fr)}}.comp-index-card{display:flex;flex-direction:column;gap:0.35rem;padding:0.75rem 0.9rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-md);text-decoration:none;width:100%;max-width:100%;box-sizing:border-box;transition:all var(--transition-fast)}.comp-index-card.is-extra-comp.is-collapsed{display:none !important}.comp-index-toggle-wrap{display:flex;justify-content:center;margin-top:1rem;width:100%}.comp-index-card:hover{background:var(--primary-50);border-color:var(--primary-300);transform:translateY(-2px);box-shadow:var(--shadow-xs)}.comp-index-title-row{display:flex;align-items:center;gap:0.45rem}.comp-index-logo{width:18px;height:18px;object-fit:contain;flex-shrink:0}.comp-index-flag{font-size:1.05rem;line-height:1}.comp-index-name{font-size:0.88rem;font-weight:700;color:var(--primary-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comp-index-sub{font-size:0.74rem;color:#64748b;font-weight:500}.prayer-section{margin-bottom:2rem}.prayer-calendar-card,.prayer-cities-card,.prayer-guide-card,.prayer-faq-card,.prayer-crosslinks-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm)}.prayer-calendar-nav{display:flex;gap:0.5rem;margin-bottom:1.25rem;flex-wrap:wrap;border-bottom:1px solid var(--border-color);padding-bottom:0.75rem}.prayer-tab-btn{display:inline-flex;align-items:center;gap:0.45rem;padding:0.55rem 1.15rem;border-radius:var(--border-radius-pill);font-weight:600;font-size:0.88rem;color:var(--text-secondary);background:var(--bg-surface-alt);border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-fast)}.prayer-tab-btn:hover{background:var(--primary-100);border-color:var(--primary-500);color:var(--primary-900)}.prayer-tab-btn.is-active{background:var(--primary-800);color:#fff;border-color:var(--primary-800);box-shadow:var(--shadow-xs)}.prayer-calendar-table-wrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--border-radius-md);border:1px solid var(--border-color);margin-bottom:1rem}.prayer-calendar-table{width:100%;border-collapse:collapse;font-size:0.86rem;text-align:center;min-width:620px}.prayer-calendar-table th{background:#f8fafc;color:var(--text-muted);font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.03em;padding:0.75rem 0.6rem;border-bottom:1px solid var(--border-color);white-space:nowrap}.prayer-calendar-table td{padding:0.7rem 0.55rem;border-bottom:1px solid #f1f5f9;color:var(--text-main);font-variant-numeric:tabular-nums;white-space:nowrap}.prayer-calendar-table tbody tr:hover td{background:#f8fbff}.prayer-calendar-table tr.is-today{background:#fef3c7 !important;font-weight:700}.prayer-calendar-table tr.is-today td{color:#92400e;border-bottom:1px solid #fde68a}.prayer-calendar-table tbody td.col-date{text-align:left;padding-left:0.95rem;font-weight:600;color:var(--primary-900)}.prayer-today-badge{display:inline-block;background:var(--accent-sun);color:#fff;font-size:0.68rem;font-weight:700;padding:0.15rem 0.45rem;border-radius:var(--border-radius-pill);margin-left:0.4rem;text-transform:uppercase;letter-spacing:0.02em}.prayer-calendar-note{font-size:0.82rem;color:var(--text-muted);line-height:1.55;padding:0.75rem 1rem;background:#f8fafc;border-radius:var(--border-radius-sm);border-left:3px solid var(--primary-500)}.prayer-gov-pills{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1rem}.prayer-gov-pill{display:inline-flex;align-items:center;gap:0.35rem;padding:0.45rem 0.9rem;border-radius:var(--border-radius-pill);font-size:0.82rem;font-weight:600;background:var(--bg-surface-alt);border:1px solid var(--border-color);color:var(--primary-800);text-decoration:none;transition:all var(--transition-fast)}.prayer-gov-pill:hover{background:var(--primary-100);border-color:var(--primary-500);color:var(--primary-900);transform:translateY(-1px)}.prayer-gov-pill.is-active{background:var(--primary-800);color:#fff;border-color:var(--primary-800)}.prayer-gov-pill-ar{font-size:0.76rem;opacity:0.85}.prayer-guide-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.15rem}@media (min-width:768px){.prayer-guide-grid{grid-template-columns:repeat(2,1fr)}}.prayer-guide-item{background:var(--bg-card-subtle);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:1.25rem;display:flex;flex-direction:column;gap:0.45rem}.prayer-guide-item h3{font-size:1.02rem;font-weight:700;color:var(--primary-900);display:flex;align-items:center;gap:0.5rem}.prayer-guide-item p{font-size:0.88rem;color:var(--text-secondary);line-height:1.55;margin:0}.prayer-faq-grid{display:flex;flex-direction:column;gap:0.9rem;margin-top:1.15rem}.prayer-faq-item{background:#ffffff;border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:1.15rem 1.35rem;box-shadow:var(--shadow-xs)}.prayer-faq-q{font-size:0.98rem;font-weight:700;color:var(--primary-900);margin-bottom:0.45rem;display:flex;align-items:flex-start;gap:0.5rem}.prayer-faq-q-icon{color:var(--primary-600);font-weight:800;font-size:1.1rem;line-height:1.2}.prayer-faq-a{font-size:0.88rem;color:var(--text-secondary);line-height:1.6;margin:0;padding-left:1.6rem}.hero-prayer-dates-row{display:flex;flex-wrap:wrap;gap:0.65rem;margin-top:0.65rem;align-items:center}.hero-gregorian-pill{background:rgba(255,255,255,0.12);color:#f8fafc;font-size:0.82rem;font-weight:600;padding:0.25rem 0.75rem;border-radius:var(--border-radius-pill);border:1px solid rgba(255,255,255,0.18);display:inline-flex;align-items:center;gap:0.35rem}.hero-hijri-pill{background:rgba(251,191,36,0.18);color:#fde68a;font-size:0.82rem;font-weight:700;padding:0.25rem 0.75rem;border-radius:var(--border-radius-pill);border:1px solid rgba(251,191,36,0.45);display:inline-flex;align-items:center;gap:0.35rem}.hero-arabic-title{display:block;font-size:1.05rem;font-weight:600;color:#fbbf24;margin-top:0.3rem;font-family:system-ui,-apple-system,sans-serif}.dedicated-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}@media (max-width:640px){.dedicated-section{padding:1.1rem;margin-bottom:1.5rem;border-radius:var(--border-radius-md)}}.marine-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-top:1rem}.marine-kpi-card{background:var(--bg-card-subtle);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:1.1rem;display:flex;flex-direction:column;gap:0.35rem;transition:transform var(--transition-fast),border-color var(--transition-fast)}.marine-kpi-card:hover{transform:translateY(-2px);border-color:var(--primary-400)}.marine-kpi-header{display:flex;align-items:center;gap:0.45rem;font-size:0.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.02em}.marine-kpi-value{font-size:1.35rem;font-weight:800;color:var(--primary-900)}.marine-kpi-sub{font-size:0.82rem;color:var(--text-secondary)}.table-responsive-box{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:1.15rem;border-radius:var(--border-radius-md);border:1px solid var(--border-color);background:#ffffff}.spec-data-table{width:100%;min-width:660px;border-collapse:collapse;text-align:left;font-size:0.88rem}.spec-data-table th{background:var(--bg-surface-alt);color:var(--primary-900);font-weight:700;padding:0.85rem 1rem;border-bottom:2px solid var(--border-color);white-space:nowrap}.spec-data-table td{padding:0.8rem 1rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);vertical-align:middle}.spec-data-table tr:last-child td{border-bottom:none}.spec-data-table tr.is-today{background:rgba(18,102,181,0.05);font-weight:600}.spec-data-table tr.is-today td:first-child{border-left:3px solid var(--primary-600)}.spec-today-tag{display:inline-block;background:var(--primary-600);color:#ffffff;font-size:0.72rem;font-weight:700;padding:0.15rem 0.45rem;border-radius:var(--border-radius-pill);margin-left:0.35rem;vertical-align:middle}.marine-state-pill{display:inline-flex;align-items:center;gap:0.35rem;padding:0.2rem 0.55rem;border-radius:var(--border-radius-pill);font-size:0.78rem;font-weight:700}.marine-state-pill.calm{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.marine-state-pill.moderate{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.marine-state-pill.rough{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.marine-state-pill.unknown{background:#f1f5f9;color:#64748b;border:1px solid #cbd5e1}.chart-container-card{margin-top:1.25rem;background:#ffffff;border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:1.25rem}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.75rem;flex-wrap:wrap;gap:0.5rem}.chart-title{font-size:0.95rem;font-weight:700;color:var(--primary-900)}.chart-legend{display:flex;align-items:center;gap:1rem;font-size:0.8rem;color:var(--text-muted)}.chart-legend-item{display:inline-flex;align-items:center;gap:0.35rem}.chart-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.chart-container-card svg{width:100%;height:auto;display:block}.vigilance-notice-box{background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #f59e0b;border-radius:var(--border-radius-md);padding:1.15rem 1.35rem;margin-top:1.35rem;display:flex;gap:0.9rem;align-items:flex-start;font-size:0.88rem;line-height:1.6;color:#78350f}.vigilance-notice-box strong{color:#92400e}.vigilance-icon{font-size:1.4rem;line-height:1;flex-shrink:0}.nautical-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-top:1.25rem}.nautical-tile{background:var(--bg-card-subtle);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:1.25rem;display:flex;flex-direction:column;gap:0.5rem}.nautical-tile-title{font-size:1rem;font-weight:700;color:var(--primary-900);display:flex;align-items:center;gap:0.45rem}.nautical-tile-text{font-size:0.875rem;color:var(--text-secondary);line-height:1.55}.coastal-pills-wrap{display:flex;flex-wrap:wrap;gap:0.55rem;margin-top:1.1rem}.coastal-pill-btn{background:var(--bg-surface-alt);color:var(--primary-800);border:1px solid var(--border-color);border-radius:var(--border-radius-pill);padding:0.4rem 0.85rem;font-size:0.84rem;font-weight:600;display:inline-flex;align-items:center;gap:0.4rem;transition:all var(--transition-fast)}.coastal-pill-btn:hover{background:var(--primary-500);color:#ffffff;border-color:var(--primary-500)}.coastal-pill-btn.is-active{background:var(--primary-700);color:#ffffff;border-color:var(--primary-700)}.marine-transparency-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:1.35rem;margin-top:1rem}.marine-sources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.15rem;margin-bottom:1.15rem}.marine-source-item{display:flex;flex-direction:column;gap:0.35rem}.marine-source-label{font-size:0.76rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-muted)}.marine-source-val{font-size:0.88rem;color:var(--text-primary);line-height:1.45;margin:0}.marine-source-link{color:var(--primary-600);text-decoration:underline;text-underline-offset:3px;font-weight:700}.marine-license-pill{display:inline-block;font-size:0.72rem;font-weight:700;background:rgba(14,165,233,0.12);color:#0369a1;padding:2px 7px;border-radius:var(--border-radius-pill);margin-left:0.35rem}.marine-source-notice{border-top:1px solid var(--border-color);padding-top:1rem;font-size:0.82rem;color:var(--text-secondary);line-height:1.6}.marine-source-notice p{margin:0.45rem 0 0}.week-summary-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem}.week-summary-card{background:var(--bg-card-subtle);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:1.15rem;display:flex;flex-direction:column;gap:0.35rem;transition:transform var(--transition-fast)}.week-summary-card:hover{transform:translateY(-2px)}.week-summary-card-title{font-size:0.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;display:flex;align-items:center;gap:0.4rem;letter-spacing:0.02em}.week-summary-card-value{font-size:1.5rem;font-weight:800;color:var(--primary-900)}.week-summary-card-desc{font-size:0.84rem;color:var(--text-secondary)}.weekly-advice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-top:1.25rem}.weekly-advice-card{background:var(--bg-card-subtle);border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:1.25rem;display:flex;flex-direction:column;gap:0.5rem}.weekly-advice-header{font-size:0.95rem;font-weight:700;color:var(--primary-900);display:flex;align-items:center;gap:0.45rem}.weekly-advice-desc{font-size:0.875rem;color:var(--text-secondary);line-height:1.55}.marine-spots-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.75rem;margin-top:0.75rem}@media (min-width:640px){.marine-spots-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.marine-spots-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.marine-spot-card{display:flex;flex-direction:column;justify-content:space-between;gap:0.45rem;padding:0.75rem 0.85rem;background:var(--bg-card-subtle);border:1px solid var(--border-color);border-radius:var(--border-radius-md);text-decoration:none;color:inherit;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.marine-spot-card:hover{transform:translateY(-2px);border-color:var(--primary-500);background:#ffffff;box-shadow:var(--shadow-sm)}.marine-spot-top{display:flex;justify-content:space-between;align-items:baseline;gap:0.35rem}.marine-spot-name{font-weight:700;font-size:0.92rem;color:var(--primary-900)}.marine-spot-ar{font-size:0.75rem;color:var(--text-muted)}.marine-spot-metrics{display:flex;flex-direction:column;gap:0.2rem}.marine-spot-metric-item{display:flex;justify-content:space-between;font-size:0.8rem;color:var(--text-secondary)}.marine-spot-metric-item strong{color:var(--primary-800);font-weight:700}.marine-spot-badge-wrap{margin-top:0.2rem}.portal-services-grid{display:grid;grid-template-columns:1fr;gap:0.85rem;margin-top:1rem}@media (min-width:640px){.portal-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.portal-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.portal-service-card{display:flex;flex-direction:column;justify-content:space-between;gap:0.6rem;padding:1.15rem 1.25rem;background:var(--bg-card-subtle);border:1px solid var(--border-color);border-radius:var(--border-radius-md);text-decoration:none;color:inherit;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.portal-service-card:hover{transform:translateY(-2px);border-color:var(--primary-500);background:#ffffff;box-shadow:var(--shadow-sm)}.portal-service-head{display:flex;align-items:center;gap:0.65rem}.portal-service-icon{font-size:1.5rem;line-height:1}.portal-service-title{font-size:1.05rem;font-weight:700;color:var(--primary-900);margin:0}.portal-service-desc{font-size:0.85rem;color:var(--text-secondary);line-height:1.5;margin:0;flex:1}.portal-service-link{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.85rem;font-weight:700;color:var(--primary-600);margin-top:0.25rem}.home-week-summary-bar{display:flex;flex-wrap:wrap;align-items:center;gap:0.5rem 1rem;padding:0.75rem 1rem;background:rgba(18,102,181,0.05);border:1px solid rgba(18,102,181,0.12);border-radius:var(--border-radius-md);margin-bottom:1rem;font-size:0.85rem;color:var(--primary-900)}.home-week-summary-bar strong{color:var(--primary-800)}.vp-hero{background:linear-gradient(135deg,#102C3A 0%,#173E52 60%,#1F4F68 100%);color:#FAF5EB;border-radius:var(--border-radius-lg);padding:1.75rem 1.5rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 10px 30px rgba(16,44,58,0.16);position:relative;overflow:hidden}.vp-hero::before{content:"";position:absolute;top:-60px;right:-60px;width:220px;height:220px;background:radial-gradient(circle,rgba(233,184,76,0.15) 0%,transparent 70%);pointer-events:none}.vp-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:0.45rem;font-size:0.8rem;color:rgba(250,245,235,0.75);margin-bottom:0.75rem}.vp-breadcrumb a{color:rgba(250,245,235,0.9);text-decoration:underline;text-underline-offset:2px}.vp-breadcrumb-sep{color:rgba(250,245,235,0.4)}.vp-kicker{display:inline-flex;align-items:center;gap:0.4rem;background:rgba(217,108,69,0.22);border:1px solid rgba(217,108,69,0.45);color:#FAF5EB;font-size:0.78rem;font-weight:700;padding:0.2rem 0.65rem;border-radius:9999px;margin-bottom:0.65rem;letter-spacing:0.02em}.vp-hero-title{font-family:var(--med-font-serif);font-size:1.85rem;font-weight:400;line-height:1.25;color:#FAF5EB;margin:0 0 0.6rem;letter-spacing:-0.01em}.vp-hero-lead{font-size:0.95rem;line-height:1.55;color:rgba(250,245,235,0.88);max-width:760px;margin:0 0 1.25rem}.vp-nav-pills{display:flex;align-items:center;gap:0.5rem;overflow-x:auto;padding-bottom:0.35rem;scrollbar-width:none}.vp-nav-pills::-webkit-scrollbar{display:none}.vp-nav-pill{display:inline-flex;align-items:center;gap:0.4rem;background:rgba(250,245,235,0.12);border:1px solid rgba(250,245,235,0.22);color:#FAF5EB;font-size:0.82rem;font-weight:600;padding:0.45rem 0.9rem;border-radius:9999px;white-space:nowrap;transition:all 0.18s ease;text-decoration:none}.vp-nav-pill:hover{background:rgba(250,245,235,0.22);color:#FFFFFF}.vp-nav-pill.is-active{background:#D96C45;border-color:#D96C45;color:#FFFFFF;box-shadow:0 2px 8px rgba(217,108,69,0.35)}.vp-emergency-strip{background:#FAF5EB;border:1px solid #E5DFD5;border-left:4px solid #D96C45;border-radius:var(--border-radius-md);padding:1rem 1.25rem;margin-bottom:1.5rem}.vp-emergency-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;margin-bottom:0.75rem}.vp-emergency-title{display:flex;align-items:center;gap:0.5rem;font-size:0.95rem;font-weight:700;color:#102C3A;margin:0}.vp-emergency-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0.55rem}@media (min-width:640px){.vp-emergency-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:960px){.vp-emergency-grid{grid-template-columns:repeat(6,1fr)}}.vp-emergency-btn{display:flex;align-items:center;justify-content:space-between;background:#FFFFFF;border:1px solid #E2D9CC;border-radius:var(--border-radius-sm);padding:0.5rem 0.75rem;color:#26343A;text-decoration:none;font-size:0.82rem;font-weight:600;transition:all 0.18s ease}.vp-emergency-btn:hover{border-color:#D96C45;background:#FFF8F4;color:#D96C45;transform:translateY(-1px)}.vp-emergency-num{font-family:monospace,sans-serif;font-weight:700;color:#D96C45;font-size:0.88rem}.vp-hub-grid{display:grid;grid-template-columns:1fr;gap:1.15rem;margin-bottom:2rem}@media (min-width:640px){.vp-hub-grid{grid-template-columns:repeat(2,1fr)}}.vp-hub-card{background:#FFFFFF;border:1px solid #E5DFD5;border-radius:var(--border-radius-md);padding:1.35rem;box-shadow:0 4px 16px rgba(16,44,58,0.05);display:flex;flex-direction:column;justify-content:space-between;transition:transform 0.2s ease,box-shadow 0.2s ease,border-color 0.2s ease;position:relative;text-decoration:none;color:inherit}.vp-hub-card:hover{transform:translateY(-2px);border-color:#D96C45;box-shadow:0 10px 24px rgba(217,108,69,0.12)}.vp-hub-icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:0.9rem}.vp-hub-icon-wrap.terracotta{background:rgba(217,108,69,0.12);color:#D96C45}.vp-hub-icon-wrap.teal{background:rgba(71,125,121,0.14);color:#477D79}.vp-hub-icon-wrap.yellow{background:rgba(233,184,76,0.2);color:#B47818}.vp-hub-icon-wrap.blue{background:rgba(16,44,58,0.1);color:#102C3A}.vp-hub-card-title{font-family:var(--med-font-serif);font-size:1.25rem;font-weight:400;color:#102C3A;margin:0 0 0.45rem}.vp-hub-card-desc{font-size:0.88rem;line-height:1.5;color:#516269;margin:0 0 1rem;flex:1}.vp-hub-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:0.85rem;border-top:1px solid #F0ECE4}.vp-hub-card-badge{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;line-height:1.25;font-size:0.76rem;font-weight:600;color:#516269;background:#F4EFE6;padding:0.24rem 0.65rem;border-radius:9999px}.vp-hub-card-link{font-size:0.84rem;font-weight:700;color:#D96C45;display:flex;align-items:center;gap:0.25rem}.vp-school-highlights{display:grid;grid-template-columns:1fr;gap:0.85rem;margin-bottom:1.5rem}@media (min-width:640px){.vp-school-highlights{grid-template-columns:repeat(3,1fr)}}.vp-highlight-card{background:#FAF5EB;border:1px solid #E5DFD5;border-radius:var(--border-radius-md);padding:1.15rem;text-align:center}.vp-highlight-label{font-size:0.76rem;font-weight:700;text-transform:uppercase;color:#D96C45;letter-spacing:0.04em;margin-bottom:0.35rem}.vp-highlight-val{font-family:var(--med-font-serif);font-size:1.25rem;color:#102C3A;margin-bottom:0.25rem}.vp-highlight-sub{font-size:0.78rem;color:#516269}.vp-filter-group{display:flex;align-items:center;gap:0.45rem;overflow-x:auto;padding-bottom:0.4rem;margin-bottom:1.25rem;scrollbar-width:none}.vp-filter-group::-webkit-scrollbar{display:none}.vp-filter-btn{background:#FAF5EB;border:1px solid #E5DFD5;border-radius:9999px;padding:0.4rem 0.85rem;font-size:0.82rem;font-weight:600;color:#26343A;white-space:nowrap;cursor:pointer;transition:all 0.18s ease}.vp-filter-btn:hover{background:#FFFFFF;border-color:#D96C45;color:#D96C45}.vp-filter-btn.is-active{background:#102C3A;border-color:#102C3A;color:#FAF5EB}.vp-directory-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width:768px){.vp-directory-grid{grid-template-columns:repeat(2,1fr)}}.vp-directory-card{background:#FFFFFF;border:1px solid #E5DFD5;border-radius:var(--border-radius-md);padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 2px 8px rgba(16,44,58,0.04);transition:border-color 0.18s ease}.vp-directory-card:hover{border-color:#D96C45}.vp-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:0.75rem;margin-bottom:0.65rem}.vp-acronym-badge{background:#102C3A;color:#FAF5EB;font-weight:800;font-size:0.82rem;padding:0.35rem 0.7rem;border-radius:8px;letter-spacing:0.04em}.vp-verified-pill{display:inline-flex;align-items:center;gap:0.25rem;font-size:0.72rem;font-weight:700;color:#477D79;background:rgba(71,125,121,0.12);padding:0.2rem 0.5rem;border-radius:9999px}.vp-card-title{font-family:var(--med-font-serif);font-size:1.12rem;font-weight:400;color:#102C3A;margin:0 0 0.35rem;line-height:1.35}.vp-card-category{font-size:0.78rem;font-weight:600;color:#D96C45;margin-bottom:0.55rem;text-transform:uppercase;letter-spacing:0.03em}.vp-card-desc{font-size:0.86rem;line-height:1.5;color:#516269;margin:0 0 0.95rem;flex:1}.vp-card-details{border-top:1px solid #F0ECE4;padding-top:0.75rem;margin-bottom:0.85rem;display:flex;flex-direction:column;gap:0.35rem;font-size:0.82rem;color:#26343A}.vp-detail-row{display:flex;align-items:center;gap:0.45rem}.vp-detail-link{color:#102C3A;font-weight:600;text-decoration:none}.vp-detail-link:hover{color:#D96C45;text-decoration:underline}.vp-card-cta{display:inline-flex;align-items:center;justify-content:center;gap:0.45rem;background:#FAF5EB;border:1px solid #E5DFD5;color:#102C3A;font-size:0.84rem;font-weight:700;padding:0.55rem 1rem;border-radius:8px;text-decoration:none;transition:all 0.18s ease;width:100%}.vp-card-cta:hover{background:#102C3A;color:#FAF5EB;border-color:#102C3A}.vp-timeline{display:flex;flex-direction:column;gap:0.85rem}.vp-date-item{background:#FFFFFF;border:1px solid #E5DFD5;border-radius:var(--border-radius-md);padding:1.15rem;display:flex;align-items:flex-start;gap:1.15rem;box-shadow:0 2px 6px rgba(16,44,58,0.03);transition:border-color 0.18s ease}.vp-date-item:hover{border-color:#D96C45}.vp-date-badge{background:#FAF5EB;border:1px solid #E5DFD5;border-radius:12px;min-width:68px;padding:0.55rem 0.35rem;text-align:center;flex-shrink:0}.vp-date-month{font-size:0.72rem;font-weight:800;color:#D96C45;text-transform:uppercase;letter-spacing:0.05em;display:block}.vp-date-day{font-size:1.65rem;font-weight:800;color:#102C3A;line-height:1.1;display:block;margin:0.15rem 0}.vp-date-year{font-size:0.72rem;color:#72848C;display:block}.vp-date-content{flex:1}.vp-date-title-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;margin-bottom:0.35rem}.vp-date-title{font-family:var(--med-font-serif);font-size:1.15rem;font-weight:400;color:#102C3A;margin:0}.vp-date-ar{font-family:system-ui,-apple-system,sans-serif;font-size:0.95rem;font-weight:600;color:#477D79}.vp-date-badges{display:flex;align-items:center;flex-wrap:wrap;gap:0.4rem;margin-bottom:0.5rem}.vp-status-tag{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;line-height:1.25;font-size:0.74rem;font-weight:700;padding:0.28rem 0.7rem;border-radius:9999px;vertical-align:middle}.vp-status-tag.officiel{background:rgba(71,125,121,0.14);color:#477D79}.vp-status-tag.previsionnel{background:rgba(233,184,76,0.22);color:#9A660E}.vp-status-tag.chome{background:rgba(217,108,69,0.12);color:#D96C45}.vp-date-desc{font-size:0.86rem;line-height:1.5;color:#516269;margin:0}.vp-school-table-wrap{background:#FFFFFF;border:1px solid #E5DFD5;border-radius:var(--border-radius-md);overflow-x:auto;margin-bottom:1.75rem}.vp-school-table{width:100%;border-collapse:collapse;font-size:0.88rem;text-align:left}.vp-school-table th{background:#FAF5EB;color:#102C3A;padding:0.75rem 1rem;font-weight:700;border-bottom:1px solid #E5DFD5;white-space:nowrap}.vp-school-table td{padding:0.85rem 1rem;border-bottom:1px solid #F0ECE4;color:#26343A;vertical-align:middle}.vp-school-table td:nth-child(2),.vp-school-table td:nth-child(4){white-space:nowrap}.vp-school-table tr:last-child td{border-bottom:none}.vp-alert-card{background:#FFFFFF;border:1px solid #E5DFD5;border-left:5px solid #D96C45;border-radius:var(--border-radius-md);padding:1.25rem;margin-bottom:1rem;box-shadow:0 2px 8px rgba(16,44,58,0.04)}.vp-alert-card.moderee{border-left-color:#D96C45}.vp-alert-card.informatif{border-left-color:#477D79}.vp-alert-card.termine{border-left-color:#8899A6;opacity:0.82}.vp-alert-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;margin-bottom:0.5rem}.vp-alert-title{font-family:var(--med-font-serif);font-size:1.15rem;color:#102C3A;margin:0 0 0.45rem;line-height:1.35}.vp-alert-meta{display:flex;align-items:center;flex-wrap:wrap;gap:0.85rem;font-size:0.78rem;color:#72848C;margin-bottom:0.75rem}.vp-alert-desc{font-size:0.88rem;line-height:1.55;color:#26343A;margin:0 0 0.85rem}.vp-alert-source{font-size:0.78rem;color:#516269}.vp-alert-source a{color:#477D79;font-weight:700;text-decoration:underline}.hero-section.hero-editorial-section{background:var(--bg-chaux);color:var(--ink-noir);padding:var(--space-5) 0 var(--space-6);border-bottom:1px solid var(--border-pierre)}.hero-section.hero-editorial-section::before,.hero-section.hero-editorial-section::after{display:none !important}.hero-editorial-section .hero-controls{margin-bottom:var(--space-5)}.hero-editorial-section .search-box{background:var(--bg-carte);border:1.5px solid var(--border-pierre-strong);box-shadow:var(--shadow-soft)}.hero-editorial-section .search-box:focus-within{border-color:var(--sidi-cobalt)}.hero-editorial-section .city-select-wrap{background:var(--bg-carte);border:1.5px solid var(--border-pierre-strong);color:var(--ink-noir);box-shadow:var(--shadow-soft)}.hero-editorial-section .city-select-label{color:var(--ink-secondaire)}.hero-editorial-section .city-select{color:var(--sidi-cobalt-dark)}.hero-editorial-section .quick-cities-label{color:var(--ink-secondaire)}.hero-editorial-section .city-pill{background:var(--bg-carte);border:1px solid var(--border-pierre);color:var(--ink-noir)}.hero-editorial-section .city-pill:hover{background:var(--sidi-ciel);border-color:var(--sidi-cobalt);color:var(--sidi-cobalt-dark)}.hero-editorial-section .city-pill.is-active{background:var(--sidi-cobalt);border-color:var(--sidi-cobalt-dark);color:var(--bg-carte);box-shadow:var(--shadow-soft)}.hero-editorial-grid{display:flex;flex-direction:column;gap:var(--space-7)}@media (min-width:1120px){.hero-editorial-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-6);align-items:stretch}.sidi-hero-card{grid-column:span 7;min-width:0}.sidi-hero-card:only-child{grid-column:1 / -1}.almanach-7j-panel{grid-column:span 5;min-width:0;display:flex;flex-direction:column;justify-content:space-between}}.sidi-hero-card{position:relative;overflow:hidden;background:linear-gradient(175deg,var(--sidi-cobalt) 0%,var(--sidi-cobalt-dark) 100%);color:#FFFDF9;border:2px solid rgba(217,155,38,0.45);box-shadow:var(--shadow-hero);border-radius:var(--radius-arch);padding:36px 20px 24px;display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-5)}@media (max-width:767px){.sidi-hero-card{border-top-left-radius:28px;border-top-right-radius:28px}}@media (min-width:1120px){.sidi-hero-card{border-radius:var(--radius-xl);padding:36px 36px 32px}}.sidi-moucharabieh-bg{position:absolute;inset:0;width:100%;height:100%;opacity:0.06;pointer-events:none;color:#FFFDF9;z-index:0}.sidi-hero-card>*:not(.sidi-moucharabieh-bg):not(.sidi-stud){position:relative;z-index:1}.sidi-knocker-wrap{display:flex;justify-content:center;align-items:center;margin-top:-12px;margin-bottom:-4px}.sidi-knocker-ring{display:inline-block;width:22px;height:22px;border:3px solid var(--sahara-or);border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,0.25)}.sidi-stud{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--sahara-or);pointer-events:none;z-index:2}.sidi-stud-tl{top:18px;left:18px}.sidi-stud-tr{top:18px;right:18px}.sidi-stud-bl{bottom:18px;left:18px}.sidi-stud-br{bottom:18px;right:18px}.sidi-hero-top{display:flex;flex-direction:column;gap:var(--space-2)}.sidi-hero-title-row{display:flex;flex-direction:column;gap:var(--space-2)}.sidi-hero-badges-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.sidi-tomorrow-badge{display:inline-flex;align-items:center;gap:var(--space-1);background:rgba(255,253,249,0.14);border:1px solid rgba(217,155,38,0.45);color:#FFFDF9;font-size:var(--fs-sm);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--border-radius-pill)}@media (min-width:768px){.sidi-hero-title-row{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.sidi-hero-h1{flex:1 1 auto}.sidi-hero-badges-row{flex-shrink:0;margin-top:4px;justify-content:flex-end}.sidi-tomorrow-badge{margin-left:auto;order:2}.sidi-hero-badges-row .loader-badge{order:1}}.sidi-tomorrow-badge .sidi-badge-city,.sidi-tomorrow-badge .ville,.sidi-tomorrow-badge .villeArabe,.sidi-tomorrow-badge .ville-arabe{display:none !important}@media (max-width:767px){.sidi-hero-badges-row{order:-1;justify-content:flex-start}}.sidi-hero-h1{display:flex;flex-direction:column;align-items:flex-start;text-align:left;font-family:var(--font-serif);font-size:var(--fs-2xl);font-weight:700;color:#FFFDF9;line-height:1.2;margin:0}.sidi-hero-slogan{display:block;text-align:left;align-self:flex-start;font-family:var(--font-arabic),var(--font-serif);font-style:normal;font-size:20px;font-weight:700;color:var(--kairouan-or);margin-top:0.3rem;direction:rtl;unicode-bidi:isolate}.sidi-hero-main{display:flex;flex-direction:column;gap:var(--space-4)}.sidi-temp-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}@media (min-width:320px){.sidi-temp-row{flex-wrap:nowrap}}@media (min-width:640px){.sidi-temp-row{gap:var(--space-4)}}.sidi-weather-icon{display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-hero-temp);line-height:1;flex-shrink:0}.sidi-sun-svg{display:block;width:54px;height:54px}@media (min-width:480px){.sidi-sun-svg{width:68px;height:68px}}.sidi-temp-info{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:0}.sidi-temp-giant{font-family:var(--font-serif);font-size:var(--fs-hero-temp);font-weight:700;line-height:1;color:#FFFDF9;letter-spacing:-0.02em}.sidi-condition-line{font-size:var(--fs-base);font-weight:600;color:var(--sidi-ciel)}.sidi-summary-box{background:rgba(255,253,249,0.12);border-left:4px solid var(--sahara-or);border-radius:var(--radius-md);padding:14px 18px;font-size:var(--fs-base);color:#FFFDF9;line-height:1.5}.sidi-summary-box strong{color:var(--sahara-or)}.sidi-indicators-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (min-width:768px){.sidi-indicators-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}}.sidi-indicator-tile{background:rgba(255,253,249,0.1);border:1px solid rgba(255,253,249,0.18);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.sidi-indicator-label{font-size:var(--fs-xs);font-weight:600;color:var(--sidi-ciel);text-transform:uppercase;letter-spacing:0.04em}.sidi-indicator-val{font-family:var(--font-serif);font-size:var(--fs-lg);font-weight:700;color:#FFFDF9}.sidi-hero-card .city-service-tabs{margin-top:var(--space-1);padding-top:var(--space-3);border-top:1px solid rgba(255,253,249,0.18)}.almanach-7j-panel{background:var(--bg-sable);border:1.5px solid var(--border-pierre);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-3);min-width:0;max-width:100%;overflow:hidden}.almanach-top{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.almanach-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);min-width:0}.almanach-title{font-family:var(--font-serif);font-size:var(--fs-lg);font-weight:700;color:var(--ink-noir);margin:0;min-width:0}.almanach-header-link{font-size:var(--fs-sm);font-weight:700;color:var(--sidi-cobalt);white-space:nowrap;transition:color var(--transition-fast)}.almanach-header-link:hover{color:var(--sidi-cobalt-dark);text-decoration:underline}.almanach-climate-summary{background:var(--sahara-sable-chaud);border:1px solid #F0D9A8;border-radius:var(--radius-md);padding:12px 16px;font-size:var(--fs-sm);color:var(--ink-noir);line-height:1.45;min-width:0}.almanach-days-list{display:flex;flex-direction:column;gap:var(--space-2);flex:1;min-width:0}.day-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--ink-noir);text-decoration:none;min-width:0;max-width:100%;overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.day-card:hover{transform:translateY(-1px);border-color:var(--sidi-cobalt);box-shadow:var(--shadow-hover)}.day-card.is-tomorrow{border:2px solid var(--sidi-cobalt);background:var(--sidi-ciel);padding:var(--space-2) var(--space-3)}.day-card-left{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;overflow:hidden}.day-card-title-row{display:flex;align-items:center;gap:var(--space-2);min-width:0}.day-card-name{font-family:var(--font-serif);font-size:var(--fs-base);font-weight:700;color:var(--ink-noir);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-card-badge{display:inline-flex;align-items:center;background:var(--sidi-cobalt);color:var(--bg-carte);font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:800;letter-spacing:0.05em;padding:2px 8px;border-radius:var(--border-radius-pill);text-transform:uppercase;flex-shrink:0}.day-card-date{font-size:var(--fs-xs);color:var(--ink-secondaire);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-card-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}@media (min-width:1120px){.almanach-days-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);align-content:space-between}.almanach-days-list .day-card.is-tomorrow,.almanach-days-list .day-card:first-child{grid-column:1 / -1}.almanach-days-list .day-card:not(.is-tomorrow){flex-direction:column;align-items:stretch;justify-content:center;gap:var(--space-1);padding:var(--space-2) var(--space-3)}.almanach-days-list .day-card:not(.is-tomorrow) .day-card-left{flex-direction:row;align-items:baseline;justify-content:space-between;gap:var(--space-1);width:100%}.almanach-days-list .day-card:not(.is-tomorrow) .day-card-name{font-size:var(--fs-sm);flex-shrink:0}.almanach-days-list .day-card:not(.is-tomorrow) .day-card-date{text-align:right;flex:1;min-width:0}.almanach-days-list .day-card:not(.is-tomorrow) .day-card-right{justify-content:space-between;width:100%;gap:var(--space-1)}.almanach-days-list .day-card:not(.is-tomorrow) .day-card-temps{font-size:var(--fs-sm);margin-left:auto}}.day-card-rain{font-size:var(--fs-xs);font-weight:700;color:var(--sidi-azur);background:var(--sidi-ciel);padding:2px 6px;border-radius:var(--radius-sm)}.day-card.is-tomorrow .day-card-rain{background:var(--bg-carte)}.day-card-emoji{font-size:var(--fs-lg);line-height:1}.day-card-temps{display:inline-flex;align-items:baseline;gap:3px;font-family:var(--font-serif);font-size:var(--fs-base)}.day-temp-min{color:var(--ink-doux);font-weight:600}.day-temp-sep{color:var(--border-pierre-strong)}.day-temp-max{color:var(--ink-noir);font-weight:800}.almanach-footer{padding-top:var(--space-1)}.almanach-cta-btn{display:flex;align-items:center;justify-content:center;width:100%;background:var(--bg-carte);border:1.5px solid var(--sidi-cobalt);color:var(--sidi-cobalt);font-size:var(--fs-sm);font-weight:700;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);transition:background-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.almanach-cta-btn:hover{background:var(--sidi-cobalt);color:var(--bg-carte);box-shadow:var(--shadow-hover)}.gov-section{margin-block:var(--space-5)}.gov-header{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5)}.gov-header-titles{display:flex;flex-direction:column;gap:var(--space-1)}.gov-filter-pills{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.gov-filter-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--border-radius-pill);padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:700;color:var(--ink-secondaire);cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.gov-filter-btn:hover{background:var(--sidi-ciel);border-color:var(--sidi-cobalt);color:var(--sidi-cobalt-dark)}.gov-filter-btn.is-active{background:var(--sidi-cobalt);border-color:var(--sidi-cobalt-dark);color:var(--bg-carte);box-shadow:var(--shadow-soft)}.gov-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}@media (min-width:768px){.gov-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}@media (min-width:1120px){.gov-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}.gov-card{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-3);background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-lg);padding:18px 20px;color:var(--ink-noir);text-decoration:none;box-shadow:var(--shadow-soft);min-width:0;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.gov-card:hover{transform:translateY(-2px);border-color:var(--sidi-cobalt);box-shadow:var(--shadow-hover)}.gov-card.is-filtered-out{display:none !important}@media (max-width:767px){.gov-grid:not(.is-expanded-mobile) .gov-card.is-collapsed-mobile{display:none}}.gov-mobile-more-wrap{margin-top:var(--space-4)}@media (min-width:768px){.gov-mobile-more-wrap{display:none}}.gov-expand-btn{display:flex;align-items:center;justify-content:center;width:100%;background:var(--bg-carte);border:1.5px solid var(--sidi-cobalt);color:var(--sidi-cobalt);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:700;cursor:pointer;box-shadow:var(--shadow-soft);transition:background-color var(--transition-fast),color var(--transition-fast)}.gov-expand-btn:hover{background:var(--sidi-cobalt);color:var(--bg-carte)}.gov-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.gov-card-names{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-2);min-width:0}.gov-card-name-fr{font-family:var(--font-serif);font-size:var(--fs-lg);font-weight:700;color:var(--ink-noir)}.gov-card-name-ar{font-family:var(--font-arabic);font-size:var(--fs-base);color:var(--ink-secondaire)}.gov-region-badge{display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;padding:3px 10px;border-radius:var(--border-radius-pill);white-space:nowrap;flex-shrink:0}.gov-region-badge.is-nord{background:var(--sidi-ciel);color:var(--sidi-cobalt)}.gov-region-badge.is-sahel{background:var(--flag-vert-bg);color:var(--flag-vert-txt)}.gov-region-badge.is-sud{background:var(--sahara-sable-chaud);color:var(--sahara-ocre)}.gov-card-mid{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.gov-card-temp-block{display:flex;align-items:center;gap:var(--space-2)}.gov-wx-svg{flex-shrink:0}.gov-card-temps{display:flex;align-items:baseline;gap:4px}.gov-temp-max{font-family:var(--font-serif);font-size:1.85rem;font-weight:700;color:var(--ink-noir);line-height:1}.gov-temp-sep{color:var(--ink-secondaire);font-size:1.1rem}.gov-temp-min{font-family:var(--font-serif);font-size:1.1rem;font-weight:600;color:var(--ink-secondaire)}.gov-card-pills{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.gov-metric-pill{display:inline-flex;align-items:center;gap:4px;background:var(--bg-sable);border:1px solid var(--border-pierre);border-radius:var(--border-radius-pill);padding:2px 9px;font-size:var(--fs-xs);font-weight:700;color:var(--ink-secondaire);white-space:nowrap}.gov-card-bot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-top:var(--space-2);border-top:1px dashed var(--border-pierre);font-size:var(--fs-xs)}.gov-card-cond{color:var(--ink-secondaire);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gov-card-cta{color:var(--sidi-cobalt);font-weight:700;white-space:nowrap;flex-shrink:0}.marine-section{margin-block:var(--space-5)}.marine-wrapper{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--sidi-ciel) 0%,var(--bg-carte) 100%);border:1.5px solid #BBDDF8;border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:var(--space-5)}@media (min-width:1120px){.marine-wrapper{padding:36px}}.marine-wave-frieze{display:block;width:100%;height:24px;margin-top:-8px;margin-bottom:-10px;pointer-events:none}.marine-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3)}.marine-national-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}@media (min-width:1120px){.marine-national-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}}.marine-kpi-tile{background:var(--bg-carte);border:1.5px solid #BBDDF8;border-radius:var(--radius-lg);padding:var(--space-3);display:flex;flex-direction:column;gap:4px;box-shadow:var(--shadow-soft);min-width:0}.marine-kpi-label{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:#085d6b}.marine-kpi-val{font-family:var(--font-serif);font-size:var(--fs-lg);font-weight:700;color:var(--sidi-cobalt-dark);line-height:1.2;overflow-wrap:break-word}@media (min-width:640px){.marine-kpi-val{font-size:var(--fs-xl)}}.marine-kpi-sub{font-size:var(--fs-xs);color:var(--ink-secondaire)}.marine-coasts-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}@media (min-width:768px){.marine-coasts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}}@media (min-width:1120px){.marine-coasts-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}}.marine-coast-card{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-3);background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-lg);padding:var(--space-4);color:var(--ink-noir);text-decoration:none;box-shadow:var(--shadow-soft);min-width:0;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.marine-coast-card:hover{transform:translateY(-2px);border-color:var(--mer-turquoise);box-shadow:var(--shadow-hover)}.marine-coast-top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2)}.marine-coast-names{display:flex;flex-direction:column;gap:2px;min-width:0}.marine-coast-title{font-family:var(--font-serif);font-size:var(--fs-base);font-weight:700;color:var(--ink-noir)}.marine-coast-ar{font-family:var(--font-arabic);font-size:var(--fs-sm);color:var(--ink-doux)}.marine-flag-badge{display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;padding:4px 10px;border-radius:var(--border-radius-pill);white-space:nowrap;flex-shrink:0}.marine-flag-badge.is-favorable{background:var(--flag-vert-bg);color:var(--flag-vert-txt)}.marine-flag-badge.is-prudence{background:var(--flag-orange-bg);color:var(--flag-orange-txt)}.marine-flag-badge.is-danger{background:var(--flag-rouge-bg);color:var(--flag-rouge-txt)}.marine-flag-badge.is-unavailable{background:var(--bg-pierre);color:var(--text-muted);border:1px solid var(--border-pierre)}.marine-coast-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);background:var(--bg-chaux);border:1px solid var(--border-pierre);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.marine-coast-stat{display:flex;flex-direction:column;gap:2px}.marine-coast-stat-label{font-size:var(--fs-xs);color:var(--ink-doux);font-weight:600}.marine-coast-stat-val{font-family:var(--font-serif);font-size:var(--fs-base);font-weight:700;color:var(--ink-noir)}.marine-coast-bot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-top:var(--space-2);border-top:1px dashed var(--border-pierre);font-size:var(--fs-xs)}.marine-coast-sea{color:var(--ink-secondaire);font-weight:600}.marine-coast-cta{color:var(--sidi-cobalt);font-weight:700;white-space:nowrap}.hero-marine-section .city-pill.is-active{background:var(--mer-turquoise) !important;border-color:var(--mer-turquoise) !important;color:#FFFFFF !important}.hero-marine-mode{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 15%,rgba(12,133,153,0.35) 0%,transparent 55%),radial-gradient(circle at 12% 85%,rgba(25,113,194,0.28) 0%,transparent 50%),linear-gradient(165deg,#072B4A 0%,#0A3D62 48%,#051E33 100%) !important;color:#FAF6EE !important;border:1.5px solid rgba(56,189,248,0.35) !important;border-radius:var(--radius-xl) !important;padding:24px 18px !important;box-shadow:0 20px 44px -14px rgba(7,43,74,0.5) !important;display:flex;flex-direction:column;gap:var(--space-4)}@media (min-width:1120px){.hero-marine-mode{padding:34px 38px !important}}.hero-marine-mode::before{content:"";position:absolute;inset:10px;border:1px solid rgba(56,189,248,0.2);border-radius:calc(var(--radius-xl) - 6px);pointer-events:none}.hero-marine-mode .marine-wave-frieze{display:block;width:100%;height:22px;margin-top:-6px;margin-bottom:2px;pointer-events:none;opacity:0.85}.hero-marine-mode .marine-header{position:relative;z-index:1;display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.hero-marine-mode .marine-header-main{display:flex;flex-direction:column;gap:8px;flex:1;min-width:260px}.hero-marine-mode .marine-header-badges{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.hero-marine-mode .marine-flag-badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:700;padding:5px 12px;border-radius:var(--border-radius-pill);white-space:nowrap}.hero-marine-mode .marine-flag-badge.is-favorable{background:rgba(22,101,52,0.55) !important;color:#86efac !important;border:1px solid rgba(74,222,128,0.45) !important}.hero-marine-mode .marine-flag-badge.is-prudence{background:rgba(146,64,14,0.55) !important;color:#fde047 !important;border:1px solid rgba(251,191,36,0.45) !important}.hero-marine-mode .marine-flag-badge.is-danger{background:rgba(185,28,28,0.55) !important;color:#fca5a5 !important;border:1px solid rgba(248,113,113,0.45) !important}.hero-marine-mode .marine-flag-badge.is-unavailable{background:rgba(148,163,184,0.25) !important;color:#cbd5e1 !important;border:1px solid rgba(148,163,184,0.4) !important}.hero-marine-mode .gov-region-badge{background:rgba(255,255,255,0.1) !important;color:#e0f2fe !important;border:1px solid rgba(56,189,248,0.3) !important;border-radius:var(--border-radius-pill);padding:5px 12px;font-size:var(--fs-xs);font-weight:600}.hero-marine-mode .gov-region-badge strong{color:#FFFFFF !important;font-weight:700}.hero-marine-mode .loader-badge{background:rgba(255,255,255,0.08) !important;color:rgba(255,255,255,0.85) !important;border:1px solid rgba(255,255,255,0.18) !important;border-radius:var(--border-radius-pill);padding:5px 12px;font-size:var(--fs-xs);font-weight:500}.hero-marine-mode .section-title,.hero-marine-mode #heroCityTitle{font-family:var(--font-serif);font-size:var(--fs-2xl);font-weight:700;color:#FFFFFF !important;line-height:1.25;margin:0}.hero-marine-mode .section-subtitle,.hero-marine-mode #heroMarineSub{font-size:var(--fs-sm);color:rgba(224,242,254,0.9) !important;line-height:1.5;margin:0}.hero-marine-mode .section-subtitle strong,.hero-marine-mode #heroMarineSub strong{color:#38bdf8 !important;font-weight:700}.hero-marine-mode .hero-marine-icon-box{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;min-width:68px;background:rgba(255,255,255,0.08);border:1.5px solid rgba(56,189,248,0.32);border-radius:18px;box-shadow:0 4px 16px rgba(0,0,0,0.25);flex-shrink:0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@media (min-width:640px){.hero-marine-mode .hero-marine-icon-box{width:76px;height:76px;min-width:76px}}.hero-marine-mode .marine-kpis-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:6px}@media (min-width:860px){.hero-marine-mode .marine-kpis-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}}.hero-marine-mode .marine-kpi-box{background:rgba(4,28,48,0.65);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1.5px solid rgba(56,189,248,0.24);border-radius:var(--radius-lg);padding:14px 16px;display:flex;flex-direction:column;justify-content:space-between;gap:6px;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 8px 24px -4px rgba(2,18,33,0.35);min-width:0}.hero-marine-mode .marine-kpi-box:hover{transform:translateY(-2px);border-color:rgba(56,189,248,0.55);background:rgba(6,38,64,0.85);box-shadow:0 12px 28px -4px rgba(2,18,33,0.5)}.hero-marine-mode .marine-kpi-label,.marine-kpi-box .marine-kpi-label{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:#7dd3fc !important;display:flex;align-items:center;gap:6px}.hero-marine-mode .marine-kpi-val{font-family:var(--font-serif);font-size:var(--fs-lg);font-weight:700;color:#FFFFFF !important;line-height:1.25;overflow-wrap:break-word}@media (min-width:640px){.hero-marine-mode .marine-kpi-val{font-size:var(--fs-xl)}}.hero-marine-mode .marine-kpi-note,.marine-kpi-box .marine-kpi-note{font-size:var(--fs-xs);color:#e0f2fe !important;font-weight:500;line-height:1.35}.hero-marine-mode #heroMarineCondition,.hero-marine-mode #heroMarineCondition span{font-size:var(--fs-xs) !important;color:rgba(224,242,254,0.88) !important}.hero-marine-mode .city-service-tabs{position:relative;z-index:1;display:flex !important;flex-wrap:wrap;gap:0.5rem;width:100%;margin-top:var(--space-4) !important;padding-top:var(--space-4);border-top:1px solid rgba(56,189,248,0.22)}.hero-marine-mode .city-service-tab{display:inline-flex;align-items:center;gap:0.4rem;padding:0.45rem 0.95rem;border-radius:var(--border-radius-pill);font-size:0.84rem;font-weight:600;background:rgba(255,255,255,0.08);border:1px solid rgba(56,189,248,0.25);color:#FAF6EE;text-decoration:none;transition:all var(--transition-fast)}.hero-marine-mode .city-service-tab:hover{background:rgba(56,189,248,0.22);border-color:#38bdf8;color:#FFFFFF}.hero-marine-mode .city-service-tab.is-active{background:#0284c7 !important;color:#FFFFFF !important;border-color:#38bdf8 !important;font-weight:700;box-shadow:0 4px 14px rgba(2,132,199,0.45)}.prayer-sanctuary{position:relative;overflow:hidden;background:linear-gradient(165deg,var(--kairouan-vert) 0%,#0B1B17 100%);color:#FAF6EE;border-radius:var(--radius-xl);padding:26px 20px;box-shadow:0 20px 44px -14px rgba(11,27,23,0.45)}@media (min-width:1120px){.prayer-sanctuary{padding:40px 40px}}.prayer-sanctuary::before{content:"";position:absolute;inset:10px;border:1px solid rgba(226,185,75,0.28);border-radius:calc(var(--radius-xl) - 6px);pointer-events:none}.prayer-sanctuary-head{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-6)}@media (min-width:1120px){.prayer-sanctuary-head{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:var(--space-6)}}.prayer-sanctuary-titles{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.prayer-inm-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(226,185,75,0.16);color:var(--kairouan-or);border:1px solid rgba(226,185,75,0.45);border-radius:var(--border-radius-pill);padding:4px 12px;font-size:var(--fs-xs);font-weight:800;letter-spacing:0.06em;text-transform:uppercase}.prayer-sanctuary .prayer-title{font-family:var(--font-serif);font-size:var(--fs-2xl);font-weight:700;color:#FAF6EE;line-height:1.2;margin:0}.prayer-sanctuary-sub{font-size:var(--fs-sm);color:rgba(250,246,238,0.78);margin:0}.prayer-sanctuary-controls{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}@media (min-width:1120px){.prayer-sanctuary-controls{align-items:flex-end}}.hero-prayer-mode .prayer-hero-controls{display:none}@media (min-width:1024px){.hero-prayer-mode .prayer-sanctuary-head{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--space-6)}.hero-prayer-mode .prayer-hero-controls{display:inline-flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;align-self:flex-start}}.hero-prayer-mode .prayer-hero-controls .prayer-city-pill{cursor:default;display:inline-flex;align-items:center;gap:6px}.prayer-sanctuary .prayer-countdown-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(226,185,75,0.18);color:#FDE68A;border:1px solid rgba(226,185,75,0.45);border-radius:var(--border-radius-pill);padding:6px 14px;font-size:var(--fs-xs);font-weight:700}.prayer-city-pills{display:flex;flex-wrap:wrap;gap:8px}.prayer-city-pill{appearance:none;background:rgba(250,246,238,0.08);color:rgba(250,246,238,0.88);border:1px solid rgba(226,185,75,0.28);border-radius:var(--border-radius-pill);padding:6px 14px;font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:700;cursor:pointer;transition:all 0.2s ease}.prayer-city-pill:hover{background:rgba(226,185,75,0.2);border-color:var(--kairouan-or);color:#FFFFFF}.prayer-city-pill.is-active{background:var(--kairouan-or);color:#0B1B17;border-color:var(--kairouan-or);box-shadow:0 4px 12px rgba(226,185,75,0.3)}.prayer-arches-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (min-width:768px){.prayer-arches-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}}@media (min-width:1120px){.prayer-arches-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}}.prayer-arch-card{position:relative;background:var(--kairouan-vert-card);border:1.5px solid rgba(226,185,75,0.25);border-radius:var(--radius-prayer-arch);padding:22px 12px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;transition:transform 0.2s ease,border-color 0.2s ease,background 0.2s ease}.prayer-arch-card:hover{transform:translateY(-2px);border-color:rgba(226,185,75,0.55)}.prayer-arch-next-badge{display:none;align-items:center;justify-content:center;background:var(--kairouan-or);color:#0B1B17;font-size:0.65rem;font-weight:800;letter-spacing:0.06em;padding:2px 9px;border-radius:var(--border-radius-pill);text-transform:uppercase;margin-bottom:2px}.prayer-arch-card.is-next{background:linear-gradient(180deg,rgba(226,185,75,0.22) 0%,rgba(21,66,54,0.95) 100%);border:2px solid var(--kairouan-or);box-shadow:0 10px 24px -6px rgba(226,185,75,0.28)}.prayer-arch-card.is-next .prayer-arch-next-badge{display:inline-flex}.prayer-arch-card .prayer-name{font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:700;color:#FAF6EE;text-transform:uppercase;letter-spacing:0.04em}.prayer-arch-card .prayer-arabic{font-family:var(--font-arabic);font-size:var(--fs-base);font-weight:700;color:var(--kairouan-or);line-height:1.2}.prayer-arch-card .prayer-time{font-family:var(--font-serif);font-size:1.6rem;font-weight:700;color:#FFFFFF;line-height:1.1;margin-top:2px}.prayer-sanctuary-footer{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid rgba(226,185,75,0.22)}.prayer-footer-link{font-size:var(--fs-sm);font-weight:600;color:rgba(250,246,238,0.86);text-decoration:none;transition:color 0.18s ease}.prayer-footer-link:hover,.prayer-footer-link.is-primary{color:var(--kairouan-or);font-weight:700}.matches-stade-wrapper{background:var(--bg-sable-doux);border:1.5px solid var(--border-pierre);border-radius:var(--radius-xl);padding:24px 18px}@media (min-width:1120px){.matches-stade-wrapper{padding:34px 34px}}.stade-eyebrow-badge{display:inline-flex;align-items:center;gap:6px;background:var(--stade-rouge-bg);color:var(--stade-rouge);border:1px solid rgba(190,18,60,0.22);border-radius:var(--border-radius-pill);padding:4px 12px;font-size:var(--fs-xs);font-weight:800;letter-spacing:0.05em;text-transform:uppercase;margin-bottom:var(--space-2)}.tickets-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}@media (min-width:768px){.tickets-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.tickets-grid>.ticket-competition-group:only-child,.tickets-grid>.ticket-competition-group:last-child:nth-child(odd){grid-column:1 / -1}}.ticket-competition-group{display:flex;flex-direction:column;background:rgba(255,253,249,0.65);border:1px solid var(--border-pierre);border-radius:var(--radius-lg);padding:14px}.ticket-group-list{display:flex;flex-direction:column;gap:12px;margin-top:10px}.match-ticket{background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md);box-shadow:var(--shadow-ticket);position:relative;overflow:hidden;transition:transform 0.18s ease,border-color 0.18s ease}.match-ticket:hover{transform:translateY(-1px);border-color:var(--sidi-cobalt)}.match-ticket.is-collapsed{display:none}.match-ticket::before,.match-ticket::after{content:"";position:absolute;width:20px;height:20px;background:var(--bg-chaux);border:1.5px solid var(--border-pierre);border-radius:50%;bottom:28px;z-index:2;pointer-events:none}.match-ticket::before{left:-11px}.match-ticket::after{right:-11px}.match-ticket-upper{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;justify-items:stretch;gap:10px;padding:14px 16px}.ticket-team{display:flex;align-items:center;gap:8px;min-width:0}.ticket-team.is-home{justify-content:flex-end;text-align:right}.ticket-team.is-away{justify-content:flex-start;text-align:left}.ticket-team-name{font-size:var(--fs-sm);font-weight:700;color:var(--ink-noir);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-team.is-winner .ticket-team-name{color:var(--sidi-cobalt-dark);font-weight:800}.ticket-score-box{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:5px 12px;border-radius:var(--radius-sm);font-family:var(--font-serif);font-size:var(--fs-base);font-weight:700;line-height:1.1;white-space:nowrap}.ticket-score-box.is-played{background:var(--stade-rouge-bg);color:var(--stade-rouge);border:1px solid rgba(190,18,60,0.25)}.ticket-score-box.is-upcoming{background:var(--sidi-ciel);color:var(--sidi-cobalt);border:1px solid rgba(0,82,165,0.2)}.match-ticket-lower{display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;border-top:1.5px dashed var(--border-pierre);background:rgba(244,238,225,0.45);min-height:38px;font-size:var(--fs-xs)}.ticket-meta-left{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;min-width:0;text-align:center}.ticket-status-tag{display:inline-flex;align-items:center;gap:5px;font-weight:700;color:var(--ink-secondaire)}.ticket-status-tag.is-live{color:var(--stade-rouge);font-weight:800}.ticket-status-tag.is-ft{color:var(--stade-rouge)}.ticket-status-tag.is-ns{color:var(--sidi-cobalt)}.ticket-tv-tag{display:inline-flex;align-items:center;gap:4px;color:var(--ink-doux);font-weight:600}.ticket-details-link{color:var(--sidi-cobalt);font-weight:700;text-decoration:none;white-space:nowrap;flex-shrink:0}.ticket-details-link:hover{text-decoration:underline}.daily-services-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}@media (min-width:768px){.daily-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}@media (min-width:1120px){.daily-services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}.daily-service-card{display:flex;flex-direction:column;justify-content:space-between;background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-lg);padding:20px 22px;text-decoration:none;transition:transform 0.2s ease,border-color 0.2s ease,box-shadow 0.2s ease}.daily-service-card:hover{transform:translateY(-2px);border-color:var(--sidi-cobalt);box-shadow:var(--shadow-hover)}.daily-service-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.daily-service-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--border-radius-pill);font-size:var(--fs-xs);font-weight:700;white-space:nowrap}.daily-service-badge.is-gold{background:var(--sahara-sable-chaud);color:#92400E}.daily-service-badge.is-green{background:var(--flag-vert-bg);color:var(--flag-vert-txt)}.daily-service-badge.is-amber{background:var(--flag-orange-bg);color:var(--flag-orange-txt)}.daily-service-badge.is-blue,.daily-service-badge.is-cobalt{background:var(--sidi-ciel);color:var(--sidi-cobalt)}.home-climate-faq-grid{display:flex;flex-direction:column;gap:var(--space-6)}@media (min-width:1120px){.home-climate-faq-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-6);align-items:stretch}.home-climate-guide{grid-column:span 7}.home-faq-panel{grid-column:span 5}}.climate-guide-eyebrow{display:inline-block;font-size:var(--fs-xs);font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--sidi-cobalt);margin-bottom:4px}.home-climate-guide{display:flex;flex-direction:column;justify-content:space-between;background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-xl);padding:24px 22px}@media (min-width:1120px){.home-climate-guide{padding:32px 32px}}.home-climate-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);margin:var(--space-4) 0;color:var(--ink-secondaire);font-size:var(--fs-sm);line-height:1.65}@media (min-width:1120px){.home-climate-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}}.home-climate-columns p{margin:0}.home-climate-tags{display:flex;flex-wrap:wrap;gap:8px;padding-top:var(--space-3);border-top:1px dashed var(--border-pierre)}.climate-tag-link{display:inline-flex;align-items:center;background:var(--bg-chaux);border:1px solid var(--border-pierre);border-radius:var(--border-radius-pill);padding:5px 12px;font-size:var(--fs-xs);font-weight:700;color:var(--sidi-cobalt);text-decoration:none;transition:all 0.18s ease}.climate-tag-link:hover{background:var(--sidi-ciel);border-color:var(--sidi-cobalt)}.home-faq-panel{background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-xl);padding:24px 22px;display:flex;flex-direction:column}@media (min-width:1120px){.home-faq-panel{padding:32px 28px}}.home-faq-head{margin-bottom:var(--space-4)}.home-faq-title{font-family:var(--font-serif);font-size:var(--fs-xl);font-weight:700;color:var(--ink-noir);margin:0 0 4px}.home-faq-sub{font-size:var(--fs-xs);color:var(--ink-doux);margin:0}.home-faq-list{display:flex;flex-direction:column;gap:10px}.home-faq-item{background:var(--bg-chaux);border:1px solid var(--border-pierre);border-radius:var(--radius-md);overflow:hidden;transition:border-color 0.18s ease}.home-faq-item[open]{border-color:var(--sidi-cobalt);background:var(--bg-carte)}.home-faq-question{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;font-size:var(--fs-sm);font-weight:700;color:var(--ink-noir);cursor:pointer}.home-faq-question::-webkit-details-marker{display:none}.home-faq-chevron{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--sidi-ciel);color:var(--sidi-cobalt);font-weight:800;flex-shrink:0;transition:transform 0.2s ease}.home-faq-item[open] .home-faq-chevron{transform:rotate(45deg);background:var(--sidi-cobalt);color:#FFFFFF}.home-faq-answer{padding:0 16px 14px;font-size:var(--fs-xs);line-height:1.6;color:var(--ink-secondaire)}.home-faq-answer p{margin:0}.hourly-card,.hourly-forecast-card,.thematic-card,.seo-climate-card,.dedicated-section,.cities-directory-card,.live-hub-card,.standings-card,.comp-news-section{background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft)}.hourly-slot{background:var(--bg-chaux);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md)}.hourly-slot.is-now{background:linear-gradient(180deg,#f0f7ff 0%,var(--bg-carte) 100%);border-color:var(--sidi-azur)}.hourly-slot.is-night{background:linear-gradient(180deg,#f4f6f8 0%,var(--bg-sable) 100%);border-color:var(--border-pierre);color:var(--ink-noir)}.hourly-temp,.data-item-val,.marine-kpi-value,.vp-highlight-val{font-family:var(--font-serif);font-weight:700;color:var(--ink-noir)}.thematic-visual .visual-radar-map{background:linear-gradient(135deg,var(--sidi-cobalt-dark) 0%,var(--sidi-cobalt) 100%);border:1px solid rgba(217,155,38,0.35);border-radius:var(--radius-md)}.data-item{background:var(--bg-chaux);border:1px solid var(--border-pierre);border-radius:var(--radius-sm)}.weekly-advice-card,.vigilance-notice-box{background:var(--sahara-sable-chaud);border:1.5px solid #F0D9A8;border-radius:var(--radius-md);color:var(--ink-noir)}.nautical-tile,.chart-container-card,.marine-kpi-card{background:var(--bg-chaux);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md)}.spec-data-table{background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md);overflow:hidden}.spec-data-table thead th{background:var(--bg-sable);color:var(--ink-noir);font-family:var(--font-serif);border-bottom:1.5px solid var(--border-pierre)}.spec-data-table tbody tr:nth-child(even){background:var(--bg-sable-doux)}.spec-data-table tbody td{border-bottom:1px solid var(--border-pierre);color:var(--ink-noir)}.city-dir-link,.coastal-pill-btn,.prayer-gov-pill{background:var(--bg-chaux);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md);color:var(--ink-noir);transition:transform 0.18s ease,border-color 0.18s ease,box-shadow 0.18s ease}.city-dir-link:hover,.coastal-pill-btn:hover,.prayer-gov-pill:hover{transform:translateY(-2px);border-color:var(--sidi-cobalt);background:var(--bg-carte);box-shadow:var(--shadow-hover);color:var(--sidi-cobalt-dark)}.city-dir-link:hover .city-dir-ar,.prayer-gov-pill:hover .prayer-gov-pill-ar{color:var(--sidi-cobalt)}.city-dir-link.is-active,.coastal-pill-btn.is-active,.prayer-gov-pill.is-active{background:var(--sidi-cobalt) !important;border-color:var(--sidi-cobalt) !important;color:#FFFFFF !important;box-shadow:var(--shadow-soft)}.city-dir-link.is-active span,.city-dir-link.is-active .city-dir-ar,.prayer-gov-pill.is-active span,.prayer-gov-pill.is-active .prayer-gov-pill-ar,.coastal-pill-btn.is-active{color:#FFFFFF !important}.city-dir-link.is-active .city-dir-ar,.prayer-gov-pill.is-active .prayer-gov-pill-ar{opacity:0.92}.city-dir-link.is-active:hover,.city-dir-link.is-active:focus,.city-dir-link.is-active:focus-visible,.coastal-pill-btn.is-active:hover,.coastal-pill-btn.is-active:focus,.prayer-gov-pill.is-active:hover,.prayer-gov-pill.is-active:focus{background:var(--sidi-cobalt-dark) !important;border-color:var(--sidi-cobalt-dark) !important;color:#FFFFFF !important;box-shadow:var(--shadow-hover)}.city-dir-link.is-active:hover span,.city-dir-link.is-active:hover .city-dir-ar,.prayer-gov-pill.is-active:hover span,.prayer-gov-pill.is-active:hover .prayer-gov-pill-ar{color:#FFFFFF !important}.city-dir-link.is-active::selection,.city-dir-link.is-active *::selection,.prayer-gov-pill.is-active::selection,.prayer-gov-pill.is-active *::selection,.coastal-pill-btn.is-active::selection{background:rgba(255,255,255,0.35);color:#FFFFFF}.prayer-section{background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft)}.prayer-calendar-table-wrap{border:1.5px solid var(--border-pierre);border-radius:var(--radius-md);overflow-x:auto;background:var(--bg-carte)}.prayer-calendar-table{width:100%;border-collapse:collapse;background:var(--bg-carte);font-size:var(--fs-base)}.prayer-calendar-table thead th{background:var(--kairouan-vert);color:var(--kairouan-or) !important;font-family:var(--font-serif);font-weight:700;padding:14px 16px;border-bottom:2px solid var(--kairouan-or);text-align:center}.prayer-calendar-table thead th.col-date{text-align:left;color:var(--kairouan-or) !important}.prayer-calendar-table tbody tr{background:var(--bg-carte);border-bottom:1px solid var(--border-pierre)}.prayer-calendar-table tbody tr:nth-child(even){background:var(--bg-sable)}.prayer-calendar-table tbody tr.is-today{background:var(--sahara-sable-chaud);font-weight:700}.prayer-calendar-table tbody td{padding:12px 16px;font-size:var(--fs-base);color:var(--ink-noir);font-family:var(--font-serif);text-align:center}.prayer-calendar-table tbody td.col-date{font-family:var(--font-sans);text-align:left;font-weight:700;color:var(--ink-noir) !important}.prayer-calendar-table thead th.col-hijri{font-family:var(--font-arabic),var(--font-serif);font-size:0.95rem}.prayer-calendar-table tbody td.col-hijri{font-family:var(--font-arabic),var(--font-sans);font-size:0.95rem;font-weight:600;color:#1a382b;white-space:nowrap}.prayer-calendar-table tbody tr.is-today td.col-hijri{color:#92400e !important;font-weight:700}.prayer-calendar-table tbody tr.is-today td.col-date{color:#92400e !important}.prayer-tab-btn{background:var(--bg-chaux);border:1.5px solid var(--border-pierre);color:var(--ink-noir);border-radius:var(--border-radius-pill);font-weight:700}.prayer-tab-btn:hover{background:var(--bg-carte);border-color:var(--kairouan-or);color:var(--kairouan-vert)}.prayer-tab-btn.is-active{background:var(--kairouan-vert) !important;border-color:var(--kairouan-or) !important;color:var(--kairouan-or) !important}.prayer-sanctuary .city-service-tabs{display:flex !important;flex-wrap:wrap;gap:0.5rem;width:100%;margin-top:0.75rem;padding-top:1rem;border-top:1px solid rgba(226,185,75,0.22)}.prayer-sanctuary .city-service-tab{display:inline-flex;align-items:center;gap:0.4rem;padding:0.45rem 0.95rem;border-radius:var(--border-radius-pill);font-size:0.84rem;font-weight:600;background:rgba(250,246,238,0.08);border:1px solid rgba(226,185,75,0.28);color:#FAF6EE;text-decoration:none;transition:all var(--transition-fast)}.prayer-sanctuary .city-service-tab:hover{background:rgba(226,185,75,0.2);border-color:var(--kairouan-or);color:#FFFFFF}.prayer-sanctuary .city-service-tab.is-active{background:var(--kairouan-or) !important;color:#0B1B17 !important;border-color:var(--kairouan-or) !important;font-weight:700;box-shadow:0 4px 14px rgba(226,185,75,0.35)}.prayer-guide-item,.prayer-faq-item{background:var(--bg-chaux);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md)}.prayer-crosslinks-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:1rem}@media (min-width:640px){.prayer-crosslinks-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}@media (min-width:1024px){.prayer-crosslinks-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}.prayer-crosslink-card{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-lg);color:var(--ink-noir);text-decoration:none;box-shadow:var(--shadow-soft);transition:transform 0.2s ease,border-color 0.2s ease,box-shadow 0.2s ease,background-color 0.2s ease}.prayer-crosslink-card:hover,.prayer-crosslink-card:focus-visible{transform:translateY(-2px);border-color:var(--sidi-cobalt);background:#ffffff;box-shadow:var(--shadow-hover)}.prayer-crosslink-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;border-radius:var(--radius-md);background:var(--sidi-ciel);border:1px solid rgba(11,79,159,0.12);font-size:1.35rem;line-height:1;flex-shrink:0}.prayer-crosslink-card:hover .prayer-crosslink-icon{background:#e0effd;border-color:var(--sidi-azur)}.prayer-crosslink-content{flex:1;min-width:0}.prayer-crosslink-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.prayer-crosslink-title{font-family:var(--font-sans);font-size:0.96rem;font-weight:700;color:var(--sidi-cobalt-dark);line-height:1.35}.prayer-crosslink-arrow{color:var(--sidi-azur);font-size:1.15rem;font-weight:800;line-height:1;transition:transform 0.2s ease,color 0.2s ease;flex-shrink:0}.prayer-crosslink-card:hover .prayer-crosslink-arrow{transform:translateX(4px);color:var(--sidi-cobalt)}.prayer-crosslink-desc{font-size:0.84rem;color:var(--ink-secondaire);line-height:1.45;margin-top:5px;margin-bottom:0}.stade-sanctuary{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 15%,rgba(201,42,42,0.22) 0%,transparent 55%),linear-gradient(165deg,#1c1d24 0%,#101115 100%);color:#FAF6EE;border:1px solid rgba(201,42,42,0.35);border-radius:var(--radius-xl);padding:26px 20px;box-shadow:0 20px 44px -14px rgba(16,17,21,0.5);margin-bottom:1.5rem}@media (min-width:1120px){.stade-sanctuary{padding:34px 38px}}.stade-sanctuary::before{content:"";position:absolute;inset:10px;border:1px solid rgba(201,42,42,0.2);border-radius:calc(var(--radius-xl) - 6px);pointer-events:none}.stade-sanctuary-head{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-4)}@media (min-width:1024px){.stade-sanctuary-head{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--space-6)}}.stade-sanctuary-titles{display:flex;flex-direction:column;align-items:flex-start;gap:8px;flex:1}.stade-sanctuary-controls{display:none}@media (min-width:1024px){.stade-sanctuary-controls{display:inline-flex;align-items:center;justify-content:flex-end;align-self:flex-start;flex-shrink:0}}.stade-hero-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(250,246,238,0.1);color:#FAF6EE;border:1px solid rgba(201,42,42,0.45);border-radius:var(--border-radius-pill);padding:6px 14px;font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.stade-sanctuary .breadcrumb-nav{position:relative;z-index:1;display:flex;align-items:center;gap:0.45rem;font-size:0.8rem;color:rgba(250,246,238,0.72);margin-bottom:0.25rem;flex-wrap:wrap}.stade-sanctuary .breadcrumb-nav a{color:#fca5a5;font-weight:600;text-decoration:none}.stade-sanctuary .breadcrumb-nav a:hover{color:#FAF6EE;text-decoration:underline}.stade-sanctuary .bc-sep{color:rgba(250,246,238,0.4);font-weight:700}.stade-sanctuary .dedicated-title-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.stade-logo-pod{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;min-width:52px;background:#FFFFFF;border-radius:12px;padding:6px;box-shadow:0 4px 14px rgba(0,0,0,0.25);border:1.5px solid rgba(255,255,255,0.5);flex-shrink:0}.stade-logo-pod .dedicated-logo{width:40px;height:40px;object-fit:contain}.stade-sanctuary .dedicated-h1{font-family:var(--font-serif);font-size:var(--fs-2xl);font-weight:700;color:#FAF6EE !important;line-height:1.25;margin:0}.stade-sanctuary .dedicated-desc{font-size:var(--fs-sm);color:rgba(250,246,238,0.85);line-height:1.55;max-width:820px;margin:0}.stade-sanctuary-footer{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px;margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(250,246,238,0.14)}.stade-service-tabs{display:flex;flex-wrap:wrap;gap:8px}.stade-service-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--border-radius-pill);font-size:var(--fs-xs);font-weight:600;text-decoration:none;background:rgba(250,246,238,0.08);border:1px solid rgba(250,246,238,0.2);color:#FAF6EE;transition:all var(--transition-fast)}.stade-service-tab:hover{background:rgba(201,42,42,0.25);border-color:var(--stade-rouge);color:#FFFFFF}.stade-service-tab.is-active{background:var(--stade-rouge) !important;border-color:var(--stade-rouge) !important;color:#FFFFFF !important;box-shadow:0 4px 12px rgba(201,42,42,0.35)}.stade-sanctuary .dedicated-meta-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stade-sanctuary .comp-tv-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(250,246,238,0.06);color:rgba(250,246,238,0.9);border:1px solid rgba(250,246,238,0.16);border-radius:var(--border-radius-pill);padding:4px 11px;font-size:var(--fs-xs);font-weight:600}.hero-match-section .city-pill.is-active{background:var(--stade-rouge) !important;border-color:var(--stade-rouge) !important;color:#FFFFFF !important}.competition-group{background:var(--bg-sable-doux);border:1.5px solid var(--border-pierre);border-radius:var(--radius-lg);padding:16px}.competition-matches,.match-tab-pane.is-active{display:flex;flex-direction:column;gap:12px;margin-top:12px}.match-tab-pane>.match-row-card + .match-row-card{margin-top:0}.match-row-card{display:flex;flex-direction:column-reverse;align-items:stretch;gap:0;padding:0;background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md);box-shadow:var(--shadow-ticket);position:relative;overflow:hidden;transition:transform 0.18s ease,border-color 0.18s ease}.match-row-card:hover{transform:translateY(-1px);border-color:var(--sidi-cobalt);background:var(--bg-carte)}.match-row-card.is-collapsed{display:none}.match-row-card::before,.match-row-card::after{content:"";position:absolute;width:20px;height:20px;background:var(--bg-chaux);border:1.5px solid var(--border-pierre);border-radius:50%;bottom:28px;z-index:2;pointer-events:none}.match-row-card::before{left:-11px}.match-row-card::after{right:-11px}.match-versus-col{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:14px 16px}.match-meta-col{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding:9px 18px;border-top:1.5px dashed var(--border-pierre);background:rgba(244,238,225,0.45);min-height:38px}.match-score-pill{background:var(--stade-rouge-bg);color:var(--stade-rouge);border:1px solid rgba(190,18,60,0.25);border-radius:var(--radius-sm);font-family:var(--font-serif);font-weight:700;padding:4px 10px}.match-score-pill .match-score-num{color:var(--stade-rouge);background:transparent;font-family:var(--font-serif);font-size:var(--fs-base)}.match-score-pill.is-upcoming{background:var(--sidi-ciel);color:var(--sidi-cobalt);border:1px solid rgba(0,82,165,0.2);font-family:var(--font-serif)}.standings-table-wrap{background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-md);overflow-x:auto}.standings-table{background:var(--bg-carte)}.standings-table thead th{background:var(--bg-sable);color:var(--ink-noir);font-family:var(--font-serif);border-bottom:2px solid var(--border-pierre)}.standings-table tbody tr{border-bottom:1px solid var(--border-pierre)}.standings-table tbody tr:nth-child(even){background:var(--bg-sable-doux)}.standings-table td.col-pts{color:var(--stade-rouge);font-family:var(--font-serif);font-weight:700;font-size:var(--fs-base)}.match-tab-btn,.comp-filter-chip{background:var(--bg-chaux);border:1.5px solid var(--border-pierre);color:var(--ink-noir);font-weight:700}.match-tab-btn.is-active,.comp-filter-chip.is-active{background:var(--stade-rouge);border-color:var(--stade-rouge);color:#FFFFFF}.vp-hero-box,.vp-hub-card,.vp-service-card,.vp-alert-card,.vp-table-wrap{background:var(--bg-carte);border:1.5px solid var(--border-pierre);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.vp-highlight-card,.vp-disclaimer{background:var(--sahara-sable-chaud);border:1.5px solid #F0D9A8;border-radius:var(--radius-md);color:var(--ink-noir)}.hero-7jours-section .city-pill.is-active{background:var(--sahara-or) !important;border-color:var(--sahara-or) !important;color:#111D38 !important;font-weight:700}.hero-forecast-mode{position:relative;overflow:hidden;background:radial-gradient(circle at 88% 12%,rgba(245,158,11,0.28) 0%,transparent 52%),radial-gradient(circle at 12% 88%,rgba(56,189,248,0.2) 0%,transparent 50%),linear-gradient(160deg,#162447 0%,#1F4068 50%,#111D38 100%) !important;color:#FAF6EE !important;border:1.5px solid rgba(245,158,11,0.42) !important;border-radius:var(--radius-xl) !important;padding:24px 18px !important;box-shadow:0 20px 44px -14px rgba(17,29,56,0.5) !important;display:flex;flex-direction:column;gap:var(--space-4)}@media (min-width:1120px){.hero-forecast-mode{padding:34px 38px !important}}.hero-forecast-mode::before{content:"";position:absolute;inset:10px;border:1px solid rgba(245,158,11,0.22);border-radius:calc(var(--radius-xl) - 6px);pointer-events:none}.hero-forecast-mode .forecast-horizon-frieze{display:block;width:100%;height:22px;margin-top:-6px;margin-bottom:2px;pointer-events:none;opacity:0.9}.hero-forecast-mode .forecast-hero-head{position:relative;z-index:1;display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.hero-forecast-mode .forecast-hero-main{display:flex;flex-direction:column;gap:8px;flex:1;min-width:260px}.hero-forecast-mode .forecast-hero-badges{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.hero-forecast-mode .forecast-horizon-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(245,158,11,0.22);color:#fde68a;border:1px solid rgba(245,158,11,0.5);border-radius:var(--border-radius-pill);padding:5px 12px;font-size:var(--fs-xs);font-weight:700;white-space:nowrap}.hero-forecast-mode .forecast-live-badge{background:rgba(255,255,255,0.1);color:#e2e8f0;border:1px solid rgba(255,255,255,0.22);border-radius:var(--border-radius-pill);padding:5px 12px;font-size:var(--fs-xs);font-weight:600}.hero-forecast-mode .forecast-live-badge strong{color:#FFFFFF;font-weight:800}.hero-forecast-mode .forecast-hero-title{font-family:var(--font-serif);font-size:var(--fs-2xl);font-weight:700;color:#FFFFFF !important;line-height:1.25;margin:0}.hero-forecast-mode .forecast-hero-sub{font-size:var(--fs-sm);color:rgba(226,232,240,0.92) !important;line-height:1.5;margin:0}.hero-forecast-mode .forecast-hero-sub strong{color:#fde68a !important;font-weight:700}.hero-forecast-mode .hero-forecast-icon-box{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;min-width:68px;background:rgba(255,255,255,0.08);border:1.5px solid rgba(245,158,11,0.4);border-radius:18px;box-shadow:0 4px 16px rgba(0,0,0,0.25);flex-shrink:0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@media (min-width:640px){.hero-forecast-mode .hero-forecast-icon-box{width:76px;height:76px;min-width:76px}}.hero-forecast-mode .hero-forecast-strip{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}.hero-forecast-mode .hero-forecast-strip .forecast-day-card:first-child{grid-column:1 / -1}@media (min-width:640px){.hero-forecast-mode .hero-forecast-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.hero-forecast-mode .hero-forecast-strip .forecast-day-card:first-child{grid-column:span 2}}@media (min-width:1024px){.hero-forecast-mode .hero-forecast-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.hero-forecast-mode .hero-forecast-strip .forecast-day-card:first-child{grid-column:auto}}.hero-forecast-mode .hero-forecast-strip .forecast-day-card{background:rgba(15,29,56,0.68);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1.5px solid rgba(255,255,255,0.16);border-radius:var(--radius-lg);padding:14px 10px;color:#FFFFFF;box-shadow:0 8px 24px -4px rgba(8,15,32,0.35);scroll-margin-top:100px;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.hero-forecast-mode .hero-forecast-strip .forecast-day-card:hover{transform:translateY(-3px);border-color:rgba(245,158,11,0.65);background:rgba(22,41,77,0.85);box-shadow:0 12px 28px -4px rgba(8,15,32,0.5)}.hero-forecast-mode .hero-forecast-strip .forecast-day-card.is-today{background:linear-gradient(180deg,rgba(245,158,11,0.26) 0%,rgba(15,29,56,0.82) 100%);border-color:#f59e0b;box-shadow:0 8px 24px -4px rgba(245,158,11,0.3)}.hero-forecast-mode .hero-forecast-strip .forecast-day-card.is-tomorrow{background:linear-gradient(180deg,rgba(56,189,248,0.2) 0%,rgba(15,29,56,0.8) 100%);border-color:rgba(56,189,248,0.55)}.hero-forecast-mode .hero-forecast-strip .forecast-day-card:target{border-color:#fde68a !important;box-shadow:0 0 0 3px rgba(245,158,11,0.45),0 12px 28px rgba(0,0,0,0.45) !important}.hero-forecast-mode .hero-forecast-strip .forecast-day-name{font-family:var(--font-serif);font-size:0.96rem;font-weight:700;color:#FFFFFF}.hero-forecast-mode .hero-forecast-strip .forecast-day-card.is-today .forecast-day-name{color:#fde68a}.hero-forecast-mode .hero-forecast-strip .forecast-day-card.is-tomorrow .forecast-day-name{color:#bae6fd}.hero-forecast-mode .hero-forecast-strip .forecast-day-date{font-size:0.76rem;color:rgba(226,232,240,0.78)}.hero-forecast-mode .hero-forecast-strip .forecast-emoji{font-size:2.1rem;line-height:1.1;margin:4px 0}.hero-forecast-mode .hero-forecast-strip .forecast-rain-badge{background:rgba(56,189,248,0.18);color:#bae6fd;border:1px solid rgba(56,189,248,0.35)}.hero-forecast-mode .hero-forecast-strip .forecast-condition{color:rgba(248,250,252,0.9);font-size:0.76rem}.hero-forecast-mode .hero-forecast-strip .forecast-temps{border-top:1px solid rgba(255,255,255,0.14);padding-top:8px;font-family:var(--font-serif)}.hero-forecast-mode .hero-forecast-strip .temp-min{color:#bae6fd;font-weight:700}.hero-forecast-mode .hero-forecast-strip .temp-max{color:#fde68a;font-weight:800}.hero-forecast-mode .forecast-hero-footer{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px;margin-top:4px}.hero-forecast-mode .forecast-hero-advice{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,0.08);border-left:4px solid #f59e0b;border-radius:var(--radius-md);padding:12px 16px;font-size:var(--fs-sm);color:#FAF6EE;line-height:1.45}.hero-forecast-mode .forecast-hero-advice strong{color:#fde68a}.hero-forecast-mode .city-service-tabs{display:flex !important;flex-wrap:wrap;gap:0.5rem;width:100%;margin-top:2px !important;padding-top:var(--space-3);border-top:1px solid rgba(245,158,11,0.22)}.hero-forecast-mode .city-service-tab{display:inline-flex;align-items:center;gap:0.4rem;padding:0.45rem 0.95rem;border-radius:var(--border-radius-pill);font-size:0.84rem;font-weight:600;background:rgba(255,255,255,0.08);border:1px solid rgba(245,158,11,0.28);color:#FAF6EE;text-decoration:none;transition:all var(--transition-fast)}.hero-forecast-mode .city-service-tab:hover{background:rgba(245,158,11,0.2);border-color:#f59e0b;color:#FFFFFF}.hero-forecast-mode .city-service-tab.is-active{background:#f59e0b !important;color:#111D38 !important;border-color:#fde68a !important;font-weight:700;box-shadow:0 4px 14px rgba(245,158,11,0.4)}.not-found-hero{text-align:center}.not-found-code{margin:0.25rem 0 0;font-size:clamp(5rem,22vw,9rem);font-weight:800;line-height:1;letter-spacing:-0.04em;color:#D96C45;text-shadow:0 6px 24px rgba(217,108,69,0.25)}.not-found-hero .vp-nav-pills{justify-content:center}.not-found-card-icon{font-size:1.75rem;line-height:1;margin-bottom:0.75rem}
