/* [NORME 30/10, Brice] Giri Soins en vraie appli (appli Play + téléphone) : les deux marbres officiels de la Giri Académie
   (charte-ga), en-tête façon Cuisine, onglets en bas, menu propre, photo commune, page de connexion. Préfixe gso-.
   Tout est rangé sous html.gso-app : l'atelier sur grand écran d'ordinateur ne change pas. Chargée en dernier : elle gagne. */
html.gso-app{--ga-pierre:url(https://giri-app.com/css/textures/pierre-jour-2.webp);--ga-voile:linear-gradient(180deg,rgba(255,253,248,.40),rgba(255,252,245,.54));--ga-fond:#fdfaf2;
  --ga-encre:#33281a;--ga-encre-2:#6b5c44;--ga-encre-3:#7a6a4d;--ga-or-texte:#7a5910;
  --ga-verre:linear-gradient(180deg,rgba(255,253,249,.92),rgba(253,250,243,.88) 62%,rgba(251,246,236,.9));--ga-verre-plat:rgba(255,253,248,.9);
  --ga-champ:rgba(255,255,255,.85);--ga-filet:rgba(150,112,52,.32);--ga-filet-fort:rgba(150,112,52,.58);
  --ga-ombre:0 12px 30px rgba(96,70,20,.14);--ga-luisant:inset 0 1px 0 rgba(255,255,255,.92);--ga-barre:rgba(253,250,242,.95);
  --ga-or-grave:linear-gradient(180deg,#b28619 0%,#9a7414 34%,#87610f 66%,#6b4d0c 100%);--ga-voile-fen:rgba(46,34,10,.40);color-scheme:light}
html.gso-app.gso-nuit{--ga-pierre:url(https://giri-app.com/css/textures/marbre-nuit.webp);--ga-voile:linear-gradient(180deg,rgba(4,8,17,.52),rgba(3,6,14,.68));--ga-fond:#070c17;
  --ga-encre:#edf1f8;--ga-encre-2:#b4c2d6;--ga-encre-3:#8593aa;--ga-or-texte:#f0d98c;
  --ga-verre:linear-gradient(180deg,rgba(20,32,54,.86),rgba(14,24,43,.90) 62%,rgba(10,18,33,.93));--ga-verre-plat:rgba(14,24,43,.86);
  --ga-champ:rgba(255,255,255,.06);--ga-filet:rgba(212,175,55,.30);--ga-filet-fort:rgba(212,175,55,.58);
  --ga-ombre:0 14px 34px rgba(0,0,0,.48);--ga-luisant:inset 0 1px 0 rgba(255,240,200,.10);--ga-barre:rgba(11,20,38,.95);
  --ga-or-grave:linear-gradient(180deg,#fdf3cf 0%,#f3d98c 32%,#e0b243 64%,#c9971b 100%);--ga-voile-fen:rgba(2,5,12,.62);color-scheme:dark}

/* les variables de l'atelier suivent le marbre (body[...] bat :root et le thème « Sable ») */
html.gso-app body,html.gso-app body[data-dashboard-theme]{
  --bg-deep:transparent;--bg-card:var(--ga-verre-plat);--bg-card-hover:var(--ga-verre-plat);--bg-surface:var(--ga-verre-plat);--bg-input:var(--ga-champ);
  --text-primary:var(--ga-encre);--text-secondary:var(--ga-encre-2);--text-muted:var(--ga-encre-3);--text-accent:var(--ga-or-texte);--text-soft:var(--ga-encre-3);
  --accent:var(--ga-or-texte);--accent-hover:var(--ga-or-texte);--accent-glow:rgba(201,151,27,.16);--accent-soft:rgba(201,151,27,.08);
  --border:var(--ga-filet);--border-hover:var(--ga-filet-fort);--shadow-glow:none;color-scheme:inherit}

/* la pierre */
html.gso-app{background:var(--ga-fond)!important}
html.gso-app body{background:transparent!important;color:var(--ga-encre)}  /* transparent : sinon le fond du body couvre la pierre (z-index -1) */
#gso-pierre{display:none}
html.gso-app #gso-pierre{display:block;position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--ga-voile),var(--ga-pierre) center/cover no-repeat,var(--ga-fond)}
html.gso-app:not(.gso-nuit) #gso-pierre{filter:contrast(1.06) saturate(1.04)}
html.gso-app .gs-dashboard,html.gso-app .gs-main,html.gso-app .gs-auth-screen{background:transparent!important}

/* pendant la reconnaissance : rien ne s'affiche */
html.gso-verif body{visibility:hidden}

/* en-tête façon Cuisine */
#gso-tete,#gso-onglets,#gso-puces{display:none}
html.gso-app.gso-dedans #gso-tete{display:flex;position:fixed;top:0;left:0;right:0;z-index:300;align-items:center;gap:10px;background:var(--ga-barre);border-bottom:1px solid var(--ga-filet);
  padding:8px 14px;padding-top:calc(8px + env(safe-area-inset-top,0px));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.gso-boule{flex:none;width:34px;height:34px;background:url(https://giri-app.com/cuisine/img/boule-or.webp) center/contain no-repeat;filter:drop-shadow(0 3px 8px rgba(160,115,20,.35))}
.gso-marque{min-height:44px;align-items:center;display:flex;flex-direction:column;line-height:1.05;text-decoration:none;min-width:0}
.gso-marque small{font:600 11px 'Inter',system-ui,sans-serif;letter-spacing:3px;text-transform:uppercase;color:var(--ga-or-texte)}
.gso-marque b{font:500 23px 'Cormorant Garamond',Georgia,serif;color:var(--ga-encre)}
.gso-actions{margin-left:auto;display:flex;gap:8px;flex:none}
.gso-rond{width:44px;height:44px;border-radius:50%;border:1px solid var(--ga-filet-fort);background:var(--ga-verre-plat);color:var(--ga-or-texte);display:grid;place-items:center;padding:0;cursor:pointer;position:relative}
.gso-rond svg{width:22px;height:22px}
#gso-btn-compte{background:linear-gradient(135deg,#F4D58A,#C9A253);border-color:rgba(160,120,64,.55);color:#3a2708;font:500 21px 'Cormorant Garamond',Georgia,serif}
.gso-photo{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
#gso-btn-compte.avec-photo,.gso-avatar.avec-photo{padding:0;overflow:hidden;background:none!important;border:2px solid #C9A253!important}
.gso-point{position:absolute;top:6px;right:7px;width:9px;height:9px;border-radius:50%;background:#d9534f;box-shadow:0 0 0 2px var(--ga-barre)}
.gso-point[hidden]{display:none}

/* l'atelier sous l'en-tête, sans tiroir ni bouton flottant de l'ancien menu */
html.gso-app.gso-dedans .gs-sidebar,html.gso-app.gso-dedans .gs-mobile-burger,html.gso-app.gso-dedans .gs-mobile-backdrop,
html.gso-app.gso-dedans .gs-publish-bar,html.gso-app .gu-entree,html.gso-app .gu-bouton,html.gso-app .gu-burger,html.gso-app .gu-panneau,html.gso-app .gu-voile,
html.gso-app [data-giri-burger]{display:none!important}
html.gso-app.gso-dedans .gs-main{margin-left:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box;
  padding:calc(var(--gso-tete-h,62px) + 12px) 16px calc(var(--gso-barre-h,66px) + 28px)!important;min-height:100dvh}
html.gso-app.gso-dedans #gs-content{max-width:760px;margin:0 auto}
html.appli-play #gs-cookie-banner{display:none!important}

/* onglets */
html.gso-app.gso-dedans:not(.gso-clavier) #gso-onglets{position:fixed;left:0;right:0;bottom:0;z-index:290;display:flex;justify-content:space-around;background:var(--ga-barre);
  border-top:1px solid var(--ga-filet);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  padding:0 88px env(safe-area-inset-bottom,0px) 6px}  /* la boule E-Care garde sa place (sanctuaire) : la barre lui laisse le coin droit */
@media (min-width:700px){html.gso-app.gso-dedans:not(.gso-clavier) #gso-onglets{padding-left:calc((100% - 640px)/2);padding-right:calc((100% - 640px)/2)}}
#gso-onglets a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 2px;min-height:64px;text-decoration:none;color:var(--ga-encre-3);
  font:600 12px 'Inter',system-ui,sans-serif;letter-spacing:.2px;position:relative;-webkit-tap-highlight-color:transparent}
#gso-onglets a svg{width:25px;height:25px}
#gso-onglets a.actif{color:var(--ga-or-texte)}
#gso-onglets a.actif::before{content:"";position:absolute;top:0;left:22%;right:22%;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,#E8C078,#A07840)}
#gso-onglets a:active,.gso-rond:active,.gso-puce:active{transform:scale(.97);transition:transform .12s}
#gso-onglets .gso-compte-badge{position:absolute;top:6px;left:calc(50% + 6px);min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#c0392b;color:#fff;font:700 11px/18px 'Inter',sans-serif;text-align:center}
@media (max-width:360px){#gso-onglets a{font-size:11px;letter-spacing:0}#gso-onglets{padding-right:80px!important}}

/* rubriques de la vitrine */
html.gso-app.gso-dedans[data-gso-onglet=vitrine] #gso-puces{display:flex;gap:8px;overflow-x:auto;max-width:760px;margin:0 auto 14px;padding:2px 2px 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.gso-puce{flex:none;min-height:44px;display:inline-flex;align-items:center;gap:6px;padding:0 15px;border-radius:22px;border:1px solid var(--ga-filet);background:var(--ga-verre-plat);
  color:var(--ga-encre-2);font:600 14px 'Inter',system-ui,sans-serif;white-space:nowrap;cursor:pointer;text-decoration:none}
.gso-puce.actif{border-color:var(--ga-filet-fort);background:rgba(201,151,27,.16);color:var(--ga-encre)}

/* fondu léger entre onglets */
@media (prefers-reduced-motion:no-preference){html.gso-app .gso-fondu{animation:gsoApparait .22s ease-out}}
@keyframes gsoApparait{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* textes et surfaces de l'atelier dans les deux marbres */
html.gso-app .gs-page-header h1,html.gso-app .gs-section h1,html.gso-app .gs-rdv-hero-title{color:var(--ga-encre)!important}
html.gso-app .gs-card,html.gso-app .gs-collapsible,html.gso-app .gs-rdv-block,html.gso-app .gs-rdv-stat,html.gso-app .gs-rdv-day,html.gso-app .gs-rdv-card{
  background:var(--ga-verre)!important;border-color:var(--ga-filet)!important;color:var(--ga-encre);box-shadow:var(--ga-ombre),var(--ga-luisant)}
html.gso-app .gs-input,html.gso-app select.gs-input,html.gso-app textarea.gs-input,html.gso-app .gs-main input[type=text],html.gso-app .gs-main input[type=email],
html.gso-app .gs-main input[type=tel],html.gso-app .gs-main input[type=url],html.gso-app .gs-main input[type=number],html.gso-app .gs-main input[type=password],html.gso-app .gs-main textarea,html.gso-app .gs-main select{
  background:var(--ga-champ)!important;color:var(--ga-encre)!important;border-color:var(--ga-filet-fort)!important}
html.gso-app .gs-main ::placeholder{color:var(--ga-encre-3)!important;opacity:.85}
html.gso-app.gso-nuit .gs-main select option{background:#0e182b;color:#edf1f8}
html.gso-app .gs-main label,html.gso-app .gs-card-title{color:var(--ga-encre-2)}
html.gso-app .gs-card-title{color:var(--ga-encre)!important}

/* fenêtres et pop-ups : le même marbre */
html.gso-app .gs-modal-overlay,html.gso-app #gs-stripe-prompt{background:var(--ga-voile-fen)!important}
html.gso-app .gs-modal,html.gso-app .gs-modal-content,html.gso-app #gs-stripe-prompt > div,html.gso-app .gs-notif-panel,html.gso-app #gs-notif-panel{
  background:var(--ga-voile),var(--ga-pierre) center/cover no-repeat,var(--ga-fond)!important;border:1px solid var(--ga-filet-fort)!important;color:var(--ga-encre)!important}
html.gso-app #gs-stripe-prompt h2,html.gso-app #gs-stripe-prompt h3,html.gso-app .gs-modal h2,html.gso-app .gs-modal h3{color:var(--ga-encre)!important}
html.gso-app #gs-stripe-prompt p,html.gso-app .gs-modal p{color:var(--ga-encre-2)!important}
html.gso-app .gs-toast{background:var(--ga-barre)!important;color:var(--ga-encre)!important;border:1px solid var(--ga-filet-fort)!important}

/* boutons dorés = charte bouton-giri-v1 */
html.gso-app .gs-btn-primary,html.gso-app .gso-lingot,html.gso-app #gs-stripe-prompt button:first-of-type{border:0!important;border-radius:16px!important;
  background:linear-gradient(135deg,#F4D58A 0%,#E8C078 42%,#C9A253 72%,#A07840 100%)!important;color:#3a2708!important;
  font:500 19px/1.2 Georgia,'Times New Roman',serif!important;letter-spacing:.2px!important;text-transform:none!important;box-shadow:0 10px 26px rgba(74,48,12,.18)!important;min-height:52px}
.gso-lingot{display:flex;align-items:center;justify-content:center;width:100%;text-decoration:none;cursor:pointer;padding:0 18px;box-sizing:border-box}

/* menu */
#gso-voile{position:fixed;inset:0;z-index:2147483600;background:rgba(3,6,14,.45);opacity:0;pointer-events:none;transition:opacity .25s}
#gso-menu{position:fixed;top:0;right:0;bottom:0;z-index:2147483601;width:min(340px,88vw);background:var(--ga-voile),var(--ga-pierre) center/cover no-repeat,var(--ga-fond);
  border-left:1px solid var(--ga-filet);box-shadow:-18px 0 50px rgba(0,0,0,.28);transform:translateX(105%);transition:transform .3s cubic-bezier(.2,.8,.2,1);visibility:hidden;
  display:flex;flex-direction:column;overflow-y:auto;padding:calc(16px + env(safe-area-inset-top,0px)) 18px calc(18px + env(safe-area-inset-bottom,0px));box-sizing:border-box;color:var(--ga-encre)}
html.gso-menu-ouvert #gso-voile{opacity:1;pointer-events:auto}
html.gso-menu-ouvert #gso-menu{transform:none;visibility:visible}
.gso-menu-tete{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.gso-menu-tete b{font:600 20px 'Cormorant Garamond',Georgia,serif;letter-spacing:.18em;background:var(--ga-or-grave);-webkit-background-clip:text;background-clip:text;color:transparent}
#gso-menu-fermer{width:44px;height:44px;border-radius:50%;border:1px solid var(--ga-filet-fort);background:var(--ga-verre-plat);color:var(--ga-or-texte);font-size:22px;line-height:1;cursor:pointer}
.gso-menu-compte{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:var(--ga-verre);border:1px solid var(--ga-filet);font-size:14px;color:var(--ga-encre-2);margin-bottom:10px;text-decoration:none}
.gso-menu-compte > div{min-width:0}
.gso-menu-compte b{display:block;color:var(--ga-encre);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gso-avatar{flex:none;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#F4D58A,#C9A253);color:#3a2708;font:500 22px 'Cormorant Garamond',Georgia,serif;width:46px;height:46px}
.gso-avatar.grand{width:64px;height:64px;font-size:28px}
.gso-avatar svg{width:24px;height:24px}
#gso-menu nav{display:flex;flex-direction:column;gap:2px}
#gso-menu nav > a,#gso-menu nav > button{display:flex;align-items:center;min-height:48px;padding:0 12px;border-radius:12px;border:0;background:none;text-align:left;font:500 17px/1.2 Georgia,serif;color:var(--ga-encre);text-decoration:none;cursor:pointer;width:100%;box-sizing:border-box}
#gso-menu nav > a:active,#gso-menu nav > button:active{background:rgba(201,151,27,.12)}
.gso-menu-ico{display:inline-block;width:22px;margin-right:10px;color:var(--ga-or-texte);text-align:center}
.gso-menu-sep{height:1px;margin:8px 12px;background:var(--ga-filet)}
.gso-menu-hist{margin:4px 0 2px;padding:8px 0 4px;border-top:1px solid var(--ga-filet);border-bottom:1px solid var(--ga-filet)}
.gso-menu-titre{font:600 12px 'Inter',sans-serif;letter-spacing:2px;text-transform:uppercase;color:var(--ga-or-texte);padding:0 12px 6px}
.gso-hist{display:block;padding:8px 12px;color:var(--ga-encre)!important;text-decoration:none;font:400 15px/1.35 'Inter',sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gso-hist small{display:block;font-size:12px;color:var(--ga-encre-3)}
#gso-voir-tout{display:flex;align-items:center;min-height:44px;padding:0 12px;font:600 15px 'Inter',sans-serif;color:var(--ga-or-texte);text-decoration:none}
#gso-voir-tout[hidden]{display:none!important}
.gso-hist-vide{padding:4px 12px 8px;color:var(--ga-encre-3);font-size:14px}
.gso-choix-theme{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px 0}
.gso-choix-theme button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 6px;border-radius:12px;border:1px solid transparent;background:none;font:500 15px Georgia,serif;color:var(--ga-encre);cursor:pointer}
.gso-choix-theme button[aria-checked=true]{border-color:var(--ga-filet-fort);background:rgba(201,151,27,.14)}
.gso-pastille{width:22px;height:22px;border-radius:50%;border:1px solid var(--ga-filet-fort)}
.gso-pastille.marbre{background:url(https://giri-app.com/css/textures/pierre-jour-2.webp) center/420%}
.gso-pastille.nuit{background:url(https://giri-app.com/css/textures/marbre-nuit.webp) center/420%}
.gso-legal{display:flex;flex-wrap:wrap;gap:2px 12px;padding:10px 12px 0;font:500 13.5px/2 'Inter',sans-serif}
.gso-legal a{color:var(--ga-encre-2);text-decoration:none;display:inline-block;padding:9px 0;min-height:44px;box-sizing:border-box}

/* Compte : la photo commune en tête de « Mon Compte » */
#gso-compte-tete{display:none}
html.gso-dedans[data-gso-onglet=compte] #gso-compte-tete{display:flex;max-width:760px;box-sizing:border-box;margin-left:auto!important;margin-right:auto!important;align-items:center;gap:14px;padding:16px;margin:0 0 16px;border-radius:18px;background:var(--ga-verre);border:1px solid var(--ga-filet);box-shadow:var(--ga-ombre),var(--ga-luisant)}
#gso-compte-tete > div{min-width:0;flex:1}
#gso-compte-tete b{display:block;font:500 18px Georgia,serif;color:var(--ga-encre);overflow-wrap:anywhere}
#gso-compte-tete small{display:block;color:var(--ga-encre-2);font-size:13.5px;overflow-wrap:anywhere}
.gso-photo-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.gso-photo-actions label,.gso-photo-actions button{min-height:44px;display:inline-flex;align-items:center;padding:0 14px;border-radius:12px;border:1px solid var(--ga-filet-fort);background:var(--ga-verre-plat);
  color:var(--ga-or-texte);font:600 14px 'Inter',sans-serif;cursor:pointer}
.gso-photo-actions button[hidden]{display:none}

/* la page de connexion de l'appli */
#gso-porte{display:none}
html.gso-porte body > *:not(#gso-porte):not(#gso-pierre):not(script):not(style):not(.gs-modal-overlay):not(#gs-loading-overlay):not(.gs-play-avis){display:none!important}
html.gso-porte #gso-porte{display:flex;flex-direction:column;justify-content:center;min-height:100vh;min-height:100dvh;max-width:480px;margin:0 auto;box-sizing:border-box;
  padding:calc(14px + env(safe-area-inset-top,0px)) 20px calc(12px + env(safe-area-inset-bottom,0px));color:var(--ga-encre)}
.gso-porte-haut{text-align:center;margin-bottom:16px}
.gso-porte-boule{display:block;width:62px;height:62px;margin:0 auto 8px;background:url(https://giri-app.com/cuisine/img/boule-or.webp) center/contain no-repeat;filter:drop-shadow(0 8px 18px rgba(160,115,20,.4))}
.gso-porte-titre{font:500 40px/1.05 'Cormorant Garamond',Georgia,serif;color:var(--ga-encre);margin:0}
.gso-porte-titre b{font-weight:600;background:var(--ga-or-grave);-webkit-background-clip:text;background-clip:text;color:transparent}
.gso-porte-sous{margin:6px 0 0;color:var(--ga-encre-2);font:italic 19px/1.3 'Cormorant Garamond',Georgia,serif}
.gso-porte-carte{display:flex;flex-direction:column;gap:12px;padding:20px 18px;border-radius:22px;background:var(--ga-verre);border:1px solid var(--ga-filet);box-shadow:var(--ga-ombre),var(--ga-luisant)}
.gso-google{display:flex;align-items:center;justify-content:center;gap:12px;min-height:56px;border-radius:16px;border:1px solid rgba(60,64,67,.26);text-decoration:none;
  font:600 17px 'Inter',system-ui,sans-serif;background:#fff;color:#1f1f1f}
.gso-ou{display:flex;align-items:center;gap:12px;color:var(--ga-encre-3);font:600 12px 'Inter',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.gso-ou::before,.gso-ou::after{content:"";flex:1;height:1px;background:var(--ga-filet)}
.gso-lien{min-height:44px;border:0;background:none;color:var(--ga-or-texte);font:600 15.5px 'Inter',system-ui,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:0}
.gso-porte-pied{display:flex;justify-content:center;gap:4px 16px;flex-wrap:wrap}
.gso-porte-legal{margin:12px 0 0;text-align:center;font-size:13px;color:var(--ga-encre-2);line-height:1.9}
.gso-porte-legal a{color:var(--ga-or-texte);text-decoration:none;font-weight:600;display:inline-block;padding:12px 2px}
@media (max-height:620px){.gso-porte-boule{width:46px;height:46px;margin-bottom:4px}.gso-porte-titre{font-size:32px}.gso-porte-sous{font-size:16px}.gso-porte-carte{padding:14px 14px;gap:9px}.gso-porte-haut{margin-bottom:10px}.gso-google{min-height:52px}}

/* le formulaire mot de passe / inscription d'origine, ouvert depuis la page de connexion (Google en tête, si visible) */
html.gso-app .gs-auth-screen{min-height:100dvh}
html.gso-app .gs-auth-card,html.gso-app .gs-auth-box{background:var(--ga-verre)!important;border:1px solid var(--ga-filet)!important;box-shadow:var(--ga-ombre),var(--ga-luisant)!important;color:var(--ga-encre)}
html.gso-app .gs-auth-tab{color:var(--ga-encre-2)!important;min-height:44px}
html.gso-app .gs-auth-tab.active{background:linear-gradient(135deg,#F4D58A,#C9A253)!important;color:#3a2708!important}
html.gso-app #gs-auth-form{display:flex;flex-direction:column}
html.gso-app #gs-google-zone{order:-1}
html.gso-app #gs-google-zone[style*="block"]{display:flex!important;flex-direction:column;margin-bottom:6px}
html.gso-app #gs-google-zone > div:first-child{order:2;margin:14px 0 10px!important}
html.gso-app #gs-google-zone > p{order:1;margin:8px 0 0!important}
html.gso-app #gs-google-btn{order:0;min-height:54px!important;border-radius:16px!important}
#gso-retour-porte{display:none}
html.gso-mdp #gso-retour-porte{display:flex;justify-content:center;margin:12px auto 0}
/* l'appli a sa cloche dans le menu ; en appli Play, la ligne sous un bouton d'abonnement masqué (« Sans engagement… ») part avec lui */
html.gso-app.gso-dedans #gs-notif-bell{display:none!important}
html.appli-play [onclick*="_showUpgrade"] + div{display:none!important}
@media (max-width:360px){html.gso-app .gso-lingot{font-size:17px!important}}
/* [NORME 30/10] la carte « fonction premium » avait un fond brun-noir écrit en dur (même le jour) : verre officiel, encres officielles */
html.gso-app [style*="#0c0a08"]{background:var(--ga-verre)!important;border:1px solid var(--ga-filet-fort)!important;box-shadow:var(--ga-ombre),var(--ga-luisant)!important}
html.gso-app [style*="#0c0a08"] [style*="color:#f8f4ef"]{color:var(--ga-encre)!important}
html.gso-app [style*="#0c0a08"] [style*="rgba(248,244,239"]{color:var(--ga-encre-2)!important}
html.gso-app [style*="#0c0a08"] [style*="color:#f0a838"]{color:var(--ga-or-texte)!important}
/* « Rendez-vous » sur une seule ligne */
#gso-onglets a span{white-space:nowrap;letter-spacing:0}
@media (max-width:430px){#gso-onglets a span{font-size:11.5px}}

/* [BOUTON REGARDER 30/10, Brice] LE bouton doré de la maison = « Regarder » de la visite guidée : filet doré, coins 12 px,
   texte droit en gras 16 px, reflet en haut — jour et nuit, rien d'autre. */
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app #gs-stripe-prompt button:first-of-type,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gs-auth-tab.active,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gs-btn-primary,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gs-btn.gs-btn-primary,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gso-lingot,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gso-porte-mail{
  border:1px solid rgba(160,120,64,.55)!important;border-radius:12px!important;
  background:linear-gradient(135deg,#F4D58A 0%,#E8C078 42%,#C9A253 72%,#A07840 100%)!important;
  box-shadow:0 6px 16px rgba(74,48,12,.2),inset 0 1px 0 rgba(255,255,255,.55)!important;
  color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;
  font-family:'Inter','Segoe UI',system-ui,-apple-system,sans-serif!important;font-weight:700!important;font-size:16px!important;font-style:normal!important;
  letter-spacing:normal!important;text-transform:none!important;line-height:1.25!important;text-shadow:none!important}
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app #gs-stripe-prompt button:first-of-type *,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gs-auth-tab.active *,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gs-btn-primary *,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gs-btn.gs-btn-primary *,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gso-lingot *,
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10).gso-app .gso-porte-mail *{color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;text-shadow:none!important}
/* [LOGO OFFICIEL 30/10, Brice] le logo de l'appli à la place de la boule seule, sur la porte et dans l'en-tête */
html .gso-porte-boule{width:88px!important;height:88px!important;margin:0 auto 12px!important;background:url(https://giri-app.com/img/portail/creme/soins.webp) center/cover no-repeat!important;border-radius:22%!important;filter:none!important;box-shadow:0 10px 24px -8px rgba(96,70,20,.45)!important}
@media (max-height:700px){html .gso-porte-boule{width:64px!important;height:64px!important;margin-bottom:6px!important}}
@media (max-height:600px){html .gso-porte-boule{width:52px!important;height:52px!important}}
html .gso-boule,html #gso-tete .gso-boule{width:36px!important;height:36px!important;background:url(https://giri-app.com/img/portail/creme/soins.webp) center/cover no-repeat!important;border-radius:22%!important;filter:none!important;box-shadow:0 3px 8px rgba(96,70,20,.35)!important}

/* [BOUTON REGARDER 30/10, Brice] LE bouton doré de la maison = « Regarder » de la visite guidée : filet doré, coins 12 px,
   texte droit en gras 16 px, casse normale, encre #3a2708 — jour et nuit. Boutons secondaires : même typographie, sans l'or. */
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10):not(#z11):not(#z12) body #gs-cookie-accept{
  border:1px solid rgba(160,120,64,.55)!important;
  background:linear-gradient(135deg,#F4D58A 0%,#E8C078 42%,#C9A253 72%,#A07840 100%)!important;
  box-shadow:0 6px 16px rgba(74,48,12,.2),inset 0 1px 0 rgba(255,255,255,.55)!important;
  color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;text-shadow:none!important;
  font-family:'Inter','Segoe UI',system-ui,-apple-system,sans-serif!important;font-weight:700!important;font-size:16px!important;font-style:normal!important;letter-spacing:normal!important;text-transform:none!important;border-radius:12px!important}
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10):not(#z11):not(#z12) body #gs-cookie-accept *{color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;text-shadow:none!important;font-family:inherit!important;letter-spacing:normal!important;text-transform:none!important;font-weight:inherit!important;font-size:inherit!important}
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10):not(#z11):not(#z12) body #gs-cookie-refuse{font-family:'Inter','Segoe UI',system-ui,-apple-system,sans-serif!important;font-weight:700!important;font-size:16px!important;font-style:normal!important;letter-spacing:normal!important;text-transform:none!important;border-radius:12px!important}
html:not(#z1):not(#z2):not(#z3):not(#z4):not(#z5):not(#z6):not(#z7):not(#z8):not(#z9):not(#z10):not(#z11):not(#z12) body #gs-cookie-refuse *{font-family:inherit!important;letter-spacing:normal!important;text-transform:none!important;font-weight:inherit!important;font-size:inherit!important}

/* ══ [REVUE 02/11, Brice] corrections de la revue sévère — mode appli seulement (html.gso-app), l'atelier sur ordinateur ne change pas ══ */
/* 1. lisibilité en Marbre de jour : couleurs claires écrites en dur pour l'ancien atelier sombre (FAQ, agenda, bannière, compte, formulaire) */
html.gso-app:not(.gso-nuit) #gs-content [style*="color:rgba(240,236,228"],
html.gso-app:not(.gso-nuit) #gs-content [style*="color:#f0ece4"],
html.gso-app:not(.gso-nuit) #gs-content [style*="color:#f5f1ea"],
html.gso-app:not(.gso-nuit) #gs-content [style*="color:var(--text,#fff)"]{color:var(--ga-encre)!important}
html.gso-app:not(.gso-nuit) #gs-content [style*="color:#9a958c"]{color:var(--ga-encre-2)!important}
html.gso-app:not(.gso-nuit) #gs-content [style*="color:#d4af6a"],
html.gso-app:not(.gso-nuit) #gs-content [style*="color:#b8944a"],
html.gso-app:not(.gso-nuit) .gs-auth-screen [style*="color:#b8944a"],
html.gso-app:not(.gso-nuit) .gs-auth-screen [style*="color:#8a7a6a"]{color:var(--ga-or-texte)!important}
html.gso-app.gso-nuit .gs-auth-screen [style*="color:#8a7a6a"]{color:var(--ga-encre-2)!important}
html.gso-app:not(.gso-nuit) #gs-content [style*="color:#5acf6c"]{color:#1e7b3c!important}
html.gso-app:not(.gso-nuit) #gs-content [style*="color:#c89189"]{color:#9b3a2e!important}
html.gso-app:not(.gso-nuit) #gs-content [style*="background:rgba(255,255,255,.03)"]{background:var(--ga-verre-plat)!important;border-color:var(--ga-filet)!important}
html.gso-app:not(.gso-nuit) #gs-content [style*="background:rgba(184,148,74,.12)"]{background:rgba(150,112,52,.10)!important;border-color:var(--ga-filet-fort)!important}
html.gso-app body{--text:var(--ga-encre)}
/* 2. textes ≥ 12 px (règle maison) */
html.gso-app #gso-onglets a span{font-size:12px}
html.gso-app .gso-marque small{font-size:12px;letter-spacing:2.6px}
html.gso-app .gs-soin-stat-lab,html.gso-app .gs-rdv-stat-lab,html.gso-app #gs-style-livehint span,html.gso-app #gs-content small,
html.gso-app #gs-content [style*="font-size:.7rem"],html.gso-app #gs-content [style*="font-size:.72rem"]{font-size:12px!important}
html.gso-app .gs-btn-sm,html.gso-app #gs-content .gs-btn.gs-btn-secondary{font-size:max(12px,.8rem)!important}
/* 3. cibles sous le pouce ≥ 40 px */
html.gso-app #gs-content button[onclick*="copyVitrineUrl"],html.gso-app #gs-content button[style*="padding:4px 6px"],html.gso-app #gs-content button[onclick*="faqRemove"]{min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}
html.gso-app .gs-auth-screen a[onclick*="showForgotPassword"]{display:inline-block;padding:12px 10px}
html.gso-app .gs-soin-add,html.gso-app .gs-rdv-save,html.gso-app #gs-msg-archive-btn,html.gso-app .gs-btn-sm,html.gso-app #gs-content .gs-btn-secondary{min-height:40px}
/* 4. en-tête : les ronds (photo, menu) descendent au niveau du mot « Soins » */
html.gso-app .gso-actions{transform:translateY(3px)}
/* 5. la fenêtre « Activez les paiements » devient une carte discrète au-dessus de la barre, plus un rideau plein écran */
html.gso-app #gs-stripe-prompt{position:fixed!important;inset:auto 12px calc(var(--gso-barre-h,66px) + 12px) 12px!important;width:auto!important;height:auto!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;display:block!important;padding:0!important;z-index:2147483500!important;animation:none!important}
html.gso-app #gs-stripe-prompt>div{max-width:none!important;width:auto!important;margin:0!important;padding:14px 16px 12px!important;border-radius:18px!important;background:var(--ga-verre)!important;border:1px solid var(--ga-filet-fort)!important;box-shadow:var(--ga-ombre),var(--ga-luisant)!important;animation:none!important}
html.gso-app #gs-stripe-prompt>div>div:first-child{display:none!important}
html.gso-app #gs-stripe-prompt h2{font-size:1.15rem!important;margin:0 0 4px!important;text-align:left!important;color:var(--ga-encre)!important}
html.gso-app #gs-stripe-prompt p{font-size:.86rem!important;text-align:left!important;margin:0 0 10px!important;color:var(--ga-encre-2)!important}
html.gso-app #gs-stripe-prompt>div>p:last-child{display:none!important}
html.gso-app #gs-stripe-prompt>div>div:nth-of-type(2){flex-direction:row!important;gap:8px!important}
html.gso-app #gs-stripe-prompt #gs-sp-go,html.gso-app #gs-stripe-prompt #gs-sp-later{flex:1 1 0;min-height:44px;padding:10px 10px!important;font-size:15px!important}
/* 6. états vides centrés dans la hauteur disponible */
html.gso-app .gs-empty{min-height:38vh;display:flex;flex-direction:column;align-items:center;justify-content:center}
/* 7. porte : le bouton e-mail centré, et plus petit sur les téléphones étroits */
html.gso-app #gso-mail{text-align:center}
@media (max-width:340px){html.gso-app #gso-mail{font-size:15px!important;padding-left:8px!important;padding-right:8px!important}}
/* 8. mot d'accueil quand Google renvoie une adresse sans espace */
html.gso-app .gso-info{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:var(--ga-verre-plat);border:1px solid var(--ga-filet);color:var(--ga-encre-2);font:500 14px/1.45 'Inter',system-ui,sans-serif}
html.gso-app .gso-info b{color:var(--ga-encre)}
/* [BIENTOT-TABLETTE 02/11, Brice] en appli, rien de « bientôt » : la carte vide « Bientôt ici » des statistiques (tablette) est retirée */
html.gso-app .gs-ws-card-empty[data-kind="top"]{display:none!important}
/* [CTA-REGARDER 02/11, Brice] les boutons des états vides (galerie, témoignages…) prennent le bouton « Regarder » : lisibles la nuit (ils étaient blanc sur or pâle) */
html.gso-app .gs-empty-magnific-cta-primary{background:linear-gradient(135deg,#F4D58A 0%,#E8C078 42%,#C9A253 72%,#A07840 100%)!important;color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;border:1px solid rgba(160,120,64,.55)!important;font:700 16px/1.25 \x27Inter\x27,system-ui,sans-serif!important;border-radius:12px!important;box-shadow:0 6px 16px rgba(74,48,12,.2),inset 0 1px 0 rgba(255,255,255,.55)!important}
html.gso-app .gs-empty-magnific-cta-primary *{color:#3a2708!important;-webkit-text-fill-color:#3a2708!important}
/* [CIBLES-FORT 02/11, Brice] cibles sous le pouce ≥ 40 px : une règle de l atelier fixe 32 px avec plus de poids, on repasse devant (priorité maison) */
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app .gs-soin-add,html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app .gs-rdv-save,html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-msg-archive-btn,html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-msg-inbox-btn,html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app .gs-btn-sm,html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-btn-secondary,html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-btn{min-height:40px!important;height:auto!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick*="copyVitrineUrl"],html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[style*="padding:4px 6px"],html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick*="faqRemove"]{min-width:40px!important;min-height:40px!important;width:auto!important;height:auto!important;display:inline-flex!important;align-items:center;justify-content:center}
html.gso-app .gso-actions{transform:translateY(5px)}
html.gso-app .gs-ws-card-label{font-size:12px!important}
html.gso-app .gs-empty{min-height:46vh}

/* ══ [RETOUCHES 02/11 bis, Brice] boule E-Care devant tout, en-tête aéré, soin sans image, FAQ au thème, blog compact, agenda au thème — mode appli seulement ══ */
/* 1. la boule E-Care (qui aide à répondre aux questions) passe toujours au premier plan */
html.gso-app .gs-asst-fab{z-index:2147483620!important}
html.gso-app .gs-asst-panel,html.gso-app #gs-asst-panel,html.gso-app [class*="gs-asst-panel"]{z-index:2147483619!important}
/* 2. en-tête : de l'air sous les ronds, ronds et titre à la même hauteur */
html.gso-app.gso-dedans #gso-tete{padding:10px 14px 11px;padding-top:calc(10px + env(safe-area-inset-top,0px))}
html.gso-app .gso-actions{transform:translateY(2px)}
html.gso-app .gso-marque{transform:translateY(-2px)}
/* 3. un soin sans image : aucun cadre */
html.gso-app .gs-soin-card-visual:has(.gs-soin-card-noimg),html.gso-app .gs-soin-card-visual.gso-sans-image{display:none!important}
/* 4. le bouton principal de la maison (« Regarder ») : Enregistrer la FAQ, Sauvegarder l'agenda, Partager ma vitrine, Nouvel article */
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick="GS.faqSave()"],
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-rdv-save,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick*="_showWowPublishModal"],
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick="GS_Modules._editPost()"]{background:linear-gradient(135deg,#F4D58A 0%,#E8C078 42%,#C9A253 72%,#A07840 100%)!important;color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;border:1px solid rgba(160,120,64,.55)!important;border-radius:12px!important;font:700 16px/1.25 'Inter',system-ui,sans-serif!important;box-shadow:0 6px 16px rgba(74,48,12,.2),inset 0 1px 0 rgba(255,255,255,.55)!important;text-transform:none!important;letter-spacing:0!important;min-height:44px!important;padding:11px 18px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:auto!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick="GS.faqSave()"] *,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-rdv-save *,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick*="_showWowPublishModal"] *{color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;stroke:#3a2708!important}
/* 5. le bouton secondaire de la maison (crème, bord doré) : Ajouter une question, Ajouter un soin, Bloquer ce jour */
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick="GS.faqAdd()"],
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-rdv-blockbtn,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-soin-add,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content details button[onclick*="faqAdd("]{background:#fffdf8!important;color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;border:1px solid rgba(160,120,64,.55)!important;border-radius:12px!important;font:700 15px/1.25 'Inter',system-ui,sans-serif!important;box-shadow:0 2px 8px rgba(74,48,12,.08)!important;text-transform:none!important;letter-spacing:0!important;min-height:44px!important;padding:10px 16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:auto!important;opacity:1!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick="GS.faqAdd()"] *,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-rdv-blockbtn *,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-soin-add *{color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;stroke:#3a2708!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app.gso-nuit #gs-content button[onclick="GS.faqAdd()"],
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app.gso-nuit #gs-content .gs-rdv-blockbtn,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app.gso-nuit #gs-content .gs-soin-add,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app.gso-nuit #gs-content details button[onclick*="faqAdd("]{background:var(--ga-verre-plat)!important;color:#f0d98c!important;-webkit-text-fill-color:#f0d98c!important;border-color:var(--ga-filet-fort)!important;box-shadow:none!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app.gso-nuit #gs-content button[onclick="GS.faqAdd()"] *,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app.gso-nuit #gs-content .gs-rdv-blockbtn *,
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app.gso-nuit #gs-content .gs-soin-add *{color:#f0d98c!important;-webkit-text-fill-color:#f0d98c!important;stroke:#f0d98c!important}
/* 6. FAQ : croix dans le cadre, recentrées, premium ; pastille du numéro en or clair ; bloc Suggestions en carte de verre */
html.gso-app .gs-faq-row{padding:14px 14px!important;background:var(--ga-verre)!important;border:1px solid var(--ga-filet)!important;border-radius:16px!important}
html.gso-app .gs-faq-row > div{align-items:center;gap:8px!important}
html.gso-app .gs-faq-row input[type="text"]{min-width:0;flex:1 1 0;background:var(--ga-champ)!important;color:var(--ga-encre)!important;border:1px solid var(--ga-filet)!important}
html.gso-app .gs-faq-row textarea{background:var(--ga-champ)!important;color:var(--ga-encre)!important;border:1px solid var(--ga-filet)!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app .gs-faq-row button[onclick*="faqRemove"]{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;flex:none!important;border-radius:50%!important;background:var(--ga-verre-plat)!important;border:1px solid var(--ga-filet-fort)!important;color:#b23a2e!important;-webkit-text-fill-color:#b23a2e!important;font:400 24px/1 'Inter',system-ui,sans-serif!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 0 2px!important;box-shadow:0 2px 8px rgba(74,48,12,.10)!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app.gso-nuit .gs-faq-row button[onclick*="faqRemove"]{color:#ff8a7a!important;-webkit-text-fill-color:#ff8a7a!important}
html.gso-app .gs-faq-row span[style*="linear-gradient(135deg,#b8941f,#8b6914)"]{background:linear-gradient(135deg,#F4D58A 0%,#C9A253 100%)!important;color:#3a2708!important;width:30px!important;height:30px!important}
html.gso-app #gs-content details[style*="rgba(184,148,74,.06)"]{background:var(--ga-verre)!important;border:1px solid var(--ga-filet)!important;border-radius:16px!important;padding:12px 14px!important}
html.gso-app #gs-content details[style*="rgba(184,148,74,.06)"] summary{color:var(--ga-or-texte)!important;font:600 15px/1.35 'Inter',system-ui,sans-serif!important;min-height:44px;display:flex;align-items:center}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content details button[onclick*="faqAdd("]{font:500 14px/1.35 'Inter',system-ui,sans-serif!important;justify-content:flex-start!important;text-align:left!important;width:100%!important;padding:10px 14px!important}
/* 7. blog : carte d'aperçu compacte */
html.gso-app #gs-blog-list .gs-card{padding:10px 12px!important;margin-bottom:8px!important;border-radius:14px!important}
html.gso-app #gs-blog-list .gs-card > div{gap:10px!important;align-items:center!important}
html.gso-app #gs-blog-list .gs-card img,html.gso-app #gs-blog-list .gs-card > div > div[style*="width:80px"]{width:54px!important;height:42px!important;border-radius:8px!important;font-size:1.1rem!important}
html.gso-app #gs-blog-list .gs-card [style*="font-size:.95rem"]{font-size:.92rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
html.gso-app #gs-blog-list .gs-card [style*="font-size:.8rem;color:var(--text-secondary)"]{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:.78rem!important;margin-top:1px!important}
html.gso-app #gs-blog-list .gs-card > div > div[style*="flex:1"]{min-width:0}
html.gso-app #gs-blog-list .gs-card [style*="margin-top:6px"]{margin-top:4px!important;gap:6px!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-btn-icon{min-width:40px!important;min-height:40px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
/* [BLOG-COMPACT-2 02/11] la croix de suppression reste sur la ligne, ronde, à droite : la carte d article tient sur une hauteur */
html.gso-app #gs-blog-list .gs-card > div{flex-wrap:nowrap!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-blog-list .gs-btn-icon{flex:none!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border-radius:50%!important;background:var(--ga-verre-plat)!important;border:1px solid var(--ga-filet)!important;color:#b23a2e!important;font-size:16px!important;padding:0!important;margin:0!important;position:static!important}
html.gso-app.gso-nuit #gs-blog-list .gs-btn-icon{color:#ff8a7a!important}
/* [BLOG-COMPACT-3 02/11] la ligne de la carte d article ne se replie pas (une règle mobile forçait le repli) */
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-blog-list .gs-card > div{flex-wrap:nowrap!important;align-items:center!important;gap:10px!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-blog-list .gs-card > div > div[style*="flex:1"]{flex:1 1 0!important;min-width:0!important}
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-blog-list .gs-card > div > div:first-child[style*="width:80px"],html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-blog-list .gs-card > div > img{width:54px!important;height:42px!important;min-width:54px!important;flex:none!important}

/* ══ [TOUR 02/11, Brice] tour exhaustif après la revue : restes de contraste et de cibles — mode appli seulement ══ */
/* pastille « Hors ligne » (ambre pâle, 1,7 sur le marbre de jour) et textes d'aide pâles */
html.gso-app:not(.gso-nuit) #gs-content [style*="color:#f5b042"]{color:#8a5500!important}
html.gso-app #gs-content .desc{color:var(--ga-encre-2)!important}
html.gso-app.gso-nuit #gs-content strong[style*="color:#2e7d32"]{color:#9fe3a8!important}
/* cibles sous le pouce ≥ 40 px : crayon de l'adresse, actions d'un soin, adresse de la vitrine, pilules légales, aperçu en direct, en-têtes dépliables, liens légaux du menu */
html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content button[onclick*="editSlug"],html:not(#z1):not(#z2):not(#z3):not(#z4).gso-app #gs-content .gs-soin-act{min-width:40px!important;min-height:40px!important;display:inline-flex!important;align-items:center;justify-content:center}
html.gso-app #gs-content a[href^="/soins/"][style*="text-overflow"]{display:inline-flex;align-items:center;min-height:40px}
html.gso-app #gs-content a[target="_blank"][style*="border-radius:99px"]{min-height:44px!important;padding-top:10px!important;padding-bottom:10px!important}
html.gso-app #gs-style-livehint{min-height:40px!important}
html.gso-app .gs-collapsible>.gs-card-header[onclick]{min-height:44px;display:flex;align-items:center}
html.gso-app .gso-legal a{padding:9px 6px;min-width:44px;text-align:center}
/* adresse d'une vitrine hors ligne : montrée sans lien (la page publique répondrait « introuvable ») */
html.gso-app #gs-content a[data-gso-hors]{opacity:.7;pointer-events:none;color:var(--ga-encre-2)!important}

/* ══ [TOUR 02/11 bis, Brice] les cinq derniers mineurs du banc final — mode appli seulement ══ */
html.gso-app #gs-content a[data-gso-hors]{display:inline-flex;align-items:center;min-height:40px}
html.gso-app .gs-empty-magnific-cta-primary{min-height:44px!important;display:inline-flex!important;align-items:center;justify-content:center}
html.gso-app #gs-content [style*="font-size:.74rem"]{font-size:12px!important}
html.gso-app .gs-pv-btn{min-width:40px!important;min-height:40px!important;display:inline-flex!important;align-items:center;justify-content:center}

/* ══ [E-CARE 02/11, Brice « la boule E-Care, oui tu as mon autorisation d'arranger ça au mieux »] en appli, barre d'onglets visible :
   la boule remonte juste au-dessus de la barre (elle mordait l'onglet Paiements) et le panneau s'ouvre entre l'en-tête et la boule.
   Clavier ouvert (barre cachée), porte, navigateur ou atelier sur ordinateur : position d'origine intacte (règle 16/06 de Maha respectée hors appli). ══ */
html.gso-app.gso-dedans:not(.gso-clavier) .gs-asst-fab{bottom:calc(var(--gso-barre-h,66px) + 10px)!important}
html.gso-app.gso-dedans:not(.gso-clavier) .gs-asst-panel{bottom:calc(var(--gso-barre-h,66px) + 90px)!important;top:calc(var(--gso-tete-h,62px) + 10px)!important;height:auto!important;max-height:none!important}
@media (min-width:601px){html.gso-app.gso-dedans:not(.gso-clavier) .gs-asst-panel{top:auto!important;height:min(620px,calc(100dvh - var(--gso-tete-h,62px) - var(--gso-barre-h,66px) - 110px))!important}}
/* la boule n'étant plus sur la barre, les onglets des petits téléphones reprennent toute la largeur */
@media (max-width:360px){html:not(#z1):not(#z2).gso-app.gso-dedans #gso-onglets{padding-right:0!important}}

/* [E-CARE 02/11 bis] écrans courts (≤ 640 px de haut, ex. 320×568) : panneau ouvert = la boule s'efface (le panneau a sa croix) et le panneau descend jusqu'à la barre, sinon son en-tête se fait rogner */
@media (max-height:640px){
  html.gso-app.gso-dedans:not(.gso-clavier):has(.gs-asst-panel.open) .gs-asst-fab{display:none!important}
  html.gso-app.gso-dedans:not(.gso-clavier) .gs-asst-panel.open{bottom:calc(var(--gso-barre-h,66px) + 10px)!important;top:calc(var(--gso-tete-h,62px) + 8px)!important}
}

/* [POLI 07/11] case d'icône vidée de son emoji : elle disparaît au lieu de laisser un trou */
html.gso-app .gso-emo-vide{display:none!important}
/* [POLI 07/11] carte « paiements en ligne » : opaque (la page ne transparaît plus), la boule E-Care garde son coin, absente de l agenda et des messages */
html.gso-app #gs-stripe-prompt>div{background:var(--ga-fond)!important}
html.gso-app #gs-stripe-prompt>div>div:nth-of-type(2){margin-right:64px!important}
html.gso-app[data-gso-onglet="rendez-vous"] #gs-stripe-prompt,html.gso-app[data-gso-onglet="messages"] #gs-stripe-prompt{display:none!important}
/* [RUBAN 07/11] Ma vitrine : cinq rubriques visibles, FAQ, Blog, Recommandations, Produits Giri et Mentions derrière « Plus » */
#gso-puces:not(.ouvert) .gso-puce-plus,#gso-puces.ouvert .gso-plus{display:none!important}
.gso-plus{font:inherit;color:var(--ga-encre-2);cursor:pointer}
/* [POLI 07/11] Mes soins : le titre suffit (le cœur et la devise répétaient l onglet) */
html.gso-app .gs-soin-hero-sub,html.gso-app .gs-soin-hero-icon{display:none!important}
/* [POLI 07/11] Témoignages : trois boutons sobres en une rangée au lieu de trois grandes tuiles */
html.gso-app .gs-testi-cta-grid{grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin-bottom:16px!important}
html.gso-app .gs-testi-cta{flex-direction:row!important;gap:6px!important;padding:0 6px!important;min-height:48px!important;border-radius:14px!important}
html.gso-app .gs-testi-cta:hover{transform:none;box-shadow:none}
html.gso-app .gs-testi-cta-ico{width:20px;height:20px;padding:0;border:0;background:none;border-radius:0}
html.gso-app .gs-testi-cta-tt{font-family:inherit;font-size:14px;letter-spacing:.02em;text-transform:none;font-weight:600}
