
:root{--ink:#182a42;--muted:#718096;--blue:#185bd8;--bg:#f5f7fb;--line:#e5eaf1}body{background:var(--bg);color:var(--ink);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.wrap{max-width:1160px;padding:22px 25px 75px}.head{border-bottom:1px solid var(--line);padding:3px 0 20px}.brand h1{font-size:21px;letter-spacing:-.8px}.mark{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:#205bce;letter-spacing:-.7px}.head .muted{font-size:12px}.panel{border:1px solid #e7ebf2;border-radius:20px;box-shadow:0 3px 13px rgba(30,55,93,.03);padding:24px}.panel h2{font-size:20px;letter-spacing:-.6px}input,select,textarea{border:1px solid #d9e0ea;border-radius:12px;min-height:46px}textarea{line-height:1.55}.btn{border-radius:12px;background:var(--blue);font-weight:720;transition:filter .15s}.btn:hover{filter:brightness(.96)}.btn.alt{background:#ebf1fb;color:#2251a3}.tabs{margin:18px 0 24px;display:flex;gap:8px;flex-wrap:wrap}.tabs button{background:transparent;color:#607189;padding:11px 17px;border:0;border-radius:12px}.tabs button.active{background:#e8effb;color:#1a56bf}.tabs button span{margin-left:3px}.eyebrow{font-size:10px;font-weight:850;letter-spacing:1.5px;color:#5385e3;margin-bottom:12px}.hero{background:#153c82;color:#fff;padding:32px 35px;border-radius:24px;position:relative;overflow:hidden;margin-bottom:18px}.hero:after{content:'';position:absolute;border:1px solid #ffffff20;width:270px;height:270px;border-radius:100%;right:-85px;top:-120px}.hero .eyebrow{color:#a9c8ff}.hero h2{font-size:30px;margin:0 0 7px;letter-spacing:-1px}.hero p{color:#d5e3ff;margin:0 0 25px}.hero-cta{background:#fff;color:#16469c;border:0;border-radius:12px;padding:14px 20px;font-size:15px;font-weight:800;position:relative;z-index:1}.hero-cta span{margin-left:18px}.overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.metric{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:5px}.metric span{color:#65758d;font-size:12px}.metric strong{font-size:29px;letter-spacing:-1px}.metric small{font-size:11px;color:#9aa6b7}.recent{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eef1f7;padding:15px 0;gap:10px}.recent:last-child{border-bottom:0}.recent small{display:block;color:#8896a8;margin-top:4px}.status-pill{font-size:11px;padding:7px 9px;border-radius:99px;background:#eaf6ef;color:#16734a}.empty-state{background:#f6f8fc;color:#7b889b;border-radius:14px;padding:24px;font-size:13px}.text-button{background:transparent;border:0;color:#1d5dc9;font-weight:700}.voice-status{border-radius:14px}#fieldView>.panel:first-child{border-top:3px solid #225fd3}.avatar{width:43px;height:43px}.profile-card{margin-bottom:18px}.profile-card .avatar{width:76px;height:76px}.profile-card .muted{display:block}.item{grid-template-columns:minmax(0,2fr) 90px 100px 42px}
@media(max-width:680px){.wrap{padding:12px 14px 94px}.head{padding:4px 0 12px}.brand h1{font-size:19px}.brand .muted{font-size:10px}.mark{width:46px;height:46px;padding:0}.head .row{justify-content:flex-start;gap:5px}.head #who{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.head #openProfile{min-height:35px;padding:3px 7px}.head #logout{font-size:11px;min-height:35px;padding:6px 9px}.avatar{width:31px;height:31px}.panel{padding:18px 16px;border-radius:19px}.hero{padding:26px 22px;border-radius:20px}.hero h2{font-size:26px}.hero-cta{width:100%;text-align:left;display:flex;justify-content:space-between}.overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric{padding:15px}.metric strong{font-size:25px}.tabs{position:fixed;z-index:50;bottom:0;left:0;right:0;margin:0;padding:9px 7px max(11px,env(safe-area-inset-bottom));border-top:1px solid #e0e5ef;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);display:flex;justify-content:space-around;gap:1px;box-shadow:0 -3px 14px #263a5210}.tabs button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:20px;min-height:52px;padding:5px 2px;border-radius:10px}.tabs button span{font-size:10px;margin:0;font-weight:650}.tabs button.active{background:#eaf1ff}#fieldView .voice{display:grid;grid-template-columns:1fr 1fr}#fieldView .voice button{font-size:13px;padding:12px 9px}.item{grid-template-columns:minmax(0,1.6fr) 65px 74px 34px}.item input{font-size:13px}.recent b{font-size:13px}.status-pill{font-size:10px}footer{margin-bottom:24px}#buyerView .tablewrap{border-radius:12px}#buyerView table{min-width:680px}}
@media print{.tabs,.head .row,.btn,.install,.hero-cta{display:none!important}.wrap{padding:0}.panel{box-shadow:none}}
.auth-switch{display:flex;gap:8px;margin:16px 0 24px}.auth-switch .btn{flex:1}.role-box{margin-top:24px;padding:20px;border:1px solid #dce3ed;border-radius:16px;background:#f8fafc}.role-box h3{margin:0 0 7px}.role-box .field{margin:12px 0}.role-box p{line-height:1.5}
/* V6 — Identité officielle verrouillée : navy / orange, logo MPM Achats */
:root{--ink:#09283a;--blue:#09283a;--muted:#627482;--line:#e5e9e9;--bg:#f7f8f7}
body{background:var(--bg);color:var(--ink)}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}
.brand-logo{display:block;width:min(330px,48vw);height:auto;max-height:100px;object-fit:contain;object-position:left center}
.brand-subtitle{font-size:11px;color:#6c7c85;letter-spacing:.1px}
.auth-logo{width:min(100%,330px);height:auto;display:block;margin:0 auto 24px}
.btn,.tabs button.active{background:#09283a;color:white}
.btn.alt{background:#eaf0f2;color:#16394d}
.tabs button{color:#4b6674}.tabs button.active{background:#e9f0f2;color:#09283a}
.hero{background:#09283a}.hero .eyebrow{color:#ffc6a2}
.hero-cta{color:#09283a}.stat{color:#df732e}.eyebrow{color:#b85b21}
.text-button{color:#af521e}.metric strong{color:#09283a}
.step-title{color:#b85b21}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #df732e;outline-offset:2px}
@media(max-width:680px){.brand-logo{width:min(230px,54vw);max-height:82px}.brand-subtitle{font-size:9px}.head{align-items:flex-start}.auth-logo{max-width:245px}}
@media print{.brand-logo{width:260px}}

/* Signature affichée uniquement avant connexion */
body.logged-in .brand-subtitle{display:none}
.auth-promise{font-weight:800;font-size:clamp(18px,3.4vw,24px);line-height:1.22;color:#09283a;margin:6px 0 3px;text-align:center}
.auth-support{color:#556774;font-size:14px;text-align:center;margin:0 0 22px}

/* V6.3 — Refonte authentification : une seule marque, une seule priorité */
:root{--ink:#0b293a;--muted:#617485;--line:#dfe7e9;--bg:#f7f8f7}
body{background:#f7f8f7}
body:not(.logged-in) .head{display:none}
body:not(.logged-in) .wrap{max-width:520px;margin:auto;padding:clamp(24px,5vw,44px) 20px 65px}
body:not(.logged-in) #login{margin:0 auto!important;max-width:480px!important;border:0;box-shadow:none;background:transparent;padding:0 6px;border-radius:0}
body:not(.logged-in) #login .auth-logo{width:min(100%,300px);max-height:none;margin:0 auto 22px;object-fit:contain;display:block}
body:not(.logged-in) #login .auth-intro{margin:0 auto 30px;text-align:center;max-width:390px}
body:not(.logged-in) #login .auth-promise{font-size:clamp(21px,4.9vw,27px);letter-spacing:-.7px;font-weight:800;line-height:1.19;margin:0 0 10px}
body:not(.logged-in) #login .auth-support{font-size:15px;color:#637684;line-height:1.5;margin:0}
body:not(.logged-in) #authTitle{font-size:20px;letter-spacing:-.5px;margin:0 0 15px}
body:not(.logged-in) .auth-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#e8eeef;border-radius:13px;padding:5px;margin:0 0 24px}
body:not(.logged-in) .auth-switch .btn{min-height:43px;border-radius:9px;background:transparent;color:#314e5d;font-size:14px;padding:10px 7px}
body:not(.logged-in) .auth-switch .btn:not(.alt){background:#fff;color:#0b293a;box-shadow:0 1px 5px #09283a1a}
body:not(.logged-in) .field{margin-bottom:18px;gap:8px}
body:not(.logged-in) label{font-size:13px;color:#19374a}
body:not(.logged-in) input,body:not(.logged-in) select{min-height:52px;background:#fff;border:1px solid #d5e0e5;border-radius:12px;padding:12px 15px}
body:not(.logged-in) #loginForm>.btn,body:not(.logged-in) #signupForm>.btn{width:100%;min-height:52px;font-size:15px}
body:not(.logged-in) #install{display:none!important}
body:not(.logged-in) footer{margin:32px 0;color:#8b99a1}
body.logged-in .head{border:none;background:transparent;box-shadow:none;border-radius:0;padding:5px 0 15px}
body.logged-in .brand-logo{width:min(220px,42vw);max-height:70px}
body.logged-in .install{background:#f0f4f5;border:1px solid #e3e9eb;border-radius:13px;padding:11px 14px;margin:4px 0 18px;box-shadow:none;font-size:13px}
body.logged-in .install img{width:36px;height:36px}
body.logged-in .install .btn{min-height:38px;font-size:13px;padding:8px 11px}
@media(max-width:650px){body:not(.logged-in) .wrap{padding:35px 23px 64px}body:not(.logged-in) #login .auth-logo{max-width:265px}body:not(.logged-in) #login .auth-intro{margin-bottom:30px}body:not(.logged-in) .auth-promise{font-size:23px!important}body:not(.logged-in) #login{padding:0!important}body.logged-in .install{gap:8px}body.logged-in .install .muted{font-size:11px}}
