:root{--bg:#f8f4ed;--paper:#fff;--ink:#24211f;--muted:#817870;--line:#e8dfd5;--accent:#c98562;--soft:#f0e3d8;--danger:#b64b4b;--shadow:0 10px 30px #3f2d2217;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg)}button,input,textarea,select{font:inherit}.hidden{display:none!important}.app-shell{min-height:100vh;max-width:1180px;margin:auto;padding-bottom:92px}.view{padding:20px}.topbar{height:64px;display:grid;grid-template-columns:48px 1fr 48px;align-items:center;position:sticky;top:0;z-index:20;padding:0 12px;background:#f8f4edee;backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}.topbar h1{text-align:center;font-size:18px}.icon-button,.round,.cal-btn{border:0;border-radius:50%;background:var(--paper);box-shadow:0 3px 12px #37281e14;width:42px;height:42px}.bottom-nav{position:fixed;z-index:30;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,1180px);height:76px;padding:8px 10px max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);background:#fffffff5;border-top:1px solid var(--line);backdrop-filter:blur(18px)}.nav-item{border:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--muted)}.nav-item span{font-size:23px}.nav-item small{font-size:11px}.nav-item.active{color:#a96545}.nav-add span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff;margin-top:-21px}.brand-row,.house-line,.apps-head,.section-title-row,.calendar-head,.dialog-head,.dialog-actions,.toolbar,.weather-main,.weather-side{display:flex;align-items:center}.brand-row,.house-line,.apps-head,.section-title-row,.calendar-head,.dialog-head{justify-content:space-between}.home-head{padding:12px 0 18px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:54px;height:54px;border-radius:16px}.brand-copy{display:flex;flex-direction:column}.brand-copy strong{font-size:22px}.brand-copy small,.item small,.module-card small,.household-menu-card small,.member-card small,.app-toggle small{color:var(--muted)}.head-actions,.tiny-actions,.calendar-controls,.mini-toggle-actions{display:flex;gap:8px}.date-line{margin:26px 0 10px;font-size:28px;font-weight:700}.date-line em{font-style:normal;color:#a96545}.house-pill{border:0;background:var(--soft);padding:10px 14px;border-radius:99px;font-weight:650}.apps-panel{background:#ffffff73;border-radius:24px;padding:18px}.apps-head h2{margin:0}.apps-total,.count{display:inline-grid;place-items:center;min-width:27px;height:27px;padding:0 8px;border-radius:99px;background:var(--soft);color:#a96545;font-size:13px;font-weight:700}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.module-card{min-height:184px;border:1px solid #fff;border-radius:22px;padding:0;overflow:hidden;text-align:left;background:var(--paper);box-shadow:var(--shadow)}.module-card .art{display:block;width:100%;height:112px;object-fit:contain}.module-copy{position:relative;padding:13px 14px;display:flex;flex-direction:column}.module-copy .count{position:absolute;right:12px}.toolbar{gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-bottom:16px}.toolbar .ghost:first-child{margin-right:auto}.primary,.ghost,.danger,.today-link{border:0;border-radius:12px;padding:11px 15px;font-weight:700}.primary{background:var(--ink);color:#fff}.ghost{background:var(--paper);border:1px solid var(--line)}.danger{background:#f9e3e3;color:var(--danger)}.list,.stack,.member-list,.grocery-list,.vault-list{display:grid;gap:10px}.item,.member-card,.household-menu-card,.app-toggle{width:100%;display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:16px;background:var(--paper);padding:12px;text-align:left}.item img,.household-menu-card img,.app-toggle img{width:54px;height:54px;object-fit:cover;border-radius:13px}.item h3,.item p{margin:0}.grow{flex:1;min-width:0}.empty{text-align:center;padding:45px 20px;border:1px dashed #d9cec3;border-radius:18px;color:var(--muted)}.empty strong{display:block;color:var(--ink);font-size:18px}.search{width:100%;border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:14px 16px}.dialog{width:min(92vw,600px);max-height:88vh;border:0;border-radius:24px;padding:22px;background:var(--paper)}.dialog::backdrop{background:#231d197f}.dialog h2{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:18px 0}.field{display:flex;flex-direction:column;gap:6px}.field label,.field span{font-size:13px;font-weight:700;color:var(--muted)}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fdfbf8}.field textarea{min-height:105px}.field:has(textarea),.field.full{grid-column:1/-1}.dialog-actions{justify-content:flex-end;gap:9px}.dialog-actions .danger{margin-right:auto}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-btn{border:1px solid var(--line);border-radius:16px;background:#fff;padding:8px;display:flex;flex-direction:column;align-items:center}.quick-btn img{width:100%;aspect-ratio:1.25;object-fit:cover;border-radius:11px}.calendar-wrap,.profile-card,.vault-lock,.vault-head,.grocery-current,.grocery-quick{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:16px}.calendar-title{font-size:24px;font-weight:750}.today-link{background:none;color:#a96545;padding-left:0}.view-tabs{display:flex;gap:5px;margin:18px 0;padding:4px;background:var(--bg);border-radius:12px}.view-tab{flex:1;border:0;border-radius:9px;padding:9px;background:none}.view-tab.active{background:white;font-weight:700}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.dow{text-align:center;padding:7px;font-size:12px;color:var(--muted)}.day-cell{min-height:86px;border:1px solid var(--line);background:#fff;text-align:left;padding:7px;overflow:hidden}.day-cell.out{opacity:.35}.day-cell.selected{box-shadow:inset 0 0 0 2px var(--accent)}.day-num{font-weight:700}.event-dot,.more-dot{display:block;margin-top:3px;white-space:nowrap;overflow:hidden;font-size:10px;color:#a96545}.agenda-list{margin-top:18px;display:grid;gap:8px}.year-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.month-mini{border:1px solid var(--line);border-radius:14px;background:white;padding:10px}.mini-days{display:grid;grid-template-columns:repeat(7,1fr);font-size:9px}.week-scroll{overflow:auto}.week-grid{display:grid;grid-template-columns:64px repeat(7,minmax(100px,1fr));min-width:760px}.week-head-cell,.time-cell,.slot{border:1px solid var(--line);background:#fff;padding:8px}.slot{min-height:50px}.slot-event,.event-card{display:block;background:var(--soft);padding:5px;border-radius:7px;font-size:11px}.hour-row{display:grid;grid-template-columns:65px 1fr}.hour-label{padding:13px 8px}.hour-box{min-height:50px;border:1px solid var(--line);background:#fff;text-align:left}.household-hero{padding:26px;border-radius:22px;background:linear-gradient(135deg,#2d2825,#80604f);color:white;margin-bottom:16px}.household-hero h2{margin:4px 0;font-size:30px}.household-menu{display:grid;gap:11px}.settings-page-head{margin-bottom:16px}.inline-form{margin:0}.app-toggle-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.app-toggle input,.toggle-row input{display:none}.switch{width:43px;height:25px;border-radius:99px;background:#d7d0c9;position:relative;margin-left:auto}.switch:after{content:"";position:absolute;width:19px;height:19px;top:3px;left:3px;border-radius:50%;background:#fff}.app-toggle.on .switch,.toggle-row input:checked+.switch{background:var(--accent)}.app-toggle.on .switch:after,.toggle-row input:checked+.switch:after{left:21px}.toggle-row{display:flex;align-items:center;gap:15px}.weather-home-address{display:grid;gap:5px;margin:18px 0;padding:15px;background:var(--bg);border-radius:14px}.grocery-category-nav,.vault-category-row{display:flex;gap:8px;overflow:auto}.grocery-cat,.vault-cat{border:1px solid var(--line);border-radius:99px;background:#fff;padding:9px 12px}.grocery-cat.active,.vault-cat.active{background:var(--ink);color:#fff}.grocery-preset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.grocery-preset{border:1px solid var(--line);border-radius:13px;background:#fff;padding:10px 5px;display:grid;place-items:center}.grocery-item-icon{font-size:25px}.grocery-item-label{font-size:11px}.grocery-row,.vault-item{display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);padding:9px}.grocery-row.done{opacity:.5;text-decoration:line-through}.grocery-name{flex:1}.grocery-qty{display:flex;gap:5px}.grocery-qty button,.grocery-delete,.vault-del{border:0;background:var(--soft);border-radius:8px;width:28px;height:28px}.vault-lock{text-align:center}.vault-lock img{width:120px;border-radius:24px}.vault-drop{padding:35px;text-align:center;border:2px dashed var(--line);border-radius:16px}.vault-drop span,.vault-item small{display:block;color:var(--muted)}
@media(min-width:760px){.view{padding:30px}.module-grid{grid-template-columns:repeat(4,1fr)}.module-card .art{height:130px}.household-menu{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.view{padding:14px}.module-grid{gap:10px}.module-card{min-height:160px}.module-card .art{height:94px}.date-line{font-size:23px}.form-grid,.app-toggle-grid{grid-template-columns:1fr}.field{grid-column:1}.year-grid{grid-template-columns:repeat(2,1fr)}.day-cell{min-height:58px;padding:3px}.event-dot{display:none}.grocery-preset-grid{grid-template-columns:repeat(3,1fr)}.quick-grid{grid-template-columns:repeat(2,1fr)}.calendar-wrap{padding:10px}}

/* Fonctions métier InkShape */
.studio-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;margin-bottom:12px;box-shadow:var(--shadow)}
.studio-card h2,.studio-card h3{margin:0 0 8px}.studio-card p{margin:4px 0}.meta{color:var(--muted);font-size:13px}.badge{display:inline-flex;padding:5px 9px;border-radius:99px;background:var(--soft);color:#8f5136;font-size:12px;font-weight:800}.badge.dark{background:var(--ink);color:#fff}
.client-row,.invoice-row,.recent-row{display:flex;align-items:center;gap:12px;width:100%;border:1px solid var(--line);border-radius:16px;background:#fff;padding:13px;text-align:left}.client-avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:#9f5c3c;font-weight:900}.row-actions{display:flex;gap:7px;flex-wrap:wrap}.row-actions button{padding:8px 10px}
.client-contact-card{display:grid;gap:11px}.contact-line{display:flex;align-items:center;gap:11px;min-width:0}.contact-line a{color:#8f5136;font-weight:750;text-decoration:none;overflow-wrap:anywhere}.contact-line a:hover{text-decoration:underline}.contact-name{margin-top:5px}.contact-name h2{margin:0}.contact-icon{width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;border-radius:50%;background:var(--soft);font-size:16px}.row-main{display:flex;align-items:center;gap:12px;padding:0;border:0;background:none;text-align:left;color:inherit}.delete-cross{width:32px;height:32px;flex:0 0 32px;border:0;border-radius:50%;background:#f9e3e3;color:var(--danger);font-size:22px;line-height:1;font-weight:800;cursor:pointer}.delete-cross:hover{background:#f3cccc}.recent-row .ghost{white-space:nowrap}
.section-actions{display:flex;align-items:center;gap:8px}.section-add{width:31px;height:31px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--ink);color:#fff;font-size:20px;font-weight:800;line-height:1;cursor:pointer}.section-add:hover{background:#4a403a}
.section-stack{display:grid;gap:10px}.month-group{border:1px solid var(--line);border-radius:17px;background:#fff;overflow:hidden}.month-group summary{padding:15px;font-weight:900;cursor:pointer;background:#fcfaf7}.month-content{display:grid;gap:8px;padding:10px}.invoice-total{font-size:18px;font-weight:900}.qr-panel{text-align:center}.qr-panel img{width:min(280px,100%);padding:12px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.invoice-lines{grid-column:1/-1;display:grid;gap:8px}.invoice-line{display:grid;grid-template-columns:2fr .65fr 1fr .7fr auto;gap:7px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:13px;background:#fcfaf7}.invoice-line input{min-width:0}.tiny-danger{border:0;border-radius:10px;background:#f8e3e3;color:var(--danger);height:42px}.full-width{grid-column:1/-1}.public-consent{max-width:760px;margin:20px auto;padding:20px}.public-consent .studio-card{padding:22px}.notice{padding:12px;border-radius:12px;background:#fff5d9;color:#6b4b00}.success{padding:14px;border-radius:12px;background:#e5f6e9;color:#185d2a}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px}.stat strong{font-size:22px;display:block}
@media(max-width:620px){.invoice-line{grid-template-columns:1fr 1fr}.invoice-line .designation{grid-column:1/-1}.invoice-line .tiny-danger{grid-column:2}.stat-grid{grid-template-columns:1fr}.client-row,.invoice-row{align-items:flex-start}.row-actions{flex-direction:column}.row-actions button{width:100%}}

/* Identité InkShape One dans l'en-tête */
.brand{min-width:0}
.brand img.brand-lockup{display:block;width:min(330px,48vw);height:auto;border-radius:0;object-fit:contain}
@media(max-width:620px){.brand img.brand-lockup{width:min(225px,58vw)}.brand-row{gap:8px}.head-actions{gap:5px}.head-actions .round{width:38px;height:38px}}

/* Responsive téléphone, iPhone et iPad */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-height:100dvh;overflow-x:hidden;overscroll-behavior-y:contain}
.app-shell{min-height:100dvh;padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
.view{padding-top:calc(20px + env(safe-area-inset-top,0px));padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.topbar{height:calc(64px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}
.topbar h1{margin:0;padding:0 8px;line-height:1.2;overflow-wrap:anywhere}
.topbar:not(.hidden)+.view{padding-top:20px}
.bottom-nav{height:calc(76px + env(safe-area-inset-bottom,0px));padding-left:max(10px,env(safe-area-inset-left,0px));padding-right:max(10px,env(safe-area-inset-right,0px));padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}
html,body{touch-action:pan-x pan-y}
button,.nav-item,.icon-button,.round,.primary,.ghost,.danger{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.icon-button,.round,.cal-btn{min-width:44px;min-height:44px}
.field input,.field textarea,.field select,.search{font-size:16px}
.dialog{max-height:calc(100dvh - max(24px,env(safe-area-inset-top,0px)) - max(24px,env(safe-area-inset-bottom,0px)));overflow:auto;overscroll-behavior:contain}

@media(max-width:620px){
 .view{padding-top:calc(18px + env(safe-area-inset-top,0px));padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px))}
 .home-head{padding-top:6px}.brand-row{align-items:flex-start}.brand img.brand-lockup{width:min(230px,62vw)}
 .date-line{margin-top:22px;line-height:1.15}.house-line{align-items:flex-start;gap:10px}.house-pill{max-width:calc(100% - 104px);white-space:normal;text-align:left}
 .dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:18px;margin:8px;border-radius:20px}
 .dialog-actions{position:sticky;bottom:-18px;background:var(--paper);padding:12px 0 max(4px,env(safe-area-inset-bottom,0px));flex-wrap:wrap}
 .dialog-actions button{min-height:44px}.quick-btn{min-height:116px}.bottom-nav small{font-size:10px}
.client-row,.invoice-row,.recent-row{min-width:0}.grow{overflow-wrap:anywhere}
.swipe-action-sheet{position:fixed;inset:0;z-index:100;display:flex;align-items:flex-end;justify-content:center;padding:16px;background:rgba(22,18,15,.42);backdrop-filter:blur(4px)}.swipe-action-card{width:min(100%,520px);display:grid;gap:9px;padding:16px;border-radius:20px;background:#fff;box-shadow:0 18px 55px rgba(0,0,0,.24)}.swipe-action-card p{margin:0 0 4px;text-align:center;font-weight:750}.swipe-action-card button{width:100%;border:0;border-radius:12px;padding:13px;font-weight:800}.swipe-modify{background:#29231f;color:#fff}.swipe-delete{background:#f9e3e3;color:#a62f2f}.swipe-cancel{background:#f3eee8;color:#554b43}
}

@media(min-width:621px) and (max-width:1024px){
 .app-shell{max-width:100%}.view{padding-top:calc(28px + env(safe-area-inset-top,0px));padding-left:max(28px,env(safe-area-inset-left,0px));padding-right:max(28px,env(safe-area-inset-right,0px))}
 .module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.module-card{min-height:176px}.brand img.brand-lockup{width:min(360px,48vw)}
 .dialog{width:min(86vw,720px)}.quick-grid{grid-template-columns:repeat(3,1fr)}
 .topbar:not(.hidden)+.view{padding-top:28px}
}

@media(min-width:1025px){.view{padding-top:30px}.topbar{padding-left:20px;padding-right:20px}}

/* Verrou local Face ID, Windows Hello et mot de passe */
body.auth-locked{overflow:hidden}.auth-locked>.app-shell,.auth-locked>dialog{visibility:hidden}
.auth-gate{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:auto;padding:max(20px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(20px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:radial-gradient(circle at 50% 0,#40382f 0,#171513 48%,#090909 100%)}
.auth-card{width:min(100%,460px);padding:28px;border:1px solid #ffffff1f;border-radius:28px;background:#fdfbf8;box-shadow:0 24px 80px #0009}.auth-logo{display:block;width:min(310px,82%);height:auto;margin:0 auto 24px}.auth-panel h1{margin:10px 0 8px;font-size:28px;line-height:1.1}.auth-panel>p{margin:0 0 20px;color:var(--muted);line-height:1.45}.auth-badge{display:inline-flex;padding:6px 10px;border-radius:99px;background:#efe2c7;color:#8b611d;font-size:11px;font-weight:900;letter-spacing:.08em}.auth-form{display:grid;gap:14px}.auth-form label:not(.auth-check){display:grid;gap:6px}.auth-form label>span{font-size:13px;font-weight:800;color:#665f59}.auth-form input:not([type=checkbox]){width:100%;min-height:48px;border:1px solid var(--line);border-radius:13px;padding:12px 14px;background:white;font-size:16px}.auth-check{display:flex;align-items:center;gap:10px;padding:5px 0}.auth-check input{width:20px;height:20px;accent-color:#b7832f}.auth-primary,.auth-secondary{width:100%;min-height:50px;border:0;border-radius:14px;padding:12px 16px;font-weight:900}.auth-primary{background:linear-gradient(135deg,#181716,#3f382f);color:white;box-shadow:0 10px 25px #211a1233}.auth-secondary{background:#eee8df;color:#24211f}.auth-biometric{display:flex;align-items:center;justify-content:center;gap:10px;margin:18px 0 0}.auth-biometric span{font-size:24px}.auth-separator{display:flex;align-items:center;gap:12px;margin:17px 0;color:#938b84;font-size:12px}.auth-separator:before,.auth-separator:after{content:"";height:1px;flex:1;background:var(--line)}.auth-message{min-height:20px;margin:13px 0 0!important;color:#a13e35!important;font-size:13px;font-weight:700}.auth-primary:disabled,.auth-secondary:disabled{opacity:.55}
.auth-links{display:flex;justify-content:space-between;gap:12px;margin-top:14px}.auth-link{border:0;background:none;color:#8b611d;padding:5px 0;text-decoration:underline;font-size:13px;font-weight:800;cursor:pointer}.auth-panel>.auth-link{display:block;margin:14px auto 0}.auth-link:disabled{opacity:.55}
@media(max-width:520px){.auth-gate{place-items:start center}.auth-card{margin-top:8px;padding:22px 18px;border-radius:22px}.auth-logo{width:min(270px,85%);margin-bottom:18px}.auth-panel h1{font-size:25px}.auth-links{align-items:center;flex-direction:column}}

/* Le menu Ajouter reste centré, quelle que soit la taille de l'écran. */
dialog#quickAddDialog[open]{position:fixed;inset:0;width:min(calc(100vw - 24px),600px);height:max-content;max-height:calc(100dvh - 32px);margin:auto}

/* Animation d’ouverture InkShape One */
.opening-splash{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;background:#000;opacity:1;transition:opacity .3s ease;overflow:hidden}.opening-splash.is-ending{opacity:0;pointer-events:none}.opening-video{position:absolute;inset:0;width:100%;height:100%;min-width:100%;min-height:100%;object-fit:cover;object-position:50% 50%;background:#000}.opening-skip{position:absolute;right:max(16px,env(safe-area-inset-right,0px));bottom:max(18px,env(safe-area-inset-bottom,0px));border:1px solid #ffffff40;border-radius:999px;background:#0008;color:#fff;padding:10px 15px;font-weight:800;backdrop-filter:blur(8px);cursor:pointer}.opening-skip.is-prominent{background:#fff;color:#111}
/* Gestion des comptes autorisés */
.user-account-row{cursor:pointer}.user-account-row:hover{border-color:#cdb999}.user-account-row .row-actions{margin-left:auto}.user-editor-note{padding:10px 12px;border-radius:12px;background:#f6efe5;color:#6b5537;font-size:13px}.field.hidden-field{display:none}.user-danger-zone{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.user-danger-zone .danger{flex:1;min-width:160px}
@media(max-width:620px){.user-account-row{align-items:flex-start}.user-account-row .row-actions{width:100%;margin-left:58px}.user-account-row .row-actions button{width:auto;flex:1}}


/* Studio — membres de la société */
.studio-hero{background:linear-gradient(145deg,#171513,#2c261f);color:#fff;border:1px solid #ffffff14}.studio-hero small{color:#dbc79e;letter-spacing:.14em;font-weight:900}.studio-hero p{color:#ddd3c5}.studio-settings-menu .household-menu-card{min-height:82px;align-items:center}.studio-settings-menu .household-menu-card img{width:52px;height:52px;object-fit:cover;border-radius:14px}.settings-kicker{display:inline-block;margin-bottom:5px;color:#9d762f;font-size:10px;font-weight:900;letter-spacing:.12em}.company-user-list{display:grid;gap:10px;margin-top:16px}.company-user-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;cursor:pointer;transition:border-color .15s ease,transform .15s ease}.company-user-card:hover{border-color:#c8ad7d}.company-user-card:focus-visible{outline:3px solid #d9bd85;outline-offset:2px}.company-user-card.is-disabled{background:#f7f5f2;opacity:.82}.company-user-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:linear-gradient(145deg,#171513,#4a4034);color:#fff;font-size:20px;font-weight:900}.company-user-main{min-width:0}.company-user-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.company-user-title strong{font-size:16px}.company-user-meta{display:flex;gap:6px 10px;flex-wrap:wrap;margin-top:5px;color:var(--muted);font-size:12px}.company-user-meta span+span:before{content:'•';margin-right:10px;color:#c2b8ac}.company-user-actions{display:flex;gap:8px;align-items:center}.status-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;letter-spacing:.08em}.status-chip.is-active{background:#e7f4ea;color:#28633a}.status-chip.is-off{background:#f5e9e6;color:#974537}.company-user-editor{border-top:3px solid #c39a51}.account-create-card{max-width:820px}.auth-card>.auth-panel:first-child,.auth-card>.auth-panel{margin-top:0}
@media(max-width:760px){.company-user-card{grid-template-columns:48px minmax(0,1fr)}.company-user-avatar{width:48px;height:48px}.company-user-actions{grid-column:1/-1;padding-left:62px}.company-user-actions button{flex:1}.company-user-meta span{display:block;width:100%}.company-user-meta span+span:before{display:none}.studio-settings-menu .household-menu-card{min-height:76px}}

/* v23.7 — ouverture universelle plein écran et récupération par identifiant */
.opening-splash{width:100vw;height:100vh;height:100dvh;background:#000}
.auth-links-single{justify-content:center}
.auth-forgot-panel{margin-top:12px;padding:14px;border:1px solid #e5ded4;border-radius:16px;background:#f7f3ed}
.auth-forgot-actions{display:grid;gap:8px}.auth-forgot-actions .auth-link{justify-self:center}
@media (orientation:portrait){.opening-video{object-fit:cover;object-position:center center}}
@media (orientation:landscape){.opening-video{object-fit:cover;object-position:center center}}
/* v23.8 — réglages, abonnement et comptabilité */
.settings-choice-card{max-width:860px}.tax-info{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fcfaf7}.tax-info span{color:var(--muted);font-size:13px}
.subscription-intro{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;align-items:center;padding:22px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#171513,#29231c);color:#fff;margin-bottom:16px}.subscription-intro img{width:150px;height:150px;object-fit:cover;border-radius:28px}.subscription-intro h2{margin:3px 0 10px}.subscription-intro p{margin:0;color:#ded5c8;line-height:1.55}.subscription-plans{display:grid;grid-template-columns:1fr 1fr;gap:14px}.subscription-plan{padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff}.subscription-plan-head{display:flex;gap:14px;align-items:center;margin-bottom:15px}.subscription-person{display:grid;place-items:center;min-width:64px;height:64px;border-radius:18px;background:#1d1a17;color:#d7ad5c;font-weight:900}.subscription-plan h3{margin:1px 0 3px}.subscription-plan p{margin:0;color:var(--muted)}.subscription-prices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.subscription-price{display:flex;flex-direction:column;justify-content:space-between;gap:14px;padding:15px;border:1px solid var(--line);border-radius:16px;background:#fcfaf7}.subscription-price.is-selected{border:2px solid #b78b39;box-shadow:0 0 0 3px #d8b66b22}.subscription-period{display:block;font-size:12px;font-weight:900;text-transform:uppercase}.subscription-price strong{display:block;font-size:25px;margin-top:4px}.subscription-price small{display:block;color:var(--muted);margin:4px 0 8px}.trial-chip{display:inline-flex;padding:5px 8px;border-radius:999px;background:#f2e5c9;color:#725218;font-size:11px;font-weight:800}.studio-plan-pending{padding:18px;border:1px dashed #c6b79d;border-radius:16px;background:#fcfaf7}.subscription-legal{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.subscription-legal p{margin-top:0}.subscription-legal>div{display:flex;gap:18px;flex-wrap:wrap}.text-link{border:0;background:none;padding:0;color:#8d6424;text-decoration:underline;cursor:pointer;font-weight:700}.accounting-export-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.7fr);gap:18px;align-items:end;padding:18px;margin-bottom:16px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#fff,#fbf7f0)}.accounting-export-card h2{margin:4px 0 6px}.accounting-export-card p{margin:0;color:var(--muted);line-height:1.45}.accounting-export-form{display:grid;grid-template-columns:1fr 1fr;gap:9px}.accounting-export-form button{grid-column:1/-1}.accounting-export-card>.auth-message{grid-column:1/-1;margin:0}
@media(max-width:760px){.subscription-intro{grid-template-columns:86px 1fr;padding:16px;gap:14px}.subscription-intro img{width:86px;height:86px;border-radius:20px}.subscription-plans{grid-template-columns:1fr}.subscription-prices{grid-template-columns:1fr 1fr}.accounting-export-card{grid-template-columns:1fr}.accounting-export-form{grid-template-columns:1fr}.accounting-export-form button{grid-column:1}.subscription-price strong{font-size:22px}}
@media(max-width:460px){.subscription-intro{grid-template-columns:1fr}.subscription-intro img{width:96px;height:96px}.subscription-prices{grid-template-columns:1fr}}

/* v23.9 — interface historique conservée : aucune règle globale n’est modifiée ; les styles ajoutés ci-dessus restent limités aux écrans Réglages, Abonnement et Export comptable. */

/* v24.0 — visuels abonnement validés */
.subscription-person-art{overflow:hidden;padding:0;background:#171513}.subscription-person-art img{width:100%;height:100%;object-fit:cover;display:block}.subscription-person-art.multi{min-width:92px;width:92px}.subscription-intro img{object-position:center}

/* v24.1 — visuels abonnement exacts + fonds icônes unifiés */
.studio-settings-menu .household-menu-card img{background:#1b1a18;border-radius:14px}
.subscription-person-art{background:#1b1a18}
.subscription-person-art img{object-fit:cover;object-position:center}
.subscription-intro{background:linear-gradient(145deg,#1b1a18,#292725)}
.subscription-intro img{background:#1b1a18;object-fit:cover}

/* v24.2 — finitions visuelles accueil + abonnement + liens légaux */
.module-card{background:#1b1a18;border-color:#2b2926;overflow:hidden}
.module-card .art{display:block;width:100%;height:130px;object-fit:cover;object-position:center;background:#1b1a18;border:0;border-radius:0;transform:translateZ(0);backface-visibility:hidden}
.module-card .module-copy{background:#fff;min-height:66px;border-top:1px solid #ece4da}
.subscription-intro{background:#1b1a18;border-color:#302d29;overflow:hidden}
.subscription-intro img{width:150px;height:128px;object-fit:cover;object-position:center;background:#1b1a18;border-radius:18px}
.subscription-plan-head{align-items:center}
.subscription-person-art,.subscription-person-art.multi{width:124px;min-width:124px;height:102px;padding:0;border-radius:18px;background:#1b1a18;overflow:hidden}
.subscription-person-art img,.subscription-person-art.multi img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.subscription-links{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}
.subscription-dropdown{position:relative;min-width:210px}
.subscription-dropdown summary{list-style:none;cursor:pointer;color:#8d6424;text-decoration:underline;font-weight:700;padding:0}
.subscription-dropdown summary::-webkit-details-marker{display:none}
.subscription-dropdown summary::after{content:' ▾';text-decoration:none}
.subscription-dropdown[open] summary::after{content:' ▴'}
.subscription-dropdown-menu{margin-top:9px;display:grid;gap:2px;min-width:230px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 10px 28px #2c21161c;position:absolute;z-index:15;left:0;top:100%}
.subscription-dropdown-menu span,.subscription-dropdown-menu button{border:0;background:transparent;text-align:left;padding:9px 10px;border-radius:9px;color:var(--ink);font:inherit}
.subscription-dropdown-menu button{cursor:pointer}
.subscription-dropdown-menu button:hover,.subscription-dropdown-menu span:hover{background:var(--bg)}
@media(max-width:760px){.module-card .art{height:106px}.subscription-person-art,.subscription-person-art.multi{width:106px;min-width:106px;height:90px}.subscription-intro img{width:106px;height:92px}.subscription-dropdown{min-width:100%}.subscription-dropdown-menu{position:static;min-width:0;width:100%}}
@media(max-width:620px){.module-card .art{height:96px}.module-copy{min-height:64px}}

/* v24.3 — cadrage logos propre + suppression effet beige + langues avec drapeaux */
.module-card{background:#1a1a18;border-color:#2b2926;overflow:hidden}
.module-card .art{display:block;width:100%;height:auto;aspect-ratio:1.45/1;object-fit:contain;object-position:center;background:#1a1a18;border:0;border-radius:0;padding:7px 10px;transform:none;backface-visibility:visible}
.module-card .module-copy{background:#fff;min-height:66px;border-top:1px solid #ece4da;position:relative;z-index:2}
.subscription-intro img{object-fit:contain!important;object-position:center!important;background:#1b1a18!important;padding:4px;border-radius:16px}
.subscription-person-art,.subscription-person-art.multi{width:112px!important;min-width:112px!important;height:112px!important;background:#1b1a18!important;border-radius:16px!important;overflow:hidden!important;padding:0!important}
.subscription-person-art img,.subscription-person-art.multi img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;display:block!important;background:#1b1a18!important}
@media(min-width:760px){.module-card .art{height:auto!important;aspect-ratio:1.45/1}}
@media(max-width:760px){.module-card .art{height:auto!important;aspect-ratio:1.4/1;padding:6px 8px}.subscription-person-art,.subscription-person-art.multi{width:98px!important;min-width:98px!important;height:98px!important}}
@media(max-width:620px){.module-card .art{height:auto!important;aspect-ratio:1.35/1;padding:5px 7px}}

.language-setting{border:0;padding:0;margin:0}.language-setting legend{font-weight:800;margin-bottom:10px}.language-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.language-option{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) 26px;align-items:center;gap:12px;min-height:82px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#fff;cursor:pointer}.language-option.is-selected{border-color:#b58b43;background:#fffaf1;box-shadow:0 0 0 2px #d6b56f33}.language-flag{display:grid;place-items:center;width:52px;height:42px;border-radius:9px;background:#f7f5f1;border:1px solid #e3ded5;font-size:31px}.language-country{display:flex;flex-direction:column}.language-country strong{font-size:14px}.language-country small{margin-top:4px;color:var(--muted);font-size:12px}.language-option input{position:absolute;opacity:0}.language-radio{width:22px;height:22px;border:2px solid #a99d8d;border-radius:50%;display:grid;place-items:center;background:#fff}.language-radio:after{content:'';width:10px;height:10px;border-radius:50%;background:#b18439;transform:scale(0)}.language-option input:checked+.language-radio{border-color:#b18439}.language-option input:checked+.language-radio:after{transform:scale(1)}@media(max-width:700px){.language-options{grid-template-columns:1fr}.language-option{min-height:72px}}

/* v24.5 — vrais drapeaux image, pas codes FR/GB/ES */
.language-flag{overflow:hidden;padding:0;background:#fff}.language-flag img{display:block;width:100%;height:100%;object-fit:cover;border-radius:8px}

/* v25.2 — fond uniforme sans modification des icônes */
.module-card{background:#1c1d1b!important;}
.module-card .art,
.module-card .module-art,
.module-card .module-image,
.module-card .module-visual{
  background:#1c1d1b!important;
  object-fit:contain!important;
  object-position:center center!important;
}

/* v25.3 — accueil recalibre avec les visuels definitifs fournis */
.apps-panel{padding:20px;border-radius:26px}
.module-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.module-card{min-height:0;border:1px solid #2b2926!important;border-radius:28px!important;background:#1c1d1b!important;overflow:hidden!important;box-shadow:0 12px 32px #2b21181a!important}
.module-card .art{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1/0.78!important;object-fit:contain!important;object-position:center center!important;background:#1c1d1b!important;padding:10px!important;border:0!important;border-radius:0!important;transform:none!important}
.module-card .module-copy{min-height:94px!important;padding:18px 20px!important;background:#fff!important;border-top:1px solid #ece4da!important;justify-content:center!important}
.module-card .module-copy strong{font-size:18px;line-height:1.2}
.module-card .module-copy small{font-size:14px;line-height:1.35;margin-top:4px;padding-right:40px}
.module-card .module-copy .count{right:16px;top:18px}
@media(max-width:900px){.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.module-card .art{padding:8px}.module-card .module-copy{min-height:84px;padding:15px 16px!important}}
@media(max-width:680px){.apps-panel{padding:14px}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.module-card{border-radius:22px!important}.module-card .art{aspect-ratio:1/0.82!important;padding:7px!important}.module-card .module-copy{min-height:76px!important;padding:13px 14px!important}.module-card .module-copy strong{font-size:16px}.module-card .module-copy small{font-size:12px;padding-right:30px}.module-card .module-copy .count{right:10px;top:12px}}
@media(max-width:390px){.module-grid{gap:10px}.module-card .art{padding:5px!important}.module-card .module-copy{padding:11px 12px!important}.module-card .module-copy strong{font-size:15px}}

/* v25.3 — accueil recalibre avec les visuels definitifs fournis */
.apps-panel{padding:20px;border-radius:26px}
.module-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.module-card{min-height:0;border:1px solid #2b2926!important;border-radius:28px!important;background:#1c1d1b!important;overflow:hidden!important;box-shadow:0 12px 32px #2b21181a!important}
.module-card .art{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1/0.78!important;object-fit:contain!important;object-position:center center!important;background:#1c1d1b!important;padding:10px!important;border:0!important;border-radius:0!important;transform:none!important}
.module-card .module-copy{min-height:94px!important;padding:18px 20px!important;background:#fff!important;border-top:1px solid #ece4da!important;justify-content:center!important}
.module-card .module-copy strong{font-size:18px;line-height:1.2}.module-card .module-copy small{font-size:14px;line-height:1.35;margin-top:4px;padding-right:40px}.module-card .module-copy .count{right:16px;top:18px}
@media(max-width:900px){.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.module-card .art{padding:8px}.module-card .module-copy{min-height:84px;padding:15px 16px!important}}
@media(max-width:680px){.apps-panel{padding:14px}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.module-card{border-radius:22px!important}.module-card .art{aspect-ratio:1/0.82!important;padding:7px!important}.module-card .module-copy{min-height:76px!important;padding:13px 14px!important}.module-card .module-copy strong{font-size:16px}.module-card .module-copy small{font-size:12px;padding-right:30px}.module-card .module-copy .count{right:10px;top:12px}}
@media(max-width:390px){.module-grid{gap:10px}.module-card .art{padding:5px!important}.module-card .module-copy{padding:11px 12px!important}.module-card .module-copy strong{font-size:15px}}

/* v25.4 — fond parfaitement uniforme entre carte et visuel */
.module-card,
.module-card .art,
.subscription-intro,
.subscription-intro img,
.subscription-person-art,
.subscription-person-art img,
.subscription-person-art.multi,
.subscription-person-art.multi img {
  background:#1c1d1b !important;
}
.module-card .art{
  object-fit:contain !important;
  object-position:center center !important;
}

/* v25.5 — Studio > Mon abonnement : même traitement que le menu principal */
.subscription-intro,
.subscription-person-art,
.subscription-person-art.multi,
.subscription-intro .subscription-art,
.subscription-intro img,
.subscription-person-art img,
.subscription-person-art.multi img {
    background: #1c1d1b !important;
}
.subscription-intro img,
.subscription-person-art img,
.subscription-person-art.multi img {
    object-fit: contain !important;
    object-position: center center !important;
}

/* v25.6 — Studio > Abonnement : fonds et centrage strictement identiques */
.subscription-person-art,
.subscription-person-art.multi,
.subscription-person-art img,
.subscription-person-art.multi img,
.subscription-user-card .subscription-person-art,
.subscription-user-card .subscription-person-art img {
  background:#1c1d1b !important;
}

.subscription-person-art,
.subscription-person-art.multi {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  padding:0 !important;
}

.subscription-person-art img,
.subscription-person-art.multi img {
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:50% 50% !important;
  margin:0 !important;
  transform:none !important;
  max-width:none !important;
  max-height:none !important;
}

/* même boîte visuelle quelle que soit la taille d'écran */
@media (max-width: 1024px) {
  .subscription-person-art,
  .subscription-person-art.multi {
    min-height:220px !important;
  }
}
@media (max-width: 640px) {
  .subscription-person-art,
  .subscription-person-art.multi {
    min-height:200px !important;
  }
}

/* v25.7 — Studio > Mon abonnement : correction iPhone/tablette définitive */
.subscription-intro{
  background:#1c1d1b !important;
  overflow:hidden !important;
}
.subscription-intro img{
  background:#1c1d1b !important;
  object-fit:contain !important;
  object-position:50% 50% !important;
}

/* Les deux pictos utilisateur utilisent exactement la même boîte sur tous les appareils. */
.subscription-person-art,
.subscription-person-art.multi{
  width:112px !important;
  min-width:112px !important;
  max-width:112px !important;
  height:112px !important;
  min-height:112px !important;
  max-height:112px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:16px !important;
  overflow:hidden !important;
  background:#1c1d1b !important;
  flex:0 0 112px !important;
}
.subscription-person-art img,
.subscription-person-art.multi img{
  width:112px !important;
  min-width:112px !important;
  max-width:112px !important;
  height:112px !important;
  min-height:112px !important;
  max-height:112px !important;
  display:block !important;
  object-fit:contain !important;
  object-position:50% 50% !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  border-radius:0 !important;
  background:#1c1d1b !important;
}
.subscription-plan-head{
  display:grid !important;
  grid-template-columns:112px minmax(0,1fr) !important;
  align-items:center !important;
  gap:16px !important;
}

/* Smartphone : même taille visuelle, pas de min-height parasite de 200/220 px. */
@media (max-width:640px){
  .subscription-person-art,
  .subscription-person-art.multi,
  .subscription-person-art img,
  .subscription-person-art.multi img{
    width:96px !important;
    min-width:96px !important;
    max-width:96px !important;
    height:96px !important;
    min-height:96px !important;
    max-height:96px !important;
    flex-basis:96px !important;
  }
  .subscription-plan-head{
    grid-template-columns:96px minmax(0,1fr) !important;
    gap:13px !important;
  }
}

/* Pendant la validation automatique : aucun rectangle blanc entre l'intro et le menu. */
.auth-gate.auth-validating{
  background:#000 !important;
}
.auth-gate.auth-validating .auth-card{
  display:none !important;
}

/* v25.8 - aucun écran vidéo au démarrage et fonds de pictogrammes strictement continus. */
#openingSplash{display:none!important}
.module-card{border-color:#1c1d1b!important}
.module-card .art,
.subscription-intro img,
.subscription-person-art,
.subscription-person-art img,
.subscription-person-art.multi,
.subscription-person-art.multi img{
  background-color:#1c1d1b!important;
  box-shadow:none!important;
  outline:0!important;
  border-color:#1c1d1b!important;
}

/* Export global dossiers clients v25.20 */
.topbar{grid-template-columns:48px 1fr auto}.topbar-actions{display:flex;align-items:center;gap:7px}.topbar-actions .icon-button{display:grid;place-items:center}.topbar-actions svg{width:21px;height:21px}.topbar-actions .exporting{opacity:.6;pointer-events:none}

/* Agenda mobile complet v25.39 */
.mobile-event-count,.mobile-week-list{display:none}
@media(max-width:620px){.day-cell{position:relative}.day-cell.has-events{background:#fff8f2}.mobile-event-count{display:grid;place-items:center;position:absolute;right:3px;bottom:3px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:#a96545;color:#fff;font-size:10px;font-weight:800}.mobile-week-list{display:grid;gap:14px;margin-top:16px}.mobile-week-day{display:grid;gap:8px}.mobile-week-day h3{margin:0;text-transform:capitalize;font-size:14px;color:#817870}.mobile-week-day .item{padding:10px}.mobile-week-day .item img{width:42px;height:42px}}

/* Demande d’acompte v25.41 */
.deposit-builder{grid-column:1/-1;display:grid;gap:18px;width:100%;text-align:left}.deposit-builder-head{display:grid;gap:4px}.deposit-builder-head strong{font-size:22px}.deposit-builder-head small{color:var(--muted)}.deposit-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.deposit-date-grid input{min-height:48px}.deposit-step{display:grid;gap:9px}.deposit-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.deposit-choices button{min-height:58px;border:1px solid var(--line);border-radius:14px;background:#fff;font-weight:800;color:var(--ink)}.deposit-choices button.selected{background:var(--ink);border-color:var(--ink);color:#fff}.deposit-choices button:disabled{opacity:.55}.deposit-result{text-align:center}.deposit-success{display:grid;place-items:center;width:58px;height:58px;margin:auto;border-radius:50%;background:#dff3e4;color:#185d2a;font-size:28px;font-weight:900}.deposit-result h3{margin:0}.deposit-url{width:100%;padding:12px;border:1px solid var(--line);border-radius:11px;background:#f8f4ed}.deposit-result-actions{display:flex;gap:10px;justify-content:center}.deposit-result-actions button{flex:1}.quick-grid:has(.deposit-builder){grid-template-columns:1fr}@media(max-width:620px){.deposit-date-grid{grid-template-columns:1fr}.deposit-result-actions{flex-direction:column}}

/* Export v25.21 — choix d’emplacement + feuille Fichiers mobile */
.export-save-overlay{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.48);backdrop-filter:blur(5px)}.export-save-dialog{width:min(520px,100%);padding:22px;border-radius:22px;background:#fff;box-shadow:0 18px 55px rgba(0,0,0,.28)}.export-save-dialog h3{margin:0 0 8px}.export-save-dialog p{line-height:1.45}.export-save-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.export-save-actions button{flex:1 1 150px}
/* v25.45 — synthèse comptable mensuelle par type */
.accounting-month>summary{display:flex;align-items:center;justify-content:space-between;gap:18px}
.accounting-month-title{display:flex;flex-direction:column;gap:3px}.accounting-month-title strong{font-size:18px}.accounting-month-title span,.accounting-month-total small{color:var(--muted,#777);font-size:12px}
.accounting-month-total{text-align:right;display:flex;flex-direction:column}.accounting-month-total strong{font-size:18px}
.accounting-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 0}
.accounting-stat{border:1px solid var(--line,#e5e1d8);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:3px}.accounting-stat span,.accounting-stat small{font-size:12px;color:var(--muted,#777)}.accounting-stat strong{font-size:17px}
.accounting-legacy-note{font-size:12px;color:var(--muted,#777);padding:0 2px 12px}
@media(max-width:620px){.accounting-category-grid{grid-template-columns:1fr}.accounting-month>summary{align-items:flex-start}.accounting-month-total strong{font-size:16px}}
html,
body,
.app-shell {
  touch-action: pan-x pan-y;
  -ms-touch-action: pan-x pan-y;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
