:root{--color-nuit-profonde: #232a3a;--color-bleu-registre: #264775;--color-orange-sceau: #dc4d34;--color-orange-sceau-fonce: #c8432b;--color-orange-braise: #f18336;--color-papier: #f2f2f2;--color-blanc: #ffffff;--color-encre: #0b0b0b;--color-ardoise: #5e6678;--color-gris-pli: #929292;--color-trait: #d9dce2;--color-bleu-registre-survol: #2b5288;--color-bleu-registre-presse: #1f3c63;--color-succes-clair: #7fd1a8;--color-succes: #1f7a52;--color-alerte: #9a5b00;--color-erreur: #b42d2d;--color-primary: var(--color-bleu-registre);--color-accent: var(--color-orange-sceau-fonce);--color-text: var(--color-nuit-profonde);--color-text-muted: var(--color-ardoise);--color-bg: var(--color-papier);--color-surface: var(--color-blanc);--color-border: var(--color-trait);--focus-ring: 0 0 0 3px rgba(38, 71, 117, .35);--gradient-nuit: linear-gradient(90deg, #232a3a 0%, #264775 100%);--gradient-sceau: linear-gradient(90deg, #dc4d34 0%, #f18336 100%);--font-display: "Barlow Condensed", "Arial Narrow", sans-serif;--font-body: "Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;--text-display: 2.25rem;--text-headline: 1.5rem;--text-title: 1.0625rem;--text-body: 1rem;--text-body-sm: .875rem;--text-label: .8125rem;--tracking-label: .14em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--gutter: var(--space-4);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 999px;--shadow-rest: 0 1px 2px rgba(35, 42, 58, .06);--shadow-bar: 0 -1px 0 #d9dce2;--shadow-sheet: 0 -8px 32px rgba(35, 42, 58, .18);--scrim: rgba(35, 42, 58, .45);--touch-min: 44px;--control-height: 48px;--app-bar-height: 56px;--bottom-nav-height: 64px;--ease-out: cubic-bezier(.22, 1, .36, 1);--duration-press: .12s;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}@media(min-width:600px){:root{--gutter: var(--space-5)}}@media(min-width:1024px){:root{--gutter: var(--space-6)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior:none}body{margin:0;min-height:100dvh;font-family:var(--font-body);font-size:var(--text-body);line-height:1.5;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:.01em;text-wrap:balance}p{margin:0}img,svg{display:block;max-width:100%}a{color:var(--color-primary);text-underline-offset:.2em}::selection{background:#f183364d;color:var(--color-nuit-profonde)}input,textarea,select,button{font:inherit;color:inherit}input,textarea,select{font-size:max(16px,1rem);caret-color:var(--color-orange-sceau-fonce)}button,a,[role=button]{touch-action:manipulation}button,[role=button]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}:focus-visible{outline:none;box-shadow:var(--focus-ring)}.tabular{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-5);border:0;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-title);font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color var(--duration-press) var(--ease-out),transform var(--duration-press) var(--ease-out)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{background:var(--color-papier);color:var(--color-gris-pli);box-shadow:none;cursor:not-allowed}.btn.is-loading{pointer-events:none}.btn--block{width:100%}.btn--primary{background:var(--color-orange-sceau-fonce);color:var(--color-blanc)}.btn--primary:active:not(:disabled){background:var(--color-orange-sceau)}.btn--secondary{background:var(--color-bleu-registre);color:var(--color-blanc)}.btn--secondary:active:not(:disabled){background:var(--color-nuit-profonde)}.btn--ghost{min-height:var(--touch-min);background:var(--color-blanc);color:var(--color-bleu-registre);box-shadow:inset 0 0 0 1px var(--color-trait)}.btn--ghost:active:not(:disabled){background:#26477514}@media(hover:hover)and (pointer:fine){.btn--primary:hover:not(:disabled){background:var(--color-orange-sceau)}.btn--secondary:hover:not(:disabled){background:var(--color-nuit-profonde)}.btn--ghost:hover:not(:disabled){background:#2647750f}}.link-btn{display:inline-flex;align-items:center;min-height:var(--touch-min);padding:0 var(--space-1);border:0;background:none;color:var(--color-bleu-registre);font-size:var(--text-body-sm);font-weight:600;text-decoration:underline;text-decoration-color:#26477559;text-underline-offset:.25em;cursor:pointer}.spinner{width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-full);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form{display:grid;gap:var(--space-4)}.field{display:grid;gap:6px}.field__label{font-size:var(--text-body-sm);font-weight:600;color:var(--color-nuit-profonde)}.field__hint{font-size:var(--text-body-sm);color:var(--color-ardoise)}.field__error{display:flex;align-items:flex-start;gap:6px;font-size:var(--text-body-sm);color:var(--color-erreur)}.field__error app-icon{margin-top:1px}.input,.input-group{width:100%;min-height:var(--control-height);border:1px solid var(--color-trait);border-radius:var(--radius-sm);background:var(--color-blanc);transition:border-color var(--duration-press) var(--ease-out),box-shadow var(--duration-press) var(--ease-out)}.input{padding:0 14px}.input:focus{outline:none;border-color:var(--color-bleu-registre);box-shadow:0 0 0 3px #26477533}.input[aria-invalid=true]{border-color:var(--color-erreur)}.input::placeholder,.input-group__input::placeholder{color:var(--color-ardoise);opacity:.8}.input-group{display:flex;align-items:stretch;overflow:hidden}.input-group:focus-within{border-color:var(--color-bleu-registre);box-shadow:0 0 0 3px #26477533}.input-group.is-invalid{border-color:var(--color-erreur)}.input-group__prefix{display:flex;align-items:center;padding:0 var(--space-3);border-right:1px solid var(--color-trait);background:var(--color-papier);color:var(--color-nuit-profonde);font-weight:600;font-variant-numeric:tabular-nums}.input-group__input{flex:1;min-width:0;padding:0 14px;border:0;background:transparent}.input-group__input:focus{outline:none;box-shadow:none}.input-group__action{display:grid;place-items:center;width:var(--control-height);border:0;background:transparent;color:var(--color-ardoise);cursor:pointer}.input-group__action:active{color:var(--color-nuit-profonde)}.input-group__action:focus-visible{box-shadow:inset var(--focus-ring)}.segmented{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;padding:4px;border-radius:var(--radius-sm);background:#232a3a0f}.segmented button{min-height:var(--touch-min);border:0;border-radius:var(--radius-xs);background:transparent;color:var(--color-ardoise);font-weight:600;cursor:pointer;transition:background-color var(--duration-press) var(--ease-out),color var(--duration-press) var(--ease-out)}.segmented button[aria-pressed=true]{background:var(--color-blanc);color:var(--color-nuit-profonde);box-shadow:0 1px 3px #232a3a24}.checkbox{display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--touch-min);font-size:var(--text-body-sm);cursor:pointer}.checkbox input{width:20px;height:20px;margin:0;accent-color:var(--color-bleu-registre)}.choices{display:grid;gap:var(--space-3);margin:0;padding:0;border:0}.choice{position:relative;display:flex;align-items:center;gap:var(--space-3);min-height:60px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-trait);border-radius:var(--radius-md);background:var(--color-blanc);cursor:pointer;transition:border-color var(--duration-press) var(--ease-out),box-shadow var(--duration-press) var(--ease-out)}.choice input{position:absolute;opacity:0;pointer-events:none}.choice:active{background:#2647750a}.choice:has(input:checked){border-color:var(--color-orange-sceau);box-shadow:inset 0 0 0 1px var(--color-orange-sceau)}.choice:has(input:focus-visible){box-shadow:var(--focus-ring)}.choice__label{flex:1;font-weight:500}.choice__check{display:grid;place-items:center;width:24px;height:24px;border:1.5px solid var(--color-trait);border-radius:var(--radius-full);color:transparent;transition:background-color var(--duration-press) var(--ease-out),border-color var(--duration-press) var(--ease-out)}.choice:has(input:checked) .choice__check{border-color:var(--color-orange-sceau);background:var(--color-orange-sceau);color:var(--color-blanc)}.notice{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) 14px;border-radius:var(--radius-sm);font-size:var(--text-body-sm);line-height:1.45}.notice app-icon{margin-top:1px}.notice--error{background:#b42d2d14;color:var(--color-erreur)}.notice--info{background:#26477512;color:var(--color-nuit-profonde)}a[href^="tel:"]{white-space:nowrap;font-variant-numeric:tabular-nums}.auth-page{display:flex;flex-direction:column;min-height:100dvh;background:var(--color-papier)}.auth-body{flex:1;width:100%;max-width:480px;margin-inline:auto;padding:var(--space-5) calc(var(--gutter) + var(--safe-right)) var(--space-6) calc(var(--gutter) + var(--safe-left))}.auth-heading{margin-bottom:var(--space-2);font-size:var(--text-display);line-height:1.05;font-weight:700}.auth-intro{margin-bottom:var(--space-5);color:var(--color-ardoise)}.login-options{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 var(--space-3);margin-top:calc(var(--space-1) * -1)}.auth-switch{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0 var(--space-1);margin-top:var(--space-5);font-size:var(--text-body-sm);color:var(--color-ardoise)}.action-bar{position:sticky;bottom:0;z-index:5;padding:var(--space-3) calc(var(--gutter) + var(--safe-right)) calc(var(--space-3) + var(--safe-bottom)) calc(var(--gutter) + var(--safe-left));background:var(--color-blanc);box-shadow:var(--shadow-bar)}.action-bar>*{max-width:480px;margin-inline:auto}.section-title{margin-bottom:var(--space-3);font-family:var(--font-display);font-size:var(--text-label);font-weight:600;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-bleu-registre)}.form-section+.form-section{margin-top:var(--space-6)}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:0;padding:0;border:0}.tile{position:relative;display:flex;align-items:center;min-height:56px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-trait);border-radius:var(--radius-md);background:var(--color-blanc);font-size:var(--text-body-sm);font-weight:500;line-height:1.3;cursor:pointer;transition:border-color var(--duration-press) var(--ease-out),box-shadow var(--duration-press) var(--ease-out)}.tile input{position:absolute;opacity:0;pointer-events:none}.tile:active{background:#2647750a}.tile:has(input:checked){border-color:var(--color-orange-sceau);box-shadow:inset 0 0 0 1px var(--color-orange-sceau);font-weight:600}.tile:has(input:focus-visible){box-shadow:var(--focus-ring)}@media(min-width:600px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}.chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{display:inline-flex;align-items:center;gap:6px;min-height:var(--touch-min);padding:0 var(--space-4) 0 var(--space-3);border:1px solid var(--color-trait);border-radius:var(--radius-full);background:var(--color-blanc);color:var(--color-nuit-profonde);font-size:var(--text-body-sm);font-weight:600;cursor:pointer;transition:background-color var(--duration-press) var(--ease-out),border-color var(--duration-press) var(--ease-out)}.chip app-icon{color:var(--color-ardoise)}.chip[aria-pressed=true]{border-color:var(--color-orange-sceau);background:#dc4d3414}.chip[aria-pressed=true] app-icon{color:var(--color-orange-sceau-fonce)}.chip:active{transform:scale(.97)}.input-group__suffix{display:flex;align-items:center;padding:0 14px 0 0;color:var(--color-ardoise);font-weight:600}.input-group--amount{min-height:64px}.input-group--amount .input-group__input{font-family:var(--font-display);font-size:var(--text-display);font-weight:700;font-variant-numeric:tabular-nums;text-align:right}.input-group--amount .input-group__suffix{font-family:var(--font-display);font-size:var(--text-title)}.notice--warning{background:#9a5b001a;color:var(--color-alerte)}.action-bar__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.action-bar__total{display:grid;min-width:0}.action-bar__total span:first-child{font-size:var(--text-body-sm);color:var(--color-ardoise)}.action-bar__total strong{overflow:hidden;font-family:var(--font-display);font-size:var(--text-headline);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis}.sheet-options{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.sheet-option{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:60px;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--color-trait);border-radius:var(--radius-md);background:var(--color-blanc);text-align:left;cursor:pointer}.sheet-option:active{background:#2647750f}@media(hover:hover)and (pointer:fine){.sheet-option:hover{border-color:var(--color-bleu-registre)}}.sheet-option__text{display:grid;flex:1;min-width:0}.sheet-option__label{font-weight:600}.sheet-option__kind{font-size:var(--text-body-sm);color:var(--color-ardoise)}.sheet-option__balance{font-weight:600}.sheet-option__chevron{color:var(--color-ardoise)}body:has(.tabs){--chrome-bottom: var(--bottom-nav-height)}@media(min-width:1024px){body:has(.tabs){--chrome-bottom: 0px}}
