:root{font-family:'Segoe UI',Arial,sans-serif;color:#172e47;background:#f2f5fa;font-size:16px;--blue:#183b61;--teal:#087c80;--line:#dce4ef;--muted:#52677d}*{box-sizing:border-box}body{margin:0}header{background:white;border-bottom:1px solid var(--line);padding:20px max(24px,calc((100vw - 1240px)/2));display:flex;justify-content:space-between;gap:16px;align-items:center}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--blue);font-size:1.7rem;font-weight:750}.brand small{display:block;font-size:.75rem;letter-spacing:.09em;margin-top:2px}.mark{background:#173e63;color:white;border-radius:14px;padding:8px 16px}.headerActions{display:flex;gap:15px;align-items:center}#sync{font-size:.85rem;color:var(--muted)}main{max-width:1240px;margin:32px auto;padding:0 24px}h1{font-size:clamp(1.8rem,3.4vw,2.6rem);letter-spacing:-.035em;margin:7px 0}h2{font-size:1.15rem;margin:0}h3{font-size:1rem}p{line-height:1.55}.eyebrow{color:var(--teal);font-size:.8rem;letter-spacing:.1em;font-weight:750}.titleRow,.sectionTitle{display:flex;justify-content:space-between;align-items:center;gap:16px}.titleRow p{margin:8px 0 24px;color:var(--muted)}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.monthLabel{margin:0;max-width:185px}nav{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-bottom:25px;padding-bottom:10px}.tab{background:transparent;color:var(--muted)}.tab.active{background:#183b61;color:white}.hero{display:grid;grid-template-columns:1.35fr 1fr;background:var(--blue);border-radius:22px;color:white;overflow:hidden;margin-bottom:30px}.heroMain{padding:32px 36px;background:linear-gradient(125deg,#193e68,#12526a)}.heroMain>span{font-weight:650;font-size:1.05rem}.heroMain>strong{display:block;font-size:clamp(2.5rem,5vw,3.5rem);letter-spacing:-.045em;margin:14px 0}.hero p{color:#d0e0ef;font-size:.9rem;max-width:480px}.forecast{border-top:1px solid #ffffff35;padding-top:20px;display:flex;justify-content:space-between;gap:18px;align-items:center;font-size:.9rem}.forecast b{font-size:1.4rem;white-space:nowrap}.heroDetails{padding:28px 32px;display:flex;flex-direction:column;justify-content:center;gap:20px}.heroDetails div{display:flex;justify-content:space-between;gap:20px}.heroDetails strong{white-space:nowrap}.heroDetails small{color:#c4d9ed;font-size:.85rem;line-height:1.5}.sectionTitle{margin-bottom:18px}.sectionTitle>span{font-size:.85rem;color:var(--muted)}.accountGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.accountCard,.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:24px}.accountCard{border-top:4px solid #227f99}.accountCard.restricted{border-top-color:#a36e25}.accountCard h3{margin:0 0 8px}.accountCard .current{font-size:1.8rem;font-weight:700;letter-spacing:-.03em;display:block;margin:12px 0}.badge{display:inline-block;border-radius:5px;padding:4px 7px;background:#eef3f9;color:var(--muted);font-size:.8rem}.accountDetail{display:flex;justify-content:space-between;font-size:.85rem;gap:12px;margin:10px 0}.accountDetail strong{white-space:nowrap}.accountCard small{display:block;font-size:.8rem;color:var(--muted);line-height:1.5}.columns{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}.panel p{color:var(--muted)}.alert{border-left:3px solid #3286b3;background:#f0f7fc;padding:14px 16px;border-radius:0 9px 9px 0;margin-bottom:10px}.alert strong{display:block;font-size:.95rem}.alert p{font-size:.85rem;margin:6px 0 0}.alert.danger{border-color:#b84050;background:#fff1f2}.alert.warn{border-color:#b57b17;background:#fff8e8}.muted,.foot{color:var(--muted);font-size:.85rem;line-height:1.6}.due{display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:14px 0}.dueDate{background:#f0f4fa;border-radius:9px;padding:9px;text-align:center;min-width:62px;font-size:.85rem}.dueBody{flex:1;min-width:0}.dueBody strong{display:block;overflow-wrap:anywhere}.dueBody small{display:block;color:var(--muted);font-size:.8rem;margin-top:4px}.dueAmount{font-weight:700;white-space:nowrap}.due button{font-size:.85rem;padding:9px}.budgetPanel{margin-top:24px}.budgetTotals{display:flex;gap:32px;flex-wrap:wrap;margin:20px 0}.budgetTotals span{display:block;color:var(--muted);font-size:.85rem}.budgetTotals strong{font-size:1.4rem;display:block;margin-top:7px}.barRow{display:grid;grid-template-columns:200px 1fr 160px;gap:16px;align-items:center;padding:10px 0;font-size:.9rem}progress{width:100%;height:10px;accent-color:var(--teal)}.barAmount{text-align:right}.tip,.note{background:#eef5fb;border-radius:10px;padding:16px;font-size:.9rem}.note{margin-top:24px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:15px}label{display:block;font-size:.9rem;font-weight:600;margin:0 0 16px}input,select{font:inherit;width:100%;padding:11px 12px;margin-top:7px;border:1px solid #bdcadb;border-radius:8px;background:white;color:#172e47}button{font:inherit;font-weight:650;background:var(--teal);color:white;border:0;border-radius:9px;padding:12px 16px;cursor:pointer}.ghost{background:#edf3f9;color:var(--blue)}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #29a6bd;outline-offset:3px}.tableWrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--line)}th{font-size:.8rem;color:var(--muted)}td small{display:block;margin-top:5px;color:var(--muted);font-size:.8rem}td button{font-size:.8rem;padding:8px;margin:3px;white-space:nowrap}.negative{color:#ab3045}.positive{color:var(--teal)}.accountForm{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.accountForm h3{margin-top:0}.login{max-width:480px;margin:60px auto;padding:36px}.login h1{margin-bottom:20px}.login a{display:block;margin-top:24px;color:var(--teal)}dialog{border:0;border-radius:18px;padding:26px;width:min(560px,calc(100vw - 30px));max-height:90vh;box-shadow:0 20px 100px #102e4755;color:#172e47}dialog::backdrop{background:#102e4777;backdrop-filter:blur(3px)}#formError{color:#a32b40;font-size:.9rem}#status{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#183b61;color:white;border-radius:10px;padding:14px 20px;max-width:min(600px,90vw);z-index:5;box-shadow:0 8px 30px #102e4730}#status:empty{display:none}.demo{background:#fff3d8;border:1px solid #edd29c;padding:14px 18px;border-radius:12px;margin-bottom:24px;display:flex;gap:16px;align-items:center;font-size:.85rem}.demo span{flex:1}.foot{margin:24px 0}[hidden]{display:none!important}@media(max-width:1000px){.accountGrid{grid-template-columns:repeat(2,1fr)}.columns{grid-template-columns:1fr}.titleRow{align-items:flex-start}.filters{grid-template-columns:1fr 1fr}}@media(max-width:640px){header{padding:16px}.brand{font-size:1.4rem}.brand small{font-size:.65rem}#sync{display:none}main{padding:0 16px;margin-top:24px}.titleRow{flex-direction:column;gap:0}.titleRow>.actions{width:100%;justify-content:space-between;margin-bottom:22px}.hero{grid-template-columns:1fr}.heroMain,.heroDetails{padding:24px}.accountGrid{gap:12px}.accountCard{padding:16px}.accountCard .current{font-size:1.4rem}.accountDetail{flex-direction:column;gap:4px}.sectionTitle{align-items:flex-start;flex-wrap:wrap}.sectionTitle select{width:100%}.panel{padding:20px}.barRow{grid-template-columns:1fr 110px}.barRow progress{grid-column:1/-1}.barAmount{text-align:left}.pair,.filters{grid-template-columns:1fr}.demo{flex-direction:column;align-items:flex-start}.due{flex-wrap:wrap}.dueBody{min-width:120px}.dueAmount{margin-left:auto}nav{gap:0}.tab{font-size:.85rem;padding:10px}.forecast{align-items:flex-start;flex-direction:column}}
:root{--calendar-border:#cbd9e8}
.yearIntro{margin-bottom:24px}.yearIntro .actions label{max-width:240px;margin:0}.yearIntro .actions input{max-width:130px}.yearGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.monthCard{background:white;border:1px solid var(--calendar-border);border-radius:16px;padding:22px;min-height:240px}.monthCard.selected{border:2px solid var(--teal);padding:21px;box-shadow:0 4px 18px #183b6110}.monthCard.current .monthName{color:var(--teal)}.monthName{display:block;padding:0 0 12px;font-size:1.15rem;background:transparent;color:var(--blue);text-transform:capitalize}.monthCard .accountDetail{align-items:center;margin:12px 0}.monthCard .accountDetail strong{font-size:.85rem}.monthCard small{display:block;font-size:.8rem;color:var(--muted);line-height:1.6}.monthNet{border-top:1px solid var(--line);padding-top:14px;margin:14px 0 10px;display:flex;justify-content:space-between;gap:12px;font-size:.9rem}.monthEmpty{color:var(--muted);font-size:.9rem;margin-top:28px}.yearDetail{margin-bottom:24px}nav{flex-wrap:wrap}@media(max-width:1000px){.yearGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.yearGrid{grid-template-columns:1fr}.monthCard .accountDetail{flex-direction:row}.yearIntro .actions{width:100%;align-items:flex-start}.yearIntro .actions label{max-width:100%;flex:1}.monthCard{min-height:160px}}

#sectionTools{margin:0 0 20px;flex-wrap:wrap}details>summary{cursor:pointer;color:var(--blue);padding:8px 0}#entryDetails{margin:10px 0 20px;border-top:1px solid var(--line)}#listMore{margin-top:18px;justify-content:space-between}#projects .current{font-size:1.4rem}#projects .accountCard{display:flex;flex-direction:column;gap:10px}.titleRow .actions{flex-wrap:wrap}#operations .tableWrap td details{max-width:320px}@media(max-width:640px){#operations .tableWrap table,#operations .tableWrap tbody,#operations .tableWrap tr,#operations .tableWrap td{display:block;width:100%}#operations .tableWrap thead{display:none}#operations .tableWrap tr{padding:16px 0;border-bottom:1px solid var(--line)}#operations .tableWrap td{border:0;padding:5px 8px;white-space:normal}#operations .tableWrap td:before{font-weight:600;display:inline-block;min-width:80px}#operations .tableWrap td:nth-child(1):before{content:"Date : "}#operations .tableWrap td:nth-child(3):before{content:"Compte : "}#operations .tableWrap td:nth-child(4):before{content:"Prévu : "}#operations .tableWrap td:nth-child(5):before{content:"Réel : "}#operations .tableWrap td:nth-child(6):before{content:"Écart : "}#operations .tableWrap td:nth-child(7):before{content:"Statut : "}#operations .tableWrap td:last-child{display:flex;flex-wrap:wrap;gap:8px}#projects{grid-template-columns:1fr}.titleRow .actions button{padding:12px}}

[hidden]{display:none!important}#homeScope{max-width:320px;margin-bottom:18px}#sectionTools button{font-size:.9rem}#projects{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:800px){#projects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){#projects{grid-template-columns:1fr}}

.demo details{min-width:0}.demo details span{display:block;margin:10px 0}@media(max-width:500px){h1{font-size:1.6rem}.accountGrid{grid-template-columns:1fr}.demo{padding:14px}}
