:root{--navy:#08284e;--blue:#1587ef;--teal:#00a1af;--ink:#18334e;--muted:#6c7d90;--line:#dfe7ef;--bg:#f2f6fa;--red:#ce4056}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px system-ui,-apple-system,sans-serif}header{background:var(--navy);color:white;padding:20px max(20px,calc((100vw - 900px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:92px}.brand{display:flex;align-items:center;gap:12px}.brand-icon{background:linear-gradient(145deg,var(--blue),var(--teal));border-radius:14px;padding:12px;font-weight:900}.brand b{font-size:20px;letter-spacing:.5px}.brand em{font-style:normal;color:#57d6dd}.brand small{display:block;margin-top:3px;font-size:11px;letter-spacing:1px;color:#c4d7e9}main{max-width:900px;margin:auto;padding:22px 18px 110px}h1{font-size:27px;margin:0 0 5px;letter-spacing:-.7px}h2{font-size:18px;margin:0 0 14px}h3{font-size:16px;margin:0 0 8px}p{line-height:1.55}small,.muted{color:var(--muted)}.subtitle{margin:0 0 20px;color:var(--muted)}.card{background:white;border:1px solid #e6edf4;border-radius:18px;padding:18px;margin:14px 0;box-shadow:0 4px 14px #193b5710}.hero{background:linear-gradient(135deg,#fff,#eafbfc)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric{border-radius:16px;padding:17px;min-height:105px;background:#e9f4ff;overflow-wrap:anywhere}.metric b{display:block;font-size:25px;letter-spacing:-.8px;margin:6px 0}.metric small{color:var(--ink)}.green{background:#e9faf2}.amber{background:#fff4df}.pink{background:#fff0f3}.purple{background:#f2edff}.badge{display:inline-block;font-size:12px;font-weight:650;border-radius:20px;background:#e5f7ef;color:#1d7656;padding:7px 11px}.badge.warn{background:#fff0d1;color:#95620c}.badge.danger{background:#ffe9ed;color:#b92843}.status-line{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions>*{flex:1}.actions button{min-width:100px}button,.button{font:inherit;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--blue);border:0;color:#fff;border-radius:12px;padding:13px 15px;font-weight:650;cursor:pointer;text-decoration:none;min-height:45px}button:disabled{opacity:.45;cursor:default}button.teal{background:var(--teal)}button.whatsapp{background:#16a363}button.secondary,.button.secondary{background:#edf4fc;color:#2469a3}.icon{padding:7px 12px;background:#ffffff18;font-size:22px;min-width:42px}.danger-btn{background:var(--red)}input,select,textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff;color:var(--ink);margin:6px 0 12px}input:focus,select:focus,textarea:focus{outline:2px solid #a5d4ff;border-color:var(--blue)}label{display:block;font-size:13px;font-weight:650}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.full{grid-column:1/-1}.avatar{width:43px;height:43px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#e8f3ff;color:#1e77c5;border-radius:50%;font-weight:750}.row{display:flex;align-items:center;gap:12px}.row .grow{flex:1;min-width:0}.list-button{background:none;color:inherit;width:100%;justify-content:flex-start;padding:0;text-align:left}.list-button .chev{margin-left:auto;color:var(--muted)}.list-button small{display:block;margin-top:4px;font-weight:400}.empty{text-align:center;padding:25px;color:var(--muted)}nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);display:flex;justify-content:center;padding:8px 3px max(8px,env(safe-area-inset-bottom));z-index:10}nav button{flex:1;max-width:150px;background:none;color:#7a8da1;border-radius:9px;flex-direction:column;font-size:10px;padding:6px 2px;gap:3px;min-width:0}nav button span{font-size:20px}nav button.active{background:#edf6ff;color:var(--blue)}dialog{width:min(94vw,700px);max-height:90dvh;padding:20px;border:0;border-radius:21px;color:var(--ink);box-shadow:0 20px 80px #08284e33}dialog::backdrop{background:#08284e88}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px}.dialog-head h2{margin:0}.signature{touch-action:none;background:#f7faff;border:1px solid var(--line);width:100%;height:150px;border-radius:12px;display:block}.sig-tools{display:flex;justify-content:flex-end;margin:7px 0}#toast{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);width:min(90vw,580px);background:var(--navy);color:#fff;padding:15px 20px;border-radius:13px;box-shadow:0 6px 25px #0003;z-index:100}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line);white-space:nowrap}.table-wrap{overflow:auto}th{color:var(--muted);font-size:11px}.total{display:flex;justify-content:space-between;background:#e8faf3;border-radius:13px;padding:16px;margin:10px 0 15px}.total b{font-size:24px;color:#167950}.note{padding:13px;background:#fff3db;color:#815b11;border-radius:12px;font-size:13px;line-height:1.5}.search{padding-left:17px;margin-top:12px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.tabs button{font-size:12px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.small-btn{font-size:12px;padding:9px 11px;min-height:34px}.stack>*+*{margin-top:10px}.signature-img{display:block;max-height:110px;max-width:100%;margin:15px 0}.finance-hint{font-size:12px;line-height:1.6}.field-read{padding:12px;border-radius:10px;background:#f1f6fb;margin:6px 0 12px}.alert-list{margin:0;padding-left:20px;font-size:13px;line-height:1.9}@media(min-width:720px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}main{padding-top:30px}.card{padding:22px}nav button{font-size:12px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.metric{min-height:125px}}@media(max-width:360px){.form-grid{grid-template-columns:1fr}.brand b{font-size:17px}main{padding-left:12px;padding-right:12px}}

.calendar-scroll{overflow-x:auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(88px,1fr));gap:5px;min-width:650px}.calendar-grid>strong{text-align:center;color:#315876}.calendar-day{min-height:95px;border:1px solid #d9e6ef;border-radius:8px;padding:6px;background:#fff}.calendar-day.today{border:2px solid #2388d8;background:#f0f8ff}.calendar-day.empty{background:#f5f7fa;border:0}.calendar-event{width:100%;font-size:11px;padding:5px;margin:3px 0;text-align:left;border-radius:5px;background:#e9f3ff;color:#17476d;white-space:normal}.calendar-event small{display:block}.calendar-event.pending{background:#fff2d8;color:#785000}.calendar-event.confirmed{background:#dcf4e9;color:#155e42}

.vehicle-media{position:relative;margin:0 0 16px;border-radius:14px;overflow:hidden;background:#f1f6fa}.vehicle-photo{display:block;width:100%;height:180px;object-fit:contain}.photo-missing{height:160px;display:grid;place-items:center;color:#657789;padding:20px;text-align:center}.brand-logo{position:absolute;right:12px;bottom:12px;width:58px;height:58px;object-fit:contain;background:white;border-radius:10px;padding:7px;box-shadow:0 2px 12px #183a551c}
/* Interface mobile inspirée de la maquette Gestion Pro */
:root{--blue:#0865d4;--navy:#0754a4;--teal:#0876d9;--ink:#172e46;--muted:#718095;--bg:#f6f8fc;--line:#e6edf5}header{background:linear-gradient(115deg,#086bd2,#0058b5);min-height:72px;padding:12px max(16px,calc((100vw - 900px)/2));gap:12px;position:sticky;top:0;z-index:9}.brand{margin-right:auto}.brand-icon{display:none}.brand b{font-size:20px;letter-spacing:0;text-transform:none}.brand em{color:white}.brand small{font-size:9px;letter-spacing:.7px}header .icon{background:none;color:white;min-width:35px;padding:3px;font-size:23px}main{padding:20px 14px 95px}h1{font-size:23px;letter-spacing:-.5px}h2{font-size:17px}h3{font-size:15px}.subtitle{font-size:12px;margin-bottom:16px}.card{border:1px solid #eaf0f7;border-radius:16px;box-shadow:0 3px 12px #15426c07;padding:14px;margin:10px 0}.metric{min-height:100px;background:white;border:1px solid #e9eef6;box-shadow:0 2px 8px #17456e08;border-radius:14px;padding:14px}.metric b{font-size:23px}.metric small{font-size:12px}.metric.green{border-left:4px solid #54ba85}.metric.pink{border-left:4px solid #ed7088}.metric.amber{border-left:4px solid #eab74c}.hero{background:#fff}.grid{gap:10px}.ui-icon{width:23px;height:23px;flex-shrink:0}nav{box-shadow:0 -3px 18px #183a5706;padding-top:7px}nav button{font-size:11px;gap:5px;min-height:52px}nav button.active{background:#eef6ff}.search{background:#edf3fa;border-color:transparent;border-radius:12px;font-size:13px}.list-button{gap:12px;font-weight:500;min-height:64px}.list-button b{font-size:14px}.list-button small{font-size:11px}.avatar{height:49px;width:49px;background:linear-gradient(135deg,#e7f4ff,#d7e9fb);border:3px solid #f5f9fd}.chev{font-size:24px}button,.button{border-radius:10px;font-size:13px}.actions button{min-width:120px}.button.whatsapp{background:#16a363;color:white}.profile-head{display:flex;gap:14px;align-items:center;margin:5px 0 20px}.profile-head .avatar{height:70px;width:70px;font-size:21px}.profile-head h2{margin:7px 0;font-size:19px}.detail-fields{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:18px}.detail-fields>div{padding:12px 15px;border-bottom:1px solid var(--line)}.detail-fields>div:last-child{border:0}.detail-fields small{display:block;font-size:11px;margin-bottom:4px}.detail-fields b{display:block;font-size:14px;font-weight:500}.park-status{display:flex;gap:10px;margin-bottom:20px}.park-status span{flex:1;border-radius:10px;padding:12px;background:#edf5ff;color:#27669d;font-size:12px}.park-status span:last-child{background:#fff5e5;color:#997125}.park-status b{display:block;font-size:23px;margin-top:3px}.vehicle-list{display:grid;gap:8px}.vehicle-list .card{display:grid;grid-template-columns:105px 1fr;gap:0 14px;margin:0}.vehicle-list .vehicle-media{grid-row:1/4;margin:0}.vehicle-list .vehicle-photo,.vehicle-list .photo-missing{height:105px}.vehicle-list .photo-missing{font-size:10px;padding:8px}.vehicle-list .brand-logo{width:32px;height:32px;right:4px;bottom:4px;padding:3px}.vehicle-list h3{margin:7px 0}.vehicle-list p{margin:2px 0;font-size:12px}.vehicle-list button{justify-self:start;min-height:31px;padding:6px 12px;font-size:12px}.form-grid input,.form-grid select{padding:10px;font-size:13px}.form-grid label{font-size:11px}dialog{padding:18px;border-radius:18px}.dialog-head{border-bottom:1px solid var(--line);padding-bottom:12px}.dialog-head h2{font-size:18px}#drawer{position:fixed;inset:0 auto 0 0;margin:0;height:100dvh;max-height:100dvh;width:min(84vw,320px);max-width:320px;border-radius:0;padding:0;overflow-y:auto}#drawer::backdrop{background:#10284177}.drawer-brand{position:relative;padding:28px 22px;background:linear-gradient(135deg,#0874dd,#044d9a);color:white}.drawer-brand b{display:block;font-size:25px}.drawer-brand small{color:#d4eaff;display:block;margin-top:5px}.drawer-brand button{position:absolute;right:12px;top:12px;color:white}.drawer-brand:after{content:'Saïd · Administrateur';display:block;margin-top:22px;font-size:13px}#drawer-links{padding:14px}#drawer-links button,#drawer-links a{display:flex;align-items:center;gap:14px;width:100%;padding:14px 12px;background:none;color:var(--ink);text-decoration:none;justify-content:flex-start;font-weight:500;border-radius:10px;font-size:14px}#drawer-links .selected{background:#eaf3ff;color:#0762c4}#drawer-links button:hover,#drawer-links a:hover{background:#f0f6ff}.connection{max-width:440px;margin:0 auto;padding-top:30px;background:linear-gradient(160deg,#126baf,#044372);border-radius:24px}.connection-intro{text-align:center;color:white;padding:20px 15px 35px}.connection-intro .ui-icon{width:65px;height:65px}.connection-intro h1{font-size:31px;margin:15px 0 8px}.connection-intro p{margin:0 0 8px}.connection-intro small{color:#d8e9f5}.connection .card{margin:0;padding:26px 20px;border-radius:24px 24px 20px 20px}.connection button{width:100%}.connection-foot{text-align:center;font-size:12px;color:var(--muted);margin-top:25px}@media(min-width:720px){.vehicle-list{grid-template-columns:1fr 1fr}.metric{min-height:115px}main{padding-top:26px}}@media(max-width:380px){.actions{gap:7px}.actions button{min-width:100px;padding:10px;font-size:12px}.brand b{font-size:17px}.brand small{font-size:8px}.vehicle-list .card{grid-template-columns:90px 1fr}.metric b{font-size:21px}}@media(prefers-reduced-motion:no-preference){button,.button{transition:background .15s,transform .15s}button:active,.button:active{transform:scale(.98)}}

/* Fond simple bleu dégradé pour la connexion */
body.connection-page{min-height:100dvh;background:linear-gradient(155deg,#258be8 0%,#1269ca 48%,#094a9b 100%);background-attachment:fixed}body.connection-page header{background:transparent}body.connection-page nav{display:none}body.connection-page main{min-height:calc(100dvh - 72px);padding-bottom:35px}body.connection-page .connection{background:transparent}body.connection-page .connection .card{box-shadow:0 16px 45px #06356b22}

.dashboard-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.dashboard-card{display:block;text-align:left;color:var(--ink);min-height:145px;width:100%;padding:16px}.dashboard-card .ui-icon{padding:6px;box-sizing:content-box;border-radius:10px;background:#eaf4ff;color:#0870d5;margin-bottom:8px}.dashboard-card small{display:block;font-size:13px;font-weight:600}.dashboard-card b{font-size:30px;margin:5px 0}.dashboard-card>span{font-size:11px;color:var(--muted);font-weight:400}.dashboard-card.green{background:#f0fbf5}.dashboard-card.blue{background:#edf6ff}.dashboard-card.amber{background:#fff8e9}.dashboard-card.pink{background:#fff0f3}.dashboard-card.purple{background:#f3efff}.dashboard-card:last-child{grid-column:1/-1}.dashboard-card:focus-visible{outline:3px solid #0870d5;outline-offset:3px}@media(min-width:720px){.dashboard-cards{grid-template-columns:repeat(5,minmax(0,1fr))}.dashboard-card:last-child{grid-column:auto}}

.maintenance-danger{background:#fff0f2;color:#b91c36;border:1px solid #ffc4ce;border-left:4px solid #d52242;margin:10px 0}.maintenance-danger b{color:#b91c36}.maintenance-danger button{margin-top:10px;display:flex}
/* HBZ Android — maquette du 07/10/2026 */
:root{--navy:#08284e;--blue:#0865d4;--ink:#152d47;--bg:#f4f7fb}header{background:linear-gradient(120deg,#062342,#083c75);min-height:66px;padding:10px max(12px,calc((100vw - 900px)/2))}.hbz-logo{width:54px;height:40px;object-fit:contain;border-radius:6px}.brand{gap:9px}.brand b{font-size:18px}.brand em{color:#f4cc45}.brand small{font-size:9px;color:#d0dce8}main{padding:14px 12px 90px}.card{border-radius:12px;padding:13px;box-shadow:0 2px 9px #163b6510}button,.button{border-radius:8px;min-height:43px}.fleet-banner{border-radius:14px;overflow:hidden;background:linear-gradient(120deg,#08284e,#1266ab);color:white;margin-bottom:17px;padding:15px}.fleet-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.fleet-title b{color:#ffd452;font-size:18px}.fleet-title small{color:#d6eaff;font-size:10px}.fleet-photos{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:13px}.fleet-photos img{width:100%;height:82px;object-fit:contain;background:white;border-radius:7px}.fleet-banner p{font-size:12px}.dashboard-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-card{display:grid;grid-template-columns:38px 1fr;text-align:left;padding:12px;min-height:108px;color:var(--ink);border:0;box-shadow:none;gap:3px 10px}.dashboard-card .ui-icon{grid-row:1/3;width:36px;height:36px;padding:7px;background:#fff9;border-radius:10px}.dashboard-card small{font-size:12px;font-weight:650;line-height:1.3}.dashboard-card b{font-size:26px;margin:0}.dashboard-card span{grid-column:1/-1;font-size:10px;color:#537087}.dashboard-card.green{background:#eaf8ee;border:0}.dashboard-card.blue{background:#eaf3ff}.dashboard-card.amber{background:#f5eeff;border:0}.dashboard-card.pink{background:#fff1e8;border:0}.dashboard-card.purple{background:#fff0f3}.dashboard-card:last-child{grid-column:1/-1}.dashboard-card.green .ui-icon{color:#16a65c}.dashboard-card.blue .ui-icon{color:#0865d4}.dashboard-card.amber .ui-icon{color:#8a48cb}.dashboard-card.pink .ui-icon{color:#e79426}.dashboard-card.purple .ui-icon{color:#d63359}.search{background:white;border:1px solid #dce5ee;box-shadow:0 2px 5px #183a5707;margin:12px 0;font-size:13px}.list-button{min-height:64px}.avatar{border:0;background:#eee8ff;color:#654db2}.card:nth-child(3n) .avatar{background:#e1f1ff;color:#2473bc}.card:nth-child(4n) .avatar{background:#fff0d5;color:#aa7317}nav button.active{background:#0865d4;color:white}nav button{font-size:10px}#drawer{background:white}#drawer .drawer-brand{background:#08284e;color:white}#drawer-links button.selected{background:#e5f2ff;color:#0865d4}.hbz-tabs{display:flex;border-bottom:1px solid #dfe8f2;margin:0 0 15px;gap:3px}.hbz-tabs button{flex:1;background:none;color:#6a7e91;padding:9px 4px;border-radius:0;font-size:12px;border-bottom:3px solid transparent;min-width:0}.hbz-tabs button.active{color:#0865d4;border-color:#0865d4}.profile-head{margin:5px 0 15px}.detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-fields>div{padding:9px 0;border-bottom:1px solid #edf1f5}.detail-fields b{display:block;font-size:13px;overflow-wrap:anywhere}.client-contact{margin-bottom:15px}.booking-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.booking-panel[hidden],[role=tabpanel][hidden]{display:none!important}.booking-panel .full,.booking-panel>section,.booking-panel>#quote,.booking-panel>#booking-status,.booking-panel>#save-booking,.booking-panel>button,.booking-panel>.note,.booking-vehicle-preview{grid-column:1/-1}.booking-panel>label:has([name=vehicle_code]){grid-column:1/-1}.booking-panel:first-of-type{display:block}.booking-vehicle-preview{border:1px solid #d9e7f7;border-radius:12px;padding:12px;margin:8px 0}.booking-vehicle-preview .vehicle-photo{height:145px}.booking-vehicle-preview .vehicle-media{margin:0 0 8px}.wizard-footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e5edf5;padding-top:14px;margin-top:20px}.wizard-footer button{flex:1}.signature{background:white;height:180px}.booking-dialog .dialog-head{background:#08284e;color:white;margin:-20px -20px 15px;padding:16px 20px}.booking-dialog .dialog-head .icon{color:white;background:none}.connection-page{background:linear-gradient(145deg,#052345,#075dae)}.connection-intro h1{color:white}.connection-intro p,.connection-intro small{color:#d5e7f8}.login-logo{display:block;width:180px;height:90px;object-fit:contain;margin:0 auto 15px}.connection-intro>.ui-icon{display:none}.connection form{border-radius:18px;background:white}.connection form h2{text-align:center;font-size:25px}.connection form>button{width:100%}.connection{max-width:420px;margin:auto}.maintenance-danger{margin:8px 0;border-left:3px solid #d63359;border-radius:8px;font-size:12px}.maintenance-danger button{margin-top:8px}@media(min-width:720px){.dashboard-cards{grid-template-columns:repeat(3,1fr)}.dashboard-card:last-child{grid-column:auto}.fleet-photos img{height:130px}}@media(max-width:380px){.brand b{font-size:16px}.booking-panel{grid-template-columns:1fr}.fleet-title small{display:none}}
.vehicle-list{display:block}.vehicle-list>.card{display:grid;grid-template-columns:108px 1fr;gap:4px 12px;align-items:center}.vehicle-list .vehicle-media{grid-row:1/4;margin:0;background:#f5f8fc}.vehicle-list .vehicle-photo{height:95px}.vehicle-list .photo-missing{height:95px;font-size:10px;padding:8px}.vehicle-list .brand-logo{width:28px;height:28px;padding:3px;right:3px;bottom:3px}.vehicle-list h3{margin:0;font-size:14px}.vehicle-list p{font-size:12px;margin:0}.vehicle-list button{justify-self:start;min-height:32px;padding:6px 13px;font-size:12px}.vehicle-list>.card>*:not(.vehicle-media){grid-column:2}

/* Empêche le logo et les contenus de modifier la largeur du téléphone. */
html{width:100%;overflow-x:clip}body{width:100%;min-width:0;overflow-x:clip}header{width:100%;max-height:90px;overflow:hidden;min-width:0}.brand{min-width:0;flex:1}.brand>div{min-width:0}.brand b,.brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbz-logo{max-width:54px!important;max-height:40px!important;flex:0 0 54px}main{width:100%;min-width:0}main>.card,main>.grid,main>.dashboard-cards{min-width:0;max-width:100%}img{max-width:100%}.card p,.card h3{overflow-wrap:anywhere}dialog{max-width:94vw}nav{width:100%;max-width:100vw}nav button{min-width:0}.fleet-photos{min-width:0}.fleet-photos img{min-width:0}@media(max-width:600px){main{margin:0;padding:16px 12px 95px}.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.brand b{font-size:16px}}
/* Maquettes HBZ : connexion et synthèse financière */
body.hbz-login,body.connection-page{background:#06264f}body.hbz-login header,body.connection-page header,body.hbz-login nav{display:none}body.hbz-login main,body.connection-page main{padding:0;max-width:520px;margin:auto}.hbz-login-shell{background:#09284c;min-height:100dvh;padding-bottom:24px}.hbz-login-scene{width:100%;aspect-ratio:1024/790;background:url('login-reference.png') top center/100% auto no-repeat}.hbz-login-form{position:relative;margin:-12px 8.5% 0;padding:48px 20px 24px;background:linear-gradient(145deg,#fff,#e9eef7);border-radius:25px;box-shadow:0 12px 35px #00162e66;text-align:center}.login-lock{position:absolute;top:-34px;left:calc(50% - 34px);border:7px solid #f4e5be;background:#06264f;border-radius:50%;width:68px;height:68px;display:grid;place-items:center;font-size:27px}.hbz-login-form h1{font-size:29px;color:#052553}.gold-line{height:3px;background:#e3b005;width:63px;margin:12px auto 18px}.password-wrap{position:relative}.password-wrap input{padding:16px 45px 16px 14px;border:1px solid #81b7fa;box-shadow:0 3px 9px #298cee20;margin:0}.password-eye{position:absolute;right:3px;top:3px;color:#06264f;background:none;padding:8px;font-size:22px}.login-submit{width:100%;background:linear-gradient(#087cff,#03429f);border-radius:15px;padding:17px;font-size:17px;box-shadow:0 8px 17px #0963cf30}.login-note{font-size:11px;color:#60748e;margin:12px 0}.hbz-login-footer{display:flex;justify-content:space-around;margin:28px 7% 0;color:white}.hbz-login-footer span{font-size:26px;text-align:center;flex:1;border-right:1px solid #8495ac}.hbz-login-footer span:last-child{border:0}.hbz-login-footer small{display:block;font-size:12px;color:white;margin-top:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#login-error{color:#ba2140;font-size:12px;margin:8px 0}.hbz-finance-notice{background:linear-gradient(120deg,#eaf6ff,#e2f2ff);border:1px solid #d0e8ff;border-radius:18px;padding:18px;color:#183d68}.hbz-finance-notice p{margin:5px 0 0;font-size:13px;color:#60748b}.finance-filters{margin:10px 0;font-size:12px}.finance-filters summary{cursor:pointer;font-weight:650}.finance-updated{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:12px;flex-wrap:wrap}.finance-updated button{order:2;border-radius:24px}.hbz-finance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.hbz-finance-card{display:grid;grid-template-columns:38px 1fr;gap:7px 10px;padding:16px 12px;text-align:left;color:#07254b;background:linear-gradient(135deg,#fff,#edf7ff);border:1px solid #deebf6;border-left:4px solid #56b0f4;border-radius:18px;box-shadow:0 4px 13px #143a6110;min-width:0}.hbz-finance-card.amber{background:linear-gradient(135deg,#fff,#fff9ec);border-color:#f8d36c}.hbz-finance-card.green{background:linear-gradient(135deg,#fff,#effcf4);border-color:#50d0a1}.hbz-finance-card.pink{background:linear-gradient(135deg,#fff,#fff1f6);border-color:#fc819f}.finance-icon{display:grid;place-items:center;width:36px;height:36px;color:white;border-radius:10px;background:linear-gradient(135deg,#38a7f5,#087ad5);font-size:25px;box-shadow:0 4px 8px #0865d426}.amber .finance-icon{background:linear-gradient(135deg,#ffc72d,#e68b07)}.green .finance-icon{background:linear-gradient(135deg,#59c86d,#20a76b)}.pink .finance-icon{background:linear-gradient(135deg,#ff6f90,#ee345e)}.finance-label{font-size:13px;align-self:center}.finance-label small{display:block;font-weight:400;color:#567086;font-size:11px}.hbz-finance-card strong{grid-column:1/-1;font-size:clamp(18px,4.8vw,29px);text-align:right;white-space:nowrap;letter-spacing:-.6px;margin:3px 0 8px}.finance-description{grid-column:1/-1;border-top:1px solid #dae8f0;padding-top:10px;font-weight:400;font-size:11px;color:#49617d;display:flex;align-items:center;justify-content:space-between;gap:8px}.finance-description i{font-style:normal;font-size:25px;color:#1469b9;border-radius:50%;background:#e6f2fc;min-width:24px;text-align:center}.finance-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.finance-quick div{border-right:1px solid #e2eaf2;text-align:center;font-size:11px;color:#526980}.finance-quick div:last-child{border:0}.finance-quick b{display:block;color:#06264f;font-size:15px;margin-top:9px;overflow-wrap:anywhere}@media(max-width:360px){.hbz-finance-card{padding:12px 8px;grid-template-columns:30px 1fr;gap:7px}.finance-icon{width:30px;height:30px}.finance-label{font-size:11px}.finance-quick{grid-template-columns:repeat(2,1fr)}}

/* Statut sur chaque photo de la liste véhicules. */
.vehicle-media{position:relative}.vehicle-status{position:absolute;top:7px;left:6px;z-index:2;display:inline-flex;align-items:center;padding:5px 8px;border-radius:20px;font-size:10px;font-weight:750;line-height:1.2;box-shadow:0 2px 7px #08284e25;border:1px solid #ffffffcc;max-width:calc(100% - 12px)}.vehicle-status.available{background:#daf8e5;color:#17633d}.vehicle-status.rented{background:#ffe3e8;color:#ad203d}.vehicle-status.reserved{background:#fff1cd;color:#855900}.vehicle-status.offline{background:#edf0f4;color:#536171}

/* Formulaires Android HBZ */
.hbz-form-dialog,.booking-dialog{width:min(100%,800px);max-width:100%;height:100dvh;max-height:100dvh;margin:0 auto;border-radius:0}.dialog-head{background:#08284e;color:white;position:sticky;top:0;z-index:5}.hbz-tabs{display:flex;gap:5px;overflow-x:auto;margin:12px 0}.hbz-tabs button{flex:1;white-space:normal;min-width:88px;font-size:12px;padding:12px 8px;background:#e8f0fb;color:#22466b}.hbz-tabs button.active{background:#0762ef;color:white}.hbz-section,.booking-panel{border-radius:16px;background:#f7fbff;padding:14px}.booking-panel h3{color:#08284e;border-bottom:2px solid #cce1fa;padding-bottom:10px}.hbz-checks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.hbz-checks label{display:flex;gap:8px;align-items:center}.hbz-checks input{width:20px;height:20px;accent-color:#0762ef}.booking-vehicle-preview .vehicle-image{max-height:230px}.wizard-footer{position:sticky;bottom:0;padding:12px;background:white;display:flex;gap:12px}.wizard-footer button{flex:1}[hidden]{display:none!important}@media(max-width:480px){.hbz-tabs button{min-width:65px;padding:10px 4px;font-size:11px}.detail-fields{grid-template-columns:1fr 1fr}}
