
#compta-preview{font-family:Inter,Segoe UI,sans-serif;color:light-dark(#22352f,#e0eae5);--cp-bg:light-dark(#f5f7f4,#151e1b);--cp-panel:light-dark(#ffffff,#202c26);--cp-line:light-dark(#e3e9e3,#36463d);--cp-muted:light-dark(#63766a,#a6b8ac);--cp-accent:light-dark(#25694d,#91d7b0);--cp-soft:light-dark(#e9f2eb,#2a4234);font-size:14px;line-height:1.5}
#compta-preview *{box-sizing:border-box}#compta-preview button,#compta-preview select,#compta-preview input{font:inherit}#compta-preview button{cursor:pointer}#compta-preview .cp-app{background:var(--cp-bg);border:1px solid var(--cp-line);border-radius:16px;overflow:hidden}#compta-preview .cp-top{padding:18px 24px;background:var(--cp-panel);border-bottom:1px solid var(--cp-line);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}#compta-preview .cp-brand{font-size:19px;font-weight:650;letter-spacing:-.5px;display:flex;gap:10px;align-items:center}#compta-preview .cp-logo{background:var(--cp-accent);color:var(--cp-panel);padding:3px 10px;border-radius:9px}#compta-preview .cp-demo{color:var(--cp-muted);font-size:12px}#compta-preview .cp-layout{display:grid;grid-template-columns:174px minmax(0,1fr);min-height:650px}#compta-preview .cp-side{padding:22px 12px;background:var(--cp-panel);border-right:1px solid var(--cp-line)}#compta-preview .cp-nav{display:flex;flex-direction:column;gap:6px}#compta-preview .cp-nav button{background:transparent;border:0;color:var(--cp-muted);text-align:left;padding:12px;border-radius:9px;display:flex;gap:10px;align-items:center}#compta-preview .cp-nav button[aria-selected=true]{background:var(--cp-soft);color:var(--cp-accent);font-weight:600}#compta-preview .cp-side-label{padding:30px 12px 8px;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--cp-muted)}#compta-preview .cp-side-account{padding:9px 12px;display:flex;justify-content:space-between;font-size:12px;gap:8px}#compta-preview .cp-main{padding:26px;min-width:0}#compta-preview .cp-titlebar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:23px}#compta-preview h2{font-size:26px;font-weight:650;letter-spacing:-.9px;margin:0}#compta-preview h3{font-size:15px;font-weight:600;margin:0}#compta-preview p{margin:0}#compta-preview .cp-muted{color:var(--cp-muted);font-size:12px}#compta-preview .cp-button{border:1px solid var(--cp-line);border-radius:8px;background:var(--cp-panel);color:inherit;padding:9px 13px;display:inline-flex;align-items:center;gap:7px}#compta-preview .cp-primary{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-panel)}#compta-preview .cp-date{font-size:13px;white-space:nowrap}#compta-preview .cp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:19px}#compta-preview .cp-card{background:var(--cp-panel);padding:19px;border:1px solid var(--cp-line);border-radius:12px}#compta-preview .cp-key{background:var(--cp-soft);border-color:transparent}#compta-preview .cp-label{color:var(--cp-muted);font-size:12px;margin-bottom:6px}#compta-preview .cp-value{font-size:26px;font-weight:600;letter-spacing:-.7px;font-variant-numeric:tabular-nums;white-space:nowrap}#compta-preview .cp-key .cp-value{color:var(--cp-accent)}#compta-preview .cp-sub{font-size:11px;color:var(--cp-muted);margin-top:6px}#compta-preview .cp-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:16px}#compta-preview .cp-panel{background:var(--cp-panel);border:1px solid var(--cp-line);border-radius:12px;overflow:hidden}#compta-preview .cp-panel-head{padding:17px 19px;border-bottom:1px solid var(--cp-line);display:flex;justify-content:space-between;align-items:center;gap:10px}#compta-preview .cp-content{padding:7px 19px 17px}#compta-preview .cp-line{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--cp-line);font-size:13px}#compta-preview .cp-line:last-child{border-bottom:0}#compta-preview .cp-amount{font-variant-numeric:tabular-nums;white-space:nowrap}#compta-preview .cp-total{font-weight:600;color:var(--cp-accent)}#compta-preview .cp-tag{background:var(--cp-soft);color:var(--cp-accent);font-size:11px;padding:4px 8px;border-radius:6px;white-space:nowrap;display:inline-block}#compta-preview .cp-wait{background:light-dark(#fff1d9,#4c3b21);color:light-dark(#865612,#f1ce8b)}#compta-preview .cp-note{margin-top:16px;padding:15px 18px;border-left:3px solid var(--cp-accent);background:var(--cp-panel);border-radius:0 9px 9px 0;font-size:12px}#compta-preview .cp-tiny-button{border:0;background:transparent;color:var(--cp-accent);padding:0;text-decoration:underline;text-underline-offset:3px;font-size:12px}#compta-preview .cp-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:15px}#compta-preview .cp-toolbar select,#compta-preview .cp-toolbar input{border:1px solid var(--cp-line);background:var(--cp-panel);color:inherit;border-radius:7px;padding:8px 10px;min-width:0}#compta-preview .cp-toolbar input{flex:1;min-width:130px}#compta-preview .cp-table-wrap{overflow:auto}#compta-preview table{width:100%;border-collapse:collapse;font-size:12px}#compta-preview th{text-align:left;color:var(--cp-muted);font-weight:500;padding:12px 15px;background:var(--cp-bg);white-space:nowrap}#compta-preview td{padding:14px 15px;border-top:1px solid var(--cp-line)}#compta-preview .cp-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}#compta-preview .cp-cell-sub{color:var(--cp-muted);font-size:11px;margin-top:3px}#compta-preview input[type=checkbox]{accent-color:var(--cp-accent);width:17px;height:17px}#compta-preview .cp-footer{padding:12px 18px;border-top:1px solid var(--cp-line);font-size:11px;color:var(--cp-muted)}#compta-preview .cp-actions{display:flex;gap:7px;flex-wrap:wrap}#compta-preview .cp-statusline{min-height:23px;color:var(--cp-accent);font-size:12px;margin-top:12px}#compta-preview .cp-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:17px}#compta-preview .cp-tabs button{border:0;background:transparent;color:var(--cp-muted);padding:8px 11px;border-radius:7px}#compta-preview .cp-tabs button[aria-pressed=true]{background:var(--cp-soft);color:var(--cp-accent)}#compta-preview .cp-bottom{margin-top:18px;color:var(--cp-muted);font-size:11px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}#compta-preview [hidden]{display:none!important}#compta-preview .cp-new{margin-top:15px;padding:16px;background:var(--cp-panel);border:1px solid var(--cp-line);border-radius:10px}#compta-preview .cp-new input,#compta-preview .cp-new select{font:inherit;padding:7px;border:1px solid var(--cp-line);background:var(--cp-bg);color:inherit;border-radius:6px;max-width:100%}#compta-preview .cp-new label{display:flex;flex-direction:column;gap:5px;font-size:12px}#compta-preview .cp-new-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:12px 0}
@media(max-width:760px){#compta-preview .cp-layout{grid-template-columns:1fr;min-height:0}#compta-preview .cp-side{border-right:0;border-bottom:1px solid var(--cp-line);padding:8px}#compta-preview .cp-nav{flex-direction:row;flex-wrap:wrap}#compta-preview .cp-side-label,#compta-preview .cp-side-account{display:none}#compta-preview .cp-main{padding:18px}#compta-preview .cp-grid{grid-template-columns:1fr}#compta-preview .cp-value{font-size:23px}#compta-preview .cp-cards{grid-template-columns:1fr}#compta-preview .cp-card{padding:15px}#compta-preview .cp-new-grid{grid-template-columns:1fr}#compta-preview .cp-top{padding:14px 18px}}

body{margin:0;background:#edf1f7;font-family:Segoe UI,sans-serif}#compta-preview{color:#25334a;--cp-bg:#f4f6fa;--cp-panel:#fff;--cp-line:#e2e7ef;--cp-muted:#6c7890;--cp-accent:#285edb;--cp-soft:#eaf0ff;max-width:1600px;margin:auto;min-height:100vh}#compta-preview .cp-app{border:0;border-radius:0;min-height:100vh}#compta-preview .cp-top{padding:19px 28px}#compta-preview .cp-layout{grid-template-columns:228px minmax(0,1fr);min-height:calc(100vh - 80px)}#compta-preview .cp-side{background:#14233d;color:#e6edfa;border:0;padding:25px 13px}#compta-preview .cp-nav button{color:#b8c7e3}#compta-preview .cp-nav button[aria-selected=true]{background:#284878;color:#fff}#compta-preview .cp-side-label{color:#8ea4c7;font-size:10px;padding:32px 10px 10px}#compta-preview .account-link{border:0;background:transparent;color:#c7d2e6;display:flex;justify-content:space-between;gap:10px;padding:12px 10px;border-radius:7px;width:100%;font-size:12px;text-align:left}#compta-preview .account-link:hover,#compta-preview .account-link.selected{background:#223958;color:#fff}#compta-preview .account-link span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}#compta-preview .side-foot{border-top:1px solid #314361;margin:35px 10px 0;padding-top:18px;color:#8ea4c7;font-size:11px}#compta-preview .cp-main{padding:32px 36px}#compta-preview .cp-logo{background:#285edb;color:white}#compta-preview .cp-key{background:#285edb;color:white}#compta-preview .cp-key .cp-label,#compta-preview .cp-key .cp-sub{color:#dce7ff}#compta-preview .cp-key .cp-value{color:white}#compta-preview .cp-card{box-shadow:0 3px 10px #152b4504}#compta-preview .cp-primary{color:white}#compta-preview .cp-cards{margin-bottom:26px;gap:16px}#compta-preview .cp-value{font-size:29px}#compta-preview .month-row{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 19px}#compta-preview .cp-panel-head{padding:20px}#compta-preview .cp-panel{border-radius:10px}#compta-preview .cp-tag{background:#e9f1fd;color:#2756a1}#compta-preview .row-actions{display:flex;gap:10px}#compta-preview .row-actions button{padding:3px 0;background:transparent;border:0;font-size:11px;color:#41618d}#compta-preview .row-actions button:last-child{color:#9b4351}#compta-preview .income{color:#187650}#compta-preview td strong{font-weight:500}#compta-preview td{padding:16px}#compta-preview .empty{padding:25px;color:var(--cp-muted);text-align:center}#compta-preview .mode-select{border:1px solid #dce3ee;border-radius:6px;background:#f6f8fc;padding:7px;color:#354c72;font:inherit}#compta-preview .date-cell{white-space:nowrap}#compta-preview .card-context{margin-bottom:18px;font-size:12px;color:#5b6e89}#compta-preview .cp-note{margin-top:24px;border-left-color:#285edb}#notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#162b49;color:white;padding:14px 20px;border-radius:10px;max-width:calc(100vw - 32px);z-index:5;display:none;box-shadow:0 6px 30px #14233d30;font-size:13px}#notice.visible{display:block}#compta-preview dialog{width:560px;max-width:calc(100vw - 30px);border:1px solid #dce3ef;border-radius:14px;padding:25px;color:#25334a;box-shadow:0 20px 100px #13234040}#compta-preview dialog::backdrop{background:#13234080}#compta-preview .dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}#compta-preview .dialog-head h2{font-size:22px}#compta-preview .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}#compta-preview .form-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px}#compta-preview .form-grid input,#compta-preview .form-grid select{border:1px solid #d4ddeb;padding:10px;border-radius:7px;width:100%;background:#fff;color:#25334a;font:inherit;font-size:14px}#compta-preview .form-grid .full{grid-column:1/-1}#compta-preview .form-grid .check-field{flex-direction:row;align-items:center;grid-column:1/-1}#compta-preview .check-field input{width:17px}#compta-preview .dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}#form-error{color:#a8384a;font-size:12px;margin-top:12px}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #86aaff;outline-offset:2px}
@media(min-width:1300px){#compta-preview .cp-main{padding:40px 48px}#compta-preview .cp-cards{gap:22px}#compta-preview .cp-grid{gap:22px}}
@media(max-width:980px){#compta-preview .cp-layout{grid-template-columns:185px minmax(0,1fr)}#compta-preview .cp-main{padding:24px}#compta-preview .cp-cards{grid-template-columns:1fr}#compta-preview .cp-grid{grid-template-columns:1fr}}
@media(max-width:760px){#compta-preview .cp-layout{grid-template-columns:1fr}#compta-preview .cp-side{padding:10px}#compta-preview .account-link,#compta-preview .side-foot{display:none}#compta-preview .cp-top{padding:15px}#compta-preview .cp-main{padding:20px 15px}#compta-preview .cp-demo{display:none}#compta-preview .form-grid{grid-template-columns:1fr}#compta-preview .form-grid input,#compta-preview .form-grid select{font-size:16px}#compta-preview .cp-titlebar h2{font-size:24px}#compta-preview .cp-nav button{min-height:44px}#compta-preview .cp-value{font-size:27px}}

/* Registre de compte compact, avec bandes alternées. */
#compta-preview .account-register table{font-size:12px;line-height:1.25}
#compta-preview .account-register th{padding:9px 10px}
#compta-preview .account-register td{padding:6px 10px;height:34px}
#compta-preview .account-register tbody tr:nth-child(odd){background:#fff}
#compta-preview .account-register tbody tr:nth-child(even){background:#f0f4fa}
#compta-preview .account-register tbody tr:hover{background:#e3ecfc}
#compta-preview .account-register input[type=checkbox]{width:15px;height:15px;margin:0;vertical-align:middle}
#compta-preview .account-register .register-balance{font-weight:600;color:#294468}
#compta-preview .account-register .register-label{min-width:150px}
#compta-preview .account-register .row-actions{gap:8px;white-space:nowrap}
#compta-preview .account-register .row-actions button{padding:3px 0}
@media(pointer:coarse){#compta-preview .account-register td{height:44px}#compta-preview .account-register .row-actions button{min-height:38px;padding:6px}}

#compta-preview .account-register .register-balance,#compta-preview .account-register .register-balance strong{font-weight:700}
#compta-preview .account-register .register-balance.negative-balance{color:#bc253b}

#compta-preview .account-info-form{max-width:960px}
#compta-preview .account-info-form .cp-panel{margin-bottom:18px}
#compta-preview .info-fields{padding:20px}
#compta-preview .info-note-label{display:flex;flex-direction:column;gap:7px;font-size:12px}
#compta-preview .info-fields textarea{width:100%;border:1px solid #d4ddeb;border-radius:7px;padding:12px;font:inherit;color:#25334a;resize:vertical}
#compta-preview .info-fields input[readonly]{background:#f3f5f9;color:#69788d}
#compta-preview .info-summary{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:12px;margin:18px 0}
#compta-preview .info-negative,#account-info-error{color:#bc253b}

#compta-preview .sidebar-add{width:100%;padding:10px;margin-top:18px;border:1px solid #466080;border-radius:7px;background:#203a5c;color:#e5edfa;font-size:12px}
#compta-preview .opening-row td{background:#e6edf8;font-style:italic}
#compta-preview .opening-row .register-balance{font-style:normal}
#new-account-error{color:#bc253b}

/* Cadre fixe : seuls les mouvements du registre defilent dans la page compte. */
html,body{height:100%;overflow:hidden}
#compta-preview{height:100%;min-height:0}
#compta-preview .cp-app{height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column}
#compta-preview .cp-top{flex:0 0 auto}
#compta-preview .cp-layout{flex:1 1 auto;min-height:0;overflow:hidden}
#compta-preview .cp-side{min-height:0;overflow:auto}
#compta-preview .cp-main{min-height:0;overflow:auto}
#compta-preview .cp-main.account-screen{display:flex;flex-direction:column;overflow:hidden}
#compta-preview .account-screen>.cp-titlebar,#compta-preview .account-screen>.cp-cards,#compta-preview .account-screen>.cp-toolbar{flex:0 0 auto}
#compta-preview .account-register{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}
#compta-preview .register-scroll{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
#compta-preview .account-register table{border-collapse:separate;border-spacing:0;width:100%}
#compta-preview .account-register thead th{position:sticky;top:0;z-index:2;background:#f4f6fa;box-shadow:0 1px 0 #dce3ee}
#compta-preview .account-register .cp-footer{flex:0 0 auto;background:#fff;padding:9px 14px}
@media(min-width:761px) and (max-width:980px){#compta-preview .account-screen>.cp-cards{grid-template-columns:repeat(3,minmax(0,1fr))}#compta-preview .account-screen .cp-value{font-size:22px}#compta-preview .account-screen .cp-card{padding:12px}}
@media(max-width:760px){#compta-preview .cp-layout{grid-template-rows:auto minmax(0,1fr)}#compta-preview .cp-side{overflow:visible}#compta-preview .account-screen>.cp-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:12px}#compta-preview .account-screen .cp-card{padding:9px}#compta-preview .account-screen .cp-value{font-size:16px}#compta-preview .account-screen .cp-sub{display:none}#compta-preview .account-screen .cp-label{font-size:11px}#compta-preview .account-screen>.cp-titlebar{margin-bottom:12px}#compta-preview .account-register .cp-footer{font-size:10px;padding:6px 9px}}

/* Actions compactes et pointage en derniere colonne du registre. */
#compta-preview .account-register .register-actions{width:70px;text-align:center;white-space:nowrap}
#compta-preview .account-register .row-actions{gap:3px;justify-content:center}
#compta-preview .account-register .icon-action{width:26px;height:26px;padding:5px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:5px;background:transparent;color:#41618d}
#compta-preview .account-register .icon-action:hover{background:#dce6f7}
#compta-preview .account-register .icon-action[data-delete]{color:#a73749}
#compta-preview .account-register .icon-action svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
#compta-preview .account-register .register-point{width:55px;text-align:center}
#compta-preview .account-register .register-out{color:#25334a}
@media(pointer:coarse){#compta-preview .account-register .icon-action{width:38px;height:38px;min-height:38px;padding:10px}#compta-preview .account-register .register-point input{width:20px;height:20px}}

#compta-preview .hide-pointed[aria-pressed="true"]{background:#eaf0ff;border-color:#94b0ee;color:#285edb}
#compta-preview .account-register .register-actions{width:100px}
#compta-preview .account-register .point-action{color:#7c899d}
#compta-preview .account-register .point-action .point-check{visibility:hidden}
#compta-preview .account-register .point-action.is-pointed{color:#187650;background:#e7f4ec}
#compta-preview .account-register .point-action.is-pointed .point-check{visibility:visible}
#compta-preview .account-register [data-operation-row]:focus-visible{outline:2px solid #86aaff;outline-offset:-2px}

#compta-preview .home-explanation{display:grid;grid-template-columns:minmax(260px,0.85fr) minmax(0,1.3fr);gap:20px;align-items:start}
#compta-preview .home-explanation tfoot td{border-top:1px solid #dce3ee;background:#f4f6fa;font-weight:600;padding:12px 15px}
#compta-preview .home-accounts{margin-top:22px}
@media(max-width:1100px){#compta-preview .home-explanation{grid-template-columns:1fr}}

#compta-preview .due-actions{display:flex;gap:6px}
#compta-preview .due-actions .icon-action{width:29px;height:29px;padding:6px;background:transparent;border:0;border-radius:5px;color:#41618d;display:inline-flex}
#compta-preview .due-actions .icon-action:hover{background:#e7eef9}
#compta-preview .due-actions [data-due-delete]{color:#a73749}
#compta-preview .due-actions svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(pointer:coarse){#compta-preview .due-actions .icon-action{width:40px;height:40px;padding:10px}}

body.auth-locked #compta-preview{display:none}
#auth-screen{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;overflow:auto;font-family:Segoe UI,sans-serif;color:#25334a;background:#eef2f8}
#auth-screen[hidden]{display:none}
.auth-card{width:440px;max-width:100%;padding:32px;border:1px solid #e0e6ef;border-radius:16px;background:#fff;box-shadow:0 15px 60px #14233d12;box-sizing:border-box}
.auth-card .cp-brand{font-size:22px;font-weight:600;margin-bottom:28px}.auth-card .cp-logo{display:inline-block;background:#285edb;color:#fff;border-radius:8px;padding:2px 10px;margin-right:10px}
.auth-card h1{font-size:23px;margin:0 0 10px}.auth-card p{font-size:13px;color:#61728b;line-height:1.6}.auth-card form{display:grid;gap:16px;margin-top:22px}.auth-card label{display:flex;flex-direction:column;gap:7px;font-size:13px}.auth-card input{padding:12px;border:1px solid #d4ddeb;border-radius:7px;font:inherit;min-width:0}.auth-card button{padding:12px 16px;border:0;border-radius:8px;background:#285edb;color:#fff;font:inherit;cursor:pointer}.auth-card button:disabled{opacity:.6}.auth-card code{display:block;overflow-wrap:anywhere;background:#eef3fc;padding:12px;border-radius:8px;font-size:14px}.auth-card .auth-recovery{white-space:pre-wrap;font-size:13px}.auth-card #auth-error{color:#aa2940}
#compta-preview #login-dues{width:880px}#compta-preview #login-dues .table-scroll{max-height:55vh;overflow:auto}#compta-preview #login-dues th{position:sticky;top:0}#compta-preview #login-dues .cp-button{white-space:nowrap}

#auth-screen{height:100vh;height:100dvh;min-height:0;align-items:flex-start}.auth-card{margin:auto}

#compta-preview .monthly-totals dl{margin:10px 0;font-size:13px}
#compta-preview .monthly-totals dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:6px 0}
#compta-preview .monthly-totals dt{font-weight:400}
#compta-preview .monthly-totals dd{margin:0;font-size:18px;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
#compta-preview .monthly-totals .monthly-difference{border-top:1px solid var(--cp-line);padding-top:7px}
#compta-preview .balance-chart{margin:16px 0 0;padding:10px 12px;background:#fff;border:1px solid var(--cp-line);border-radius:8px;color:var(--cp-accent)}
#compta-preview .balance-chart figcaption{font-size:10px;color:var(--cp-muted);margin-bottom:3px}
#compta-preview .balance-chart svg{display:block;width:100%;height:84px;overflow:visible}
#compta-preview .balance-chart .chart-line{fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke}
#compta-preview .balance-chart .chart-baseline{fill:none;stroke:currentColor;opacity:.2}
#compta-preview .balance-chart circle{fill:transparent;stroke:none}
#compta-preview .balance-chart circle:hover{fill:currentColor}
#compta-preview .chart-months{display:flex;justify-content:space-between;font-size:10px;color:var(--cp-muted)}
#compta-preview .cp-key .balance-chart{color:var(--cp-accent)}
#compta-preview .cp-key .balance-chart figcaption,#compta-preview .cp-key .chart-months{color:var(--cp-muted)}
#compta-preview .balance-chart-empty{margin-top:18px;font-size:11px}
#compta-preview .account-register [data-operation-row]{user-select:none;-webkit-user-select:none;cursor:cell}
#compta-preview .account-register [data-operation-row] td{cursor:inherit}
#compta-preview .account-register [data-operation-row] button{cursor:pointer}
#compta-preview .account-screen>.cp-titlebar .cp-button,#compta-preview .account-screen>.cp-toolbar .cp-button{padding:5px 10px;min-height:30px;font-size:12px}
#compta-preview .account-screen>.cp-titlebar{margin-bottom:15px}
#compta-preview .account-register .register-balance.positive-balance{color:#187650}
#compta-preview .account-register .register-balance strong{font-weight:700}
#compta-preview .balance-chart .chart-positive{stroke:#187650}
#compta-preview .balance-chart .chart-negative{stroke:#c02d46}
#compta-preview .cp-value .balance-positive{color:#187650;font-weight:700}
#compta-preview .cp-value .balance-negative{color:#c02d46;font-weight:700}
#compta-preview .cp-key .balance-positive{color:#83f0b6}
#compta-preview .cp-key .balance-negative{color:#ffb5be}
#compta-preview .account-link .side-balance{font-weight:700}
#compta-preview .account-link .side-positive{color:#70dda7}
#compta-preview .account-link .side-negative{color:#ff8898}
#compta-preview .stats-filters{margin:0}
#compta-preview .stats-filters label{font-size:12px;display:flex;align-items:center;gap:7px}
#compta-preview .stats-context{margin:-10px 0 16px}
#compta-preview .stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
#compta-preview .stats-month{padding:9px 0;border-bottom:1px solid var(--cp-line);font-size:12px}
#compta-preview .stats-month>strong{font-weight:500}
#compta-preview .stats-bar-row{display:flex;align-items:center;gap:12px;margin-top:5px}
#compta-preview .stats-bar-row>span{min-width:100px;text-align:right;font-variant-numeric:tabular-nums}
#compta-preview .stats-track{background:#f0f3f8;height:7px;border-radius:4px;overflow:hidden;flex:1}
#compta-preview .stats-bar{height:100%;background:#285edb;border-radius:4px}
#compta-preview .stats-in{background:#268363}
#compta-preview .stats-out{background:#c34a5d}
#compta-preview .stats-categories details{padding:10px 0;border-bottom:1px solid var(--cp-line)}
#compta-preview .stats-categories summary{display:flex;gap:10px;align-items:center;cursor:pointer;font-size:12px;list-style:none}
#compta-preview .stats-categories summary:before{content:'▸';color:#6c7890}
#compta-preview .stats-categories details[open] summary:before{content:'▾'}
#compta-preview .stats-categories summary>span:first-child{flex:1}
#compta-preview .stats-categories summary strong{white-space:nowrap}
#compta-preview .stats-categories summary>.cp-muted{min-width:44px;text-align:right}
#compta-preview .stats-categories .stats-track{margin:7px 0}
#compta-preview .stats-categories .cp-line{font-size:11px;padding:5px 0 5px 15px}
@media(max-width:1100px){#compta-preview .stats-grid{grid-template-columns:1fr}}
#compta-preview .chart-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:3px;flex-wrap:wrap}
#compta-preview .chart-heading figcaption{margin:0}
#compta-preview .chart-period{display:flex;gap:2px}
#compta-preview .chart-period button{border:0;background:transparent;color:#6c7890;font-size:10px;line-height:1.4;padding:2px 5px;border-radius:4px;white-space:nowrap}
#compta-preview .chart-period button[aria-pressed=true]{background:#eaf0ff;color:#285edb}
#compta-preview .chart-period button:hover{background:#f0f4fa}
#compta-preview .chart-months span{min-width:0;font-size:9px}

#compta-preview .home-explanation .cp-panel-head{padding:12px 19px}
#compta-preview .available-calculation .cp-content{padding:5px 19px 9px}
#compta-preview .available-calculation .cp-line{padding:7px 0;font-size:12px}
#compta-preview .upcoming-dues{height:252px;display:flex;flex-direction:column}
#compta-preview .upcoming-dues .cp-panel-head{flex:0 0 auto}
#compta-preview .upcoming-dues .cp-table-wrap{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
#compta-preview .upcoming-dues table{border-collapse:separate;border-spacing:0}
#compta-preview .upcoming-dues th,#compta-preview .upcoming-dues td{padding:7px 14px;font-size:12px}
#compta-preview .upcoming-dues thead th{position:sticky;top:0;z-index:2;background:#f4f6fa}
#compta-preview .upcoming-dues tfoot{position:sticky;bottom:0;z-index:2;background:#f4f6fa}
#compta-preview .upcoming-dues tfoot td{padding:7px 14px}
#compta-preview .upcoming-dues .due-description{white-space:nowrap}
#compta-preview .upcoming-dues .due-account{color:var(--cp-muted);font-size:11px}

/* Vue d’ensemble compacte, sans modifier les autres pages. */
#compta-preview .cp-main.home-screen{padding:10px 24px}
#compta-preview .home-screen>.cp-cards{gap:14px;margin-bottom:12px}
#compta-preview .home-screen .cp-card{padding:12px 16px}
#compta-preview .home-screen .cp-label{margin-bottom:2px}
#compta-preview .home-screen .cp-value{font-size:27px;line-height:1.3}
#compta-preview .home-screen .cp-sub{margin-top:3px}
#compta-preview .home-screen .balance-chart{margin-top:9px;padding:6px 9px}
#compta-preview .home-screen .balance-chart svg{height:64px}
#compta-preview .home-screen .monthly-totals dl{margin:7px 0}
#compta-preview .home-screen .monthly-totals dl>div{margin:3px 0}
#compta-preview .home-screen .monthly-totals .monthly-difference{padding-top:4px}
#compta-preview .home-screen .home-explanation{gap:12px 16px;grid-template-areas:"calculation dues" "accounts dues";grid-template-rows:auto auto;align-items:stretch}
#compta-preview .home-screen .available-calculation{grid-area:calculation}
#compta-preview .home-screen .cp-panel-head{padding:9px 16px}
#compta-preview .home-screen .available-calculation .cp-content{padding:3px 16px 6px}
#compta-preview .home-screen .available-calculation .cp-line{padding:5px 0}
#compta-preview .home-screen .upcoming-dues{grid-area:dues;height:auto;min-height:0}
#compta-preview .home-screen .upcoming-dues .cp-table-wrap{height:0}
#compta-preview .home-screen .home-accounts{grid-area:accounts;margin-top:0}
#compta-preview .home-screen .home-accounts .cp-content{padding:3px 16px 5px}
#compta-preview .home-screen .home-accounts .cp-line{padding:3px 0;align-items:center;font-size:12px}
#compta-preview .home-accounts [data-account]{text-decoration:none;border:1px solid #dce3ef;background:#f5f7fb;color:#35547b;border-radius:5px;padding:3px 9px;font-size:11px;line-height:1.4}
#compta-preview .home-accounts [data-account]:hover{background:#eaf0ff;border-color:#bacbec;color:#285edb}
#compta-preview .home-screen>.cp-note{margin-top:9px;padding:6px 12px;font-size:11px;line-height:1.4}
@media(min-width:1101px) and (max-height:800px){#compta-preview .home-screen .balance-chart svg{height:46px}#compta-preview .home-screen .home-accounts .cp-line{padding:1px 0}#compta-preview .home-screen .cp-panel-head{padding:6px 14px}}
@media(max-width:1100px){#compta-preview .home-screen .home-explanation{grid-template-areas:"calculation" "accounts" "dues";grid-template-rows:auto auto auto}#compta-preview .home-screen .upcoming-dues{height:320px}}
@media(max-width:760px){#compta-preview .cp-main.home-screen{padding:10px 12px}}

/* Bandeau compact et monogramme ComptaPerso. */
#compta-preview .cp-top{padding:8px 24px;min-height:48px;box-sizing:border-box;gap:16px}
#compta-preview .cp-top .cp-brand{font-size:17px;gap:9px;white-space:nowrap}
#compta-preview .cp-top .cp-logo,.auth-card .cp-logo{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border-radius:8px;flex-shrink:0}
.cp-logo svg{display:block;width:25px;height:25px}
#compta-preview .cp-top .cp-actions{gap:5px}
#compta-preview .cp-top .cp-button{padding:6px 9px;min-height:30px;font-size:12px;background:transparent;border-color:transparent;color:#61728b;border-radius:6px;white-space:nowrap}
#compta-preview .cp-top .cp-button:hover{background:#f0f4fa;border-color:#e2e7ef;color:#25334a}
#compta-preview .cp-top .cp-demo{font-size:10px;opacity:.7}
@media(max-width:760px){#compta-preview .cp-top{padding:7px 12px;gap:8px;flex-wrap:wrap}#compta-preview .cp-top .cp-actions{margin-left:auto}#compta-preview .cp-top .cp-button{min-height:36px;padding:6px 7px;font-size:11px}}

/* Identité CP : symbole vectoriel bleu marine et turquoise. */
#compta-preview .cp-top .cp-logo,.auth-card .cp-logo{width:36px;height:36px;background:transparent;border-radius:0;padding:0}
.cp-logo img{display:block;width:100%;height:100%;object-fit:contain}
#compta-preview .cp-top .cp-brand,.auth-card .cp-brand{color:#142f4c;font-weight:700}
.auth-card .cp-brand{display:flex;align-items:center;gap:10px}
.auth-card .cp-logo{width:44px;height:44px;margin-right:0}

/* Logo intégré : aucun chargement externe requis. */
#compta-preview .cp-logo svg,.auth-card .cp-logo svg{display:block;width:100%;height:100%}

/* À propos, accessible depuis les logos de connexion et d’en-tête. */
#compta-preview .cp-top button.cp-logo,.auth-card button.cp-logo{border:0;background:transparent;padding:0;cursor:pointer;border-radius:6px}
#compta-preview .cp-top button.cp-logo:hover,.auth-card button.cp-logo:hover{background:#edf6f5}
#about-app{box-sizing:border-box;width:420px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;margin:auto;padding:44px 32px 32px;border:1px solid #e2e7ef;border-radius:20px;background:#fff;color:#142f4c;text-align:center;font-family:Segoe UI,sans-serif;box-shadow:0 24px 90px #142f4c33}
#about-app::backdrop{background:#14233d88;backdrop-filter:blur(3px)}
#close-about{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:#61728b;font:inherit;cursor:pointer}
#close-about:hover{background:#eef2f8}
#about-app .about-logo{width:176px;max-width:100%;margin:0 auto 18px}
#about-app .about-logo svg{display:block;width:100%;height:auto}
#about-title{margin:0;font-size:30px;letter-spacing:-1px;font-weight:700}
#about-app .about-tagline{margin:10px 0 28px;color:#61728b;font-size:14px}
#about-copyright{margin:0;padding-top:22px;border-top:1px solid #e2e7ef;font-size:13px;line-height:1.9}
#about-copyright span{color:#61728b;font-size:12px}
