:root{--vt:#00853F;--vj:#FDEF42;--vr:#E31B23;--g:#051A11;--g2:#0B2B1D;--g3:#12402A;--g4:#1E6B45;--g-soft:#EEF6F1;--g-tint:#F5FAF7;--or:#C68400;--or2:#E59D00;--or3:#FFC01E;--or-soft:#FCF4DF;--or-tint:#FFFDF7;--bg:#FAF9F5;--bg2:#F1ECE1;--bg3:#FFFFFF;--card:#FFFFFF;--card-soft:#FAFAF7;--t1:#0A0A06;--t2:#424035;--t3:#75725C;--t4:#A8A58E;--txt1:#0A0A06;--txt2:#424035;--txt3:#75725C;--bd:#EAE5D8;--bd2:#D3CBB7;--bd3:#F3EFE3;--blue:#0288D1;--grn:#2E7D32;--red:#D32F2F;--ora:#F57C00;--teal:#0097A7;--purple:#7B1FA2;--amber:#A1887F;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:22px;--r-xl:32px;--r-pill:999px;--sh-1:0 1px 2px rgba(10,8,4,0.03),0 1px 3px rgba(10,8,4,0.02);--sh-2:0 4px 12px rgba(10,8,4,0.04),0 2px 4px rgba(10,8,4,0.02);--sh-3:0 12px 32px rgba(10,8,4,0.06),0 4px 12px rgba(10,8,4,0.03);--sh-4:0 24px 48px rgba(10,8,4,0.08),0 6px 18px rgba(10,8,4,0.04);--sh-pop:0 32px 64px rgba(10,8,4,0.14);--sh-glow-g:0 0 0 4px rgba(11,43,29,0.08);--sh-glow-or:0 0 0 4px rgba(198,132,0,0.12);--tr-fast:150ms cubic-bezier(0.215, 0.610, 0.355, 1);--tr-base:280ms cubic-bezier(0.165, 0.840, 0.440, 1);--tr-slow:400ms cubic-bezier(0.165, 0.840, 0.440, 1);--tr-spring:450ms cubic-bezier(0.34, 1.56, 0.64, 1)}*{box-sizing:border-box;margin:0;padding:0}::selection{background:var(--g-soft);color:var(--g)}body,html{height:100%}body{background-color:var(--bg);background-image:url('icons/motif-africain.svg');background-repeat:repeat;background-size:120px}button,input,select,textarea{font-family:inherit;letter-spacing:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--bd2);border-radius:var(--r-pill);border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:var(--t3)}.tricolor{height:3px;display:flex;flex-shrink:0;position:relative;z-index:100;opacity:.95}.tricolor>div{flex:1}.tricolor>div:first-child{background:var(--vt)}.tricolor>div:nth-child(2){background:var(--vj)}.tricolor>div:nth-child(3){background:var(--vr)}.app{display:flex;flex:1;overflow:hidden;background:var(--bg)}#sidebar{width:260px;flex-shrink:0;background:linear-gradient(180deg,#020c08 0,#051a11 60%,#0a261a 100%);display:flex;flex-direction:column;height:100%;position:relative;overflow:hidden;box-shadow:1px 0 0 rgba(255,255,255,.04)}#sidebar::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 100% 0,rgba(255,192,30,.05) 0,transparent 40%),radial-gradient(circle at 0 100%,rgba(0,133,63,.06) 0,transparent 50%)}.logo{padding:26px 24px 20px;border-bottom:1px solid rgba(255,255,255,.05);position:relative;z-index:1}.logo-row{display:flex;align-items:center;gap:12px}.logo-badge{width:38px;height:38px;border-radius:12px;flex-shrink:0;background:linear-gradient(135deg,var(--or3) 0,var(--or) 100%);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:19px;color:var(--g);box-shadow:0 4px 16px rgba(198,132,0,.3),inset 0 1px 1px rgba(255,255,255,.4)}.logo-name{font-size:21px;font-weight:800;color:#fff;letter-spacing:-.6px;line-height:1}.logo-name span{color:var(--or3);text-shadow:0 0 20px rgba(255,192,30,.2)}.logo-sub{font-size:9.5px;color:rgba(255,255,255,.4);margin-top:6px;letter-spacing:.8px;text-transform:uppercase;font-weight:700}nav{flex:1;padding:20px 14px;overflow-y:auto;position:relative;z-index:1;scrollbar-width:none}nav::-webkit-scrollbar{display:none}.ni{display:flex;align-items:center;gap:8px;padding:11px 14px;border-radius:12px;cursor:pointer;color:rgba(255,255,255,.6);font-size:13.5px;font-weight:500;transition:color var(--tr-fast),background var(--tr-base),transform var(--tr-base),box-shadow var(--tr-base);margin-bottom:3px;position:relative}.ni:hover{background:rgba(255,255,255,.05);color:#fff;transform:translateX(3px)}.ni.on{background:#fff;color:var(--g);font-weight:700;box-shadow:var(--sh-2)}.ni-ico{font-size:16px;width:20px;text-align:center;flex-shrink:0;line-height:1;opacity:.85;transition:transform var(--tr-spring)}.ni:hover .ni-ico{transform:scale(1.08)}.ni.on .ni-ico{color:var(--g4);opacity:1}.ni-badge{margin-left:auto;font-size:9px;font-weight:700;padding:2px 8px;border-radius:var(--r-pill);letter-spacing:.2px}.nb-new{background:var(--vr);color:#fff}.nb-ia{background:rgba(255,192,30,.12);color:var(--or3);border:1px solid rgba(255,192,30,.15)}.ni.on .nb-ia{background:var(--g-soft);color:var(--g3);border-color:transparent}.sf{padding:18px 24px;border-top:1px solid rgba(255,255,255,.05);position:relative;z-index:1;font-size:12px;color:rgba(255,255,255,.45);display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.15)}.sf strong{color:#fff;font-weight:600}.dot-on{display:inline-block;width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 12px #10b981;animation:2.4s cubic-bezier(.4,0,.6,1) infinite pulse-dot;flex-shrink:0}@keyframes pulse-dot{0%,100%{transform:scale(1);opacity:1;box-shadow:0 0 0 0 rgba(16,185,129,.5)}50%{transform:scale(1.1);opacity:.8;box-shadow:0 0 0 6px rgba(16,185,129,0)}}#main{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.topbar{background:rgba(255,255,255,.75);backdrop-filter:blur(24px) saturate(200%);-webkit-backdrop-filter:blur(24px) saturate(200%);padding:18px 32px;border-bottom:1px solid var(--bd3);display:flex;justify-content:space-between;align-items:center;flex-shrink:0;z-index:10}.topbar h2{font-size:18px;font-weight:800;color:var(--g);display:flex;align-items:center;gap:12px;letter-spacing:-.4px}.topbar-right{display:flex;gap:12px;align-items:center}#content{background-color:transparent;background-image:url('icons/motif-africain.svg');background-repeat:repeat;background-size:120px}#sidebar .logo-name{font-size:22px!important;font-weight:900!important;color:#fff!important;letter-spacing:-.5px!important;line-height:1!important}#sidebar .logo-name span{color:var(--or3,#ffc820)!important;font-size:30px!important;font-weight:900!important;margin-left:3px!important;display:inline-block!important;transform:translateY(-2px);text-shadow:0 0 12px rgba(255,200,32,.5);animation:2.2s ease-in-out infinite dkPlusPulse!important}@keyframes dkPlusPulse{0%,100%{transform:translateY(-2px) scale(1) rotate(0);text-shadow:0 0 12px rgba(255,200,32,.5);color:var(--or3,#ffc820)}50%{transform:translateY(-3px) scale(1.15) rotate(8deg);text-shadow:0 0 22px rgba(255,200,32,.9),0 0 4px rgba(255,255,255,.6);color:#fff5b8}}#sidebar .logo-badge{background:linear-gradient(135deg,#00853f 0,#155a3a 50%,#0a3a26 100%)!important;color:#fff!important;font-size:22px!important;font-weight:900!important;box-shadow:0 4px 14px rgba(0,133,63,.55),inset 0 1px 0 rgba(255,255,255,.25)!important;position:relative}#sidebar .logo-badge::after{content:'';position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(135deg,transparent,rgba(255,200,32,.3),transparent);z-index:-1;animation:3s ease-in-out infinite dkBadgeShimmer}@keyframes dkBadgeShimmer{0%,100%{opacity:0}50%{opacity:1}}.card{background:var(--card);border-radius:var(--r-md);border:1px solid var(--bd3);padding:20px 22px;margin-bottom:16px;box-shadow:var(--sh-2);transition:box-shadow var(--tr-base)}.card-accent{border-top:3px solid var(--g)}.card-soft{background:var(--card-soft)}.card:hover{box-shadow:var(--sh-3)}.ch{font-weight:800;color:var(--g);margin-bottom:16px;font-size:15px;display:flex;align-items:center;gap:9px;letter-spacing:-.2px}.info-g{font-size:12px;color:var(--g2);background:var(--g-soft);border-left:3px solid var(--g3);padding:10px 14px;border-radius:0 var(--r-sm) var(--r-sm) 0;margin-bottom:14px;line-height:1.5}.info-y{font-size:12px;color:#7b5e00;background:var(--or-soft);border-left:3px solid var(--or);padding:10px 14px;border-radius:0 var(--r-sm) var(--r-sm) 0;margin-bottom:14px;line-height:1.5}@keyframes wbIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.wb::before{content:'🇸🇳';font-size:170px;position:absolute;right:-18px;bottom:-38px;opacity:.09;pointer-events:none;transform:rotate(-8deg);animation:8s ease-in-out infinite flagFloat}@keyframes flagFloat{0%,100%{transform:rotate(-8deg) translateY(0)}50%{transform:rotate(-5deg) translateY(-6px)}}.sc{background:var(--card);border-radius:var(--r-lg);border:1px solid var(--bd3);padding:22px 16px;text-align:center;box-shadow:var(--sh-1);cursor:pointer;transition:all var(--tr-base);position:relative;overflow:hidden}.sc::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--g) 0,var(--g3) 50%,var(--or) 100%);transform:scaleX(0);transform-origin:left;transition:transform var(--tr-base)}.sc::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0,rgba(212,150,10,.06) 0,transparent 60%);opacity:0;transition:opacity var(--tr-base);pointer-events:none}.fc{background:var(--card);border-radius:var(--r-lg);border:1px solid var(--bd3);padding:22px;cursor:pointer;transition:all var(--tr-base);box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:8px;border-top:3px solid var(--g);position:relative;overflow:hidden}.fc::before{content:'';position:absolute;top:0;right:0;width:120px;height:120px;background:radial-gradient(circle,rgba(212,150,10,.08) 0,transparent 65%);border-radius:50%;transform:translate(40%,-40%);transition:transform var(--tr-slow);pointer-events:none}.fc:hover{transform:translateY(-6px);box-shadow:var(--sh-3);border-top-color:var(--or)}.fc:hover::before{transform:translate(20%,-20%) scale(1.4)}.fc-i{font-size:36px;line-height:1;position:relative;z-index:1}.fc-t{font-weight:800;color:var(--g);font-size:15px;letter-spacing:-.2px;position:relative;z-index:1}.fc-d{font-size:12.5px;color:var(--t2);line-height:1.55;position:relative;z-index:1}.qb{background:radial-gradient(circle at 0 100%,rgba(212,150,10,.18) 0,transparent 50%),linear-gradient(135deg,var(--g) 0,var(--g2) 50%,var(--g3) 100%);border-radius:var(--r-lg);padding:24px;position:relative;overflow:hidden;box-shadow:var(--sh-3)}.qb::before{content:'';position:absolute;top:0;right:0;width:200px;height:200px;background:radial-gradient(circle,rgba(212,150,10,.15) 0,transparent 60%);border-radius:50%;transform:translate(30%,-30%);pointer-events:none}.qb p{font-size:11px;color:rgba(255,255,255,.55);margin-bottom:14px;font-weight:800;text-transform:uppercase;letter-spacing:1px;position:relative;z-index:1}.qps{display:flex;flex-wrap:wrap;gap:9px;position:relative;z-index:1}.qp{font-size:13px;padding:8px 16px;border-radius:var(--r-pill);background:0 0;color:var(--or3);border:1.5px solid rgba(212,150,10,.45);cursor:pointer;font-family:inherit;transition:all var(--tr-base);font-weight:600}.qp:hover{background:var(--or);color:var(--g);border-color:var(--or);font-weight:800;transform:translateY(-2px);box-shadow:0 4px 14px rgba(212,150,10,.4)}.badge{display:inline-flex;align-items:center;font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:var(--r-pill);letter-spacing:.2px}.bg{background:rgba(10,58,38,.1);color:var(--g)}.bo{background:rgba(212,150,10,.16);color:#7b5e00}.bb{background:rgba(21,101,192,.1);color:var(--blue)}.br{background:rgba(198,40,40,.1);color:var(--red)}.bgn{background:rgba(27,138,76,.1);color:var(--grn)}.bt{background:rgba(227,27,35,.1);color:var(--vr)}.field-wrap{position:relative}input,select,textarea{width:100%;padding:11px 14px;border:1.5px solid var(--bd);border-radius:var(--r-sm);font-size:14px;font-family:inherit;outline:0;background:#fff;color:var(--t1);transition:all var(--tr-fast);font-weight:500}input::placeholder,textarea::placeholder{color:var(--t4);font-weight:400}input:hover,select:hover,textarea:hover{border-color:var(--bd2)}input:focus,select:focus,textarea:focus{border-color:var(--g);box-shadow:var(--sh-glow-g)}textarea{resize:vertical;min-height:80px;line-height:1.5}.il{font-size:12px;font-weight:700;color:var(--t2);margin-bottom:6px;display:block;letter-spacing:.1px}.ir{display:flex;gap:10px}.ir input,.ir select{flex:1}.loc-drop{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--bd2);border-radius:var(--r-sm);box-shadow:var(--sh-4);z-index:200;max-height:280px;overflow-y:auto}.loc-item{padding:10px 14px;cursor:pointer;font-size:13.5px;border-bottom:1px solid var(--bd3);transition:background var(--tr-fast);display:flex;align-items:center;gap:10px}.loc-item:last-child{border-bottom:none}.loc-item.selected,.loc-item:hover{background:var(--g-soft)}.loc-item-icon{font-size:15px;flex-shrink:0;width:22px;text-align:center}.loc-item-body{flex:1;min-width:0}.loc-item-name{color:var(--g);font-weight:500;line-height:1.3}.loc-item-sub{font-size:11px;color:var(--t3);margin-top:1px}.loc-score-exact .loc-item-name{font-weight:800;color:var(--g)}.loc-score-prefix .loc-item-name{font-weight:700}.loc-score-fuzzy .loc-item-name{color:var(--t2)}.loc-fuzzy-tag{font-size:9px;font-weight:700;padding:2px 6px;background:rgba(212,150,10,.2);color:#7b5e00;border-radius:4px;margin-left:6px;flex-shrink:0}.loc-match-tag{font-size:9px;font-weight:700;padding:2px 6px;background:rgba(10,58,38,.1);color:var(--g);border-radius:4px;margin-left:6px;flex-shrink:0}.loc-filter-info{display:flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(90deg,rgba(123,31,162,.08),transparent);border-bottom:1px solid var(--bd3);font-size:11px;font-weight:700;color:var(--purple);letter-spacing:.2px}.loc-filter-info.ter{background:linear-gradient(90deg,rgba(184,134,11,.1),transparent);color:var(--amber)}.loc-filter-info.ddd{background:linear-gradient(90deg,rgba(227,27,35,.08),transparent);color:var(--vr)}.btn{border-radius:var(--r-sm);font-family:inherit;letter-spacing:.1px;transition:all var(--tr-base);display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.btn:active{transform:scale(.97)}.bp{background:var(--g);color:#fff;box-shadow:0 2px 8px rgba(10,58,38,.25)}.bp:hover{background:var(--g2);box-shadow:0 4px 14px rgba(10,58,38,.35);transform:translateY(-1px)}.bp:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.bo2{background:#fff;color:var(--g);border:1.5px solid var(--g)}.bo2:hover{background:var(--g);color:#fff;transform:translateY(-1px)}.bg2{background:linear-gradient(135deg,var(--or),var(--or2));color:var(--g);box-shadow:0 3px 12px rgba(212,150,10,.35)}.bg2:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 5px 18px rgba(212,150,10,.45)}.br2{background:var(--vr);color:#fff;box-shadow:0 2px 8px rgba(227,27,35,.3)}.br2:hover{background:#c0141c;transform:translateY(-1px);box-shadow:0 4px 14px rgba(227,27,35,.4)}.bsm{padding:7px 14px;font-size:12px}.bfu{width:100%;justify-content:center;margin-top:10px}.tabs{display:flex;gap:4px;background:#fff;padding:5px;border-radius:var(--r-sm);border:1px solid var(--bd3);box-shadow:var(--sh-1);margin-bottom:18px;flex-wrap:wrap}.tb{padding:9px 18px;border-radius:7px;border:none;cursor:pointer;font-size:12.5px;font-family:inherit;font-weight:600;transition:all var(--tr-fast);color:var(--t2);background:0 0}.tb:hover{color:var(--g)}.tb.on{background:var(--g);color:#fff;font-weight:700;box-shadow:0 2px 8px rgba(10,58,38,.3)}#sec-bus .bus-search-card{background:#fff;border-radius:var(--r-xl);padding:0;margin-bottom:18px;border:1px solid var(--bd3);box-shadow:var(--sh-3);position:relative;overflow:visible!important;width:60%;margin-left:auto;margin-right:auto}#sec-bus .bus-search-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--vt) 0,var(--vt) 33%,var(--vj) 33%,var(--vj) 66%,var(--vr) 66%,var(--vr) 100%);border-radius:var(--r-xl) var(--r-xl) 0 0;z-index:10}#sec-bus .bus-search-title{font-size:16px;font-weight:900;color:var(--g);padding:18px 20px 8px;display:flex;align-items:center;gap:10px;position:relative;z-index:5;letter-spacing:-.3px}#sec-bus .bus-search-body{position:relative;padding:8px 20px 16px;display:flex;flex-direction:column;z-index:5}#sec-bus .journey-step{display:flex;align-items:center;gap:12px;position:relative;z-index:6}#sec-bus .journey-step:focus-within{z-index:20}#sec-bus .journey-dot{width:22px;height:22px;border-radius:50%;flex-shrink:0;position:relative;border:3px solid #fff;z-index:2}#sec-bus .journey-dot.depart{background:var(--vt);animation:1.6s infinite blinkDepart}#sec-bus .journey-dot.arrivee{background:var(--vr);animation:1.6s infinite blinkArrivee}@keyframes blinkDepart{0%,100%{box-shadow:0 0 3px 1px rgba(0,133,63,.3);transform:scale(1)}50%{box-shadow:0 0 4px 3px rgba(0,133,63,.6);transform:scale(.6)}}@keyframes blinkArrivee{0%,100%{box-shadow:0 0 3px 1px rgba(227,27,35,.3);transform:scale(1)}50%{box-shadow:0 0 4px 3px rgba(227,27,35,.6);transform:scale(.6)}}#sec-bus .search-input-group{display:flex;align-items:center;background:#fff;border:1.5px solid var(--bd);border-radius:var(--r-md);padding:3px 5px 3px 14px;transition:all var(--tr-base);position:relative;gap:6px;box-shadow:var(--sh-1);z-index:2}#sec-bus .search-input-group:hover{border-color:var(--bd2)}#sec-bus .search-input-group:focus-within{border-color:var(--g);box-shadow:var(--sh-glow-g),var(--sh-2);z-index:50}#sec-bus .search-input-group input{border:none!important;box-shadow:none!important;background:0 0!important;padding:11px 0!important;font-size:14.5px;flex:1;min-width:0;font-weight:500;color:var(--t1);outline:0}#sec-bus .search-input-group input::placeholder{color:var(--t4);font-weight:400;font-size:13.5px}#sec-bus .loc-drop{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--bd2);border-radius:var(--r-md);box-shadow:var(--sh-4);z-index:9999;max-height:280px;overflow-y:auto}#sec-bus .input-icon-btn{width:38px;height:38px;border-radius:11px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--tr-base);flex-shrink:0}#sec-bus .input-icon-btn svg{width:18px;height:18px;pointer-events:none}#sec-bus .input-icon-btn.geo-btn{background:rgba(21,101,192,.1);color:var(--blue)}#sec-bus .input-icon-btn.geo-btn:hover{background:rgba(21,101,192,.2);transform:scale(1.06)}#sec-bus .input-icon-btn.geo-btn.loading{animation:1s linear infinite geoSpin;background:rgba(21,101,192,.2)}@keyframes geoSpin{from{transform:rotate(0)}to{transform:rotate(360deg)}}#sec-bus .input-icon-btn.mic-btn{background:linear-gradient(135deg,var(--or),var(--or2));color:#fff;box-shadow:0 3px 12px rgba(212,150,10,.4);animation:3s infinite micPulse}#sec-bus .input-icon-btn.mic-btn:hover{transform:scale(1.1);box-shadow:0 5px 18px rgba(212,150,10,.55)}@keyframes micPulse{0%,100%{box-shadow:0 3px 12px rgba(212,150,10,.4)}50%{box-shadow:0 3px 22px rgba(212,150,10,.75)}}#sec-bus .journey-swap{display:flex;justify-content:center;align-items:center;height:26px;position:relative;z-index:6;margin:-2px 0 -2px 23px}#sec-bus .bus-swap-btn{width:30px;height:30px;border-radius:50%;background:var(--g);color:#fff;border:2.5px solid #fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--tr-base);box-shadow:0 3px 10px rgba(0,0,0,.12);padding:0}#sec-bus .bus-swap-btn svg{width:14px;height:14px;pointer-events:none}#sec-bus .bus-swap-btn:hover{background:var(--or);border-color:#fff;transform:rotate(180deg);box-shadow:0 5px 16px rgba(212,150,10,.45)}#sec-bus .bus-search-divider{height:1px;margin:0 20px;background:linear-gradient(90deg,transparent 0,var(--bd) 15%,var(--bd) 85%,transparent 100%)}#sec-bus .bus-type-filter{padding:12px 20px 16px}#sec-bus .filter-pills{display:flex;gap:7px;flex-wrap:wrap}#sec-bus .btf{padding:7px 15px;border-radius:var(--r-pill);border:1.5px solid var(--bd);background:#fff;color:var(--t2);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:all var(--tr-base);display:inline-flex;align-items:center;gap:6px}#sec-bus .btf:hover{border-color:var(--g3);color:var(--g);background:var(--g-tint)}#sec-bus .btf.on{background:var(--g);color:#fff;border-color:var(--g);font-weight:700;box-shadow:0 3px 10px rgba(10,58,38,.25)}#sec-bus .btf[data-f=ddd_bus_brt].on{background:#e31b23;border-color:#e31b23;box-shadow:0 3px 10px rgba(227,27,35,.3)}#sec-bus .btf[data-f=ter].on{background:#b8860b;border-color:#b8860b;color:#fff;box-shadow:0 3px 10px rgba(184,134,11,.3)}#sec-bus .btf[data-f=sdd].on{background:#7b1fa2;border-color:#7b1fa2;color:#fff;box-shadow:0 3px 10px rgba(123,31,162,.3)}#sec-bus .btf-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}#sec-bus .geo-panel{background:linear-gradient(135deg,#fff 0,var(--bg3) 100%);border-radius:var(--r-lg);padding:18px;margin-bottom:16px;border:1px solid var(--bd3);animation:.32s fadeSlideIn;box-shadow:var(--sh-3);position:relative;overflow:hidden}#sec-bus .geo-panel::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to bottom,var(--blue),var(--g))}#sec-bus .geo-panel-header{display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:14px;color:var(--g);margin-bottom:14px;letter-spacing:-.1px}#sec-bus .geo-close{background:var(--bg2);border:none;font-size:14px;cursor:pointer;color:var(--t2);padding:5px 10px;border-radius:8px;font-weight:700;transition:all var(--tr-fast)}#sec-bus .geo-close:hover{background:var(--bd2);color:var(--t1)}#sec-bus .geo-stop-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:11px;cursor:pointer;transition:all var(--tr-base);margin-bottom:6px;background:#fff;border:1px solid var(--bd3)}#sec-bus .geo-stop-item:hover{background:var(--g-soft);transform:translateX(4px);border-color:var(--g3);box-shadow:var(--sh-1)}#sec-bus .geo-stop-item.auto-selected{background:linear-gradient(135deg,rgba(0,133,63,.08),rgba(212,150,10,.06));border-color:var(--vt);box-shadow:0 2px 10px rgba(0,133,63,.15)}#sec-bus .geo-stop-name{font-weight:600;font-size:13.5px;color:var(--t1)}#sec-bus .geo-stop-dist{font-size:11px;font-weight:700;padding:4px 11px;border-radius:var(--r-pill);white-space:nowrap}#sec-bus .geo-stop-dist.walk{color:#2e7d32;background:#e8f5e9}#sec-bus .geo-stop-dist.far{color:#b71c1c;background:#ffebee}@keyframes fadeSlideIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}#sec-bus .bus-direct-header{font-weight:900;font-size:15.5px;color:var(--g);margin:18px 0 10px;display:flex;align-items:center;gap:10px;letter-spacing:-.2px}#sec-bus .bus-flash-grid{display:flex;flex-wrap:wrap;gap:11px;margin:14px 0 22px}.bus-flash-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:12px auto;max-width:100%}.bus-flash-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:70px;padding:10px 14px;border:2px solid;border-radius:12px;background:#fff;cursor:pointer;font-family:inherit;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 6px rgba(0,0,0,.08)}.bus-flash-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.bus-flash-num{font-size:16px;font-weight:900}.bus-flash-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.bus-route-panel{max-width:600px;margin:12px auto}.bus-route-header{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;text-align:center}.bus-route-meta{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.bus-route-footer{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}#sec-bus .bus-flash-btn{width:82px;min-height:82px;border-radius:var(--r-md);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;border:2.5px solid;position:relative;overflow:hidden;transition:all var(--tr-base);background:#fff;user-select:none;box-shadow:var(--sh-1)}#sec-bus .bus-flash-btn:hover{transform:translateY(-4px) scale(1.04);box-shadow:var(--sh-3);z-index:10}#sec-bus .bus-flash-btn.active{transform:translateY(-2px) scale(1.06);box-shadow:var(--sh-3)}#sec-bus .bus-flash-num{font-size:30px;font-weight:900;line-height:1;letter-spacing:-1.5px}#sec-bus .bus-flash-type{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;margin-top:3px;opacity:.75}#sec-bus .bus-route-panel{border-left:4px solid var(--route-color,var(--g));animation:.42s cubic-bezier(.25,.8,.25,1) routePanelIn;border-radius:0 var(--r-md) var(--r-md) 0;background:#fff;box-shadow:var(--sh-2);padding:18px;margin-bottom:14px}@keyframes routePanelIn{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}#sec-bus .bus-route-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;flex-wrap:wrap;gap:10px}#sec-bus .bus-route-titre{font-size:16.5px;font-weight:900;letter-spacing:-.3px}#sec-bus .bus-route-meta{display:flex;gap:7px;flex-wrap:wrap}#sec-bus .bus-route-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--bd3);margin-top:8px;font-size:11.5px;color:var(--t2)}#sec-bus .v-route-timeline{position:relative;padding:6px 0 6px 26px;margin:12px 0 16px}#sec-bus .v-route-timeline::before{content:'';position:absolute;left:7px;top:10px;bottom:10px;width:3px;background:repeating-linear-gradient(to bottom,var(--route-color,var(--bd)) 0,var(--route-color,var(--bd)) 6px,transparent 6px,transparent 12px);opacity:.45;border-radius:2px}#sec-bus .v-stop-item{position:relative;padding:7px 0 7px 20px;display:flex;align-items:center;gap:10px;font-size:13.5px;animation:.32s both stopSlideIn}#sec-bus .v-stop-dot{position:absolute;left:-21px;top:50%;transform:translateY(-50%);width:13px;height:13px;border-radius:50%;border:3px solid var(--route-color,var(--bd));background:#fff;z-index:2;transition:all var(--tr-base)}#sec-bus .v-stop-name{color:var(--t2);font-weight:500;line-height:1.3}#sec-bus .v-stop-item.is-arrivee .v-stop-dot,#sec-bus .v-stop-item.is-depart .v-stop-dot{width:17px;height:17px;left:-23px;border-width:3px}#sec-bus .v-stop-item.is-depart .v-stop-dot{background:var(--vt);border-color:var(--vt);animation:.6s ease-in-out 4 flashGreenStop}#sec-bus .v-stop-item.is-arrivee .v-stop-dot{background:var(--vr);border-color:var(--vr);animation:.6s ease-in-out 4 flashRedStop}@keyframes flashGreenStop{0%,100%{box-shadow:0 0 0 0 rgba(0,133,63,0);transform:translateY(-50%) scale(1)}50%{box-shadow:0 0 16px 5px rgba(0,133,63,.7);transform:translateY(-50%) scale(1.4)}}@keyframes flashRedStop{0%,100%{box-shadow:0 0 0 0 rgba(227,27,35,0);transform:translateY(-50%) scale(1)}50%{box-shadow:0 0 16px 5px rgba(227,27,35,.7);transform:translateY(-50%) scale(1.4)}}#sec-bus .v-stop-item.is-arrivee .v-stop-name,#sec-bus .v-stop-item.is-depart .v-stop-name{font-weight:800;color:var(--t1)}@keyframes stopSlideIn{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}#sec-bus .ter-card{background:linear-gradient(135deg,#fffdf5 0,#fff8e1 50%,#fff3cc 100%);border:2px solid var(--amber);border-radius:var(--r-lg);padding:18px 20px;margin-bottom:14px;box-shadow:0 4px 18px rgba(184,134,11,.14)}#sec-bus .ter-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}#sec-bus .ter-icon{font-size:32px}#sec-bus .ter-title{font-weight:800;font-size:14.5px;color:var(--amber);letter-spacing:-.2px}#sec-bus .ter-subtitle{font-size:11.5px;color:var(--t2);margin-top:2px}#sec-bus .ter-timing{display:flex;align-items:baseline;gap:6px}#sec-bus .ter-minutes{font-size:40px;font-weight:900;color:var(--amber);line-height:1;letter-spacing:-1px}#sec-bus .ter-minutes-label{font-size:13px;font-weight:700;color:var(--amber)}#sec-bus .ter-heure{font-size:12px;font-weight:700;color:var(--t1);background:rgba(184,134,11,.12);padding:4px 12px;border-radius:var(--r-pill)}#sec-bus .ter-fin{font-size:13px;color:var(--t2);background:rgba(184,134,11,.08);padding:10px 14px;border-radius:var(--r-sm);margin-top:4px}#sec-bus .bus-no-result{text-align:center;padding:32px 22px;background:var(--bg3);border-radius:var(--r-lg);border:2px dashed var(--bd2)}#sec-bus .bus-no-result-icon{font-size:46px;margin-bottom:12px}#sec-bus .bus-no-result-text{font-size:13.5px;color:var(--t2);margin-bottom:14px;line-height:1.5}#sec-bus .bus-cov-section{font-weight:800;font-size:14px;color:var(--g);margin:20px 0 10px;padding-top:14px;border-top:1px solid var(--bd3)}.dakar-footer-scene{height:300px;margin-top:180px;max-width:2100px;margin-inline:auto;background:linear-gradient(180deg,#fdb876 0,#f89b5c 10%,#f5c57e 22%,#f4e0ac 38%,#d8dcb8 50%,#a8c5a0 58%);border-radius:var(--r-lg);border:1px solid var(--bd3);box-shadow:var(--sh-4),inset 0 0 60px rgba(255,200,120,.15)}.dk-sun-wrap{position:absolute;top:18px;right:60px;width:56px;height:56px;display:flex;align-items:center;justify-content:center;z-index:1}.dk-sun{width:48px;height:48px;border-radius:50%;background:radial-gradient(circle,#fff7b5 0,#ffe76a 35%,#ffb347 75%,#ff8c42 100%);box-shadow:0 0 60px rgba(255,200,90,.85),0 0 100px rgba(255,170,90,.5);position:relative}.dk-sun::after{content:'';position:absolute;inset:-6px;border-radius:50%;background:radial-gradient(circle,rgba(255,230,150,.5) 0,transparent 70%);animation:4s ease-in-out infinite sunGlow}@keyframes sunGlow{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.15);opacity:1}}.dk-cloud{position:absolute;z-index:2;animation:linear infinite cloudDrift;filter:drop-shadow(0 4px 8px rgba(180, 140, 80, .15))}.dk-cloud.c1{top:14px;animation-duration:55s}.dk-cloud.c2{top:38px;animation-duration:75s;animation-delay:-25s;opacity:.85}.dk-cloud.c3{top:8px;animation-duration:90s;animation-delay:-50s;opacity:.7;transform:scale(.7)}.dk-cloud.c4{top:55px;animation-duration:65s;animation-delay:-40s;opacity:.75;transform:scale(.85)}@keyframes cloudDrift{0%{left:-15%}100%{left:115%}}.dk-bird{position:absolute;font-size:11px;color:#3a2a1a;z-index:3;animation:linear infinite birdFly}.dk-bird::before{content:'✦';display:block;animation:.3s ease-in-out infinite birdFlap}.dk-bird.b1{top:42px;animation-duration:28s}.dk-bird.b2{top:58px;animation-duration:32s;animation-delay:-15s}.dk-bird.b3{top:30px;animation-duration:24s;animation-delay:-8s}@keyframes birdFly{0%{left:-5%;transform:translateY(0)}50%{transform:translateY(-8px)}100%{left:108%;transform:translateY(0)}}@keyframes birdFlap{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.5)}}.dk-monument{position:absolute;right:8%;bottom:108px;width:160px;z-index:5;filter:drop-shadow(0 8px 20px rgba(0, 0, 0, .5));animation:1.6s cubic-bezier(.34,1.56,.64,1) both mAppear,4s ease-in-out infinite mGlow;pointer-events:none}.dk-monument img,.dk-monument svg{width:100%;height:auto;display:block}.dakar-footer-scene{position:relative;overflow:hidden}.dakar-footer-scene .dk-grass{position:absolute!important;left:0;right:0;bottom:70px;height:38px!important;z-index:4;background:linear-gradient(180deg,#8fc97f 0,#7bb36f 30%,#5a9050 60%,#3f7236 100%)!important;background-image:radial-gradient(circle 1px at 8% 60%,#4a7e40,transparent),radial-gradient(circle 1px at 18% 75%,#4a7e40,transparent),radial-gradient(circle 1px at 28% 65%,#4a7e40,transparent),radial-gradient(circle 1px at 38% 80%,#4a7e40,transparent),radial-gradient(circle 1px at 48% 70%,#4a7e40,transparent),radial-gradient(circle 1px at 58% 60%,#4a7e40,transparent),radial-gradient(circle 1px at 68% 75%,#4a7e40,transparent),radial-gradient(circle 1px at 78% 65%,#4a7e40,transparent),radial-gradient(circle 1px at 88% 80%,#4a7e40,transparent),radial-gradient(circle 1px at 98% 70%,#4a7e40,transparent),linear-gradient(180deg,#8fc97f 0,#7bb36f 30%,#5a9050 60%,#3f7236 100%)!important;overflow:visible!important}.dakar-footer-scene::before{content:'';position:absolute;right:-2%;bottom:108px;width:38%;height:85px;z-index:3;background:radial-gradient(ellipse 8px 4px at 22% 50%,rgba(0,0,0,.18) 50%,transparent 51%),radial-gradient(ellipse 6px 3px at 48% 65%,rgba(0,0,0,.2) 50%,transparent 51%),radial-gradient(ellipse 10px 5px at 72% 42%,rgba(0,0,0,.18) 50%,transparent 51%),radial-gradient(ellipse 7px 4px at 86% 60%,rgba(0,0,0,.2) 50%,transparent 51%),radial-gradient(ellipse at 30% 28%,rgba(255,220,150,.32) 0,transparent 60%),linear-gradient(180deg,#c9a574 0,#a88358 28%,#8b6340 58%,#5e3d22 100%);border-radius:70% 55% 0 0/100% 100% 0 0;box-shadow:inset 0 -15px 25px rgba(0,0,0,.35),inset 12px 0 28px rgba(0,0,0,.18);pointer-events:none}.dakar-footer-scene::after{content:'';position:absolute;right:6%;bottom:140px;width:125px;height:185px;z-index:6;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 130 200'><defs><linearGradient id='b' x1='0%25' y1='0%25' x2='100%25' y2='100%25'><stop offset='0%25' stop-color='%23D4A574'/><stop offset='30%25' stop-color='%23B8763D'/><stop offset='60%25' stop-color='%238B4513'/><stop offset='100%25' stop-color='%235C2F0D'/></linearGradient><linearGradient id='r' x1='0%25' y1='0%25' x2='0%25' y2='100%25'><stop offset='0%25' stop-color='%237A6048'/><stop offset='50%25' stop-color='%234F3D2A'/><stop offset='100%25' stop-color='%232E2114'/></linearGradient></defs><path d='M 25 195 L 30 175 L 45 168 L 55 172 L 65 165 L 75 170 L 88 168 L 100 175 L 105 195 Z' fill='url(%23r)' stroke='%231F1610' stroke-width='0.5'/><path d='M 35 185 L 40 180 L 45 184 Z' fill='%231F1610' opacity='0.4'/><path d='M 75 182 L 82 178 L 88 183 Z' fill='%231F1610' opacity='0.4'/><path d='M 38 168 Q 36 150 35 135 Q 36 125 40 120 L 44 118 Q 46 130 45 145 Q 44 158 43 168 Z' fill='url(%23b)'/><path d='M 45 168 Q 47 150 48 135 Q 49 125 53 120 L 56 122 Q 56 135 54 148 Q 52 160 50 168 Z' fill='url(%23b)'/><path d='M 36 120 L 58 118 L 60 130 L 56 132 L 52 128 L 48 132 L 44 128 L 40 132 L 36 128 Z' fill='%238B4513' stroke='%235C2F0D' stroke-width='0.3'/><path d='M 40 120 Q 38 105 40 90 Q 42 78 50 75 Q 58 78 60 90 Q 62 105 60 120 Z' fill='url(%23b)'/><line x1='50' y1='88' x2='50' y2='105' stroke='%235C2F0D' stroke-width='0.4' opacity='0.5'/><path d='M 40 85 Q 30 78 22 65 Q 18 58 20 52 L 24 50 Q 28 58 32 65 Q 38 75 44 85 Z' fill='url(%23b)'/><path d='M 58 88 Q 65 92 72 100 Q 75 105 73 112 L 69 113 Q 65 107 62 102 Q 58 95 56 90 Z' fill='url(%23b)'/><ellipse cx='50' cy='68' rx='7' ry='8.5' fill='url(%23b)'/><path d='M 43 64 Q 50 58 57 64 Q 56 62 50 60 Q 44 62 43 64 Z' fill='%233D2817'/><path d='M 68 168 Q 70 150 72 135 Q 74 125 78 122 L 88 125 Q 90 135 88 148 Q 86 160 84 168 Z' fill='url(%23b)'/><path d='M 70 122 Q 68 108 72 95 Q 76 85 82 85 Q 86 90 86 100 Q 86 112 84 122 Z' fill='url(%23b)'/><path d='M 72 95 Q 66 92 62 90 L 60 88 Q 64 88 70 90 Q 73 92 75 95 Z' fill='url(%23b)'/><path d='M 84 95 Q 92 92 98 88 L 100 90 Q 95 96 88 100 Z' fill='url(%23b)'/><ellipse cx='78' cy='78' rx='6' ry='7.5' fill='url(%23b)'/><path d='M 73 74 Q 68 70 65 72 Q 62 75 64 80 Q 68 78 72 78 Q 75 74 73 74 Z' fill='%233D2817'/><path d='M 78 73 Q 76 68 80 65 Q 84 68 82 73 Z' fill='%233D2817'/><path d='M 28 55 Q 26 48 28 42 Q 30 38 34 38 Q 38 40 38 46 Q 38 52 36 56 Z' fill='url(%23b)'/><path d='M 28 45 Q 20 40 12 32 Q 8 28 10 25 L 13 24 Q 17 30 22 35 Q 27 40 30 44 Z' fill='url(%23b)'/><circle cx='11' cy='26' r='1.2' fill='url(%23b)'/><path d='M 30 55 Q 28 60 30 64 L 33 64 Q 33 60 33 56 Z' fill='url(%23b)'/><path d='M 35 55 Q 37 60 35 64 L 38 64 Q 38 60 37 56 Z' fill='url(%23b)'/><circle cx='33' cy='35' r='4.5' fill='url(%23b)'/><path d='M 30 33 Q 33 30 36 33 Q 36 31 33 30 Q 30 31 30 33 Z' fill='%233D2817'/><g transform='translate(8 22)'><path d='M 0 -3 L 0.7 -0.7 L 3 0 L 0.7 0.7 L 0 3 L -0.7 0.7 L -3 0 L -0.7 -0.7 Z' fill='%23FFD700'/></g></svg>");background-repeat:no-repeat;background-size:contain;background-position:center bottom;filter:drop-shadow(0 12px 25px rgba(0,0,0,.6));animation:1.8s cubic-bezier(.34,1.56,.64,1) both dkMonumentAppear,5s ease-in-out infinite dkMonumentGlow;pointer-events:none}@keyframes dkMonumentAppear{from{opacity:0;transform:translateY(40px) scale(.7)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dkMonumentGlow{0%,100%{filter:drop-shadow(0 12px 25px rgba(0,0,0,.6)) brightness(1)}50%{filter:drop-shadow(0 12px 32px rgba(255,180,80,.5)) brightness(1.12)}}.dakar-footer-scene .dk-skyline{position:relative}.dakar-footer-scene .dk-skyline::after{content:'';position:absolute;right:-150%;bottom:85px;width:250px;height:44px;z-index:7;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 250 44'><g transform='translate(8 4)'><rect x='-0.5' y='0' width='1.5' height='38' fill='%23888'/><circle cx='0.25' cy='-1' r='1.8' fill='%23FFD700'/><g transform='translate(1.5 3)'><rect width='22' height='14' fill='%2300853F'/><rect x='7.3' width='7.3' height='14' fill='%23FDEF42'/><rect x='14.7' width='7.3' height='14' fill='%23E31B23'/><path d='M 11 7 L 11.3 6 L 11.7 7 L 12.7 7 L 11.9 7.6 L 12.2 8.6 L 11 8 L 9.8 8.6 L 10.1 7.6 L 9.3 7 Z' fill='%2300853F'/></g></g><g transform='translate(48 6)'><rect x='-0.5' y='0' width='1.5' height='36' fill='%23888'/><circle cx='0.25' cy='-1' r='1.8' fill='%23FFD700'/><g transform='translate(1.5 3)'><rect width='22' height='13' fill='%2314B53A'/><rect x='7.3' width='7.3' height='13' fill='%23FCD116'/><rect x='14.7' width='7.3' height='13' fill='%23CE1126'/></g></g><g transform='translate(88 5)'><rect x='-0.5' y='0' width='1.5' height='37' fill='%23888'/><circle cx='0.25' cy='-1' r='1.8' fill='%23FFD700'/><g transform='translate(1.5 3)'><rect width='22' height='13' fill='%23CE1126'/><rect x='7.3' width='7.3' height='13' fill='%23FCD116'/><rect x='14.7' width='7.3' height='13' fill='%23009460'/></g></g><g transform='translate(128 6)'><rect x='-0.5' y='0' width='1.5' height='36' fill='%23888'/><circle cx='0.25' cy='-1' r='1.8' fill='%23FFD700'/><g transform='translate(1.5 3)'><rect width='22' height='13' fill='%23FF8200'/><rect x='7.3' width='7.3' height='13' fill='%23FFFFFF' stroke='%23ddd' stroke-width='0.2'/><rect x='14.7' width='7.3' height='13' fill='%23009E60'/></g></g><g transform='translate(168 5)'><rect x='-0.5' y='0' width='1.5' height='37' fill='%23888'/><circle cx='0.25' cy='-1' r='1.8' fill='%23FFD700'/><g transform='translate(1.5 3)'><rect width='22' height='4' fill='%23CE1126'/><rect y='4' width='22' height='0.8' fill='%23FFFFFF'/><rect y='4.8' width='22' height='3.5' fill='%230C1C8C'/><rect y='8.3' width='22' height='0.8' fill='%23FFFFFF'/><rect y='9.1' width='22' height='4' fill='%233A7728'/></g></g><g transform='translate(208 7)'><rect x='-0.5' y='0' width='1.5' height='35' fill='%23888'/><circle cx='0.25' cy='-1' r='1.8' fill='%23FFD700'/><g transform='translate(1.5 3)'><rect width='22' height='13' fill='%2300A95C'/><rect width='22' height='1.5' fill='%23D01C1F'/><rect y='11.5' width='22' height='1.5' fill='%23D01C1F'/><circle cx='11' cy='7' r='2.5' fill='%23FFD700'/><circle cx='12' cy='6.5' r='2' fill='%2300A95C'/><path d='M 6.5 6 L 6.7 6.5 L 7.2 6.5 L 6.8 6.8 L 7 7.3 L 6.5 7 L 6 7.3 L 6.2 6.8 L 5.8 6.5 L 6.3 6.5 Z' fill='%23FFD700'/><path d='M 15.5 6 L 15.7 6.5 L 16.2 6.5 L 15.8 6.8 L 16 7.3 L 15.5 7 L 15 7.3 L 15.2 6.8 L 14.8 6.5 L 15.3 6.5 Z' fill='%23FFD700'/></g></g></svg>");background-repeat:no-repeat;background-size:contain;background-position:bottom right;pointer-events:none;animation:1s ease-out 1.8s both dkFlagsAppear,3s ease-in-out infinite dkFlagsWave;transform-origin:bottom right;filter:drop-shadow(0 2px 4px rgba(0,0,0,.35))}@keyframes dkFlagsAppear{from{opacity:0;transform:translateY(20px) scale(.7)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dkFlagsWave{0%,100%{transform:skewY(0) scaleX(1)}25%{transform:skewY(-1.5deg) scaleX(.99)}75%{transform:skewY(1.5deg) scaleX(.99)}}.dakar-footer-scene .dk-grass::before{content:'';position:absolute;left:0;right:32%;bottom:0;height:45px;z-index:5;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 45' preserveAspectRatio='none'><!-- Tous les arbres ont leur base à y=45 (le sol) --><!-- Palmier 1 --><g transform='translate(45 45)'><rect x='-1.5' y='-22' width='3' height='22' fill='%235C3317'/><path d='M 0 -22 Q -11 -28 -16 -31' stroke='%233F7236' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -22 Q 11 -28 16 -31' stroke='%233F7236' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -22 Q -7 -30 -11 -36' stroke='%235A9050' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -22 Q 7 -30 11 -36' stroke='%235A9050' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -22 Q 0 -32 0 -39' stroke='%237BB36F' stroke-width='2.5' fill='none' stroke-linecap='round'/></g><!-- Acacia --><g transform='translate(100 45)'><rect x='-1.5' y='-18' width='3' height='18' fill='%235C3317'/><ellipse cx='0' cy='-22' rx='14' ry='6' fill='%233F7236'/><ellipse cx='-6' cy='-24' rx='8' ry='4' fill='%235A9050'/><ellipse cx='6' cy='-24' rx='8' ry='4' fill='%235A9050'/><ellipse cx='0' cy='-27' rx='10' ry='3' fill='%237BB36F'/></g><!-- Baobab --><g transform='translate(160 45)'><path d='M -6 0 L -4 -18 L -7 -22 L -2 -26 L 2 -26 L 7 -22 L 4 -18 L 6 0 Z' fill='%235C3317'/><ellipse cx='0' cy='-28' rx='18' ry='8' fill='%233F7236'/><ellipse cx='-10' cy='-30' rx='8' ry='5' fill='%235A9050'/><ellipse cx='10' cy='-30' rx='8' ry='5' fill='%235A9050'/></g><!-- Arbre touffu --><g transform='translate(220 45)'><rect x='-1.5' y='-14' width='3' height='14' fill='%235C3317'/><circle cx='0' cy='-18' r='9' fill='%233F7236'/><circle cx='-5' cy='-20' r='5' fill='%235A9050'/><circle cx='5' cy='-20' r='5' fill='%235A9050'/><circle cx='0' cy='-23' r='6' fill='%237BB36F'/></g><!-- Buisson --><g transform='translate(265 45)'><ellipse cx='0' cy='-5' rx='11' ry='5' fill='%233F7236'/><ellipse cx='-5' cy='-7' rx='6' ry='4' fill='%235A9050'/><ellipse cx='5' cy='-7' rx='6' ry='4' fill='%235A9050'/></g><!-- Palmier 2 --><g transform='translate(310 45)'><rect x='-1.5' y='-24' width='3' height='24' fill='%235C3317'/><path d='M 0 -24 Q -12 -30 -18 -33' stroke='%233F7236' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -24 Q 12 -30 18 -33' stroke='%233F7236' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -24 Q -8 -32 -13 -38' stroke='%235A9050' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -24 Q 8 -32 13 -38' stroke='%235A9050' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -24 Q 0 -34 0 -41' stroke='%237BB36F' stroke-width='2.5' fill='none' stroke-linecap='round'/></g><!-- Petit arbre --><g transform='translate(365 45)'><rect x='-1' y='-12' width='2' height='12' fill='%235C3317'/><circle cx='0' cy='-16' r='7' fill='%233F7236'/><circle cx='-3' cy='-18' r='4' fill='%235A9050'/><circle cx='3' cy='-18' r='4' fill='%235A9050'/></g><!-- Herbes hautes --><g transform='translate(405 45)'><path d='M -4 0 Q -5 -8 -3 -12' stroke='%235A9050' stroke-width='1.5' fill='none' stroke-linecap='round'/><path d='M 0 0 Q 0 -10 0 -14' stroke='%235A9050' stroke-width='1.5' fill='none' stroke-linecap='round'/><path d='M 4 0 Q 5 -8 3 -12' stroke='%235A9050' stroke-width='1.5' fill='none' stroke-linecap='round'/><path d='M -2 0 Q -3 -6 -2 -9' stroke='%237BB36F' stroke-width='1.5' fill='none' stroke-linecap='round'/><path d='M 2 0 Q 3 -6 2 -9' stroke='%237BB36F' stroke-width='1.5' fill='none' stroke-linecap='round'/></g><!-- Arbre rond --><g transform='translate(445 45)'><rect x='-1.5' y='-16' width='3' height='16' fill='%235C3317'/><circle cx='0' cy='-21' r='10' fill='%233F7236'/><circle cx='-5' cy='-23' r='6' fill='%235A9050'/><circle cx='5' cy='-23' r='6' fill='%235A9050'/><circle cx='0' cy='-26' r='7' fill='%237BB36F'/></g><!-- Buisson fleuri --><g transform='translate(495 45)'><ellipse cx='0' cy='-6' rx='12' ry='6' fill='%233F7236'/><ellipse cx='-6' cy='-8' rx='6' ry='4' fill='%235A9050'/><ellipse cx='6' cy='-8' rx='6' ry='4' fill='%235A9050'/><circle cx='-4' cy='-9' r='1.3' fill='%23FF6B9D'/><circle cx='3' cy='-10' r='1.3' fill='%23FFD700'/><circle cx='7' cy='-7' r='1.3' fill='%23FF6B9D'/></g><!-- Palmier 3 (à droite) --><g transform='translate(555 45)'><rect x='-1.5' y='-20' width='3' height='20' fill='%235C3317'/><path d='M 0 -20 Q -10 -26 -14 -29' stroke='%233F7236' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -20 Q 10 -26 14 -29' stroke='%233F7236' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -20 Q -6 -28 -10 -34' stroke='%235A9050' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -20 Q 6 -28 10 -34' stroke='%235A9050' stroke-width='2.5' fill='none' stroke-linecap='round'/><path d='M 0 -20 Q 0 -30 0 -37' stroke='%237BB36F' stroke-width='2.5' fill='none' stroke-linecap='round'/></g></svg>");background-repeat:no-repeat;background-size:100% 100%;background-position:bottom center;filter:drop-shadow(1px 3px 3px rgba(0,0,0,.25));animation:6s ease-in-out infinite dkTreesSway;transform-origin:bottom center}@keyframes dkTreesSway{0%,100%{transform:skewX(0)}50%{transform:skewX(-.4deg)}}.dakar-footer-scene .dk-grass::after{content:'';position:absolute;left:0;right:0;bottom:0;height:14px;z-index:6;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 14' preserveAspectRatio='none'><g fill='none' stroke-linecap='round'><!-- Touffes herbes basses + petites fleurs --><path d='M 30 14 L 28 8' stroke='%233F7236' stroke-width='1.2'/><path d='M 32 14 L 32 6' stroke='%233F7236' stroke-width='1.2'/><path d='M 34 14 L 36 8' stroke='%235A9050' stroke-width='1.2'/><circle cx='55' cy='9' r='1.3' fill='%23FFD700'/><path d='M 55 14 L 55 11' stroke='%233F7236' stroke-width='1'/><path d='M 75 14 L 73 9' stroke='%233F7236' stroke-width='1.2'/><path d='M 77 14 L 77 7' stroke='%235A9050' stroke-width='1.2'/><path d='M 79 14 L 81 9' stroke='%237BB36F' stroke-width='1.2'/><ellipse cx='110' cy='11' rx='9' ry='3' fill='%235A9050' stroke='none'/><ellipse cx='110' cy='9' rx='5' ry='2' fill='%237BB36F' stroke='none'/><path d='M 145 14 L 143 9' stroke='%233F7236' stroke-width='1.2'/><path d='M 147 14 L 147 7' stroke='%235A9050' stroke-width='1.2'/><circle cx='170' cy='9' r='1.5' fill='%23FF6B9D'/><path d='M 170 14 L 170 11' stroke='%233F7236' stroke-width='1'/><path d='M 195 14 L 193 9' stroke='%233F7236' stroke-width='1.2'/><path d='M 197 14 L 197 7' stroke='%235A9050' stroke-width='1.2'/><ellipse cx='230' cy='11' rx='10' ry='3' fill='%235A9050' stroke='none'/><ellipse cx='230' cy='9' rx='6' ry='2' fill='%237BB36F' stroke='none'/><circle cx='228' cy='8' r='1' fill='%23FFD700'/><circle cx='233' cy='9' r='1' fill='%23FF6B9D'/><path d='M 265 14 L 263 9' stroke='%233F7236' stroke-width='1.2'/><path d='M 267 14 L 267 7' stroke='%235A9050' stroke-width='1.2'/><path d='M 295 14 L 293 10' stroke='%235A9050' stroke-width='1.2'/><path d='M 297 14 L 297 8' stroke='%233F7236' stroke-width='1.2'/><circle cx='325' cy='9' r='1.5' fill='%23FFD700'/><path d='M 325 14 L 325 11' stroke='%233F7236' stroke-width='1'/><ellipse cx='355' cy='11' rx='9' ry='3' fill='%235A9050' stroke='none'/><ellipse cx='355' cy='9' rx='5' ry='2' fill='%237BB36F' stroke='none'/><path d='M 390 14 L 388 9' stroke='%233F7236' stroke-width='1.2'/><path d='M 392 14 L 392 7' stroke='%235A9050' stroke-width='1.2'/><path d='M 420 14 L 418 9' stroke='%235A9050' stroke-width='1.2'/><path d='M 422 14 L 422 7' stroke='%233F7236' stroke-width='1.2'/><circle cx='450' cy='9' r='1.5' fill='%23FF6B9D'/><path d='M 450 14 L 450 11' stroke='%233F7236' stroke-width='1'/><ellipse cx='480' cy='11' rx='10' ry='3' fill='%235A9050' stroke='none'/><ellipse cx='480' cy='9' rx='6' ry='2' fill='%237BB36F' stroke='none'/><circle cx='478' cy='8' r='1' fill='%23FFD700'/><path d='M 515 14 L 513 9' stroke='%233F7236' stroke-width='1.2'/><path d='M 517 14 L 517 7' stroke='%235A9050' stroke-width='1.2'/><path d='M 545 14 L 543 10' stroke='%235A9050' stroke-width='1.2'/><path d='M 547 14 L 547 8' stroke='%233F7236' stroke-width='1.2'/><circle cx='580' cy='9' r='1.5' fill='%23FF8200'/><path d='M 580 14 L 580 11' stroke='%233F7236' stroke-width='1'/><ellipse cx='615' cy='11' rx='9' ry='3' fill='%235A9050' stroke='none'/><ellipse cx='615' cy='9' rx='5' ry='2' fill='%237BB36F' stroke='none'/><path d='M 650 14 L 648 9' stroke='%233F7236' stroke-width='1.2'/><path d='M 652 14 L 652 7' stroke='%235A9050' stroke-width='1.2'/><ellipse cx='685' cy='11' rx='11' ry='3' fill='%235A9050' stroke='none'/><ellipse cx='685' cy='9' rx='7' ry='2' fill='%237BB36F' stroke='none'/><circle cx='683' cy='8' r='1' fill='%23FFD700'/><circle cx='688' cy='9' r='1' fill='%23FF6B9D'/><path d='M 720 14 L 718 9' stroke='%233F7236' stroke-width='1.2'/><path d='M 722 14 L 722 7' stroke='%235A9050' stroke-width='1.2'/><path d='M 760 14 L 758 10' stroke='%235A9050' stroke-width='1.2'/><path d='M 762 14 L 762 8' stroke='%233F7236' stroke-width='1.2'/></g></svg>");background-repeat:no-repeat;background-size:100% 100%;background-position:bottom center}.dakar-footer-scene .dk-hill::after{content:'';position:absolute;right:-210%;bottom:0;width:200px;height:100px;background:radial-gradient(ellipse 25px 70px at 25% 100%,rgba(255,230,150,.2) 0,transparent 70%),radial-gradient(ellipse 25px 70px at 50% 100%,rgba(255,230,150,.22) 0,transparent 70%),radial-gradient(ellipse 25px 70px at 75% 100%,rgba(255,230,150,.2) 0,transparent 70%);pointer-events:none;z-index:5;animation:3s ease-in-out infinite dkLightFlicker;filter:blur(2px)}@keyframes dkLightFlicker{0%,100%{opacity:.7}50%{opacity:1}}.dk-hill{position:absolute;left:0;bottom:85px;width:28%;height:75px;z-index:3;background:linear-gradient(180deg,#a88358 0,#7a5530 50%,#523818 100%);border-radius:50% 70% 0 0/100% 100% 0 0;box-shadow:inset 0 -10px 20px rgba(0,0,0,.3)}.dk-hill-right{position:absolute;right:0;bottom:85px;width:30%;height:85px;z-index:3;background:linear-gradient(180deg,#b8956a 0,#8b6340 50%,#5e3d22 100%);border-radius:60% 40% 0 0/100% 100% 0 0;box-shadow:inset 0 -10px 20px rgba(0,0,0,.3)}@keyframes mGlow{0%,100%{filter:drop-shadow(0 8px 20px rgba(0, 0, 0, .5)) brightness(1)}50%{filter:drop-shadow(0 8px 24px rgba(0, 0, 0, .55)) brightness(1.08)}}@keyframes mAppear{from{opacity:0;transform:translateY(30px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.dk-skyline{position:absolute;bottom:85px;left:36%;right:0;height:60px;z-index:3;display:flex;align-items:flex-end;gap:1px}.dk-bldg{background:linear-gradient(180deg,#3a2a1c,#1f1610);position:relative;flex-shrink:0;box-shadow:inset -2px 0 0 rgba(0,0,0,.4)}.dk-bldg::before{content:'';position:absolute;inset:3px 2px auto 2px;height:60%;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(255,210,120,.45) 3px,rgba(255,210,120,.45) 5px),repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(255,210,120,.45) 2px,rgba(255,210,120,.45) 4px);opacity:.65}.dk-minaret{width:6px;background:#1f1610;position:relative;flex-shrink:0}.dk-minaret::before{content:'';position:absolute;top:-10px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:12px solid #1f1610}.dk-minaret::after{content:'';position:absolute;top:-15px;left:50%;transform:translateX(-50%);width:2px;height:7px;background:#1f1610}.dk-baobab{position:absolute;z-index:4;bottom:88px;animation:7s ease-in-out infinite bSway;transform-origin:bottom center;filter:drop-shadow(2px 4px 6px rgba(0, 0, 0, .25))}.dk-baobab.b1{left:31%}.dk-baobab.b2{right:14%;animation-delay:1.8s;--bs:0.85}.dk-baobab.b3{left:48%;animation-delay:1.2s;--bs:0.7}@keyframes bSway{0%,100%{transform:rotate(-1.5deg) scale(var(--bs,1))}50%{transform:rotate(1.5deg) scale(var(--bs,1))}}.dk-grass{position:absolute;left:0;right:0;bottom:70px;height:20px;z-index:4;background:linear-gradient(180deg,#7bb36f 0,#5a9050 50%,#3f7236 100%)}.dk-rail-zone{position:absolute;left:0;right:0;bottom:42px;height:28px;z-index:5;background:linear-gradient(180deg,#8a7560 0,#6a5540 50%,#4a3520 100%);box-shadow:inset 0 2px 4px rgba(0,0,0,.3)}.dk-rail-zone::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle 1px at 5% 30%,#9a8570 50%,transparent 50%),radial-gradient(circle 1px at 25% 40%,#aa9580 50%,transparent 50%),radial-gradient(circle 1px at 45% 25%,#9a8570 50%,transparent 50%),radial-gradient(circle 1px at 65% 35%,#aa9580 50%,transparent 50%),radial-gradient(circle 1px at 85% 30%,#9a8570 50%,transparent 50%)}.dk-rail-ties{position:absolute;left:0;right:0;bottom:46px;height:20px;z-index:6;background-image:repeating-linear-gradient(90deg,#3a2510 0,#3a2510 8px,transparent 8px,transparent 28px);opacity:.85}.dk-rail-bot,.dk-rail-top{position:absolute;left:0;right:0;height:2.5px;z-index:7;background:linear-gradient(180deg,#c8c8c8 0,#9a9a9a 50%,#5a5a5a 100%);box-shadow:0 1px 2px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.4)}.dk-rail-top{bottom:64px}.dk-rail-bot{bottom:48px}.dk-road{position:absolute;left:0;right:0;bottom:0;height:40px;z-index:5;background:linear-gradient(180deg,#3d4448 0,#2c3236 100%);box-shadow:inset 0 3px 8px rgba(0,0,0,.4)}.dk-road-top-line{position:absolute;bottom:38px;left:0;right:0;height:2px;background:#ffd600;z-index:6;box-shadow:0 0 8px rgba(255,214,0,.4)}.dk-lane-line{position:absolute;bottom:19px;left:0;right:0;height:2px;z-index:6;background:repeating-linear-gradient(to right,#fff 0,#fff 22px,transparent 22px,transparent 50px)}.dk-road-bottom-line{position:absolute;bottom:0;left:0;right:0;height:2px;background:#fff;z-index:6}.dk-vehicle{position:absolute;white-space:nowrap;z-index:8;display:none}.dk-vehicle.show{display:block}.v-right{animation:linear infinite driveR}.v-left{animation:linear infinite driveL}@keyframes driveR{0%{left:-260px}100%{left:calc(100% + 80px)}}@keyframes driveL{0%{left:calc(100% + 80px)}100%{left:-260px}}.dk-veh-label{position:absolute;top:-18px;left:50%;transform:translateX(-50%);font-size:8.5px;font-weight:900;padding:2px 8px;border-radius:var(--r-pill);box-shadow:0 2px 4px rgba(0,0,0,.25);white-space:nowrap;letter-spacing:.3px}.lbl-ddd{background:var(--g);color:var(--or2)}.lbl-aftu{background:var(--blue);color:#fff}.lbl-brt{background:var(--vr);color:#fff}.lbl-ter{background:linear-gradient(135deg,#0d47a1,#1976d2);color:#fdef42}.lbl-sdd{background:linear-gradient(135deg,#7b1fa2,#9c27b0);color:#fff}.dk-bus-body{width:100px;height:32px;position:relative;border-radius:4px 10px 3px 3px;box-shadow:0 4px 8px rgba(0,0,0,.4)}.v-left .dk-bus-body{border-radius:10px 4px 3px 3px}.body-ddd{background:linear-gradient(180deg,#ffe74a 0,#ffd600 50%,#e8b300 100%);border:1px solid #b8900a}.body-aftu{background:linear-gradient(180deg,#fff 0,#f0f2f4 50%,#d8dcdf 100%);border:1px solid #90a4ae}.body-brt{background:linear-gradient(180deg,#f44 0,#e31b23 50%,#a80c17 100%);border:1px solid #7a0810}.dk-bus-stripe{position:absolute;bottom:5px;left:3px;right:3px;height:4px;border-radius:2px}.s-ddd{background:var(--g)}.s-aftu{background:var(--blue)}.s-brt{background:#fff}.dk-bus-win{position:absolute;top:5px;width:14px;height:14px;background:linear-gradient(180deg,#9bd8f5,#4fc3f7 50%,#0288d1);border-radius:2px;border:1.5px solid rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;font-size:8px}.v-right .dk-bus-win:nth-child(2){left:8px}.v-right .dk-bus-win:nth-child(3){left:26px}.v-right .dk-bus-win:nth-child(4){left:44px}.v-right .dk-bus-win:nth-child(5){left:62px}.v-left .dk-bus-win:nth-child(2){right:8px;left:auto}.v-left .dk-bus-win:nth-child(3){right:26px;left:auto}.v-left .dk-bus-win:nth-child(4){right:44px;left:auto}.v-left .dk-bus-win:nth-child(5){right:62px;left:auto}.dk-headlight-r{position:absolute;right:-1px;top:11px;width:5px;height:8px;background:#fffac0;border-radius:2px;box-shadow:0 0 8px 3px rgba(255,250,160,.6);animation:1.6s ease-in-out infinite hlG}.dk-headlight-l{position:absolute;left:-1px;top:11px;width:5px;height:8px;background:#fffac0;border-radius:2px;box-shadow:0 0 8px 3px rgba(255,250,160,.6);animation:1.6s ease-in-out infinite hlG}@keyframes hlG{0%,100%{opacity:1}50%{opacity:.7}}.dk-wheel{position:absolute;bottom:-5px;width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#666,#1a1a1a);border:2px solid #555;left:8px;animation:.5s linear infinite wheelSpin}.dk-wheel.wl2{left:22px}.dk-wheel.wr1{left:auto;right:22px}.dk-wheel.wr2{left:auto;right:8px}@keyframes wheelSpin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.dk-ter{display:flex;align-items:flex-end;gap:2px;position:relative}.dk-ter-loco{width:90px;height:34px;position:relative;background:linear-gradient(180deg,#1976d2 0,#1255b0 35%,#0d47a1 100%);border:1px solid #0a3f8c;border-radius:4px 22px 3px 3px;box-shadow:0 5px 10px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.2)}.dk-ter-loco::before{content:'';position:absolute;left:-3px;top:50%;transform:translateY(-50%);width:8px;height:24px;background:linear-gradient(135deg,#fdef42 0,#ffc820 100%);border-radius:6px 0 0 6px;border:1px solid #b8900a;box-shadow:-6px 0 14px 2px rgba(255,250,150,.55)}.dk-ter-stripe{position:absolute;left:14px;right:8px;top:14px;height:5px;border-radius:2px;background:linear-gradient(90deg,var(--vt) 0,var(--vt) 33%,var(--vj) 33%,var(--vj) 66%,var(--vr) 66%,var(--vr) 100%)}.dk-ter-windshield{position:absolute;top:4px;left:14px;width:18px;height:7px;background:linear-gradient(180deg,#b8e8f5,#5ab8e0);border:1px solid rgba(0,0,0,.4);border-radius:2px 6px 1px 1px}.dk-ter-pantograph{position:absolute;top:-10px;right:30px;width:22px;height:10px;z-index:2}.dk-ter-pantograph svg{position:absolute;top:0;left:0;display:block}.dk-ter-wagon{width:80px;height:30px;position:relative;background:linear-gradient(180deg,#f5f5f5 0,#d8dcdf 60%,#a8aeb2 100%);border:1px solid #6a7075;border-radius:4px;box-shadow:0 3px 7px rgba(0,0,0,.4)}.dk-ter-wagon-stripe{position:absolute;left:3px;right:3px;top:13px;height:5px;background:linear-gradient(90deg,#1255b0,#0d47a1)}.dk-ter-wagon-win{position:absolute;top:4px;width:11px;height:7px;background:linear-gradient(180deg,#b8e8f5,#5ab8e0);border-radius:1px;border:1px solid rgba(0,0,0,.4)}.dk-ter-wagon .dk-ter-wagon-win:first-of-type{left:5px}.dk-ter-wagon .dk-ter-wagon-win:nth-of-type(2){left:20px}.dk-ter-wagon .dk-ter-wagon-win:nth-of-type(3){left:50px}.dk-ter-wagon .dk-ter-wagon-win:nth-of-type(4){left:65px}.dk-ter-wagon-door{position:absolute;top:4px;left:36px;width:8px;height:20px;background:linear-gradient(180deg,#6a7075,#4a5055);border:1px solid #2a3035;border-radius:1px}.dk-ter-connector{width:4px;height:6px;background:#444;align-self:center;margin-bottom:11px;flex-shrink:0;border-radius:1px}.dk-ter-bogie{position:absolute;bottom:-7px;width:30px;height:11px;background:#222;border-radius:3px;display:flex;justify-content:space-around;align-items:center;padding:0 2px}.dk-ter-bogie::after,.dk-ter-bogie::before{content:'';width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#888,#1a1a1a);border:1px solid #444;animation:.4s linear infinite wheelSpin}.dk-ter-loco .dk-ter-bogie.b-front{left:12px}.dk-ter-loco .dk-ter-bogie.b-back{right:8px}.dk-ter-wagon .dk-ter-bogie.b-front{left:6px}.dk-ter-wagon .dk-ter-bogie.b-back{right:6px}.dk-sdd-wrap{display:flex;align-items:center;position:relative}.dk-sdd-bus{width:160px;height:46px;position:relative;background:linear-gradient(180deg,#ba68c8 0,#9c27b0 40%,#7b1fa2 100%);border:1px solid #5a1480;border-radius:8px 16px 4px 4px;box-shadow:0 5px 12px rgba(0,0,0,.45)}.dk-sdd-front{position:absolute;right:-3px;top:8px;width:14px;height:30px;background:linear-gradient(180deg,#ffc820,#e8a800);border-radius:0 10px 4px 0;border:1px solid #b8900a}.dk-sdd-stripe{position:absolute;left:5px;right:18px;top:18px;height:7px;background:linear-gradient(90deg,#ffd600,#ffc820,#ffd600);border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:7px;font-weight:900;color:#5a1480;letter-spacing:1px;overflow:hidden}.dk-sdd-stripe::before{content:'SÉNÉGAL DEM DIKK'}.dk-sdd-win{position:absolute;top:5px;width:16px;height:10px;background:linear-gradient(180deg,#9bd8f5,#0288d1);border-radius:2px;border:1.5px solid rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;font-size:7px}.dk-sdd-win:nth-child(2){left:8px}.dk-sdd-win:nth-child(3){left:28px}.dk-sdd-win:nth-child(4){left:48px}.dk-sdd-win:nth-child(5){left:68px}.dk-sdd-win:nth-child(6){left:88px}.dk-sdd-win:nth-child(7){left:108px}.dk-sdd-win:nth-child(8){left:128px}.dk-sdd-wheel{position:absolute;bottom:-5px;width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#666,#1a1a1a);border:2px solid #555;animation:.55s linear infinite wheelSpin}.dk-sdd-wheel.w1{left:14px}.dk-sdd-wheel.w2{left:38px}.dk-sdd-wheel.w3{left:auto;right:38px}.dk-sdd-wheel.w4{left:auto;right:14px}.dk-sdd-panels{position:absolute;left:50%;transform:translateX(-50%);top:-46px;display:flex;gap:4px;align-items:center}.dk-city-panel{font-size:8.5px;font-weight:900;padding:3px 7px;border-radius:6px;background:#fff;color:#5a1480;border:1.5px solid #7b1fa2;box-shadow:0 2px 5px rgba(0,0,0,.2);position:relative;animation:1.2s ease-in-out infinite pBounce;letter-spacing:.2px}.dk-city-panel::after{content:'';position:absolute;bottom:-3px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #7b1fa2}.dk-city-panel.p2{animation-delay:.2s}.dk-city-panel.p3{animation-delay:.4s}.dk-city-panel.p4{animation-delay:.6s;background:#ffd600;color:#5a1480}@keyframes pBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}.dk-filter-badge{position:absolute;top:12px;left:14px;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);padding:6px 13px;border-radius:var(--r-pill);font-size:11.5px;font-weight:800;color:var(--g);box-shadow:var(--sh-2);display:flex;align-items:center;gap:7px;animation:.4s cubic-bezier(.34,1.56,.64,1) both badgePop}.dk-filter-badge .badge-dot{width:8px;height:8px;border-radius:50%;animation:1.5s infinite pulse}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}@keyframes badgePop{from{opacity:0;transform:translateY(-8px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}#sec-assistant{display:flex;flex-direction:column;width:min(880px,100%)!important;margin:0 auto!important;height:min(600px,calc(100vh - 160px))!important;background:var(--card);border-radius:var(--r-lg);border:1px solid var(--bd3);box-shadow:var(--sh-2);overflow:hidden}#sec-assistant #cmsg{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;padding:18px!important;display:flex;flex-direction:column;gap:14px;background-color:var(--bg3)!important;background-image:radial-gradient(circle at 100% 0,rgba(0,133,63,.09) 0,transparent 50%),radial-gradient(circle at 0 100%,rgba(212,150,10,.09) 0,transparent 50%),linear-gradient(rgba(255,255,255,.74),rgba(255,255,255,.74)),url('icons/motif-africain.svg')!important;background-size:auto,auto,auto,cover!important;background-position:center,center,center,center!important;background-repeat:no-repeat,no-repeat,no-repeat,no-repeat!important;background-attachment:local,local,local,local!important}#sec-assistant .asst-bar-container,#sec-assistant .asst-chips{flex:0 0 auto!important;background:#fff;border-top:1px solid var(--bd3)}#sec-assistant .asst-bar-container{padding:10px 14px!important}#sec-assistant .asst-chips{padding:8px 14px 10px!important;border-top:0}#sec-assistant .bub{background:rgba(255,255,255,.95)!important;box-shadow:0 4px 14px -6px rgba(14,61,42,.28)!important}#sec-assistant .av,#sec-assistant .av.xarit-avatar-tech{width:38px!important;height:38px!important;flex:0 0 38px!important;border-radius:50%!important;background:linear-gradient(135deg,#0e3d2a,#1a5c3e)!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:10px!important;font-weight:800!important;letter-spacing:-.2px!important;text-shadow:none!important;border:0!important;box-shadow:0 3px 10px rgba(14,61,42,.28)!important;overflow:hidden!important}#sec-assistant .av span{line-height:1!important}.traf-hero{background:radial-gradient(circle at 100% 0,rgba(227,27,35,.18) 0,transparent 50%),linear-gradient(135deg,#1a0a0a 0,#3a1010 40%,#5a1818 80%,#7a2020 100%);border-radius:var(--r-xl);padding:26px 28px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;box-shadow:0 12px 40px rgba(60,10,10,.35)}.traf-hero::before{content:'🚦';font-size:140px;position:absolute;right:-10px;bottom:-30px;opacity:.08;pointer-events:none;transform:rotate(-8deg)}.traf-hero-content{position:relative;z-index:1}.traf-hero-title{font-size:24px;font-weight:900;color:#fff;line-height:1.15;letter-spacing:-.5px}.traf-hero-sub{font-size:13px;color:rgba(255,255,255,.6);margin-top:6px;line-height:1.5}.traf-hero-badge{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px);padding:8px 16px;border-radius:var(--r-pill);font-size:12px;font-weight:800;color:#fff;letter-spacing:.5px;text-transform:uppercase;border:1px solid rgba(255,255,255,.15);flex-shrink:0;position:relative;z-index:1}.traf-signal-card{border-top:3px solid var(--vr)!important;width:50%;margin-left:auto;margin-right:auto}.traf-vocal-bar{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#5a1818,#7a2020,#9a2828);padding:16px 20px;border-radius:var(--r-md);margin-bottom:20px;cursor:pointer;transition:all var(--tr-base);box-shadow:0 4px 14px rgba(60,10,10,.35);border:1px solid rgba(255,255,255,.08)}.traf-vocal-bar:hover{filter:brightness(1.15);transform:translateY(-2px);box-shadow:0 8px 24px rgba(60,10,10,.45)}.traf-vocal-icon{font-size:28px;flex-shrink:0}.traf-vocal-text{flex:1;display:flex;flex-direction:column;gap:2px}.traf-vocal-text strong{color:#fff;font-size:14.5px;font-weight:800;letter-spacing:-.2px}.traf-vocal-text span{color:rgba(255,255,255,.6);font-size:12px;font-weight:500}.traf-vocal-arrow{color:rgba(255,255,255,.4);font-size:18px;font-weight:700;flex-shrink:0}.traf-field-group{margin-bottom:10px;width:100%}.traf-field-group .il{display:block;margin-bottom:5px;font-weight:600;font-size:12.5px;color:var(--t1)}.traf-input-wrap{position:relative;width:100%}.traf-signal-card input:not([type=button]):not([type=submit]),.traf-signal-card input[type=search],.traf-signal-card input[type=text]{width:100%;padding:11px 14px;border:1.5px solid var(--bd);border-radius:var(--r-sm);font-size:14px;font-family:inherit;font-weight:500;outline:0;background:#fff;color:var(--t1);transition:all var(--tr-fast);box-sizing:border-box;display:block}.traf-signal-card input::placeholder{color:var(--t4);font-weight:400}.traf-signal-card input:hover{border-color:var(--bd2)}.traf-signal-card input:focus{border-color:var(--vr);box-shadow:0 0 0 3px rgba(227,27,35,.08)}.traf-signal-card select{width:100%;padding:11px 36px 11px 14px;border:1.5px solid var(--bd);border-radius:var(--r-sm);font-size:14px;font-family:inherit;font-weight:500;outline:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E") right 14px center no-repeat #fff;color:var(--t1);transition:all var(--tr-fast);box-sizing:border-box;display:block;appearance:none;-webkit-appearance:none;cursor:pointer}.traf-signal-card select:hover{border-color:var(--bd2)}.traf-signal-card select:focus{border-color:var(--vr);box-shadow:0 0 0 3px rgba(227,27,35,.08)}.traf-signal-card .g2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.traf-signal-card .g2 .traf-field-group{margin-bottom:0}.traf-signal-card .loc-drop{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--bd2);border-radius:var(--r-sm);box-shadow:var(--sh-4);z-index:9999;max-height:280px;overflow-y:auto}.traf-signal-card .loc-drop.open{display:block;animation:.22s cubic-bezier(.4,0,.2,1) rdIn}.traf-signal-card .btn{width:100%;margin-top:4px}.trafic-scene-bottom{margin-top:24px;border-radius:var(--r-lg)}.zcard{background:#fff;border-radius:var(--r-md);border:1px solid var(--bd3);padding:16px 18px;box-shadow:var(--sh-1);transition:all var(--tr-base);position:relative;overflow:hidden}.zcard::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%}.zcard.fluide::before{background:var(--vt)}.zcard.moyen::before{background:#ffd600}.zcard.dense::before{background:#ff8c00}.zcard.bloque::before{background:var(--vr)}.zcard:hover{box-shadow:var(--sh-3);transform:translateY(-3px)}.ztop{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;gap:8px}.zn{font-weight:800;font-size:14.5px;color:var(--t1);letter-spacing:-.1px}.zbadge{font-size:10.5px;font-weight:700;padding:4px 12px;border-radius:var(--r-pill);white-space:nowrap;flex-shrink:0}.zbadge.fluide{background:rgba(0,133,63,.13);color:var(--vt)}.zbadge.moyen{background:rgba(255,214,0,.28);color:#7a6500}.zbadge.dense{background:rgba(255,140,0,.18);color:#8b4500}.zbadge.bloque{background:var(--vr);color:#fff}.zax{font-size:12px;color:var(--t2);margin-bottom:6px;line-height:1.4}.zt{font-size:11px;color:var(--t3);font-weight:500}.dn-donate-card,.dn-zakat-card{background:#fff;border-radius:var(--radius);padding:24px;margin-bottom:24px;box-shadow:0 4px 24px rgba(0,0,0,.06);border:1px solid #f1f5f9;font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;max-width:100%;box-sizing:border-box}.dn-section-title{font-size:1.35rem;font-weight:700;color:#1e293b;margin-bottom:12px;display:flex;align-items:center;gap:10px}.dn-recite-sub{color:#64748b;font-size:.95rem;line-height:1.55;margin-bottom:28px}.dn-zakat-label{display:block;font-size:.92rem;font-weight:600;color:#475569;margin:20px 0 8px}.dn-rec-input{width:100%;padding:16px 18px;border:1.5px solid #cbd5e1;border-radius:12px;background:#f8fafc;font-size:1.05rem;color:#0f172a;transition:.25s;box-sizing:border-box}.dn-rec-input:focus{outline:0;border-color:#3b82f6;box-shadow:0 0 0 4px rgba(59,130,246,.15);background:#fff}.dn-zakat-row{display:flex;gap:12px;align-items:center}.dn-donate-row{background:#f8fafc;padding:14px 16px;border-radius:12px;margin-bottom:12px;border:1px solid #e2e8f0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.btn{padding:16px 24px;border-radius:12px;font-weight:600;cursor:pointer;border:none;transition:.2s;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:1.05rem;min-height:52px}.btn.bfu{width:100%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;margin-top:20px;box-shadow:0 4px 14px rgba(37,99,235,.25)}.btn.bp{background:linear-gradient(135deg,#10b981,#059669);color:#fff;width:100%;margin-top:16px}.btn.bsm{padding:12px 16px;background:#e2e8f0;color:#475569;font-size:.95rem}.dn-zk-check{display:flex;align-items:center;gap:12px;font-size:.97rem;color:#334155;margin-top:20px;cursor:pointer;background:#f8fafc;padding:14px 16px;border-radius:12px;border:1px solid #e2e8f0}.dn-zk-settings{margin-top:28px;padding:20px;background:#f1f5f9;border-radius:12px;border:1px solid #e2e8f0}.dn-zk-detail{background:#f8fafc;border-radius:14px;padding:20px;margin-top:24px;border:1px solid #e2e8f0}.dn-zk-line{display:flex;justify-content:space-between;padding:8px 0;font-size:1rem;color:#475569;flex-wrap:wrap;gap:6px}.dn-zk-total{border-top:2px dashed #cbd5e1;margin-top:12px;padding-top:16px;font-weight:700;font-size:1.15rem}.dn-zakat-ok,.dn-zakat-warn{border-radius:14px;padding:20px;margin-top:20px}@media (max-width:480px){.dn-donate-card,.dn-zakat-card{padding:18px 16px;margin-bottom:20px;border-radius:14px}.dn-section-title{font-size:1.25rem}.dn-rec-input{padding:15px 16px;font-size:1.1rem}.btn{padding:15px 20px;font-size:1.05rem;min-height:54px}.dn-zakat-row{gap:10px}.dn-zk-line{font-size:.97rem}.dn-zakat-ok{padding:18px}.dn-zk-detail{padding:16px}}input[type=number]{font-size:16px!important}.sfeed{border-radius:var(--r-md);overflow:hidden}.srow{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--bd3);background:#fff;font-size:13px;transition:background var(--tr-fast)}.srow:hover{background:var(--bg3)}.srow:last-child{border-bottom:none}@media (max-width:768px){.traf-signal-card{width:99%}.traf-hero{flex-direction:column;text-align:center;gap:16px;padding:20px 18px}.traf-hero-badge{align-self:center}.traf-signal-card .g2{grid-template-columns:1fr}}@media (max-width:560px){.traf-signal-card{width:100%}.traf-hero-title{font-size:20px}}.car-scene{position:relative;height:160px;background:linear-gradient(to bottom,#4e96c8 0,#87ceeb 40%,#b8e4f2 50%,#d4a060 50%,#c08040 70%,#a06030 100%);border-radius:var(--r-lg);overflow:hidden;margin-bottom:18px;border:1px solid var(--bd3);box-shadow:var(--sh-3)}.car-sun{position:absolute;width:54px;height:54px;border-radius:50%;background:radial-gradient(#ffe76a,#ffb347);top:12px;right:38px;box-shadow:0 0 42px rgba(255,200,90,.7)}.car-palm{position:absolute;bottom:25px;font-size:44px;animation:5s ease-in-out infinite sway}.car-palm-l{left:4%;animation-delay:.8s}.car-palm-r{right:4%;animation-delay:1.5s}@keyframes sway{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.car-road{position:absolute;left:0;right:0;bottom:0;height:42px;background:linear-gradient(to bottom,#3d3d3d,#222)}.car-road-line{position:absolute;bottom:18px;left:0;right:0;height:3px;background:repeating-linear-gradient(to right,#fff 0,#fff 22px,transparent 22px,transparent 46px);animation:.9s linear infinite rl}@keyframes rl{from{background-position:0 0}to{background-position:-48px 0}}.car4-wrap{position:absolute;bottom:24px;animation:9s linear infinite c4drive}@keyframes c4drive{0%{left:-160px}100%{left:110%}}.car4{width:130px;height:62px;position:relative}.c4-body{position:absolute;bottom:0;left:6px;right:6px;height:40px;background:linear-gradient(to bottom,#1e5c1e,#124a12);border-radius:5px 7px 5px 5px;box-shadow:2px 4px 10px rgba(0,0,0,.35)}.c4-cabin{position:absolute;bottom:26px;left:24px;right:16px;height:28px;background:linear-gradient(to bottom,#154a15,#0e3a0e);border-radius:5px 7px 3px 3px}.c4-rack{position:absolute;bottom:54px;left:28px;right:20px;height:4px;background:#4a3015;border-radius:2px}.c4-win{position:absolute;background:linear-gradient(135deg,#a8d8f0,#87ceeb);border-radius:3px;border:2px solid rgba(0,0,0,.2);display:flex;align-items:center;justify-content:center;font-size:10px}.c4-wf{bottom:30px;left:28px;width:34px;height:18px}.c4-wr{bottom:30px;right:18px;width:26px;height:18px}.c4-hl{position:absolute;right:1px;bottom:20px;width:7px;height:10px;background:#fffac0;border-radius:2px;box-shadow:4px 0 14px 4px rgba(255,250,150,.75);animation:1.5s ease-in-out infinite glow}.c4-tl{position:absolute;left:0;bottom:20px;width:5px;height:9px;background:#f44;border-radius:2px}@keyframes glow{0%,100%{opacity:1}50%{opacity:.6}}.c4-wheel{position:absolute;bottom:-10px;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#666,#1a1a1a);border:3px solid #555;animation:.75s linear infinite wheelSpin}.c4-wfl{left:14px}.c4-wrl{right:18px}.c4-bubble{position:absolute;top:-28px;background:#fff;border-radius:10px 10px 10px 2px;padding:4px 9px;font-size:12px;box-shadow:0 2px 8px rgba(0,0,0,.15);animation:3s ease-in-out infinite bpop;opacity:0}.c4-b1{right:16px;animation-delay:0s}.c4-b2{right:50px;animation-delay:1.5s}@keyframes bpop{0%,100%{opacity:0;transform:translateY(5px) scale(.8)}15%,80%{opacity:1;transform:translateY(0) scale(1)}}.c4-bumper-f{position:absolute;right:0;bottom:3px;width:12px;height:26px;background:#2a2a2a;border-radius:0 3px 3px 0}.c4-bumper-r{position:absolute;left:0;bottom:3px;width:8px;height:20px;background:#2a2a2a;border-radius:3px 0 0 3px}.c4-rack::after,.c4-rack::before{content:'';position:absolute;top:-3px;width:3px;height:10px;background:#2a1a05;border-radius:1px}.c4-rack::before{left:12px}.c4-rack::after{right:12px}.cov-vocal-bar{display:flex;align-items:center;background:linear-gradient(135deg,var(--g),var(--g3));border-radius:var(--r-sm);margin-bottom:16px;transition:all var(--tr-base);box-shadow:0 3px 12px rgba(10,58,38,.25)}.cov-vocal-bar:hover{filter:brightness(1.1);box-shadow:0 5px 18px rgba(10,58,38,.35);transform:translateY(-2px);box-shadow:0 6px 20px rgba(14,61,42,.25)}.cov-vocal-bar span:not(.cov-vocal-icon){color:#fff;font-weight:600;font-size:13px;flex:1}.card-accent{background:linear-gradient(135deg,rgba(14,61,42,.03),rgba(14,61,42,.07));border:1px solid rgba(14,61,42,.12)}.pub-badge{display:inline-flex;align-items:center;border-radius:20px;color:var(--g)}.cov-vocal-bar{display:flex;align-items:center;gap:12px;padding:14px 18px;background:linear-gradient(135deg,var(--g),#0a5c36);color:#fff;border-radius:14px;cursor:pointer;transition:transform .18s,box-shadow .18s}.cov-vocal-icon{font-size:28px;flex-shrink:0}.pub-section{margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid rgba(0,0,0,.06)}.pub-section:last-of-type{border-bottom:none;margin-bottom:8px}.pub-section-title{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px;color:var(--g);margin-bottom:14px}.pub-step-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--g);color:#fff;font-size:13px;font-weight:900}.pub-route-box{position:relative;padding-left:32px}.pub-route-line{position:absolute;left:11px;top:8px;bottom:8px;width:2px;background:linear-gradient(to bottom,var(--g),var(--or));border-radius:2px}.pub-route-input{display:flex;align-items:center;gap:10px;margin-bottom:8px;position:relative}.pub-route-dot{position:absolute;left:-32px;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;background:var(--g);border:3px solid #fff;box-shadow:0 0 0 2px var(--g);z-index:2}.pub-route-dot.arrivee{background:var(--or);box-shadow:0 0 0 2px var(--or)}.pub-route-input .region-select-wrap{flex:1}.pub-route-input input{width:100%;padding:10px 14px;border-radius:10px;border:1.5px solid rgba(0,0,0,.1);font-size:13.5px;transition:border-color .2s,box-shadow .2s}.pub-route-input input:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(14,61,42,.1);outline:0}.pub-swap-row{text-align:center;margin:4px 0}.pub-swap-btn{background:var(--g);color:#fff;border:none;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:16px;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s}.pub-swap-btn:hover{transform:rotate(180deg)}.pub-popular-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.pub-pop-chip{padding:5px 12px;border-radius:16px;font-size:11.5px;font-weight:600;background:rgba(14,61,42,.06);color:var(--g);border:1px solid rgba(14,61,42,.1);cursor:pointer;transition:.15s}.pub-pop-chip:hover{background:var(--g);color:#fff}.pub-mode-tabs{display:flex;gap:4px;background:rgba(0,0,0,.04);border-radius:12px;padding:4px;margin-bottom:14px}.pub-mode-tab{flex:1;padding:9px 12px;border:none;border-radius:10px;background:0 0;font-size:12.5px;font-weight:700;color:var(--txt2);cursor:pointer;transition:.2s}.pub-mode-tab.on{background:#fff;color:var(--g);box-shadow:0 2px 8px rgba(0,0,0,.08)}.pub-day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:14px}.pub-day-btn{padding:10px 4px;border:2px solid rgba(0,0,0,.08);border-radius:10px;background:#fff;text-align:center;cursor:pointer;transition:.18s;font-size:11.5px;font-weight:700}.pub-day-btn .day-letter{display:block;font-size:15px;margin-bottom:2px}.pub-day-btn.on{border-color:var(--g);background:rgba(14,61,42,.06);color:var(--g)}.pub-day-btn:hover{border-color:var(--g)}.pub-day-time-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.04)}.pub-day-time-row:last-child{border-bottom:none}.pub-day-time-label{font-weight:700;font-size:12.5px;color:var(--g);min-width:80px}.pub-day-time-row input[type=time]{padding:6px 10px;border-radius:8px;border:1.5px solid rgba(0,0,0,.1);font-size:13px}.pub-recurrent-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:rgba(14,61,42,.04);border-radius:12px;margin-top:10px;cursor:pointer}.pub-toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.pub-toggle-switch::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:#ccc;border-radius:24px;transition:background .2s}.pub-recurrent-row input:checked+.pub-toggle-switch::before{background:var(--g)}.pub-toggle-switch::after{content:'';position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 4px rgba(0,0,0,.15)}.pub-recurrent-row input:checked+.pub-toggle-switch::after{transform:translateX(20px)}.pub-recurrent-row input{display:none}.recurrent-label{font-weight:700;font-size:13px;color:var(--g)}.recurrent-sub{font-size:11.5px;color:var(--txt2)}.pub-date-add{display:flex;gap:8px;align-items:center;margin-bottom:12px}.pub-date-add input{flex:1;padding:8px 12px;border-radius:8px;border:1.5px solid rgba(0,0,0,.1);font-size:13px}.pub-specific-list{display:flex;flex-direction:column;gap:6px}.pub-specific-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff;border-radius:10px;border:1px solid rgba(0,0,0,.06)}.pub-specific-item .date-info{flex:1;font-size:13px;font-weight:600}.pub-specific-item .remove-btn{background:0 0;border:none;color:var(--vr);cursor:pointer;font-size:18px;padding:0 4px}.pub-vehicle-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:16px}.pub-vehicle-btn{padding:14px 10px;border:2px solid rgba(0,0,0,.08);border-radius:12px;background:#fff;text-align:center;cursor:pointer;transition:.18s}.pub-vehicle-btn .veh-icon{font-size:28px;margin-bottom:4px}.pub-vehicle-btn .veh-label{font-size:12.5px;font-weight:700;display:block}.pub-vehicle-btn .veh-desc{font-size:10.5px;color:var(--txt2)}.pub-vehicle-btn.on{border-color:var(--g);background:rgba(14,61,42,.05)}.pub-vehicle-btn:hover{border-color:var(--g)}.pub-price-seats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.pub-counter-group label{display:block;font-size:12px;font-weight:700;color:var(--txt2);margin-bottom:6px}.pub-counter{display:flex;align-items:center;gap:4px;background:rgba(0,0,0,.03);border-radius:10px;padding:4px}.pub-counter button{width:36px;height:36px;border:none;border-radius:8px;background:var(--g);color:#fff;font-size:18px;font-weight:900;cursor:pointer;transition:background .15s}.pub-counter button:hover{background:#0a5c36}.pub-counter input{flex:1;text-align:center;border:none;background:0 0;font-size:18px;font-weight:800;color:var(--g);min-width:50px}.pub-counter input::-webkit-inner-spin-button{display:none}.counter-unit{font-size:11px;font-weight:700;color:var(--txt2);margin-right:4px}.pub-ac-row{align-items:center;gap:12px;padding:10px 14px;background:rgba(0,0,0,.02);border-radius:10px;cursor:pointer}.pub-ac-row input{display:none}.ac-icon{font-size:20px}.ac-label{font-size:13px;font-weight:600}.pub-contact-grid{display:flex;flex-direction:column;gap:12px}.pub-field label{display:block;font-size:12px;font-weight:700;color:var(--txt2);margin-bottom:4px}.pub-field input{width:100%;padding:9px 12px;border-radius:8px;border:1.5px solid rgba(0,0,0,.1);font-size:13px;transition:border-color .2s}.pub-field input:focus{border-color:var(--g);outline:0;box-shadow:0 0 0 3px rgba(14,61,42,.08)}.pub-field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pub-preview{background:#fff;border:2px solid var(--g);border-radius:14px;padding:16px;margin:16px 0}.pub-preview-title{font-weight:800;font-size:14px;color:var(--g);margin-bottom:10px}.pub-preview-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:13px}.pub-preview-row .ppl{font-weight:700;color:var(--g)}.pub-preview-row .ppr{color:var(--txt2)}.pub-submit-btn{font-size:16px!important;padding:14px!important;letter-spacing:.3px}@keyframes fieldFlash{0%{box-shadow:0 0 0 0 rgba(14,61,42,.3)}50%{box-shadow:0 0 0 6px rgba(14,61,42,.1)}100%{box-shadow:0 0 0 0 rgba(14,61,42,0)}}.cov-result-card{border-radius:14px;border:1px solid rgba(0,0,0,.06);transition:box-shadow .2s,transform .2s}.cov-result-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.08)}.cov-result-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:8px}.cov-result-route{display:flex;align-items:center}.cov-result-arrow{color:var(--or)}.cov-result-price{color:var(--g)}.cov-price-unit{color:var(--txt2)}.cov-result-details{display:flex;flex-wrap:wrap;gap:8px}.cov-result-detail{color:var(--txt2);display:inline-flex;align-items:center;gap:3px}.cov-result-driver{display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.02);border-radius:10px}.cov-result-avatar{background:linear-gradient(135deg,var(--g),#0a5c36);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cov-result-driver-info{flex:1}.cov-result-driver-vehicle{color:var(--txt2)}.cov-result-badges{display:flex;gap:4px;flex-wrap:wrap}.cov-recurrent-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;background:linear-gradient(135deg,var(--g),#0a5c36);color:#fff;font-size:11px;font-weight:700}.cov-date-filters{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.cdf{padding:6px 14px;border:1.5px solid rgba(0,0,0,.1);border-radius:20px;background:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:.2s;color:var(--txt2)}.cdf:hover{border-color:var(--g);color:var(--g)}.cdf.on{background:var(--g);color:#fff;border-color:var(--g);box-shadow:0 2px 8px rgba(14,61,42,.15)}.rd-popular-label{position:sticky;top:0;z-index:1}.cov-search-card{background:#fff;border-radius:var(--r-xl);padding:0;margin-bottom:18px;border:1px solid var(--bd3);box-shadow:var(--sh-3);position:relative;overflow:visible!important;width:50%;margin-left:auto;margin-right:auto}.cov-search-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--vt) 0,var(--vt) 33%,var(--vj) 33%,var(--vj) 66%,var(--vr) 66%,var(--vr) 100%);border-radius:var(--r-xl) var(--r-xl) 0 0;z-index:10}.cov-search-title{font-size:16px;font-weight:900;color:var(--g);padding:18px 20px 8px;display:flex;align-items:center;gap:10px;position:relative;z-index:5;letter-spacing:-.3px}.cov-search-body{position:relative;padding:8px 20px 16px;display:flex;flex-direction:column;z-index:5}.cov-journey-line{position:absolute;width:2px;background:linear-gradient(to bottom,var(--vt) 0,var(--g3) 40%,var(--or) 50%,var(--g3) 60%,var(--vr) 100%);opacity:.3;border-radius:1px;z-index:0}.cov-journey-step{display:flex;align-items:center;gap:12px;position:relative;z-index:6}.cov-journey-step:focus-within{z-index:20}.cov-journey-dot{width:22px;height:22px;border-radius:50%;flex-shrink:0;position:relative;border:3px solid #fff;z-index:2}.cov-dot-depart{background:var(--vt);animation:1.6s infinite blinkDepart}.cov-dot-arrivee{background:var(--vr);animation:1.6s infinite blinkArrivee}.cov-journey-swap{display:flex;justify-content:center;align-items:center;height:26px;position:relative;z-index:6;margin:-2px 0 -2px 23px}.cov-swap-btn{width:30px;height:30px;border-radius:50%;background:var(--g);color:#fff;border:2.5px solid #fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--tr-base);box-shadow:0 3px 10px rgba(0,0,0,.12);padding:0}.cov-swap-btn svg{width:14px;height:14px;pointer-events:none}.cov-swap-btn:hover{background:var(--or);border-color:#fff;transform:rotate(180deg);box-shadow:0 5px 16px rgba(212,150,10,.45)}.cov-search-divider{height:1px;margin:0 20px;background:linear-gradient(90deg,transparent 0,var(--bd) 15%,var(--bd) 85%,transparent 100%)}.cov-search-footer{display:flex;align-items:flex-end;gap:12px;padding:14px 20px 16px}.cov-date-wrap{flex:1}.cov-date-wrap .il{margin-bottom:6px}.cov-search-actions{display:flex;gap:8px;align-items:flex-end}.cov-vocal-btn{width:42px;height:42px;border-radius:var(--r-sm);background:linear-gradient(135deg,var(--or),var(--or2));color:#fff;border:none;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all var(--tr-base);box-shadow:0 3px 12px rgba(212,150,10,.4);flex-shrink:0}.cov-vocal-btn:hover{transform:scale(1.06);box-shadow:0 5px 18px rgba(212,150,10,.55)}.cov-search-btn{flex-shrink:0}.cov-popular{padding:12px 20px 16px;border-top:1px solid var(--bd3)}.cov-popular-label{font-size:11px;font-weight:700;color:var(--t3);text-transform:uppercase;letter-spacing:.6px;margin-bottom:10px}.cov-popular-routes{display:flex;flex-wrap:wrap;gap:7px}.cov-route-chip{padding:7px 14px;border-radius:var(--r-pill);border:1.5px solid var(--bd);background:#fff;color:var(--t2);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:all var(--tr-fast)}.cov-route-chip:hover{border-color:var(--g);color:var(--g);background:var(--g-tint);transform:translateY(-1px)}.region-select-wrap{position:relative;width:100%}.region-input{width:100%;padding:11px 14px;border:1.5px solid var(--bd);border-radius:var(--r-sm);font-size:14px;font-family:inherit;font-weight:500;outline:0;background:#fff;color:var(--t1);transition:all var(--tr-fast);box-sizing:border-box}.region-input::placeholder{color:var(--t4);font-weight:400}.region-input:hover{border-color:var(--bd2)}.region-input:focus{border-color:var(--g);box-shadow:var(--sh-glow-g)}.region-dropdown{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--bd2);border-radius:var(--r-sm);box-shadow:var(--sh-4);z-index:9999;max-height:320px;overflow-y:auto}.region-dropdown.open{display:block;animation:.22s cubic-bezier(.4,0,.2,1) rdIn}@keyframes rdIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.rd-region-header{display:flex;align-items:center;gap:8px;padding:9px 14px;background:var(--bg3);font-size:11.5px;font-weight:800;color:var(--g);letter-spacing:.3px;text-transform:uppercase;position:sticky;top:0;z-index:1;border-bottom:1px solid var(--bd3)}.rd-region-header.hidden{display:none}.rd-region-icon{font-size:14px}.rd-region-name{flex:1}.rd-region-count{font-size:9.5px;background:rgba(10,58,38,.1);padding:2px 7px;border-radius:var(--r-pill);color:var(--g);font-weight:800}.rd-city-item{display:flex;align-items:center;gap:10px;padding:9px 14px 9px 28px;cursor:pointer;transition:all var(--tr-fast);font-size:13.5px;color:var(--t1);border-bottom:1px solid var(--bd3)}.rd-city-item:last-child{border-bottom:none}.rd-city-item:hover{background:var(--g-soft)}.rd-city-item.selected{background:var(--g);color:#fff}.rd-city-item.hidden{display:none}.rd-city-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.rd-city-name{flex:1;font-weight:500}.rd-region-tag{font-size:9px;color:var(--t3);background:rgba(0,0,0,.04);padding:2px 7px;border-radius:4px;font-weight:600}.rd-city-item.selected .rd-region-tag,.rd-city-item:hover .rd-region-tag{background:rgba(255,255,255,.15);color:rgba(255,255,255,.7)}.rd-empty{padding:24px 14px;text-align:center;font-size:13px;color:var(--t3)}.rd-empty-icon{font-size:28px;margin-bottom:6px}.cov-result-card{background:#fff;border-radius:var(--r-md);border:1px solid var(--bd3);padding:20px 22px;margin-bottom:14px;box-shadow:var(--sh-2);transition:all var(--tr-base);position:relative;overflow:hidden}.cov-result-card::before{content:'';position:absolute;top:0;left:0;width:4px;height:50%;background:linear-gradient(to bottom,var(--vt),var(--or),var(--vr));border-radius:var(--r-md) 0 0 var(--r-md)}.cov-result-card:hover{box-shadow:var(--sh-3);transform:translateY(-2px)}.cov-result-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:12px}.cov-result-route{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:800;color:var(--g);flex-wrap:wrap}.cov-result-arrow{color:var(--or);font-size:20px;font-weight:900}.cov-result-price{font-size:22px;font-weight:900;color:var(--vt);white-space:nowrap;letter-spacing:-.5px;flex-shrink:0}.cov-price-unit{font-size:12px;font-weight:600;color:var(--t3)}.cov-result-details{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px}.cov-result-detail{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--t2);font-weight:500}.cov-result-driver{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--bg3);border-radius:var(--r-sm);margin-bottom:14px}.cov-result-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--g),var(--g3));display:flex;align-items:center;justify-content:center;color:var(--or3);font-weight:900;font-size:15px;flex-shrink:0;box-shadow:0 2px 8px rgba(10,58,38,.2)}.cov-result-driver-info{flex:1;min-width:0}.cov-result-driver-name{font-weight:700;font-size:13.5px;color:var(--t1)}.cov-result-driver-vehicle{font-size:11.5px;color:var(--t3);margin-top:2px}.cov-result-badges{display:flex;gap:5px;flex-shrink:0;flex-wrap:wrap}.cov-result-actions{display:flex;gap:8px;flex-wrap:wrap}.cov-result-actions .btn{flex:1;justify-content:center;min-width:120px}.cov-wa-btn{background:#25d366!important;border-color:#25d366!important;color:#fff!important;box-shadow:0 2px 8px rgba(37,211,102,.3)}.cov-wa-btn:hover{background:#1da851!important;border-color:#1da851!important}.pub-ac-row{display:none}.pub-field1{visibility:hidden}@media (max-width:768px){.cov-search-card{width:90%}}@media (max-width:560px){.cov-search-card{width:100%}.cov-search-footer{flex-direction:column;gap:10px}.cov-search-actions{width:100%}.cov-search-btn{flex:1}.cov-result-header{flex-direction:column;gap:8px}.cov-result-price{align-self:flex-start}}.poll-headline{background:radial-gradient(circle at 100% 0,rgba(212,150,10,.2) 0,transparent 50%),linear-gradient(135deg,#051c12 0,#0a3a26 50%,#155a3a 100%);border-radius:var(--r-xl);padding:26px 28px;margin-bottom:18px;color:#fff;position:relative;overflow:hidden;box-shadow:0 10px 32px rgba(8,45,30,.3)}.ph-label{font-size:10.5px;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.55);margin-bottom:6px;font-weight:800}.ph-pct{font-size:48px;font-weight:900;color:var(--or3);line-height:1;margin-bottom:6px;letter-spacing:-1.5px}.ph-text{font-size:15px;color:rgba(255,255,255,.92);line-height:1.45;font-weight:500}.ph-topic{font-size:12px;color:rgba(255,255,255,.5);margin-top:8px;font-weight:500}.sond-cats{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:0}.scat{padding:7px 16px;border-radius:var(--r-pill);background:#fff;border:1.5px solid var(--bd);font-size:12.5px;cursor:pointer;font-family:inherit;transition:all var(--tr-fast);color:var(--t2);font-weight:600}.scat:hover{border-color:var(--g);color:var(--g)}.scat.on{background:var(--g);color:#fff;border-color:var(--g);font-weight:700;box-shadow:0 3px 10px rgba(10,58,38,.25)}.scard{background:#fff;border-radius:var(--r-md);border:1px solid var(--bd3);padding:20px 22px;margin-bottom:16px;box-shadow:var(--sh-2);transition:box-shadow var(--tr-base)}.scard:hover{box-shadow:var(--sh-3)}.sq{font-weight:800;font-size:15.5px;color:var(--g);margin-bottom:7px;line-height:1.4;letter-spacing:-.2px}.sm{font-size:11.5px;color:var(--t2);margin-bottom:14px}.sopt{padding:11px 14px;border-radius:var(--r-sm);border:1.5px solid var(--bd);margin-bottom:8px;cursor:pointer;transition:all var(--tr-base);background:var(--card-soft)}.sopt:hover{border-color:var(--g);background:var(--g-soft);transform:translateX(3px)}.sorow{display:flex;justify-content:space-between;margin-bottom:6px;font-size:13.5px}.pb{background:var(--bd3);border-radius:var(--r-pill);height:8px;overflow:hidden}.pf{height:100%;border-radius:var(--r-pill);transition:width .9s cubic-bezier(.4,0,.2,1)}.poll-chat{margin-top:14px;border-top:1px solid var(--bd3);padding-top:14px}.poll-chat-title{font-size:11.5px;font-weight:800;color:var(--t2);margin-bottom:10px;text-transform:uppercase;letter-spacing:.6px}.chat-msgs{max-height:180px;overflow-y:auto;margin-bottom:10px;display:flex;flex-direction:column;gap:7px}.cmsg-item{font-size:12.5px;line-height:1.5;padding:10px 14px;background:var(--bg3);border-radius:12px 12px 12px 3px}.cmsg-item .cmi-author{font-weight:800;color:var(--g);font-size:11px;margin-bottom:3px;letter-spacing:.1px}.chat-input-row{display:flex;gap:8px}.chat-input-row input{flex:1;font-size:12.5px;padding:9px 14px;border-radius:var(--r-pill)}.chat-input-row button{width:38px;height:38px;border-radius:50%;background:var(--g);color:#fff;border:none;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all var(--tr-base);box-shadow:0 2px 8px rgba(10,58,38,.25)}.chat-input-row button:hover{transform:scale(1.08);background:var(--g2)}.pcard{background:#fff;border-radius:var(--r-md);border:1px solid var(--bd3);padding:15px 17px;margin-bottom:11px;box-shadow:var(--sh-1);transition:all var(--tr-base)}.pcard:hover{box-shadow:var(--sh-3);transform:translateY(-2px)}.ptit{font-weight:700;font-size:14px;flex:1;margin-right:10px;color:var(--t1);letter-spacing:-.1px}.pval{font-weight:900;color:var(--g);white-space:nowrap;font-size:16px;letter-spacing:-.3px}.plink{font-size:12px;color:var(--g);text-decoration:none;font-weight:700;padding:6px 12px;border-radius:7px;border:1.5px solid rgba(10,58,38,.35);display:inline-flex;align-items:center;gap:5px;transition:all var(--tr-fast)}.plink:hover{background:var(--g);color:#fff}.ecard{background:#fff;border-radius:var(--r-md);border:1px solid var(--bd3);padding:18px 20px;margin-bottom:13px;box-shadow:var(--sh-1);transition:all var(--tr-base)}.ecard:hover{box-shadow:var(--sh-3);transform:translateY(-2px)}.etit{font-weight:800;font-size:14.5px;color:var(--g);letter-spacing:-.2px}.este{font-size:12.5px;color:var(--t2);margin:5px 0 8px}.edesc{font-size:12.5px;color:var(--t2);margin-bottom:10px;line-height:1.55}.elink{font-size:12.5px;color:var(--g);font-weight:700;text-decoration:none;padding:7px 14px;border-radius:8px;border:1.5px solid var(--g);display:inline-flex;align-items:center;gap:5px;transition:all var(--tr-fast)}.elink:hover{background:var(--g);color:#fff;transform:translateY(-1px)}.pub-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:4px 11px;border-radius:var(--r-pill);background:rgba(27,138,76,.13);color:var(--grn);margin-bottom:14px}.pub-note{font-size:11.5px;color:var(--t2);background:var(--or-soft);border-left:3px solid var(--or);padding:10px 14px;border-radius:0 8px 8px 0;margin:12px 0;line-height:1.5}.emp-citizen-card{border-left:3px solid var(--grn)!important}.fbox{background:linear-gradient(135deg,var(--bg3),#fff);border-radius:var(--r-sm);padding:20px;margin-bottom:14px;border:1px solid var(--bd3);box-shadow:var(--sh-1)}.frow{display:flex;justify-content:space-between;padding:9px 0;font-size:13.5px;border-bottom:1px solid var(--bd3)}.frow:last-child{border-bottom:none}.frow.tot{padding-top:12px;margin-top:4px;border-top:2px solid var(--blue);border-bottom:none;font-size:15px}.cal-header{background:linear-gradient(135deg,var(--g) 0,var(--g3) 100%);padding:18px 22px;color:#fff;display:flex;justify-content:space-between;align-items:center}.cal-header h3,.cal-month-year{font-weight:800;font-size:19px;letter-spacing:-.3px;margin:0;color:#fff}.cal-nav{display:flex;gap:8px}.cal-nav-btn{background:rgba(255,255,255,.15);border:none;width:36px;height:36px;border-radius:50%;color:#fff;cursor:pointer;font-weight:700;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all var(--tr-fast)}.cal-nav-btn:hover{background:rgba(255,255,255,.25);transform:scale(1.08)}.cal-grid{background:#fff}.cal-days-header,.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--bg2);text-align:center;font-weight:800;padding:11px 0;font-size:11.5px;color:var(--t2);text-transform:uppercase;letter-spacing:.6px}.cal-day-name,.cal-days-header>div{padding:2px 0}.cal-cells,.cal-days-grid{display:grid;grid-template-columns:repeat(7,1fr);background:#fff}.cal-cell,.cal-day-cell{min-height:70px;padding:7px 5px;text-align:center;border-bottom:1px solid var(--bd3);border-right:1px solid var(--bd3);cursor:pointer;transition:background var(--tr-fast);position:relative;display:flex;flex-direction:column;align-items:center}.cal-cell:hover{background:var(--g-tint)}.cal-cell.other-month{background:var(--bg3);opacity:.4;cursor:default}.cal-cell.other-month:hover{background:var(--bg3)}.cal-cell-day,.day-number{font-weight:700;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;color:var(--t1)}.cal-cell.today .cal-cell-day,.today .day-number{background:var(--g);color:#fff;box-shadow:0 2px 8px rgba(10,58,38,.3)}.cal-cell.ferie{background:rgba(227,27,35,.04)}.cal-cell-dots{display:flex;justify-content:center;gap:3px;margin-top:4px}.cal-dot{width:5px;height:5px;border-radius:50%}.cal-events-panel,.event-list-panel{background:#fff;padding:18px 22px;border:1px solid var(--bd3);border-radius:var(--r-md);margin-bottom:14px;box-shadow:var(--sh-1)}.cal-event-item,.event-item{display:flex;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid var(--bd3)}.cal-event-item:last-child,.event-item:last-child{border-bottom:none}.cal-event-dot,.event-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.cal-event-info{flex:1;min-width:0}.cal-event-title,.event-title{font-weight:700;color:var(--t1);font-size:13.5px}.cal-event-date,.event-date{font-size:11.5px;color:var(--t3);margin-top:1px}.cal-event-type{font-size:10px;font-weight:800;padding:3px 9px;border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.3px}.et-ferie{background:rgba(227,27,35,.12);color:var(--vr)}.et-fete{background:rgba(212,150,10,.16);color:#7b5e00}.et-culturel{background:rgba(27,138,76,.12);color:var(--grn)}.et-perso{background:rgba(21,101,192,.12);color:var(--blue)}.cal-admin-panel{background:#fff;border-radius:var(--r-md);padding:18px 22px;border:1px solid var(--bd3);box-shadow:var(--sh-1)}.cal-lock-panel{text-align:center;padding:8px 0}.cal-lock-icon{font-size:36px;margin-bottom:10px}.lcard{background:#fff;border-radius:var(--r-md);border:1px solid var(--bd3);padding:28px;text-align:center;box-shadow:var(--sh-2)}.sp{width:38px;height:38px;border-radius:50%;border:3px solid var(--bd2);border-top-color:var(--g);animation:1s linear infinite sp;margin:0 auto 14px}@keyframes sp{to{transform:rotate(360deg)}}.es{text-align:center;padding:18px 0}.ei{font-size:36px;margin-bottom:10px}.field-filling{animation:.4s ease-in-out 2 field-flash}@keyframes field-flash{0%,100%{border-color:var(--g)}50%{border-color:var(--or);box-shadow:var(--sh-glow-or)}}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(80px);background:#fff;border-radius:var(--r-md);padding:14px 22px;box-shadow:var(--sh-pop);font-size:14px;font-weight:500;z-index:999;transition:all var(--tr-slow);opacity:0;pointer-events:none;border-left:4px solid var(--g);min-width:260px;text-align:center}.toast.show{transform:translateX(-50%) translateY(0);opacity:1}.toast.err{border-left-color:var(--vr)}.toast.warn{border-left-color:var(--or)}.vocal-beep-flash{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;background:rgba(10,58,38,.18);z-index:9999;pointer-events:none;animation:.45s ease-out forwards beepFlash}@keyframes beepFlash{0%{transform:translate(-50%,-50%) scale(.5);opacity:1}100%{transform:translate(-50%,-50%) scale(2.6);opacity:0}}.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:200;backdrop-filter:blur(4px)}.modal-overlay.on{display:flex;align-items:center;justify-content:center;animation:.2s fadeIn}.modal{background:#fff;border-radius:var(--r-lg);padding:26px;width:90%;max-width:540px;max-height:85vh;overflow-y:auto;box-shadow:0 18px 56px rgba(0,0,0,.22);animation:.3s cubic-bezier(.34,1.56,.64,1) modalIn}@keyframes modalIn{from{opacity:0;transform:scale(.92) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-h h3{font-weight:900;font-size:17px;color:var(--g);letter-spacing:-.3px}.modal-close{width:34px;height:34px;border-radius:50%;background:var(--bg2);border:none;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background var(--tr-fast);font-weight:700;color:var(--t2)}.modal-close:hover{background:var(--bd2)}.vwiz-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:150;backdrop-filter:blur(5px)}.vwiz-overlay.on{display:flex;align-items:center;justify-content:center}.vwiz-box{background:#fff;border-radius:var(--r-lg);padding:32px;width:92%;max-width:460px;box-shadow:0 22px 64px rgba(0,0,0,.28);text-align:center;animation:.35s cubic-bezier(.34,1.56,.64,1) modalIn}.vwiz-q{font-size:18px;font-weight:800;color:var(--g);margin:16px 0 6px;line-height:1.4;letter-spacing:-.3px}.vwiz-sub{font-size:13px;color:var(--t2);margin-bottom:18px}.vwiz-trans{font-style:italic;color:var(--g);font-size:14px;min-height:24px;background:var(--g-soft);border-radius:10px;padding:10px 14px;margin-bottom:14px}.vwiz-ring{width:90px;height:90px;border-radius:50%;background:linear-gradient(135deg,var(--g),var(--g3));display:flex;align-items:center;justify-content:center;font-size:38px;margin:0 auto 12px;box-shadow:0 8px 24px rgba(10,58,38,.35);cursor:pointer;transition:all var(--tr-base);color:#fff}.vwiz-ring:hover{transform:scale(1.05)}.vwiz-ring.listening{background:linear-gradient(135deg,#c62828,#e53935);animation:.9s infinite mpu}@keyframes mpu{0%,100%{box-shadow:0 0 0 0 rgba(227,27,35,.4)}50%{box-shadow:0 0 0 14px rgba(227,27,35,0)}}.vwiz-ring.speaking{background:linear-gradient(135deg,var(--or),var(--or2))}.vwiz-status{font-size:13px;color:var(--t2);margin-top:10px;font-weight:500}.vwiz-steps{display:flex;gap:6px;justify-content:center;margin-bottom:18px}.vws{width:34px;height:5px;border-radius:3px;background:var(--bd);transition:background var(--tr-base)}.vws.done{background:var(--g)}.vws.active{background:var(--or)}#quick-cities{display:flex;flex-wrap:wrap;gap:6px}@media(max-width:900px){#sec-assistant{width:100%!important;height:calc(100dvh - 125px)!important}#sec-assistant #cmsg{padding:14px!important}#sidebar{width:64px}.logo-name,.logo-sub,.nav-sec,.ni span:not(.ni-ico),.ni-badge,.sf{display:none}.ni{justify-content:center}.logo{padding:18px 8px}.logo-row{justify-content:center}.g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:1fr}#content{padding:18px}.topbar{padding:12px 18px}#sec-bus .journey-field{flex:1 1 auto;max-width:none}}@media(max-width:560px){.g2{grid-template-columns:1fr}.wb{padding:24px 22px}.wb-t{font-size:23px}#sec-bus .bus-flash-btn{width:72px;min-height:72px}#sec-bus .bus-flash-num{font-size:25px}.ecoles-podium{grid-template-columns:1fr;gap:10px}.erow-c:nth-child(7),.erow-ef,.ethr-ab,.ethr-ef{display:none}.traf-hero{padding:20px 22px;flex-direction:column;align-items:flex-start;gap:12px}.traf-hero-title{font-size:20px}}.sdd-schedule-card{background:linear-gradient(135deg,rgba(123,31,162,.04),rgba(123,31,162,.08));border:1px solid rgba(123,31,162,.15);border-radius:12px;padding:16px;margin-bottom:14px}.sdd-price-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:rgba(123,31,162,.08);border-radius:8px;margin-bottom:12px}.sdd-price-label{font-size:13px;color:var(--txt2);font-weight:600}.sdd-price-value{font-size:20px;font-weight:900;color:var(--g)}.sdd-direction-section{margin-bottom:12px}.sdd-direction-label{font-size:12px;font-weight:800;color:#7b1fa2;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding-left:4px}.sdd-schedule-row{display:flex;align-items:flex-start;gap:12px;padding:8px 10px;border-radius:8px;margin-bottom:4px}.sdd-schedule-row.sdd-today{background:rgba(16,120,58,.06);border-left:3px solid var(--vt)}.sdd-days{flex:0 0 160px;font-size:12px;color:var(--txt2);font-weight:600;display:flex;flex-direction:column;gap:3px}.sdd-today-badge{display:inline-block;background:var(--vt);color:#fff;font-size:10px;padding:1px 6px;border-radius:4px;font-weight:700;width:fit-content}.sdd-times{display:flex;flex-wrap:wrap;gap:5px}.sdd-time{display:inline-block;padding:3px 8px;background:rgba(123,31,162,.08);color:#7b1fa2;border-radius:6px;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.sdd-time.sdd-past{opacity:.35;text-decoration:line-through}.sdd-time.sdd-next{background:#7b1fa2;color:#fff;animation:1.5s ease-in-out infinite sdd-pulse;box-shadow:0 2px 8px rgba(123,31,162,.3)}@keyframes sdd-pulse{0%,100%{box-shadow:0 2px 8px rgba(123,31,162,.3)}50%{box-shadow:0 2px 16px rgba(123,31,162,.5)}}.sdd-raw-horaires{font-size:13px;color:var(--txt2);padding:10px;background:rgba(0,0,0,.03);border-radius:8px;line-height:1.5;white-space:pre-line}.sdd-contact-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px;background:rgba(123,31,162,.06);border-radius:10px;margin-top:12px}.sdd-contact-label{font-size:12px;color:var(--txt2);font-weight:700}.sdd-contact-phones{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.sdd-phone-link{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#7b1fa2;color:#fff!important;border-radius:20px;text-decoration:none!important;font-size:13px;font-weight:700;transition:.2s}.sdd-phone-link:hover{background:#6a1b9a;transform:translateY(-1px)}.sdd-wa-link{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;background:#25d366;color:#fff!important;border-radius:20px;text-decoration:none!important;font-size:13px;font-weight:700;transition:.2s}.sdd-wa-link:hover{background:#128c7e}@media (max-width:640px){.sdd-schedule-row{flex-direction:column;gap:6px}.sdd-days{flex:unset}}.voice-lang{display:inline-flex;align-items:center;gap:2px;padding:3px 5px;background:rgba(255,255,255,.5);border-radius:8px;border:1px solid rgba(0,0,0,.08);margin-left:4px}.voice-lang-ico{font-size:13px;margin-right:2px}.vl-btn{font-size:11px;font-weight:800;padding:3px 7px;border:none;background:0 0;border-radius:5px;cursor:pointer;opacity:.55;color:#333;transition:.15s;letter-spacing:.3px}.vl-btn:hover{opacity:.9}.vl-btn.on{opacity:1;background:var(--g,#0e3d2a);color:#fff}.disambig-overlay{position:fixed;inset:0;z-index:20000;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;animation:.2s fadeIn}.disambig-box{background:#fff;border-radius:22px;padding:28px 26px 20px;max-width:420px;width:92%;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.35);animation:.25s cubic-bezier(.3,1.4,.5,1) popIn}.disambig-icon{font-size:48px;margin-bottom:8px}.disambig-question{font-weight:800;font-size:16px;color:var(--g,#0e3d2a);margin-bottom:16px;line-height:1.4}.disambig-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.disambig-item{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;background:#f0f7f3;border:2px solid #d0e6c0;font-weight:700;font-size:14px;color:var(--g,#0e3d2a);cursor:pointer;transition:.18s;text-align:left}.disambig-item:hover{background:#e2f0e5;border-color:#2b7e3a;transform:scale(1.02);box-shadow:0 4px 12px rgba(43,126,58,.15)}.disambig-item-icon{font-size:18px;flex-shrink:0}.disambig-item-name{flex:1}.disambig-cancel{background:0 0;border:1px solid #ddd;padding:8px 18px;border-radius:10px;font-weight:600;cursor:pointer;color:#888;transition:.15s}.disambig-cancel:hover{border-color:#999;color:#555}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes popIn{from{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}