@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/670b84281b234e8b-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c609bc916991e10c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/670b84281b234e8b-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c609bc916991e10c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/670b84281b234e8b-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c609bc916991e10c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/670b84281b234e8b-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c609bc916991e10c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/670b84281b234e8b-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Red_Hat_Display_f4c31c;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/c609bc916991e10c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Red_Hat_Display_Fallback_f4c31c;src:local("Arial");ascent-override:102.68%;descent-override:30.76%;line-gap-override:0.00%;size-adjust:99.15%}.__className_f4c31c{font-family:__Red_Hat_Display_f4c31c,__Red_Hat_Display_Fallback_f4c31c;font-style:normal}.__variable_f4c31c{--font-display:"__Red_Hat_Display_f4c31c","__Red_Hat_Display_Fallback_f4c31c"}@font-face{font-family:__Red_Hat_Text_b65676;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/db0fddcdae7cf88c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Red_Hat_Text_b65676;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/feec6f6f0d18f76b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Red_Hat_Text_b65676;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/db0fddcdae7cf88c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Red_Hat_Text_b65676;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/feec6f6f0d18f76b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Red_Hat_Text_b65676;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db0fddcdae7cf88c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Red_Hat_Text_b65676;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/feec6f6f0d18f76b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Red_Hat_Text_Fallback_b65676;src:local("Arial");ascent-override:101.53%;descent-override:30.42%;line-gap-override:0.00%;size-adjust:100.27%}.__className_b65676{font-family:__Red_Hat_Text_b65676,__Red_Hat_Text_Fallback_b65676;font-style:normal}.__variable_b65676{--font-text:"__Red_Hat_Text_b65676","__Red_Hat_Text_Fallback_b65676"}:root{--blue:#1b3fac;--blue-mid:#2453cc;--blue-dark:#163490;--blue-dim:rgba(27,63,172,.08);--blue-glow:rgba(27,63,172,.25);--green:#5cba3c;--green-dark:#3e9028;--green-dim:rgba(92,186,60,.1);--panel:#0c1a3b;--surface:#fff;--bg:#f2f5fb;--ink:#0d1b3e;--ink-mid:#3a4a6b;--ink-soft:#7080a0;--border:#dde2f0;--red:#d13030;--radius:18px;--radius-sm:10px;--pill:9999px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:var(--font-text),"Red Hat Text",sans-serif;background:var(--bg);color:var(--ink);min-height:100vh}.hidden{display:none!important}.layout{display:grid;grid-template-columns:300px 1fr;min-height:100vh}.panel-left{background:var(--panel);position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:36px 28px;overflow:hidden}.panel-left:before{content:"";position:absolute;inset:0;background-image:linear-gradient(hsla(0,0%,100%,.025) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.025) 1px,transparent 0);background-size:36px 36px;pointer-events:none}.panel-brand{display:flex;justify-content:center;align-items:center;position:relative;z-index:1;margin-bottom:48px}.panel-logo{display:block;width:170px;height:auto;filter:brightness(0) invert(1)}.panel-tagline{position:relative;z-index:1;border-top:1px solid hsla(0,0%,100%,.06);padding-top:20px}.panel-tagline p{font-size:.75rem;color:hsla(0,0%,100%,.28);font-family:Red Hat Text,sans-serif;line-height:1.55}.panel-nav{flex:1 1;display:flex;flex-direction:column;gap:4px;position:relative;z-index:1}.panel-nav-link{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius-sm);color:hsla(0,0%,100%,.4);text-decoration:none;font-family:Red Hat Text,sans-serif;font-size:.875rem;font-weight:600;transition:all .2s;border:1px solid transparent}.panel-nav-link:hover{background:hsla(0,0%,100%,.07);color:hsla(0,0%,100%,.85)}.panel-nav-link.active{background:rgba(36,83,204,.22);color:#fff;border-color:rgba(36,83,204,.35)}.panel-footer{position:relative;z-index:1;margin-top:12px;padding-top:14px;border-top:1px solid hsla(0,0%,100%,.08);display:flex;flex-direction:column;gap:8px}.panel-user-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.panel-username{font-size:.8rem;color:hsla(0,0%,100%,.7);font-family:Red Hat Text,sans-serif;overflow:hidden;text-overflow:ellipsis;max-width:120px}.panel-role-badge,.panel-username{font-weight:600;white-space:nowrap}.panel-role-badge{font-size:.65rem;padding:2px 7px;border-radius:var(--pill);background:hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.45)}.btn-logout{width:100%;padding:7px 12px;background:transparent;border:1px solid hsla(0,0%,100%,.12);border-radius:var(--radius-sm);color:hsla(0,0%,100%,.4);font-size:.775rem;font-family:Red Hat Text,sans-serif;font-weight:500;cursor:pointer;transition:all .2s;text-align:center}.btn-logout:hover{background:rgba(220,53,69,.2);border-color:rgba(220,53,69,.4);color:#f87171}.badge-role-superadmin{background:rgba(139,92,246,.12);color:#7c3aed}.badge-role-admin{background:rgba(27,63,172,.1);color:var(--blue)}.badge-role-user{background:rgba(92,186,60,.1);color:#3a8a20}.panel-desc{flex:1 1;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.panel-desc-title{font-family:Red Hat Display,sans-serif;font-size:1.05rem;font-weight:700;color:hsla(0,0%,100%,.9);margin-bottom:10px;line-height:1.3}.panel-desc-text{font-size:.78rem;color:hsla(0,0%,100%,.38);font-family:Red Hat Text,sans-serif;line-height:1.6}.panel-right{display:flex;flex-direction:column;min-height:100vh}.mobile-bar{display:none;background:var(--panel);padding:0 20px;height:52px;align-items:center;flex-shrink:0;position:relative;overflow:hidden}.mobile-bar:before{content:"";position:absolute;inset:0;background-image:linear-gradient(hsla(0,0%,100%,.025) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.025) 1px,transparent 0);background-size:36px 36px;pointer-events:none}.mobile-bar-logo{height:22px;width:auto;filter:brightness(0) invert(1);position:relative;z-index:1}.page-content{flex:1 1;padding:36px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px;padding-bottom:24px;border-bottom:1.5px solid var(--border)}.page-title{font-family:Red Hat Display,sans-serif;font-size:1.5rem;font-weight:700;color:var(--ink)}.page-sub{font-size:.85rem;color:var(--ink-soft);margin-top:4px}.login-screen{display:grid;grid-template-columns:300px 1fr;min-height:100vh}.login-left{background:var(--panel);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 28px}.login-left:before{content:"";position:absolute;inset:0;background-image:linear-gradient(hsla(0,0%,100%,.025) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.025) 1px,transparent 0);background-size:36px 36px;pointer-events:none}.login-logo{display:block;width:150px;height:auto;filter:brightness(0) invert(1);margin-bottom:20px}.login-logo,.login-tagline{position:relative;z-index:1}.login-tagline{font-size:.75rem;color:hsla(0,0%,100%,.3);text-align:center;line-height:1.55}.login-right{display:flex;align-items:center;justify-content:center;padding:40px 24px;background:var(--bg)}.login-card{background:#fff;border-radius:var(--radius);box-shadow:0 1px 3px rgba(13,27,62,.06),0 8px 24px rgba(13,27,62,.07);padding:40px 36px;width:100%;max-width:400px;border:1.5px solid var(--border);animation:riseIn .3s cubic-bezier(.16,1,.3,1) both}.login-card h1{font-family:Red Hat Display,sans-serif;font-size:1.4rem;font-weight:700;color:var(--ink);margin-bottom:6px}.login-card p{font-size:.875rem;color:var(--ink-soft);margin-bottom:28px}.btn-o365{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px 16px;border:1.5px solid var(--border);border-radius:var(--radius);background:#fff;color:var(--ink);font-size:.9rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}.btn-o365:hover{background:var(--bg);border-color:var(--blue)}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--ink-soft);font-size:.8rem}.login-divider:after,.login-divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.card{background:#fff;border-radius:var(--radius);box-shadow:0 1px 3px rgba(13,27,62,.06),0 4px 16px rgba(13,27,62,.06);padding:24px;border:1.5px solid var(--border);animation:riseIn .3s cubic-bezier(.16,1,.3,1) both}.card,.card-title{margin-bottom:16px}.card-title{font-family:Red Hat Display,sans-serif;font-size:1rem;font-weight:700;color:var(--ink)}@keyframes riseIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--blue);color:#fff;border:none;border-radius:var(--pill);padding:12px 22px;font-size:.88rem;font-weight:600;font-family:Red Hat Text,sans-serif;cursor:pointer;text-decoration:none;transition:background .2s,transform .15s,box-shadow .2s;letter-spacing:.01em;white-space:nowrap}.btn-primary:hover:not(:disabled){background:var(--blue-mid);box-shadow:0 6px 20px var(--blue-glow);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.38;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:var(--ink-mid);border:1.5px solid var(--border);border-radius:var(--pill);padding:10px 18px;font-size:.875rem;font-weight:600;font-family:Red Hat Text,sans-serif;cursor:pointer;text-decoration:none;transition:all .2s;white-space:nowrap}.btn-secondary:hover{border-color:var(--blue);color:var(--blue)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;border:none;border-radius:var(--pill);padding:7px 14px;font-size:.78rem;font-weight:600;font-family:Red Hat Text,sans-serif;cursor:pointer;white-space:nowrap;transition:background .2s,transform .15s;letter-spacing:.01em}.btn-danger:hover:not(:disabled){background:#b02a37;transform:translateY(-1px)}.btn-danger:disabled{opacity:.38;cursor:not-allowed}.btn-sm{padding:5px 12px!important;font-size:.75rem!important}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:.78rem;font-weight:600;color:var(--ink-mid);margin-bottom:7px;letter-spacing:.02em}.form-control,.form-group input,.form-group select,.form-group textarea,input[type=date]{width:100%;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:11px 14px;font-size:.95rem;font-family:Red Hat Text,sans-serif;color:var(--ink);transition:border-color .2s,box-shadow .2s,background .2s}input[type=date]{width:auto;cursor:pointer;font-size:.875rem;padding:10px 14px}.form-group input::placeholder{color:var(--ink-soft);opacity:.55}.form-control:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus,input[type=date]:focus{outline:none;border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px var(--blue-dim)}.alert{padding:11px 15px;border-radius:var(--radius-sm);font-size:.875rem;line-height:1.5;border:1.5px solid transparent;margin-bottom:14px;font-family:Red Hat Text,sans-serif}.alert-error{background:rgba(209,48,48,.07);color:var(--red);border-color:rgba(209,48,48,.2)}.alert-warning{background:rgba(245,158,11,.08);color:#92400e;border-color:rgba(245,158,11,.3)}.alert-info{background:var(--blue-dim);color:var(--blue);border-color:rgba(27,63,172,.18);font-weight:500}.alert-success{background:var(--green-dim);color:var(--green-dark);border-color:rgba(92,186,60,.25)}.spinner{display:flex;align-items:center;justify-content:center;padding:36px;color:var(--ink-soft);font-size:.875rem;gap:12px;font-family:Red Hat Text,sans-serif}.spinner:before{content:"";width:20px;height:20px;border:2.5px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(1turn)}}.modal-overlay{position:fixed;inset:0;background:rgba(13,27,62,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal{background:#fff;border-radius:var(--radius);box-shadow:0 8px 40px rgba(13,27,62,.18);width:100%;max-width:480px;max-height:90vh;overflow-y:auto;border:1.5px solid var(--border)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1.5px solid var(--border)}.modal-header h3{font-family:Red Hat Display,sans-serif;font-size:1rem;font-weight:700;color:var(--ink)}.modal-close{background:none;border:none;font-size:1rem;cursor:pointer;color:var(--ink-soft);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s}.modal-close:hover{background:var(--bg)}.modal-body{padding:22px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border);font-size:.875rem}.detail-row:last-child{border-bottom:none}.detail-label{color:var(--ink-soft);font-size:.78rem;font-weight:500}.detail-label,.detail-value{font-family:Red Hat Text,sans-serif}.detail-value{font-weight:600;color:var(--ink);font-size:.9rem}.dock-highlight{font-family:Red Hat Display,sans-serif;font-size:1.4rem;font-weight:900;color:var(--blue)}.confirmation-detail{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius);overflow:hidden;margin:8px 0}.confirmation-detail .detail-row{padding:10px 16px}.badge{display:inline-block;padding:3px 10px;border-radius:var(--pill);font-size:.72rem;font-weight:600;font-family:Red Hat Text,sans-serif}.badge-dechargement{background:rgba(209,48,48,.08);color:var(--red)}.badge-chargement{background:var(--blue-dim);color:var(--blue)}.table-wrapper{overflow-x:auto;border-radius:var(--radius-sm);border:1.5px solid var(--border)}table{width:100%;border-collapse:collapse;font-size:.875rem;font-family:Red Hat Text,sans-serif}thead th{background:var(--panel);color:hsla(0,0%,100%,.78);padding:12px 14px;text-align:left;font-weight:600;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}tbody tr{border-bottom:1px solid var(--border);transition:background .15s}tbody tr:hover{background:var(--bg)}tbody td{padding:11px 14px;color:var(--ink)}.load-indicator{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--pill);font-size:.78rem;font-weight:600;font-family:Red Hat Text,sans-serif}.load-indicator.dechargement{background:rgba(209,48,48,.08);color:var(--red)}.load-indicator.chargement{background:var(--blue-dim);color:var(--blue)}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.toolbar .spacer{flex:1 1}.booking-block{border-radius:6px;padding:5px 7px;font-size:.68rem;line-height:1.3;cursor:pointer;margin-bottom:2px;font-family:Red Hat Text,sans-serif;transition:opacity .15s,transform .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.booking-block:hover{opacity:.85;transform:translateY(-1px)}.booking-block.dechargement{background:var(--red);color:#fff}.booking-block.chargement{background:var(--blue);color:#fff}.booking-block.dragging{opacity:.45}.booking-block.booking-block-warned{outline:2px solid #f59e0b;outline-offset:-2px}.legend{display:flex;gap:16px;flex-wrap:wrap;padding:12px 16px;background:#fff;border-radius:var(--radius-sm);margin-bottom:14px;border:1.5px solid var(--border)}.legend-item{display:flex;align-items:center;gap:6px;font-family:Red Hat Text,sans-serif;color:var(--ink-mid);font-size:.82rem}.legend-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.legend-dot.dechargement{background:var(--red)}.legend-dot.chargement{background:var(--blue)}.status-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--ink-soft);font-family:Red Hat Text,sans-serif}.status-badge.error{color:var(--red)}.toast-container{position:fixed;bottom:24px;right:24px;z-index:2000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{padding:12px 18px;border-radius:var(--radius-sm);font-size:.875rem;font-family:Red Hat Text,sans-serif;font-weight:500;box-shadow:0 4px 20px rgba(13,27,62,.18);animation:toastIn .3s cubic-bezier(.16,1,.3,1) both;pointer-events:all}@keyframes toastIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-success{background:var(--green);color:#fff}.toast-error{background:var(--red);color:#fff}.toast-info{background:var(--blue);color:#fff}.success-icon{font-size:2.5rem;margin-bottom:12px}.success-card h2{font-family:Red Hat Display,sans-serif;font-size:1.3rem;font-weight:700;color:var(--ink);margin-bottom:8px}.success-card p{font-size:.875rem;color:var(--ink-soft);line-height:1.5}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.gap-8{gap:8px}.flex{display:flex}.text-muted{color:var(--ink-soft)}.text-center{text-align:center}@media (max-width:768px){.layout{grid-template-columns:1fr}.panel-left{display:none}.mobile-bar{display:flex}.page-content{padding:16px}.login-screen{grid-template-columns:1fr}.login-left{display:none}.login-right{min-height:100vh}}