/* Composants et densité communs aux trois espaces. */
html[data-palette] {--blue:var(--jmb-accent);--primary:var(--jmb-accent);}
html[data-theme=dark][data-palette] {--bg:var(--jmb-canvas);--text:#eef4f8;--muted:#aebcc9;--card:rgba(24,30,37,.93);--line:rgba(193,212,229,.16);--soft:rgba(var(--jmb-accent-rgb),.12);--page:var(--jmb-canvas);--ink:#eef4f8;--surface-soft:rgba(38,47,55,.68);--primary-soft:rgba(var(--jmb-accent-rgb),.14);}
html[data-palette] body.is-authenticated {--primary:var(--jmb-accent);--primary-soft:rgba(var(--jmb-accent-rgb),.14);}
html[data-theme=dark][data-palette] body.is-authenticated {--glass-canvas:rgba(8,16,24,.67);--glass-bar:rgba(12,22,30,.72);--glass-panel:rgba(25,37,45,.63);--glass-tile:rgba(var(--jmb-accent-rgb),.10);--glass-row:rgba(39,52,61,.4);--card:rgba(18,28,36,.95);--ink:#eef4f8;--muted:#b1c0cd;}
html[data-palette] .primary,html[data-palette] .primary-button,html[data-palette] body.is-authenticated .primary-button,html[data-palette] .login-editorial .btseconnecter .primary-button {background:var(--jmb-action);border-color:transparent;color:#07131e;box-shadow:inset 0 1px 0 #ffffff22,0 5px 16px rgba(var(--jmb-accent-rgb),.12);}
html[data-theme=light][data-palette] .primary,html[data-theme=light][data-palette] .primary-button {color:white;}
html[data-palette] .primary:hover,html[data-palette] .primary-button:hover {filter:brightness(1.06);transform:translateY(-1px);}
html[data-palette] .primary:disabled,html[data-palette] .primary-button:disabled {opacity:.45;filter:none;transform:none;cursor:not-allowed;}
html[data-palette] .sidebar .nav-item.is-active {background:rgba(var(--jmb-accent-rgb),.16);border-color:rgba(var(--jmb-accent-rgb),.25);}
html[data-palette] .eyebrow,html[data-palette] .price-accent {color:var(--jmb-accent);}
html[data-palette] .cart-icon-link #count,html[data-palette] .bar {background:var(--jmb-action);}
html[data-palette] .category-filters button[aria-pressed=true],html[data-palette] header nav a.active {background:rgba(var(--jmb-accent-rgb),.12);color:var(--jmb-accent);}
button,a.button {touch-action:manipulation;}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible {outline:2px solid var(--jmb-accent,var(--primary));outline-offset:4px;}
/* Champs travaillés, sans modifier les formulaires ou leurs validations. */
.field input:not([type=checkbox]):not([type=radio]):not([type=file]),.field textarea,.field select,.lblform input,.field-input,.field-select,.search-input,.toolbar input,.toolbar select,.login-editorial .lblform input {
 min-height:46px;border:1px solid var(--line);border-radius:13px;padding:12px 14px;
 color:var(--text,var(--ink));background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(239,247,253,.62));
 font-family:inherit;font-size:12px;line-height:1.5;box-shadow:inset 0 1px 2px #ffffff99,0 2px 6px #18354b04;
 transition:border-color .18s,box-shadow .18s,background-color .18s;
}
html[data-theme=dark] .field input:not([type=checkbox]):not([type=radio]):not([type=file]),html[data-theme=dark] .field textarea,html[data-theme=dark] .field select,html[data-theme=dark] .lblform input,html[data-theme=dark] .field-input,html[data-theme=dark] .field-select,html[data-theme=dark] .search-input,html[data-theme=dark] .toolbar input,html[data-theme=dark] .toolbar select,html[data-theme=dark] .login-editorial .lblform input {
 background:linear-gradient(145deg,rgba(45,59,69,.6),rgba(24,36,46,.65));box-shadow:inset 0 1px 0 #ffffff08,0 2px 8px #00000008;color:#eef4f8;
}
.field input:hover,.field textarea:hover,.field select:hover,.lblform input:hover,.search-input:hover {border-color:rgba(var(--jmb-accent-rgb),.40);}
.field input:focus,.field textarea:focus,.field select:focus,.lblform input:focus,.search-input:focus,.toolbar input:focus {outline:none;border-color:var(--jmb-accent);box-shadow:0 0 0 4px rgba(var(--jmb-accent-rgb),.12),inset 0 1px 0 #ffffff08;}
.field:focus-within>label,.lblform:focus-within>label {color:var(--jmb-accent);}
.field label,.lblform label {font-size:11px;font-weight:600;letter-spacing:.01em;}
.field input::placeholder,.lblform input::placeholder,textarea::placeholder {color:var(--muted);opacity:.72;}
.field input[type=file] {padding:10px;border:1px dashed var(--line);border-radius:13px;background:var(--surface-soft,var(--soft));font-size:11px;}
input::file-selector-button {font:inherit;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--primary,var(--blue));margin-right:12px;cursor:pointer;}
textarea {min-height:110px;resize:vertical;}
.field input:disabled,.field select:disabled,.lblform input:disabled {opacity:.55;cursor:not-allowed;}
.field input[readonly] {background:var(--surface-soft,var(--soft));}
.primary-button>.ui-icon {width:15px;height:15px;flex-shrink:0;}
.dashboard-board .primary-button,.dashboard-board .secondary-button {display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;border-radius:11px;}
.topbar a.home-top-button {display:grid;place-items:center;text-decoration:none;}
/* Densité, alignement et fluidité native. */
.container {padding-top:30px;padding-bottom:45px;}
.hero {padding:24px 0 38px;gap:40px;}
.hero h1 {font-size:clamp(33px,4.1vw,51px);margin:16px 0 20px;}
.hero .lead {font-size:14px;line-height:1.8;}
.brand-universe {min-height:390px;}
.orbit-line-two {width:360px;height:360px;}.orbit-line-one {width:265px;height:265px;}
.orbit-card {width:125px;min-height:120px;padding:14px;}.orbit-card strong {font-size:11px;}
.universe-brand img {width:110px;height:110px;border-radius:26px;}
.hero-search {margin-bottom:30px;padding:10px 12px 10px 18px;}
.section-head {margin:22px 0 16px;align-items:center;}.section-head h2 {font-size:24px;line-height:1.35;}
.grid {gap:18px;align-items:stretch;}.grid>.card {padding:22px;}
.offer-card h3 {font-size:19px;margin:19px 0 8px;}.offer-price {font-size:25px;margin:17px 0;}.offer-description {min-height:58px;}.offer-foot {margin-top:auto;}
.activity-section {margin-top:40px;}.activity-section .section-head p {margin:0;}
.process-section {margin:42px 0;padding:28px;}.process-grid {margin:24px 0;gap:25px;}
.contact-band {padding:28px 0 6px;}.contact-band h2 {font-size:28px;}
.site-footer {padding-top:42px;}.footer-grid {gap:30px;}.footer-grid>div>a {margin-bottom:13px;}.footer-brand p {margin:15px 0 0;}.footer-bottom {margin-top:25px;padding-top:20px;}
.catalog-heading {margin-bottom:22px;}.catalog-heading h1 {font-size:clamp(31px,3.8vw,44px);margin:14px 0 18px;}.catalog-heading p {font-size:13px;}
.catalog-spotlight {min-height:320px;padding:26px 28px 18px;gap:14px 26px;margin-bottom:24px;}.spotlight-stage {min-height:200px;}.spotlight-ring {width:190px;height:190px;}.spotlight-copy h2 {font-size:34px;margin:12px 0;}.spotlight-copy p {font-size:11px;}.spotlight-mark {width:120px;height:120px;will-change:auto;}.spotlight-mark img {width:75px;height:75px;}
.catalog-controls {padding:15px 17px;}.catalog-packs-section {margin-top:40px;}.pack-offer-card .pack-gift {margin-top:22px;margin-bottom:5px;}
.client-workspace {padding:23px 28px 35px;}.client-topline {margin-bottom:25px;padding-bottom:18px;}.client-kpis {margin:22px 0 28px;}.client-section .empty {padding:32px 22px;}.client-shortcuts {margin-top:22px;}.client-kpi {padding:17px;}
.reveal.revealed {transform:none;}.hero-visual .tile {will-change:auto;}
.jmb-locate {animation:jmb-locate-ring 1.6s ease-out;scroll-margin-top:110px;}
@keyframes jmb-locate-ring {0%,35%{box-shadow:0 0 0 5px rgba(var(--jmb-accent-rgb),.22);}100%{box-shadow:0 0 0 0 transparent;}}
/* Thèmes et recherche universelle */
.jmb-appearance,.jmb-universal-search {width:min(650px,calc(100vw - 28px));max-height:85dvh;padding:27px;margin:auto;border:1px solid var(--line);border-radius:23px;color:var(--text,var(--ink));background:var(--card);box-shadow:0 25px 90px #07152440;font-family:inherit;}
.jmb-appearance::backdrop,.jmb-universal-search::backdrop {background:#07152380;backdrop-filter:blur(6px);}
.jmb-dialog-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:17px;}.jmb-dialog-heading h2 {font-size:23px;margin:9px 0 0;line-height:1.3;}.jmb-dialog-heading>button {border:1px solid var(--line);background:transparent;color:inherit;width:32px;height:32px;min-height:32px;padding:5px;border-radius:10px;cursor:pointer;font:inherit;}.jmb-eyebrow {font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--jmb-accent);}.jmb-appearance>p {font-size:12px;line-height:1.7;color:var(--muted);}.jmb-theme-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px;}.jmb-theme-grid>button {display:block;position:relative;text-align:left;border:1px solid var(--line);padding:10px;border-radius:14px;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:10px;}.jmb-theme-grid>button[aria-pressed=true] {border-color:var(--jmb-accent);background:rgba(var(--jmb-accent-rgb),.06);}.jmb-theme-preview {height:72px;background:var(--sample-bg);border-radius:9px;margin-bottom:11px;padding:10px;display:grid;grid-template-columns:20px 1fr;gap:5px;border:1px solid #ffffff15;}.jmb-theme-preview i {border:1px solid #7d95a32b;border-radius:4px;background:#7c99aa12;}.jmb-theme-preview i:first-child {grid-row:span 2;background:var(--sample-accent);opacity:.65;}.jmb-theme-grid b {position:absolute;right:12px;bottom:8px;color:var(--jmb-accent);display:none;}.jmb-theme-grid button[aria-pressed=true] b {display:block;}
.jmb-search-input {display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft,var(--soft));}.jmb-search-input:focus-within {border-color:var(--jmb-accent);box-shadow:0 0 0 3px rgba(var(--jmb-accent-rgb),.10);}.jmb-search-input svg {width:20px;height:20px;stroke:var(--jmb-accent);fill:none;stroke-width:1.6;flex-shrink:0;}.jmb-search-input input {min-width:0;flex:1;border:0;outline:none;background:transparent;color:inherit;font:inherit;font-size:13px;padding:0;}.jmb-search-hint {font-size:10px;color:var(--muted);line-height:1.6;margin:11px 0 18px;}.jmb-search-results {display:grid;gap:7px;max-height:50dvh;overflow:auto;}.jmb-search-results>button {display:flex;align-items:center;gap:12px;border:1px solid transparent;border-radius:12px;background:transparent;color:inherit;font:inherit;text-align:left;width:100%;padding:12px;cursor:pointer;}.jmb-search-results>button:hover,.jmb-search-results>button:focus-visible {background:rgba(var(--jmb-accent-rgb),.09);border-color:var(--line);}.jmb-result-symbol {width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;color:var(--jmb-accent);font-size:18px;}.jmb-search-results strong {display:block;font-size:12px;line-height:1.5;}.jmb-search-results small {display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:3px;}.jmb-search-results em {font-size:9px;margin-left:auto;color:var(--muted);font-style:normal;}.jmb-search-empty {padding:30px;text-align:center;font-size:12px;color:var(--muted);line-height:1.8;}
.public-search-button {width:40px;padding:9px;}.public-search-button svg {width:18px;height:18px;}
.login-editorial .login-art .login-logo {top:27px;left:28px;}.login-editorial .login-art .login-logo img {width:78px;height:78px;border-radius:17px;box-shadow:0 8px 25px #0003;}.login-editorial .login-shell {min-height:650px;}.login-editorial .login-art {min-height:630px;}.login-editorial .login-art-copy {padding-top:200px;}.login-editorial .login-container {padding:48px 50px;}.login-editorial .login-title h1 {font-size:33px;}
@media(max-width:760px){.container {padding:24px 17px 35px;}.hero {padding:12px 0 24px;gap:20px;}.hero h1 {font-size:36px;}.brand-universe {min-height:350px;margin-top:23px;}.hero-search {margin-bottom:26px;}.activity-section {margin-top:30px;}.process-section {margin:30px 0;padding:23px;}.process-grid {gap:18px;}.section-head h2 {font-size:23px;}.grid {gap:15px;}.grid>.card {padding:21px;}.catalog-spotlight {padding:22px 20px 17px;}.catalog-heading h1 {font-size:32px;}.catalog-packs-section {margin-top:32px;}.footer-grid {gap:25px;}.client-workspace {padding:20px 16px 30px;}.public-search-button {width:34px;padding:8px;}.jmb-appearance,.jmb-universal-search {padding:22px 18px;}.jmb-theme-grid {grid-template-columns:1fr 1fr;}.jmb-dialog-heading h2 {font-size:21px;}.jmb-search-results>button {padding:10px;}.jmb-search-results em {display:none;}}
@media(max-width:650px){.login-editorial .login-art {min-height:160px;height:160px;}.login-editorial .login-art-copy {padding:0;}.login-editorial .login-art .login-logo {left:18px;top:18px;}.login-editorial .login-art .login-logo img {width:49px;height:49px;border-radius:12px;}.login-editorial .login-shell {min-height:0;}.login-editorial .login-container {padding:30px 24px;}.login-editorial .login-title h1 {font-size:28px;}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after {scroll-behavior:auto!important;animation:none!important;transition:none!important;}.jmb-locate {outline:2px solid var(--jmb-accent);}}
body dialog.jmb-appearance .jmb-theme-grid button[data-theme-id] {display:block;min-height:110px;line-height:1.4;}
.jmb-universe-intro .intro-copy p:empty {display:none;}
/* Les contrôles restent regroupés sur petit écran. */
@media(max-width:450px){header>.actions {gap:4px;}header>.actions .public-search-button {width:31px;min-height:36px;padding:7px;}header>.actions>[data-act=theme] {min-width:31px;padding:8px;min-height:36px;}header>.actions .cart-icon-link {width:34px;min-height:36px;}header>.actions .primary {font-size:10px;padding:9px;}header .logo {width:39px;height:39px;}header {gap:7px;}}
.offer-description:empty {display:none;min-height:0;}
body dialog.jmb-appearance .jmb-theme-grid button[data-theme-id] .jmb-theme-preview {width:100%;}

.jmb-auth-transition {position:fixed;inset:0;z-index:100000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:var(--jmb-canvas,#f3f7fc);color:var(--text,#172033);isolation:isolate;}
.jmb-auth-transition img {width:100px;height:100px;object-fit:contain;border-radius:24px;box-shadow:0 16px 50px #0002;animation:jmb-auth-logo 1.2s ease both;}
.jmb-auth-transition p {font-size:14px;font-weight:600;letter-spacing:.02em;}
.jmb-auth-orbit {position:absolute;width:290px;height:290px;border:1px solid rgba(var(--jmb-accent-rgb,30,144,255),.18);border-radius:50%;animation:jmb-auth-orbit 1.4s ease-out both;}
.jmb-auth-orbit span {position:absolute;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(var(--jmb-accent-rgb,30,144,255),.25);background:var(--card,#ffffff);border-radius:14px;color:var(--jmb-accent,#1e90ff);font-size:22px;}
.jmb-auth-orbit span:nth-child(1){top:-20px;left:125px;}.jmb-auth-orbit span:nth-child(2){bottom:30px;left:-7px;}.jmb-auth-orbit span:nth-child(3){bottom:30px;right:-7px;}
@keyframes jmb-auth-logo {from{opacity:0;transform:translateY(14px) scale(.9);}to{opacity:1;transform:none;}}
@keyframes jmb-auth-orbit {from{opacity:0;transform:scale(.8) rotate(-12deg);}to{opacity:1;transform:scale(1) rotate(0);}}
@media(prefers-reduced-motion:reduce){.jmb-auth-transition,.jmb-auth-transition *{animation:none!important;}}
:root[data-theme=dark]{color-scheme:dark}:root[data-theme=light]{color-scheme:light}select option,select optgroup{background:var(--bg,#fff);color:var(--text,#172033)}#request{max-width:900px;padding:28px;border-radius:20px}#request>.field:first-child{width:100%;max-width:390px}#request select{min-height:46px;font-size:13px;padding:12px 38px 12px 15px}#request #questions{display:grid;grid-template-columns:1fr 1fr;gap:16px}#request #questions .field{margin:0}#request #questions+.field{margin-top:20px}#request textarea{min-height:130px}#request>button{min-height:42px}.public-home svg,.client-auth-intro .client-icon-button svg{fill:none;stroke:currentColor;stroke-width:1.7}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:650px){#request{padding:20px}#request #questions{grid-template-columns:1fr}.public-home{display:none}}

body dialog.jmb-appearance{width:min(465px,calc(100vw - 28px));padding:20px;border-radius:19px}body dialog.jmb-appearance .jmb-dialog-heading{margin-bottom:16px}body dialog.jmb-appearance .jmb-dialog-heading h2{font-size:20px;margin-top:6px}body dialog.jmb-appearance .jmb-theme-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:0}body dialog.jmb-appearance .jmb-theme-grid button[data-theme-id]{min-height:55px;padding:9px 30px 9px 10px;display:flex;align-items:center;gap:10px;font-size:10px;border-radius:11px}body dialog.jmb-appearance .jmb-theme-grid button[data-theme-id] .jmb-theme-preview{width:35px;height:35px;flex-shrink:0;margin:0;padding:5px;grid-template-columns:8px 1fr;gap:3px;border-radius:7px}body dialog.jmb-appearance .jmb-theme-grid b{right:11px;bottom:auto;top:19px}.public-home{display:inline-flex!important}

/* Neutral surfaces; only controls and active states carry the selected accent. */
html[data-theme=light][data-palette]{--bg:var(--jmb-canvas);--page:var(--jmb-canvas);--text:#20262c;--ink:#20262c;--muted:#657079;--card:rgba(255,255,255,.92);--line:rgba(35,44,52,.12);--soft:rgba(var(--jmb-accent-rgb),.075);--surface-soft:#f0f2f3;--button-hover:var(--jmb-action)}
html[data-theme=dark][data-palette]{--text:#eef0f2;--ink:#eef0f2;--muted:#aab0b7;--card:rgba(25,29,32,.94);--line:rgba(221,225,230,.13);--soft:rgba(var(--jmb-accent-rgb),.075);--surface-soft:rgba(45,49,53,.7);--button-hover:var(--jmb-action)}
html[data-palette] body.is-authenticated{--ink:var(--text);--muted:#657079;--line:rgba(35,44,52,.13);--glass-canvas:rgba(242,244,245,.82);--glass-bar:rgba(252,253,253,.9);--glass-panel:rgba(255,255,255,.76);--glass-tile:rgba(255,255,255,.7);--glass-row:rgba(240,242,244,.72);--card:rgba(255,255,255,.92);--surface-soft:#f0f2f3;--button-hover:var(--jmb-action);background:#eceff1}
html[data-theme=dark][data-palette] body.is-authenticated{--ink:#eef0f2;--muted:#aab0b7;--line:rgba(221,225,230,.13);--glass-canvas:rgba(16,19,22,.86);--glass-bar:rgba(22,26,29,.92);--glass-panel:rgba(30,34,37,.78);--glass-tile:rgba(33,37,40,.75);--glass-row:rgba(39,43,46,.62);--card:rgba(25,29,32,.94);--surface-soft:rgba(45,49,53,.7);background:#141619}
html[data-palette] body.is-authenticated::before{filter:grayscale(.78);opacity:.65}
html[data-palette] body.is-authenticated .sidebar .nav-item.is-active{background:rgba(var(--jmb-accent-rgb),.08);border-color:rgba(var(--jmb-accent-rgb),.16);color:var(--jmb-accent)}
html[data-palette] .icon-button:hover,html[data-palette] .secondary-button:hover,html[data-palette] .text-button:hover,html[data-palette] .persistent-hover{box-shadow:0 3px 10px #0000000d}
html[data-palette] .brand-universe{background:radial-gradient(ellipse at center,rgba(var(--jmb-accent-rgb),.04),transparent 65%)}
html[data-palette] .pack-gift-body{background:linear-gradient(145deg,color-mix(in srgb,var(--jmb-accent) 64%,var(--card)),color-mix(in srgb,var(--jmb-accent) 45%,var(--bg)));box-shadow:0 15px 26px #00000015}
html[data-palette] .pack-gift-lid{background:linear-gradient(145deg,color-mix(in srgb,var(--jmb-accent) 72%,white),var(--jmb-accent));box-shadow:0 5px 12px #0001}
html[data-palette] .pack-offer-card{background:var(--card)}
html[data-palette] .pack-offer-card[data-pack=trio] .pack-gift-body,html[data-palette] .pack-dialog[data-type=trio] .pack-gift-body{background:linear-gradient(145deg,color-mix(in srgb,var(--jmb-accent) 54%,var(--card)),color-mix(in srgb,var(--jmb-accent) 35%,var(--bg)))}
html[data-palette] .pack-offer-card[data-pack=trio] .pack-gift-lid,html[data-palette] .pack-dialog[data-type=trio] .pack-gift-lid{background:linear-gradient(145deg,color-mix(in srgb,var(--jmb-accent) 60%,white),var(--jmb-accent))}
html[data-palette] input[type=checkbox],html[data-palette] input[type=radio]{accent-color:var(--jmb-accent)}
html[data-palette] .field input:not([type=checkbox]):not([type=radio]):not([type=file]),html[data-palette] .field textarea,html[data-palette] .field select,html[data-palette] .lblform input{background:linear-gradient(145deg,var(--card),var(--surface-soft));color:var(--text)}

html[data-theme=dark][data-palette] body.is-authenticated .topbar{background:rgba(25,29,32,.98)}html[data-theme=light][data-palette] body.is-authenticated .topbar{background:rgba(255,255,255,.98)}

#main>h1,#main>.legal>h1{font-size:32px;line-height:1.2;letter-spacing:-.035em;margin:18px 0 25px}.client-status{max-width:46%;overflow:hidden;text-overflow:ellipsis}@media(max-width:650px){#main>h1,#main>.legal>h1{font-size:27px}}

.service-card{gap:13px;padding:14px 15px}.service-card .service-main{min-width:0;flex:1;gap:11px}.service-card .service-meta{font-size:11px;line-height:1.5}.service-card .row-title{font-size:14px}.service-card .client-actions{display:flex;flex:0 0 auto;gap:6px;align-items:center}.service-card .client-actions button{width:auto;min-width:0;flex:0 0 auto;min-height:32px;padding:7px 10px;font-size:10px;line-height:1.2;border-width:1px;border-radius:9px}.service-card .client-actions button[data-action=publish-service]{background:var(--primary-soft,var(--soft));color:var(--primary);border-color:var(--primary)}@media(max-width:650px){.service-card{display:flex;flex-direction:column;align-items:stretch;padding:13px;gap:11px}.service-card .client-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:7px}.service-card .client-actions button{width:100%;padding:8px 6px;min-height:32px}.service-card .service-main{width:100%}}

.setting-card>p:empty,.form-help:empty,.service-formula-intro p:empty,.service-active-packs-heading p:empty,.service-formula-note:empty{display:none!important}

body.sidebar-automatic .sidebar .nav-item{height:43px;min-height:43px;max-height:43px;overflow:hidden}body.sidebar-automatic .sidebar .nav-item small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* The header occupies a real grid row; only the content pane scrolls. */
body.is-authenticated{height:100dvh;overflow:hidden;--shell-header-height:72px}
body.is-authenticated .app-shell,body.is-authenticated.sidebar-automatic .app-shell{display:grid;grid-template-columns:76px minmax(0,1fr);grid-template-rows:var(--shell-header-height) minmax(0,1fr);position:relative;width:calc(100% - 24px);height:calc(100dvh - 24px);min-height:0;margin:12px;padding:0;border-radius:22px;overflow:hidden}
body.is-authenticated .topbar{grid-column:1/-1;grid-row:1;position:relative;inset:auto;width:100%;height:100%;min-height:0;border:0;border-bottom:1px solid var(--line);border-radius:0;padding-top:0;padding-bottom:0;z-index:40}
body.is-authenticated .topbar>.brand{position:absolute;left:15px;top:13px}
body.is-authenticated .bottom-nav.sidebar{position:absolute;left:0;top:var(--shell-header-height);bottom:0;height:auto;border-radius:0;z-index:30}
body.is-authenticated .main-content{grid-column:2;grid-row:2;min-width:0;min-height:0;width:auto;max-width:none;height:100%;margin:0;padding:22px 24px 32px;overflow-y:auto;overflow-x:hidden;scroll-padding-top:16px;scroll-behavior:auto}
body.is-authenticated #preview-note{position:absolute!important;bottom:0;right:0;left:76px;z-index:9;font-size:8px!important;padding:4px!important;pointer-events:none}
body.is-authenticated .sidebar-backdrop{position:absolute;inset:var(--shell-header-height) 0 0;border-radius:0;z-index:29}
.account-card .record-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);align-items:stretch;gap:7px;padding-top:12px}.account-card .record-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;min-width:0}.account-card .record-bottom button,.account-card .account-assign-button{min-width:0;width:100%;min-height:34px;height:auto;flex:none;padding:8px 7px;border-width:1px;border-radius:10px;font-size:10px;line-height:1.25;white-space:nowrap}.account-card .account-assign-button{margin-top:9px;min-height:36px}.account-card .record-actions:has([data-action=renew-account]){grid-template-columns:repeat(2,minmax(0,1fr))}.account-card .record-details{gap:13px 15px}.account-card .detail-label{font-size:9px;line-height:1.4;margin-bottom:6px}.account-card .detail-value{font-size:12px;line-height:1.55;overflow-wrap:anywhere}.revenue-account .record-bottom{display:flex;justify-content:flex-end;gap:10px}.revenue-account .record-bottom>button{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;min-height:34px;width:auto;padding:8px 12px;font:inherit;font-size:11px;line-height:1.3;border:1px solid var(--primary);border-radius:10px;background:var(--primary-soft,var(--soft));color:var(--primary)}
.record-actions button,.dialog-footer button,.button-row button,.finance-toolbar button{border-radius:10px;min-height:35px;padding:8px 12px;font-size:11px;line-height:1.3}.record-actions{gap:7px}.dialog-footer{gap:9px}.page-heading{gap:15px;margin-bottom:20px}.page-heading h1{font-size:28px}.stat-card{min-height:112px}.stat-card .stat-value{font-size:29px;margin-top:14px}.stat-note:empty{display:none}.stats-grid{gap:14px}.dashboard-board .page-heading{margin-bottom:20px}
@media(max-width:760px){body.is-authenticated{--shell-header-height:66px}body.is-authenticated .app-shell,body.is-authenticated.sidebar-automatic .app-shell{grid-template-columns:minmax(0,1fr);width:calc(100% - 12px);height:calc(100dvh - 12px);margin:6px;padding:0;border-radius:18px}body.is-authenticated .topbar{grid-column:1;padding-right:12px}body.is-authenticated .topbar>.brand{left:13px;top:13px}body.is-authenticated .main-content{grid-column:1;padding:18px 13px 28px}body.is-authenticated .bottom-nav.sidebar{left:0;top:var(--shell-header-height);bottom:0;height:auto;border-radius:0}body.is-authenticated #preview-note{left:0}.account-card .record-bottom{grid-template-columns:1fr 1fr}.account-card .record-actions{display:contents}.account-card .record-bottom button{min-height:35px;padding:9px 6px;font-size:10px}.account-card .account-assign-button{min-height:36px}.page-heading h1{font-size:25px}.page-heading>.primary-button,.page-heading>.secondary-button{min-height:35px;font-size:10px}.stat-card{min-height:100px}.stat-card .stat-value{font-size:25px}}

html:has(body.is-authenticated),html:has(body.client-mode){height:100dvh;overflow:hidden}body.is-authenticated,body.client-mode{margin:0;min-height:0;display:flow-root}html[data-palette] .stat-icon{color:var(--jmb-accent);background:rgba(var(--jmb-accent-rgb),.09)}html[data-palette] .account-role-label{color:var(--jmb-accent)}

html[data-palette] button[data-ui-tone=accent]{border-color:var(--jmb-accent);color:var(--jmb-accent);background:rgba(var(--jmb-accent-rgb),.065)}html[data-palette] button.primary[data-ui-tone=accent],html[data-palette] button.primary-button[data-ui-tone=accent]{background:var(--jmb-action);border-color:transparent;color:#07131e}html[data-theme=light][data-palette] button.primary[data-ui-tone=accent],html[data-theme=light][data-palette] button.primary-button[data-ui-tone=accent]{color:#fff}html[data-palette] button[data-ui-tone=danger]{background:rgba(220,20,60,.075);color:#ba1a3d;border-color:rgba(220,20,60,.55)}html[data-theme=dark][data-palette] button[data-ui-tone=danger]{color:#ff8ca4;border-color:rgba(241,94,125,.5);background:rgba(220,20,60,.08)}html[data-palette] button[data-ui-tone=danger]:hover:not(:disabled){background:#be173b;border-color:#be173b;color:#fff;box-shadow:none}html[data-palette] button[data-ui-tone=accent]:hover:not(:disabled){border-color:var(--jmb-accent);background:rgba(var(--jmb-accent-rgb),.13);color:var(--jmb-accent)}html[data-palette] button.primary[data-ui-tone=accent]:hover,html[data-palette] button.primary-button[data-ui-tone=accent]:hover{background:var(--jmb-action);color:#07131e}
.jmb-feedback-host{display:block!important;position:fixed!important;inset:auto 18px 18px auto!important;width:min(370px,calc(100vw - 36px));height:auto;max-width:none;margin:0;padding:0!important;transform:none!important;border:0!important;background:transparent!important;box-shadow:none!important;z-index:100000;pointer-events:none}.jmb-feedback-host:empty{display:none!important}.jmb-feedback{display:flex;align-items:center;gap:11px;padding:13px 13px 13px 15px;border:1px solid var(--line);border-radius:14px;background:var(--card,#fff);color:var(--text,var(--ink));box-shadow:0 12px 35px #0002;backdrop-filter:blur(8px);animation:jmb-feedback-in .24s ease both;pointer-events:auto}.jmb-feedback>svg{width:24px;height:24px;flex-shrink:0;fill:none;stroke:var(--jmb-accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.jmb-feedback[data-tone=error]>svg{stroke:#dc143c}.jmb-feedback>span{flex:1;font-size:12px;line-height:1.55;overflow-wrap:anywhere}.jmb-feedback>button{width:28px;min-width:28px;height:28px;min-height:28px;padding:4px;border:0;background:transparent;color:var(--muted);font-size:18px;line-height:1;border-radius:8px}@keyframes jmb-feedback-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.jmb-feedback{animation:none}}

#main-content .service-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px}#main-content .service-groups .record-list{grid-template-columns:1fr;gap:13px}#main-content .service-group{min-width:0;margin:0}.service-formula-eyebrow:empty{display:none}.service-formula-intro{margin-bottom:15px}.service-formula-note:empty{display:none}#main-content .settings-grid{grid-template-columns:1fr;gap:18px}.backup-panel>summary,.service-composition>summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--ink);padding:3px 0}.backup-panel[open]>summary,.service-composition[open]>summary{margin-bottom:18px}.service-composition{margin-top:17px;border-top:1px solid var(--line);padding-top:13px}.setting-card>h2{font-size:17px}.setting-card>p:empty{display:none}@media(max-width:900px){#main-content .service-groups{grid-template-columns:1fr}}

html[data-theme=light][data-palette] button.primary[data-ui-tone=accent]:hover,html[data-theme=light][data-palette] button.primary-button[data-ui-tone=accent]:hover{color:white}

.subscription-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.subscription-toolbar .subscription-status-filters{flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.subscription-toolbar .subscription-status-filters button{width:100%;min-height:36px;padding:8px 12px;border-radius:11px;font-size:11px;white-space:nowrap}.subscription-period-control{display:flex;align-items:center;gap:9px;flex-shrink:0;font-size:10px;color:var(--muted)}.subscription-period-control select{width:155px;min-height:36px;padding:8px 30px 8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-size:11px}@media(max-width:760px){.subscription-toolbar{flex-direction:column;align-items:stretch;gap:12px}.subscription-toolbar .subscription-status-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.subscription-toolbar .subscription-status-filters button{min-height:34px;font-size:10px}.subscription-period-control{justify-content:space-between}.subscription-period-control select{width:180px;min-height:35px}}
body.is-authenticated .topbar .topbar-actions{margin-left:auto}body.is-authenticated .topbar .today-info{margin-left:0}
/* The same button geometry and hierarchy across storefront, customer and management. */
:root{--jmb-button-radius:11px;--jmb-button-height:40px;--jmb-button-font:12px}
button.primary,button.primary-button,a.button.primary,button.secondary-button,a.button:not(.cart-icon-link),button[data-ui-tone=accent],button[data-ui-tone=danger]{min-height:var(--jmb-button-height);border-radius:var(--jmb-button-radius);font-size:var(--jmb-button-font);font-weight:600;line-height:1.3;padding:10px 16px;align-items:center;justify-content:center;gap:8px}
body.is-authenticated .topbar,body.is-authenticated .bottom-nav.sidebar,.client-topbar,.client-sidebar{border-right:0;border-bottom:0}body.is-authenticated .topbar::before{border:0}.client-brand{border-bottom:0}
@media(max-width:650px){:root{--jmb-button-height:39px}.catalog-view-switch{display:flex;flex-wrap:wrap;width:100%;gap:5px;padding:6px}.catalog-view-switch button{flex:1 1 auto;min-height:34px;font-size:10px;padding:8px 10px}.showcase-pack-contents{gap:4px}.showcase-pack-contents>span{width:26px;height:26px;flex-shrink:0}.showcase-pack-contents img{width:21px;height:21px}}

.jmb-search-results{margin-top:14px}.jmb-search-results>button{justify-content:flex-start!important;display:grid!important;grid-template-columns:32px minmax(0,1fr) auto!important;gap:12px;text-align:left!important}.jmb-result-symbol{flex-shrink:0}.jmb-search-results>button>span:nth-child(2){min-width:0;text-align:left}.public-account-icon,.public-logout{width:40px;height:40px;padding:9px;display:inline-grid;place-items:center;flex-shrink:0}.public-account-icon svg,.public-logout svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.7;fill:none}

body dialog.jmb-appearance .jmb-theme-grid button[data-theme-id]{display:grid!important;grid-template-columns:48px minmax(0,1fr) 16px;align-items:center;justify-content:start;gap:10px;min-height:76px;padding:12px;text-align:left}body dialog.jmb-appearance .jmb-theme-preview{width:48px;height:48px;margin:0;padding:7px;box-sizing:border-box;grid-template-columns:12px 1fr}body dialog.jmb-appearance .jmb-theme-grid b{position:static;margin:0}body dialog.jmb-appearance .jmb-theme-grid button>span:nth-child(2){min-width:0}

.admin-icon-access{width:40px;height:40px;display:inline-grid;place-items:center;padding:9px!important;box-sizing:border-box}.admin-icon-access svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7}.phone-country-picker summary::marker{content:""}.phone-country-picker summary{list-style:none}.phone-country-picker summary>img{display:block!important;width:24px!important;height:16px!important;min-width:24px;max-width:none;object-fit:cover}

.jmb-feedback-host[popover]{overflow:visible;max-height:none;color:var(--text);z-index:2147483647}.jmb-feedback-host::backdrop{background:transparent;pointer-events:none}.client-topbar-actions [data-client-admin][hidden]{display:none!important}

/* Images de présentation et déconnexion */
.carousel-editor{border:1px solid var(--border,#53616b);border-radius:16px;padding:16px;margin-block:16px;min-width:0}.carousel-editor legend{padding-inline:8px;font-weight:600}.carousel-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.carousel-image-slot{display:flex;flex-direction:column;gap:8px;min-width:0}.carousel-image-slot img{width:100%;height:108px;object-fit:cover;border-radius:10px}.carousel-image-slot input{max-width:100%;min-width:0}.carousel-image-slot input[type=file]{font-size:12px}.carousel-image-slot button{min-height:36px;padding:6px 10px}.carousel-image-slot label{font-size:13px}.jmb-logout-dialog{width:min(420px,calc(100vw - 32px));border-radius:20px;padding:24px;border:1px solid #647078;background:var(--surface,#182027);color:var(--text,#edf2f5)}.jmb-logout-dialog::backdrop,.jmb-logout-motion::backdrop{background:rgb(0 0 0 / .65)}.jmb-logout-motion{border:0;border-radius:24px;padding:32px;text-align:center;background:var(--surface,#182027);color:var(--text,#edf2f5)}.jmb-logout-motion img{width:80px;height:80px;border-radius:20px}.jmb-logout-dialog .dialog-footer{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}@media(max-width:480px){.carousel-image-grid{grid-template-columns:1fr}.carousel-image-slot{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center}.carousel-image-slot img{height:96px;grid-row:span 3}.carousel-image-slot label{grid-column:2}}

.notification-bell{position:relative}.notification-bell svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}.notification-count{position:absolute;top:-4px;right:-4px;min-width:19px;height:19px;border-radius:99px;background:var(--jmb-action,#1688f0);color:var(--ink,#10202e);font-size:11px;display:grid;place-items:center;padding:0 3px}.notification-count[hidden]{display:none}.jmb-notifications-panel{width:min(420px,calc(100vw - 24px));max-height:80dvh;border:1px solid var(--line,#52616a);border-radius:20px;background:var(--card,#182027);color:var(--text,#edf2f5);padding:18px}.notification-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.notification-heading h2{font-size:20px;margin:0}.notification-item{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:5px;width:100%;padding:12px;border:0;border-radius:12px;background:transparent;color:inherit}.notification-item.unread{background:var(--soft,rgba(30,144,255,.1))}.notification-item small{color:var(--muted,#98a6b3)}.customer-reply{margin-block:16px;padding:14px;border:1px solid var(--line,#52616a);border-radius:14px}.customer-reply h3{font-size:15px;margin:0 0 8px}.customer-reply p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.payment-receipt-dialog{position:fixed;max-width:min(800px,calc(100vw - 24px));max-height:90dvh;border-radius:18px;background:var(--card,#182027);border:1px solid var(--line,#52616a);padding:12px}.payment-receipt-dialog img{display:block;max-width:100%;max-height:75dvh;object-fit:contain}.payment-receipt-dialog button{display:block;margin-left:auto}.jmb-notifications-panel::backdrop,.payment-receipt-dialog::backdrop{background:#0009}

/* Surfaces opaques et contrastes des fenêtres. */
html[data-theme=light]{--dialog-bg:#ffffff;--dialog-fg:#17212b;--danger-fg:#a91434;--danger-bg:#fff0f3;color-scheme:light}
html[data-theme=dark]{--dialog-bg:#182027;--dialog-fg:#f1f5f9;--danger-fg:#ff8aa2;--danger-bg:#3a1f28;color-scheme:dark}
.jmb-logout-dialog,.jmb-logout-motion,.jmb-appearance,.jmb-search-dialog,.jmb-notifications-panel,.payment-receipt-dialog{background:var(--dialog-bg,#fff)!important;color:var(--dialog-fg,#17212b)!important;border-color:var(--line,#b5c1cb)}
.jmb-logout-dialog h2,.jmb-logout-motion p,.jmb-notifications-panel h2,.jmb-appearance h2{color:inherit!important}
.jmb-logout-dialog h2{font-size:21px;line-height:1.35;margin:0 0 22px}
.jmb-logout-dialog .danger-button,.jmb-logout-dialog .secondary-button,.jmb-logout-dialog button[data-cancel]{background:var(--danger-bg)!important;color:var(--danger-fg)!important;border:1px solid var(--danger-fg)!important;opacity:1}
.jmb-logout-dialog .dialog-footer{display:flex;justify-content:flex-end;gap:12px}.jmb-logout-dialog button{min-height:44px;line-height:1.25;white-space:normal;padding:10px 16px}
.jmb-vector-icon{display:inline-block;width:1.1em;height:1.1em;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.12em}
.jmb-standard-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:10px!important;border:1px solid var(--line,#a6b4c0)!important;border-radius:12px!important;background:var(--card,#fff)!important;color:var(--text,var(--ink,#17212b))!important;box-sizing:border-box}.jmb-standard-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}.jmb-standard-icon:hover{border-color:var(--jmb-accent)!important;background:var(--soft)!important}
.commerce-request-actions a.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 14px;border:1px solid var(--jmb-accent,var(--blue));border-radius:12px;color:var(--jmb-accent,var(--blue));background:var(--soft,transparent);text-decoration:none;font:inherit;font-weight:600}.commerce-request-actions a.button svg{width:20px;height:20px;flex-shrink:0}
html[data-theme=light] .primary,html[data-theme=light] .primary-button{color:#fff!important;background:var(--jmb-action,#0875ce)!important}
@media(max-width:480px){.jmb-logout-dialog .dialog-footer{display:grid;grid-template-columns:1fr 1fr}.jmb-logout-dialog button{width:100%;font-size:14px}.topbar-actions{gap:6px}.notification-heading h2{font-size:18px}}

.private-chat{display:flex;flex-direction:column;min-height:380px;max-height:calc(100dvh - 170px);border:1px solid var(--line,#abb8c4);border-radius:18px;background:var(--card,#fff);padding:16px;gap:12px}.private-chat-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.private-chat-heading h2{font-size:20px;margin:0;overflow-wrap:anywhere}.private-chat-heading img{border-radius:7px}.private-chat-messages{overflow:auto;min-height:180px;flex:1;display:flex;flex-direction:column;gap:12px;padding:6px}.private-chat-message{max-width:85%;align-self:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft,var(--card));overflow-wrap:anywhere}.private-chat-message.outgoing{align-self:flex-end;background:var(--soft)}.private-chat-message p{white-space:pre-wrap;margin:6px 0;line-height:1.55}.private-chat-message time,.private-chat-message small{font-size:11px;color:var(--muted)}.private-chat-form{display:flex;gap:10px;align-items:flex-end}.private-chat-form textarea{flex:1;min-width:0;max-height:160px;resize:vertical;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text,var(--ink));padding:12px;font:inherit}.private-chat-form button{min-height:44px}.private-chat-inbox{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:20px}.chat-thread{width:100%;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:6px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text,var(--ink));margin-block:8px;min-width:0}.chat-thread strong{display:flex;gap:8px;width:100%;justify-content:space-between}.chat-thread small,.chat-thread span{overflow-wrap:anywhere}.chat-thread b{border-radius:20px;background:var(--jmb-action);padding:0 6px;color:#07131e}.chat-thread.active{border-color:var(--jmb-accent)}.chat-search{display:flex;gap:8px;flex-wrap:wrap}.chat-search input{min-width:0;flex:1}@media(max-width:760px){.private-chat-inbox{grid-template-columns:1fr}.private-chat-inbox>aside{max-height:240px;overflow:auto}.private-chat{max-height:70dvh;padding:12px;min-height:360px}.private-chat-form{gap:6px}.private-chat-form button{padding:10px;font-size:13px}.private-chat-message{max-width:93%}}

/* Animations décoratives suspendues hors écran et en arrière-plan. */
.jmb-page-hidden .catalog-spotlight *,.jmb-page-hidden .home-orbit *,.jmb-offscreen *{animation-play-state:paused!important}
@media(max-width:768px){header,.app-header,.client-topbar,.sidebar{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}

/* Assistance : structure compacte et stable, sans chevauchement du champ de message. */
.private-chat{width:min(100%,980px);height:min(640px,calc(100dvh - 150px));min-height:0;max-height:none;margin:0 auto;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:10px;overflow:hidden;padding:18px 20px;border-radius:20px}
.private-chat-heading{min-width:0;padding-bottom:2px}.private-chat-heading h2{font-size:clamp(18px,2vw,24px);line-height:1.2}.private-chat-heading .commerce-whatsapp{width:44px;height:44px;min-height:44px;margin:0!important;padding:9px;border-radius:13px;flex:0 0 44px}.private-chat-heading .commerce-whatsapp img{width:23px;height:23px;object-fit:contain}
.private-chat-history-actions{display:flex;align-items:center;gap:8px;min-height:0}.private-chat-history-actions button{width:auto;min-height:34px;padding:8px 13px;border-radius:10px;font-size:11px;line-height:1.2}.private-chat-messages{min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain;padding:6px 4px}.private-chat-message{min-width:0;max-width:min(86%,760px);flex:0 0 auto}.private-chat-message p{overflow-wrap:anywhere}
.private-chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;min-width:0;padding-top:10px;border-top:1px solid var(--line)}.private-chat-form textarea{width:100%;height:56px;min-height:52px;max-height:120px;resize:vertical;line-height:1.4}.private-chat-form button{width:auto;min-width:92px;min-height:44px;padding:10px 15px;white-space:nowrap}.private-chat>[role=alert]{min-height:0;margin:0;font-size:11px;line-height:1.4}
@media(max-width:760px){.private-chat{width:100%;height:calc(100dvh - 96px);padding:14px;border-radius:16px;gap:8px}.private-chat-heading h2{font-size:18px}.private-chat-heading .commerce-whatsapp{width:40px;height:40px;min-height:40px;flex-basis:40px}.private-chat-history-actions button{min-height:32px;font-size:10px;padding:7px 11px}.private-chat-message{max-width:94%;padding:10px 11px}.private-chat-message p{font-size:12px;line-height:1.45}.private-chat-form{gap:7px;padding-top:8px}.private-chat-form textarea{height:52px;min-height:48px;font-size:12px;padding:10px}.private-chat-form button{min-width:78px;min-height:42px;padding:9px 10px;font-size:11px}}

/* Transition de thème : cercle animé depuis le bouton, avec repli doux si View Transitions n'est pas disponible. */
@supports (view-transition-name:root){
 ::view-transition-old(root){animation:theme-old-fade .38s ease-out both}
 ::view-transition-new(root){animation:theme-reveal .86s cubic-bezier(.2,.75,.25,1) both;mix-blend-mode:normal}
}
@keyframes theme-old-fade{to{opacity:.82}}
@keyframes theme-reveal{from{clip-path:circle(0 at var(--theme-origin-x,50vw) var(--theme-origin-y,50vh))}to{clip-path:circle(150vmax at var(--theme-origin-x,50vw) var(--theme-origin-y,50vh))}}
@keyframes theme-ring{0%{opacity:.58;transform:translate(-50%,-50%) scale(.18)}55%{opacity:.26}100%{opacity:0;transform:translate(-50%,-50%) scale(1.06)}}
html.theme-switching::before{content:"";position:fixed;inset:0;z-index:2147483000;pointer-events:none;background:radial-gradient(circle at var(--theme-origin-x,50vw) var(--theme-origin-y,50vh),color-mix(in srgb,var(--theme-next-accent,var(--jmb-accent,var(--blue))) 24%,var(--theme-next-canvas,var(--jmb-canvas,var(--bg)))) 0%,var(--theme-next-canvas,var(--jmb-canvas,var(--bg))) 68%);clip-path:circle(0 at var(--theme-origin-x,50vw) var(--theme-origin-y,50vh));animation:theme-reveal .86s cubic-bezier(.2,.75,.25,1) both}
html.theme-switching::after{content:"";position:fixed;left:var(--theme-origin-x,50vw);top:var(--theme-origin-y,50vh);width:34vmax;height:34vmax;z-index:2147483001;pointer-events:none;border:2px solid color-mix(in srgb,var(--theme-next-accent,var(--jmb-accent,var(--blue))) 54%,transparent);border-radius:50%;animation:theme-ring .86s cubic-bezier(.2,.75,.25,1) both}
html.theme-switching [data-act="theme"],html.theme-switching [data-action="toggle-theme"],html.theme-switching .theme-toggle{animation:theme-button-pop .68s cubic-bezier(.2,.9,.3,1) both}
@keyframes theme-button-pop{0%{transform:scale(1)}45%{transform:scale(1.14) rotate(-5deg)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root),html.theme-switching::before,html.theme-switching::after,html.theme-switching [data-act="theme"],html.theme-switching [data-action="toggle-theme"],html.theme-switching .theme-toggle{animation:none!important}}
