:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#243b3a;background:#f3f6f3;font-size:16px;--green:#235d50;--line:#d8e2dc}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;gap:18px;padding:22px 5%;background:#fff;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:32px;font-weight:bold;letter-spacing:-1px;color:var(--green);text-decoration:none}.brand span{font-size:24px;margin-left:8px;color:#b28545}#identity{margin-left:auto;font-size:14px}main{max-width:1360px;padding:36px 30px;margin:auto}h1{font-family:Georgia,serif;font-size:34px;line-height:1.2;margin:0 0 12px}h2{font-size:21px;margin:0 0 20px}h3{font-size:17px}p{line-height:1.55}.muted,small{color:#61756e}.intro{margin-bottom:30px}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:26px;margin-bottom:20px;box-shadow:0 4px 22px #203f3205}.login{max-width:440px;margin:6vh auto}.login form{display:grid;gap:18px}nav{display:flex;flex-direction:column;gap:8px}nav button{text-align:left;background:transparent;border-color:transparent;color:#385c50}nav button.active{background:#e1ebe4;border-color:#cddcd1;color:#194f40}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--green);background:var(--green);color:#fff;border-radius:9px;padding:11px 17px;font-weight:600}button.secondary{background:white;color:var(--green);border-color:#bbcfc4}button:disabled{opacity:.5;cursor:wait}button:hover:not(:disabled){filter:brightness(.95)}input,select,textarea{border:1px solid #b8ccc1;border-radius:7px;padding:10px;color:#243b3a;background:white;max-width:100%}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #92baab;outline-offset:2px}input[type=checkbox]{accent-color:var(--green);width:18px;height:18px;flex-shrink:0}label.field{display:grid;gap:7px;font-size:14px;font-weight:600;margin-bottom:18px}textarea{width:100%;min-height:150px;line-height:1.45;resize:vertical}.row{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.row .field{flex:1;min-width:150px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.check{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;margin:14px 0}.tag{display:inline-block;padding:5px 10px;border-radius:20px;background:#e6efe7;color:#365c45;font-size:13px}.warning{background:#fff6df;border:1px solid #e7d5a7;padding:16px;border-radius:9px;line-height:1.5;margin:16px 0}.success{background:#e2f0e5;padding:16px;border-radius:9px}#notice{max-width:1300px;margin:18px auto 0;padding:16px 20px;border-radius:10px;background:#fff0e8;border:1px solid #e2ba9f}#notice.ok{background:#e2f0e5;border-color:#b3cdbb}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:#607269;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em;background:#f5f8f5}td,th{padding:12px 8px;border-bottom:1px solid #e4eae6;vertical-align:top}td input,td select{padding:8px;width:100%}td textarea{padding:8px;min-width:230px;min-height:82px;font-size:14px}td input[type=date]{min-width:140px}td input[type=number]{min-width:78px;width:84px}.excluded{opacity:.5}.list-item{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:16px 0}.list-item button{padding:8px 12px}.source{white-space:pre-wrap;max-height:240px;overflow:auto;line-height:1.5;font-size:14px;background:#f5f8f5;padding:16px;border-radius:9px}details{margin:16px 0}summary{cursor:pointer;color:var(--green);font-weight:600}a{color:#236253}a.download{display:inline-block;border:1px solid #bfd0c4;border-radius:8px;padding:9px 13px;text-decoration:none;font-size:14px;margin-right:8px}.stats{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.stats div{background:#f1f6f1;padding:14px 20px;border-radius:10px}.stats strong{display:block;font-size:24px;color:var(--green)}footer{max-width:1300px;margin:20px auto;padding:20px 30px;color:#718276;font-size:12px}pre{white-space:pre-wrap}.empty{padding:30px 0;color:#728278}.busy{cursor:progress}@media(max-width:900px){.layout{grid-template-columns:1fr}nav{flex-direction:row;flex-wrap:wrap}main{padding:25px 15px}.card{padding:20px}header{padding:18px 15px;gap:10px}.brand{font-size:26px}#identity{display:none}header select{margin-left:auto}h1{font-size:29px}}

/* Direction visuelle pétrole / citron — adaptation originale pour Yulia.
   Référence de composition : DESH. Group, Dribbble shot 23902194. */
:root{color-scheme:dark;font-family:"Segoe UI",Arial,sans-serif;color:#f2f7f4;background:#031c20;--green:#d2ff41;--line:#27474a;--muted:#a6bdbc;--panel:#0a292e}
body{min-height:100vh;background:radial-gradient(ellipse at 80% 18%,#0a424849,transparent 48%),#031c20}
header{max-width:1400px;margin:auto;padding:26px 44px;background:transparent;border-bottom:1px solid #244246;gap:20px}
.brand{font-family:"Segoe UI",Arial,sans-serif;font-size:35px;letter-spacing:-2px;font-weight:800;color:#f7fbf7;display:flex;align-items:center;gap:10px}
.brand span{display:inline-grid;place-items:center;width:31px;height:31px;margin:0;background:var(--green);color:#17312b;border-radius:50%;font-size:23px;font-weight:500;letter-spacing:0}
#identity{color:var(--muted);font-size:13px}#identity:not(:empty)::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:9px}
header select,#logout{border-radius:24px;padding:9px 16px;font-size:13px;background:transparent;border:1px solid #436367;color:#e4eeeb}
main{max-width:1360px;padding:40px 36px 24px}
.intro{position:relative;isolation:isolate;min-height:290px;padding:4px 0 30px;margin:0 0 20px;border-bottom:1px solid var(--line)}
.eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:2.4px;font-weight:600;color:#d2ff41;margin:4px 0 22px}
.eyebrow::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
h1{font-family:Impact,"Arial Narrow","Segoe UI",sans-serif;font-size:clamp(48px,6.7vw,90px);font-weight:400;text-transform:uppercase;line-height:.99;letter-spacing:-1px;margin:0 0 20px}
.intro h1{max-width:760px;width:72%}.intro>p{max-width:540px;width:64%;font-size:14px;line-height:1.7;margin:0;color:#afc4c2}
.hero-steps{display:flex;gap:22px;margin-top:25px;font-size:11px;color:#b1c5c4}
.hero-steps>span{display:flex;gap:8px;align-items:center}.hero-steps b{font-size:10px;font-weight:500;color:var(--green);border:1px solid #44605b;border-radius:50%;width:22px;height:22px;display:grid;place-items:center}
.hero-art{position:absolute;right:28px;top:4px;width:275px;height:260px;pointer-events:none;z-index:-1;transform:rotate(-13deg);filter:drop-shadow(6px 15px 18px #00161b)}
.hero-art::before{content:"";position:absolute;inset:25px -30px -10px;background:radial-gradient(ellipse,#23898565,transparent 67%);filter:blur(25px)}
.orbit{position:absolute;left:18px;width:235px;height:135px;border:25px solid #266e71;border-top-color:#87c7bd;border-right-color:#23616b;border-bottom-color:#0b3b45;border-left-color:#3e9395;border-radius:50%;transform:perspective(500px) rotateY(-24deg) rotateX(22deg) rotate(-25deg);box-shadow:inset 2px 4px 7px #001e24,2px 4px 0 #113c44,0 -2px 1px #d3ede6a3}
.orbit-0{top:0;z-index:3}.orbit-1{top:63px;left:3px;transform:perspective(500px) rotateY(22deg) rotateX(-15deg) rotate(21deg);z-index:2}.orbit-2{top:126px;z-index:1}
.art-monogram{position:absolute;left:105px;top:88px;font-size:74px;font-weight:700;line-height:1;color:#c2ece6;opacity:.8;transform:rotate(13deg);text-shadow:2px 4px #124851;z-index:4}
.layout{display:block}.layout>aside{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:25px}
nav{flex-direction:row;gap:5px;flex-wrap:wrap}nav button{border-radius:25px;padding:11px 16px;font-size:13px;font-weight:500;color:#acbfbf;white-space:nowrap}
nav button.active{background:#d2ff41;color:#153026;border-color:#d2ff41}nav button:hover:not(.active){background:#153b40;color:white}
.layout>aside>.card{margin:0;padding:11px 17px;min-width:170px;border-radius:30px;background:transparent;box-shadow:none;display:flex;gap:12px;align-items:center;justify-content:space-between}
.layout>aside>.card h3,.layout>aside>.card p{font-size:11px;margin:0;white-space:nowrap}.layout>aside>.card h3{font-weight:400;color:#a6bdbc}.layout>aside>.card p{color:#e1e9df}
.layout>aside>.card:has(.warning){flex-wrap:wrap;border-color:#b0a058}.layout>aside>.card p.warning{white-space:normal;color:#ffdc91}
.card{background:linear-gradient(115deg,#0d3035,#09262b);border:1px solid #2c4b4e;border-radius:18px;padding:28px 30px;box-shadow:none;margin-bottom:22px}
h2{font-size:21px;font-weight:500;letter-spacing:-.45px;margin-bottom:24px}h3{font-weight:500;color:#e3efec}
button{border-radius:26px;border-color:#d2ff41;background:#d2ff41;color:#153026;font-size:13px;font-weight:650;padding:12px 23px;transition:background .15s,transform .15s}
button:hover:not(:disabled){filter:none;background:#ddff7b;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.43}
button.secondary{background:transparent;color:#e0ebe6;border-color:#536b69}button.secondary:hover{background:#21464a}
input,select,textarea{background:#061f25;color:#e6efeb;border-color:#37555a;border-radius:9px;padding:12px 14px;font-size:14px}
input::placeholder,textarea::placeholder{color:#829e9e;opacity:1}option{background:#08272c;color:#f2f7f4}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #d2ff41;outline-offset:3px}
label.field{color:#bdcfca;font-size:12px;font-weight:400;gap:9px;margin-bottom:19px}textarea{min-height:135px;line-height:1.7}
input[type=checkbox]{accent-color:#d2ff41}.check{color:#b4c8c3;font-size:12px;align-items:center}.muted,small{color:#a4b9b7;font-size:12px}
.card>button:last-child{margin-top:8px}.actions{gap:10px}.tag{background:#214448;color:#dcf1de;font-size:11px;border:1px solid #365b56}
.warning{background:#3a3521;border-color:#786744;color:#f1d8a1}.success,#notice.ok{background:#1d443a;color:#d4f5b4;border:1px solid #526f3a}
#notice{background:#463429;color:#f5dbba;border-color:#886745;margin:20px auto 0;max-width:1288px;font-size:13px}
.table-wrap{border:1px solid #2b4d51;border-radius:10px;margin-top:18px}table{font-size:13px}th{background:#12343b;color:#b9d0c8;font-size:10px;padding:14px 10px}td{padding:13px 10px;color:#e4ece9}td,th{border-bottom-color:#28494d}tr:last-child td{border-bottom:0}td input,td select,td textarea{background:#061f25;font-size:13px}td textarea{min-width:245px}input[type=number]{color:#d2ff41}
.list-item{border-color:#2d4e51}.source{background:#061f25;color:#becfca}.empty{color:#a1b8b4}
summary,a{color:#d1ef9d}a.download{border-color:#52745f;border-radius:24px;color:#dcf2b2;font-size:12px;padding:10px 16px;margin-top:6px}
a.download:hover{background:#193d35}.stats div{background:#133b3e;border:1px solid #315558;border-radius:12px;min-width:120px}.stats strong{color:#d2ff41;font-weight:500;font-size:30px}
footer{border-top:1px solid #244246;color:#839f9c;font-size:11px;padding:23px 36px;margin:5px auto 0;max-width:1288px}
.login{max-width:480px;margin:7vh auto;padding:36px}.login h1{font-size:54px;max-width:100%;line-height:1.05;margin-bottom:28px}.login form button{margin-top:4px}.login form{gap:10px}
@media(min-width:1500px){.intro{min-height:315px}.hero-art{right:65px;transform:scale(1.05) rotate(-13deg)}}
@media(max-width:1050px){.layout>aside{align-items:flex-start;gap:10px}.layout>aside>.card{min-width:145px;padding:10px 12px}nav button{font-size:12px;padding:10px 12px}.hero-art{right:0;transform:scale(.85) rotate(-13deg);transform-origin:top right}.intro h1{width:70%}.intro>p{width:60%}}
@media(max-width:760px){header{padding:20px 22px;gap:9px}#identity{display:none}.brand{font-size:30px}header select{margin-left:auto;padding:9px 10px}#logout{padding:9px 12px;font-size:11px}main{padding:25px 20px}.intro{min-height:260px;padding-bottom:22px}.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:18px}.intro h1{font-size:clamp(44px,9vw,65px);width:75%;max-width:500px}.intro>p{width:70%;font-size:12px}.hero-art{top:65px;right:-22px;transform:scale(.48) rotate(-13deg);opacity:.65;transform-origin:top right}.hero-steps{gap:12px;font-size:10px;margin-top:19px}.layout>aside{display:block}.layout>aside>.card{display:none}nav{gap:6px}nav button{padding:9px 12px;font-size:11px}.card{padding:23px 18px;border-radius:14px}h2{font-size:19px}footer{padding:20px;font-size:10px;line-height:1.6}.list-item{flex-wrap:wrap}.login{margin:30px auto}.login h1{font-size:44px}}
@media(max-width:420px){.intro h1{width:86%;font-size:43px}.intro>p{width:83%}.hero-art{right:-17px;opacity:.3}.hero-steps{gap:10px}.brand span{width:24px;height:24px;font-size:19px}header{padding:18px 16px}.brand{font-size:27px}#logout{padding:8px;font-size:10px}header select{font-size:12px;padding:8px}main{padding:25px 16px}}
@media(prefers-reduced-motion:reduce){button{transition:none}button:hover:not(:disabled){transform:none}}
/* L'espace de lecture reste compact lorsque l'on travaille sur un relevé. */
.workspace .intro{min-height:170px;padding-bottom:22px}
.workspace .intro h1{font-size:49px;width:80%;max-width:none}
.workspace .intro .eyebrow{margin-bottom:15px}
.workspace .hero-steps{display:none}
.workspace .hero-art{top:-8px;right:20px;transform:scale(.52) rotate(-13deg);transform-origin:top right}
@media(max-width:760px){.layout>aside>.card{display:flex;max-width:230px;margin-top:14px}.workspace .intro h1{font-size:35px;width:86%}.workspace .intro>p{width:90%}.workspace .hero-art{opacity:.25;transform:scale(.32) rotate(-13deg);right:-10px;top:15px}}
