/* Correctifs de navigation, de galerie et de favoris. */
:root{--navh:92px;--danger:#eb3b4f}
.bottom-nav{grid-template-columns:1fr 1fr 124px 1fr 1fr;padding-left:4px;padding-right:4px;border-top:0;border-radius:0 0 22px 22px;box-shadow:0 -8px 24px rgba(0,0,0,.2)}
.nav-item{height:76px;gap:6px;font-size:12px}
.nav-svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.grid-icon{stroke-width:2.2}
.scan-nav{width:124px;height:92px;margin-top:-10px;border-radius:16px;background:#181818;box-shadow:0 5px 18px rgba(0,0,0,.35)}
.scan-nav:before,.scan-nav:after,.scan-arc,.scan-label{display:none}
.scan-design{width:120px;height:88px;overflow:visible}
.scan-corner{fill:none;stroke:var(--ivory);stroke-width:2.4;stroke-linecap:square;stroke-linejoin:miter}
.scan-curve-text{fill:var(--gold);font-size:10px;font-weight:800;letter-spacing:2.2px}
.scan-text{fill:var(--ivory);font-size:10px;font-weight:850;letter-spacing:1.4px}
.hero-img{object-position:center top}
.tile img{object-position:center top}
.heart.on,.favorite-heart{color:var(--danger)}
@media(max-width:390px){.bottom-nav{grid-template-columns:1fr 1fr 112px 1fr 1fr}.scan-nav{width:112px}.nav-item{font-size:10px}.nav-svg{width:24px;height:24px}}

/* File d'attente — portage fidèle de l'écran Android. */
.scan-nav.queue-active .scan-corner{display:none}
.scan-nav.queue-active .scan-text{fill:var(--ivory);font-size:9px}
.scan-nav.queue-turn .scan-text{fill:var(--gold);animation:queue-turn-pulse 1.4s ease-in-out infinite}
@keyframes queue-turn-pulse{0%,100%{opacity:.65}50%{opacity:1;filter:drop-shadow(0 0 5px rgba(190,158,92,.75))}}
.waiting-page{min-height:100%;padding:20px 20px 42px;background:#080808;overflow-x:hidden}
.waiting-close{width:52px;height:52px;border:0;background:none;color:var(--ivory);font-size:50px;font-weight:200;line-height:1;display:grid;place-items:center;padding:0}
.waiting-head{text-align:center;padding:48px 0 34px}
.waiting-kicker{color:var(--gold);font-size:13px;font-weight:850;letter-spacing:.24em}
.waiting-head h1{font-size:38px;line-height:1;margin:24px 0 14px;font-weight:900}
.waiting-head p{margin:0;color:var(--muted);font-size:20px}
.waiting-choice,.waiting-status{border:1px solid #4c4330;background:linear-gradient(145deg,#1f1c17,#111);padding:28px 18px}
.waiting-choice label{display:block;color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.13em;margin-bottom:18px}
.waiting-choice select{width:100%;min-height:58px;border:1px solid var(--gold);border-radius:0;background:#141414;color:var(--ivory);font-size:16px;line-height:1.35;padding:10px 42px 10px 15px}
.waiting-choice select:disabled{opacity:.55}
.waiting-action{width:100%;min-height:64px;border:0;border-radius:0;background:var(--gold);color:#000;font-size:14px;font-weight:900;letter-spacing:.01em;margin-top:18px}
.waiting-action:disabled{opacity:.45}
.waiting-status{text-align:center;padding:30px 20px}
.waiting-person>span,.waiting-estimate>span{display:block;color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.18em}
.waiting-person>strong{display:block;color:var(--gold);font-size:78px;line-height:1;margin:22px 0 13px;font-weight:900}
.waiting-person>b{display:block;font-size:17px}
.waiting-person>small{display:block;color:var(--muted);font-size:14px;margin-top:7px}
.waiting-estimate{margin-top:28px}
.waiting-estimate>strong{display:block;color:var(--ivory);font-size:38px;line-height:1.1;margin:12px 0 14px;font-weight:900}
.waiting-estimate>small{color:var(--muted);font-size:11px}
.waiting-privileges{margin-top:34px}
.waiting-privileges h2{font-size:29px;line-height:1.1;margin:0 0 20px}
.wait-privilege{position:relative;min-height:154px;border:1px solid #37332b;background:#171717;padding:22px 20px 42px;margin:10px 0}
.wait-privilege h3{font-size:18px;margin:0 0 10px}
.wait-privilege p{color:var(--muted);font-size:15px;line-height:1.4;margin:0}
.wait-privilege span{position:absolute;right:18px;bottom:17px;color:var(--gold);font-size:11px;font-weight:850}
@media(max-width:390px){.waiting-page{padding-left:12px;padding-right:12px}.waiting-head{padding-top:34px}.waiting-person>strong{font-size:66px}.waiting-estimate>strong{font-size:34px}.waiting-privileges h2{font-size:25px}}

/* Navigation Inspirations / Événements. */
.discovery .tabs{position:absolute;top:0;left:0;right:0;z-index:20;background:transparent;padding-top:14px}
.discovery #discoveryBody{position:absolute;inset:0}
.salon-link{display:block;border:0;background:none;padding:0;color:var(--gold);text-align:left;cursor:pointer}
.event-page{padding-top:82px;height:100%;overflow:auto}
.event-card .event-meta.salon-link{margin:0 0 3px}
.event-card>.heart{border:0;background:transparent;border-radius:0;width:auto;height:auto;padding:0;font-size:39px}
.inspiration-panel{position:absolute;z-index:25;left:0;right:0;bottom:0;padding:25px 24px 28px;background:rgba(11,11,11,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid rgba(190,158,92,.35)}
.inspiration-panel h2{font-size:29px;line-height:1.08;margin:0 52px 9px 0}
.inspiration-panel .salon-link{font-size:15px;margin-bottom:15px}
.inspiration-panel p{font-size:17px;line-height:1.45;color:var(--muted);margin:0 0 22px;max-height:120px;overflow:auto}
.inspiration-panel .primary{border-radius:0}
.panel-close{position:absolute;right:17px;top:17px;width:42px;height:42px;border:0;border-radius:13px;background:#1c1c1c;color:#fff;font-size:31px;line-height:1}

/* Favoris Android : cartes carrées, suppression uniforme par poubelle. */
.favorites-page{padding:34px 24px 46px}
.favorites-page .title{font-size:46px;letter-spacing:.02em}
.favorites-subtitle{font-size:18px;margin:14px 0 48px}
.favorites-page .fav-section{margin-top:38px}
.favorites-page .section-head{margin:0 8px 18px}
.favorites-page .section-head h2{font-size:19px;letter-spacing:.08em}
.favorites-page .grid{gap:7px}
.favorites-page .tile{height:232px}
.tile-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#b9b7b2;font-size:76px;background:linear-gradient(145deg,#1a1814,#0b0b0a)}
.tile-placeholder svg{width:78px;height:78px;fill:none;stroke:currentColor;stroke-width:2}
.tile-copy b{font-size:19px;line-height:1.12}.tile-copy small{font-size:14px}
.remove{width:52px;height:52px;border-radius:16px;display:grid;place-items:center}
.remove svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* Détails plein écran prestation et produit. */
.media-detail{height:100%;overflow:hidden;position:relative;background:#070707}
.detail-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.product-image{object-fit:contain;background:#e5e5e5}
.detail-placeholder{display:grid;place-items:center;background:linear-gradient(145deg,#1a1814,#080808);font-size:120px;color:var(--gold)}
.detail-shade{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.98) 82%)}
.detail-close{position:absolute;z-index:3;right:22px;top:22px;width:62px;height:62px;border:0;border-radius:18px;background:rgba(18,18,18,.86);color:#fff;font-size:46px;font-weight:200;line-height:1}
.detail-copy{position:absolute;z-index:2;left:27px;right:27px;bottom:42px}
.detail-copy h1{font-size:38px;line-height:1.05;margin:0 0 14px}
.detail-copy .salon-link{font-size:17px;margin:0 0 24px}
.detail-copy p{max-width:83%;color:var(--muted);font-size:20px;line-height:1.36;margin:0}
.calendar-action{position:absolute;z-index:3;right:24px;bottom:28px;width:72px;height:72px;border:1px solid #aaa;border-radius:22px;background:#191919;color:var(--gold);display:grid;place-items:center}
.calendar-action svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.product-detail .detail-copy p{margin-bottom:20px}.product-price{display:block;color:var(--gold);font-size:32px;margin:12px 0}.product-detail .discover-link{font-size:17px}

/* Événement et écrans bientôt disponibles. */
.event-detail-page{padding:70px 29px 38px;overflow:auto}
.event-detail-head{position:relative;padding-bottom:32px;border-bottom:1px solid #181818}
.event-detail-head h1{font-size:39px;line-height:1.08;margin:45px 0 24px;max-width:90%}
.event-detail-head h2{font-size:22px;line-height:1.3;margin:0 0 14px}
.detail-favorite{position:absolute;right:0;top:-20px;border:0;background:none;color:#fff;font-size:53px}.detail-favorite.on{color:#ff174c}
.event-description{font-size:21px;line-height:1.45;color:var(--muted);margin:32px 0 25px}
.event-facts{display:grid;gap:17px;font-size:18px}.event-price{text-align:right;color:var(--gold);font-size:29px;font-weight:900;margin:28px 0}
.event-book{margin-bottom:12px}
.soon-page{display:grid;place-items:center;text-align:center;padding:55px 38px}
.soon-page .eyebrow{text-align:left;font-size:15px;margin-bottom:22px}.soon-page h1{font-size:43px;line-height:1.05;margin:0 0 24px}.soon-page p{font-size:21px;line-height:1.35;color:var(--muted);margin:0 0 34px}

/* Fiche salon et ses quatre rubriques. */
.salon-page{height:100%;overflow:auto;background:#080808}
.salon-tabs{height:116px;padding:10px 8px;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;background:#050505}
.salon-tabs button{border:1px solid #5b503b;border-radius:17px;background:#1a1a1a;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:12px;min-width:0}
.salon-tabs button b{font-size:28px}.salon-tabs button.active{border-color:var(--gold);background:linear-gradient(145deg,#d1ad63,#9f834e);color:#080808}
.salon-tabs .salon-identity span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 5px}.salon-tabs .salon-identity b{font-size:34px}
.salon-content{height:calc(100% - 116px);min-height:0;padding:0;position:relative;overflow:hidden}
.salon-profile-inner{position:absolute;top:15%;left:20px;right:20px;text-align:center}
.salon-profile-inner .salon-heart{display:block;margin:0 auto 28px;border:0;background:none;color:#fff;font-size:66px;line-height:1}.salon-profile-inner .salon-heart.on{color:#ff174c}
.salon-profile-inner h1{text-align:center;font-size:37px;margin:0 0 24px}.salon-profile-inner p{text-align:center;font-size:24px;margin:0 0 24px}.salon-email{display:block;margin:auto;border:0;background:none;color:var(--gold);font-size:18px}
.salon-grid{padding-top:5px}.salon-grid .tile{height:235px}
.salon-feed{position:absolute;inset:0;overflow:hidden;background:#090909}
.salon-feed>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.salon-feed-placeholder{position:absolute;inset:0;display:grid;place-items:center;font-size:110px;color:var(--gold);background:linear-gradient(145deg,#1b1915,#080808)}
.salon-feed-shade{position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.98))}
.salon-feed-copy{position:absolute;z-index:2;left:28px;right:95px;bottom:38px}.salon-feed-copy h1{font-size:38px;line-height:1.05;margin:0 0 18px}.salon-feed-copy p{font-size:18px;color:var(--muted);margin:0 0 12px}.salon-feed-copy strong{display:block;color:var(--gold);font-size:29px;margin-bottom:12px}.salon-feed-copy .discover-link{font-size:16px}
.salon-item-heart{position:absolute;z-index:4;right:24px;bottom:31px;width:66px;height:66px;border:0;border-radius:18px;background:rgba(18,18,18,.88);color:#fff;font-size:42px;display:grid;place-items:center}.salon-item-heart.on{color:#ff174c}
.salon-arrow{position:absolute;z-index:4;top:45%;transform:translateY(-50%);border:0;background:rgba(0,0,0,.18);color:#fff;width:54px;height:72px;font-size:62px;font-weight:200;line-height:1}.salon-arrow.previous{left:3px}.salon-arrow.next{right:3px}
.salon-event-feed{overflow:auto}.salon-event-feed .event-inner{padding:65px 58px 45px;min-height:100%}.salon-event-feed h1{font-size:40px;line-height:1.08;margin:36px 0 28px}.salon-event-feed h2{font-size:22px;line-height:1.35;margin-bottom:28px}.salon-event-feed p{font-size:21px;line-height:1.45;color:var(--muted)}.salon-event-feed .event-price{margin-right:18px}.salon-event-feed .salon-item-heart{top:18px;bottom:auto}
.salon-detail-panel{position:absolute;z-index:8;left:0;right:0;bottom:0;padding:28px 25px;background:rgba(10,10,10,.88);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);border-top:1px solid rgba(190,158,92,.4)}.salon-detail-panel h2{font-size:30px;margin:0 50px 12px 0}.salon-detail-panel p{color:var(--muted);font-size:18px;line-height:1.45;margin-bottom:20px}.salon-detail-panel .primary{border-radius:0}
@media(max-width:390px){.favorites-page{padding-left:14px;padding-right:14px}.favorites-page .tile,.salon-grid .tile{height:210px}.favorites-page .title{font-size:41px}.detail-copy h1{font-size:33px}.detail-copy p{font-size:17px}.event-detail-head h1{font-size:34px}.salon-tabs button{font-size:10px}}

/* Gestion : véritable QR code du salon. */
.mg-qr-overlay{align-items:flex-start;padding-top:52px;overflow:auto}
.mg-qr-card{text-align:center;background:#fff;color:#151515;border:0;border-radius:4px;padding:34px 24px 28px;max-height:none}
.mg-qr-card h2{margin:7px 0 12px}.mg-qr-card .eyebrow{color:var(--gold)}
.mg-qr-loading{min-height:360px;display:grid;place-content:center;justify-items:center;color:#666}.mg-qr-loading[hidden]{display:none}
.mg-qr-image{display:block;width:min(440px,100%);height:auto;object-fit:contain;margin:12px auto 22px;background:#fff}
.mg-qr-image[hidden]{display:none}
.mg-qr-error{margin:25px 0;padding:22px;color:#666;border:1px solid #d5d5d5}.mg-qr-error[hidden]{display:none}
.mg-qr-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}.mg-qr-actions[hidden]{display:none}
.mg-qr-actions .secondary{background:#1d1d1d;color:#fff;border:1px solid var(--gold);border-radius:14px;font-size:13px}
.mg-qr-close{display:block;margin:26px 0 0 auto;border:0;background:none;color:#087f73;font-weight:800;font-size:16px;padding:12px}
.mg-print-frame{position:fixed;width:1px;height:1px;opacity:0;pointer-events:none}
@media(max-width:390px){.mg-qr-overlay{padding:28px 14px 18px}.mg-qr-card{padding:26px 16px 22px}.mg-qr-actions{gap:7px}.mg-qr-actions .secondary{font-size:11px}}

/* Gestion : éditeurs complets calés sur l'application Android. */
.mg-editor{padding-bottom:55px}.mg-editor .mg-form{gap:13px}.mg-editor .mg-form>label{display:block;color:var(--ivory);font-size:13px}.mg-editor .mg-form>label>span{display:block;color:var(--gold);font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin:0 2px 7px}.mg-editor .field{margin:0;height:54px;border-radius:12px;background:#171717}.mg-editor textarea.field{height:auto;min-height:112px;padding-top:15px;resize:vertical}.mg-editor select.field{appearance:auto;padding-right:10px}.mg-form-section{margin:18px 0 0;padding:13px 0 6px;border-top:1px solid #3c3427;color:var(--gold);font-weight:900;font-size:12px;letter-spacing:.12em}.mg-image-field{position:relative;border:1px solid var(--gold);border-radius:14px;padding:13px!important;text-align:center;background:#171717;overflow:hidden}.mg-image-field input{position:absolute;inset:0;opacity:0;cursor:pointer}.mg-image-field b{display:block;color:var(--gold);padding:15px 5px;font-size:13px}.mg-image-preview,.mg-image-new{display:block;width:120px;height:213px;object-fit:cover;margin:9px auto;border:1px solid #4d432f}.mg-image-new[hidden]{display:none}.mg-recurring-day{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:6px;align-items:center;padding:8px;border:1px solid #39332a;border-radius:12px;margin:7px 0}.mg-recurring-day .field{height:46px;padding:0 7px}.mg-recurring-day .mg-check{font-size:11px!important}.mg-editor-actions{display:grid;gap:10px;margin-top:22px}.mg-editor-actions .primary,.mg-editor-actions .secondary{border-radius:13px}.mg-delete{min-height:52px;border:1px solid #7f3434;border-radius:13px;background:#241313;color:#ff8787;font-weight:850}.mg-editor button:disabled{opacity:.55}.mg-editor #mgExactEvent[hidden],.mg-editor #mgRecurringEvent[hidden]{display:none}
@media(max-width:390px){.mg-editor{padding-left:14px;padding-right:14px}.mg-recurring-day{grid-template-columns:1fr 88px 88px}.mg-recurring-day .field{font-size:12px}}

/* Gestion : mode client intégré et déconnexion sur l'accueil. */
.mg-home{padding-bottom:34px}.mg-account-logout{width:100%;min-height:56px;display:block!important;visibility:visible!important;margin:28px 0 0;border-color:#66583d;color:var(--ivory)}.mg-client-mode{padding-top:8px;padding-bottom:50px}.mg-client-back{height:45px;display:flex;align-items:center;margin-bottom:3px}.mg-client-mode .priv-grid{margin-top:14px}.mg-client-mode .discover-link{margin:17px 0 6px;text-align:left}.mg-client-reco-title{margin-top:30px}.mg-client-mode .recommendation{margin-top:13px}

/* Neutralise le retour/rechargement déclenché par les gestes de bord du navigateur. */
html,body,.app{overscroll-behavior-x:none;overscroll-behavior-y:none}
.reco-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.reco-heading .eyebrow{display:flex;align-items:center}.reco-info{flex:0 0 44px;width:44px;height:44px;border:0;background:transparent;color:var(--gold);font-size:22px;display:grid;place-items:center}.reco-info-card p{color:var(--muted);font-size:16px;line-height:1.5;margin:16px 0 25px}.reco-info-card .primary{border-radius:14px}

/* Accueil Inspirations : navigation visible et installation Android. */
.discovery-arrow{position:absolute;z-index:18;top:47%;transform:translateY(-50%);width:54px;height:82px;border:0;background:transparent;color:#fff;font-size:66px;font-weight:200;line-height:1;text-shadow:0 2px 12px #000}.discovery-arrow.previous{left:2px;animation:discoveryArrowLeft 1.35s ease-in-out infinite}.discovery-arrow.next{right:2px;animation:discoveryArrowRight 1.35s ease-in-out infinite}.inspiration-actions{position:absolute;z-index:24;right:18px;bottom:31px;display:flex;flex-direction:column;align-items:center;gap:10px}.inspiration-actions .heart{position:static}.install-app{width:52px;height:52px;padding:0;border:1px solid rgba(238,236,231,.45);border-radius:15px;background:rgba(12,12,12,.78);color:var(--gold);display:grid;place-items:center;font-size:12px;font-weight:900;letter-spacing:.08em;opacity:1;transition:.2s}.install-app.install-ready{border-color:var(--gold);box-shadow:0 0 14px rgba(190,158,92,.3)}.install-app.installed{opacity:.65}@keyframes discoveryArrowLeft{0%,100%{transform:translate(4px,-50%);opacity:.48}50%{transform:translate(-3px,-50%);opacity:1}}@keyframes discoveryArrowRight{0%,100%{transform:translate(-4px,-50%);opacity:.48}50%{transform:translate(3px,-50%);opacity:1}}
.install-app.install-waiting{animation:installPulse .65s ease-in-out infinite alternate}.install-help-card p{color:var(--muted);font-size:16px;line-height:1.5;margin:16px 0 25px}@keyframes installPulse{to{transform:scale(.92);color:#fff}}


/* Actions de gestion. */
.mg-home-heading{text-align:center;margin-bottom:18px}

.discovery .tab:focus-visible{outline:2px solid var(--ivory);outline-offset:2px}

/* Présentation de Priviboost, au-dessus du favori de l’inspiration. */
.inspiration-info{width:52px;height:44px;display:grid;place-items:center;color:var(--ivory);background:transparent;text-decoration:none;font-size:30px;line-height:1;text-shadow:0 1px 3px #000,0 0 6px #000}
.inspiration-info:hover{color:var(--gold)}
.inspiration-info:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:8px}



/* Symbole d'énergie : pulsation contenue, sans projection ni explosion. */
.inspiration-info{width:52px;height:52px;overflow:visible}
.inspiration-info img{display:block;width:44px;height:44px;object-fit:contain;transform-origin:center;will-change:transform,filter;animation:energieDouce 2.4s ease-in-out infinite}
@keyframes energieDouce{
  0%,100%{transform:scale(.94);filter:brightness(.92) drop-shadow(0 0 2px rgba(235,184,69,.35))}
  50%{transform:scale(1.04);filter:brightness(1.14) drop-shadow(0 0 7px rgba(245,190,63,.72))}
}
@media (prefers-reduced-motion:reduce){.inspiration-info img{animation:none;filter:drop-shadow(0 0 4px rgba(235,184,69,.5))}}


/* Mode client : même couleur pour les trois libellés de privilège. */
.dashboard .priv small,.mg-client-mode .priv small{color:#fff}
.discovery.tabs-hidden .tabs{visibility:hidden;opacity:0;pointer-events:none}
.discovery .hero-info h1{cursor:pointer}
.discovery .hero-shade{pointer-events:none}
/* Sur ordinateur, le cadre portrait dépend de la hauteur disponible. */
@media (min-width:761px) and (pointer:fine){
  :root{--desktop-app-width:min(760px,100vw,calc((100dvh - var(--navh) - env(safe-area-inset-bottom)) * .5625))}
  body{width:var(--desktop-app-width);max-width:var(--desktop-app-width)}
  .bottom-nav,.overlay,.filter-sheet{width:var(--desktop-app-width)}
  .hero-img,.detail-image,.salon-feed>img{object-fit:contain;object-position:center;background:#080808}
  .bottom-nav{grid-template-columns:1fr 1fr 92px 1fr 1fr}
  .scan-nav{width:92px}
}


/* Salon : onglets compacts, superposés aux prestations et produits. */
.salon-page{position:relative}
.salon-tabs{height:72px;padding:8px;gap:5px;position:relative;z-index:20}
.salon-tabs button{border-radius:10px;gap:3px;font-size:10px;background:rgba(20,20,20,.82)}
.salon-tabs button b,.salon-tabs .salon-identity b{font-size:20px}
.salon-content{height:calc(100% - 72px)}
.salon-media .salon-tabs{position:absolute;inset:0 0 auto;background:transparent}
.salon-media .salon-content{height:100%}
.salon-tabs-hidden .salon-tabs{visibility:hidden;opacity:0;pointer-events:none}
.salon-feed-shade{pointer-events:none}
.salon-feed h1{cursor:pointer}
.adventure-info{margin:0 auto 18px}
.detail-heart{position:absolute;z-index:10;top:18px;left:18px;width:48px;height:48px;border:1px solid #555;border-radius:12px;background:rgba(12,12,12,.7);color:#fff;font-size:30px}
.heart.on,.salon-heart.on,.salon-item-heart.on,.detail-favorite.on,.detail-heart.on{color:#ff174c}

/* Clients conserve sa place et les dimensions des autres cartes. */
.mg-tile.mg-clients-tile{border-color:#ebcc87;background:linear-gradient(120deg,#efd398,#be9e5c);color:#17130b;box-shadow:0 6px 22px rgba(190,158,92,.16)}
.mg-clients-tile:focus-visible{outline:3px solid #fff;outline-offset:4px}
.desktop-only-arrow{display:none}

/* Bureau : photo entière, contenu et navigation dans deux zones distinctes. */
@media (min-width:761px) and (pointer:fine){
 :root{--navh:100px}
 body{height:100dvh;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) calc(var(--navh) + env(safe-area-inset-bottom));overflow:hidden}
 .app{height:100%;min-height:0;min-width:0}
 .bottom-nav{position:relative;left:auto;bottom:auto;transform:none;width:100%;height:100%;min-width:0;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px 2px env(safe-area-inset-bottom)}
 .bottom-nav .nav-item{min-width:0;padding:0 1px;font-size:clamp(8px,1.2vh,12px)}
 .bottom-nav .scan-nav{width:100%;height:80px;margin-top:0}
 .bottom-nav .scan-design{width:100%;height:auto;max-height:80px}
 .hero-img,.detail-image,.salon-feed>img{object-fit:contain;object-position:center}
 .hero-info{left:16px;right:76px;bottom:20px;max-height:calc(100% - 110px);overflow:auto}
 .detail-copy{left:18px;right:18px;bottom:22px;max-height:calc(100% - 110px);overflow:auto}
 .salon-feed-copy{left:18px;right:85px;bottom:22px;max-height:calc(100% - 110px);overflow:auto}
 .hero-info h1,.detail-copy h1,.salon-feed-copy h1{font-size:clamp(20px,3.6vh,32px);overflow-wrap:anywhere}
 .detail-copy p,.salon-feed-copy p{font-size:clamp(14px,2.1vh,18px)}
 .inspiration-panel,.salon-detail-panel{max-height:calc(100% - 84px);overflow:auto}
 .discovery-arrow,.salon-arrow{display:block;animation:none;opacity:1}
}

.mg-clients-tile>span{display:grid;place-items:center;width:48px;height:48px}
.mg-clients-tile .mg-clients-icon{display:block;width:38px;height:38px;fill:none;stroke:#292116;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

.mg-tile .mg-client-mode-icon{display:block;width:38px;height:38px;fill:none;stroke:var(--gold);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

/* Accès au concept depuis Aventure. */
.adventure-concept{display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;margin-top:26px;padding:14px 20px;border:1px solid #e8ca8a;border-radius:16px;background:linear-gradient(120deg,#efd398,#be9e5c);color:#17130b;font-size:16px;font-weight:800;text-decoration:none}
.adventure-concept:focus-visible{outline:3px solid #fff;outline-offset:4px}

/* Quatre filtres cumulables pour les inspirations. */
.inspiration-filter{max-height:calc(100dvh - var(--navh) - env(safe-area-inset-bottom) - 12px);overflow-y:auto}
.inspiration-filter label{display:block;color:var(--gold);font-size:12px;font-weight:700;margin:4px 0 7px}
.inspiration-filter input{box-sizing:border-box;width:100%;min-height:50px;background:#222;color:var(--ivory);border:1px solid #444;border-radius:12px;padding:0 12px;font:inherit}
.inspiration-filter input::placeholder{color:var(--muted);opacity:1}
.inspiration-filter small{display:block;color:var(--muted);font-size:12px;line-height:1.4;margin:8px 0 18px}
.inspiration-filter input:focus-visible,.inspiration-filter select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

.inspiration-filter #salonFilter{margin-bottom:18px}
.discovery-empty{height:100%;overflow:auto;padding:100px 24px 30px}
.discovery-empty>div{width:100%;max-width:420px;margin:auto;overflow-wrap:anywhere}
.discovery-empty p{line-height:1.5}
.discovery-empty button{margin-top:14px}

/* Filtres flottants : laisser la photo accessible autour du panneau. */
.filter-sheet{
  top:calc((100dvh - var(--navh) - env(safe-area-inset-bottom)) / 2);
  bottom:auto;transform:translate(-50%,-50%);
  width:calc(min(100vw,760px) - 32px);
  max-height:calc(100dvh - var(--navh) - env(safe-area-inset-bottom) - 100px);
  overflow-y:auto;overscroll-behavior:contain;
  border:1px solid #5b4c31;border-radius:22px;
  background:rgba(21,21,21,.96);box-shadow:0 14px 40px rgba(0,0,0,.45);
}
.filter-sheet h3{padding-right:36px}
.filter-close{position:absolute;right:12px;top:10px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ivory);font-size:28px;cursor:pointer}
.filter-close:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media(min-width:761px) and (pointer:fine){
  .filter-sheet{width:calc(var(--desktop-app-width) - 32px)}
}

/* Pictogramme de filtre des onglets Accueil. */
.tabs .discovery-filter-icon{display:inline-block;width:17px;height:17px;margin-left:5px;vertical-align:-3px;flex-shrink:0}

/* Laisser la photo seule derrière le panneau de filtres. */
body:has(.filter-sheet) .discovery :is(.tabs,.hero-info,.inspiration-actions,.discovery-arrow,.inspiration-panel){
  visibility:hidden;
  opacity:0;
  pointer-events:none;
}

/* Filtres compacts : les champs portent directement leurs indications. */
.filter-sheet{padding:46px 16px 16px}
.filter-sheet select,.inspiration-filter input{height:44px;min-height:44px;margin:0 0 8px}
.inspiration-filter #salonFilter{margin-bottom:10px}
.filter-sheet .primary{min-height:44px;padding:12px;margin:0}


/* État et actions des filtres. */
.tabs .discovery-filter-icon.filters-active{color:#fff}
.home-search-trigger .discovery-filter-icon.filters-active{color:var(--gold);animation:goldFilterBeat 1.35s ease-in-out infinite}
@keyframes goldFilterBeat{0%,100%{filter:drop-shadow(0 0 1px rgba(190,158,92,.35));transform:scale(1)}50%{filter:drop-shadow(0 0 9px rgba(190,158,92,.95));transform:scale(1.12)}}
.first-inspiration-message{position:absolute;z-index:12;left:32px;right:32px;top:50%;transform:translateY(-50%);margin:0;color:#fff;text-align:center;font-size:clamp(22px,7vw,34px);font-weight:850;line-height:1.12;text-shadow:0 2px 15px #000,0 0 5px #000}
.discovery-filter-close{position:relative;display:block!important;width:30px!important;height:30px!important;min-width:30px;margin-left:6px;border:1px solid #d8bd7d;border-radius:50%;background:linear-gradient(145deg,#d8bd7d,#ad8b48);color:#171717;font-size:0!important;box-shadow:0 2px 8px #0005,0 0 0 2px rgba(216,189,125,.18);transition:transform .14s ease,box-shadow .14s ease}.discovery-filter-close::before,.discovery-filter-close::after{content:'';position:absolute;left:7px;top:14px;width:14px;height:2px;border-radius:2px;background:#171717}.discovery-filter-close::before{transform:rotate(45deg)}.discovery-filter-close::after{transform:rotate(-45deg)}.home-search-trigger:hover .discovery-filter-close,.home-search-trigger:focus-visible .discovery-filter-close{transform:scale(1.08);box-shadow:0 3px 10px #0007,0 0 0 3px rgba(216,189,125,.25)}
.inspiration-feed-ad{min-height:100%;display:grid;place-items:center;padding:18px}
.appointment-waitlist{overflow:auto}.waitlist-times{display:grid;grid-template-columns:1fr 1fr;gap:10px}.waitlist-days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.waitlist-days label{display:flex;gap:5px;align-items:center}.waitlist-card{display:grid;gap:7px;margin:12px 0;padding:16px;border:1px solid rgba(190,158,92,.45);border-radius:14px;background:#151515}.waitlist-card span,.waitlist-card small{color:var(--muted)}
@media(max-width:759px){.home-search-trigger{position:relative;text-transform:none!important;text-align:left!important;justify-content:space-between!important;padding:8px 12px!important;background:#fff!important;color:#171717!important}.home-search-trigger span{display:block;font-size:10px;line-height:1.15;font-weight:600}.home-search-trigger span b{display:block;font-size:12px;margin-top:2px}.home-search-trigger .discovery-filter-icon{color:#171717}}
@media(min-width:760px){.home-search-trigger span{font-size:0}.home-search-trigger span b{display:inline;font-size:0}.home-search-trigger span b::before{content:'INSPIRATIONS';font-size:14px}.first-inspiration-message{display:none}}
.filter-sheet{padding:16px}
.filter-sheet .filter-reset{width:100%;min-height:44px;margin-top:8px;padding:10px}


/* Partager la prestation : flèche incurvée au-dessus du cœur. */
.service-share{width:48px;height:48px;border:1px solid rgba(238,236,231,.4);border-radius:14px;background:rgba(15,15,15,.76);color:#eeece7;display:grid;place-items:center;padding:10px;cursor:pointer;z-index:24}
.service-share svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.service-share:disabled{opacity:.45;cursor:wait}.service-share:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.prestation-detail>.service-share{position:absolute;left:76px;top:18px}
.prestation-detail>.detail-heart{top:18px}
.salon-service-feed>.service-share{position:absolute;right:33px;bottom:109px}
.service-share-dialog .field{width:100%}.service-share-dialog button{margin-top:12px;width:100%}


/* Flèches seules : même style pour prestations et événements. */
.service-share{border:0;border-radius:0;background:transparent;box-shadow:none;filter:drop-shadow(0 1px 3px rgba(0,0,0,.65))}
.event-book-share{display:flex;align-items:center;gap:12px}.event-book-share>.primary{flex:1;min-width:0}.event-book-share>.service-share{flex:0 0 48px}
.event-detail-head>.service-share{position:absolute;right:62px;top:-12px}
.salon-event-feed>.service-share{position:absolute;right:102px;top:27px}


/* Affiche salon : cadre sobre et commandes regroupées. */
.mg-qr-overlay{padding-top:22px;padding-bottom:22px;align-items:center}
.mg-qr-card{border-radius:22px;padding:22px 20px;background:#f9f7f1;border:1px solid #d6c6a3;box-shadow:0 18px 50px #0005;max-height:100%;overflow:auto}
.mg-qr-card h2{font-size:22px;margin:6px 0 12px}
.mg-qr-image{margin:10px auto 18px;background:#f9f7f1}
.mg-qr-close{margin:12px auto 0;color:#514530;font-size:13px;letter-spacing:.05em}

.waiting-privileges .waiting-privileges-intro{color:var(--muted);font-size:15px;line-height:1.5;margin:0 0 20px}


/* Titre et partage alignés, quelle que soit la longueur de la coiffure. */
.discovery .hero-info{right:18px}
.discovery .inspiration-title-row{display:flex;align-items:center;gap:12px;margin-bottom:14px;min-height:48px}
.discovery .inspiration-title-row h1{flex:1;min-width:0;margin:0;overflow-wrap:anywhere}
.discovery .inspiration-title-row .service-share{flex:0 0 48px}
.discovery .hero-info>.home-inspiration-description{max-width:calc(100% - 60px)}
.discovery .hero-info>.look-booking-button{max-width:calc(100% - 60px)}
.appointment-image-link{display:inline-flex;align-items:center;gap:12px;color:var(--gold);margin:10px 0;overflow-wrap:anywhere}
.appointment-image-link img{width:64px;height:84px;object-fit:cover;border-radius:8px}
.calendar-connect-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.calendar-connect-actions button{flex:1;min-width:180px;padding:12px}

.client-today-appointments{margin:18px 0}
.client-today-appointments h2{font-size:18px;margin:0 0 12px;color:var(--ivory)}
.client-today-appointment{padding:18px;margin:10px 0;border:1px solid #51452d;border-radius:16px;background:var(--panel)}
.client-appointment-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--gold)}
.client-appointment-heading strong{font-size:21px}
.client-appointment-heading span{font-size:12px}
.client-today-appointment h3{font-size:16px;margin:12px 0 6px;overflow-wrap:anywhere}
.client-today-appointment p{margin:5px 0;font-size:14px;overflow-wrap:anywhere}

/* Owner additions: one action in each content tab, none on the salon home. */
.salon-owner-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}
.salon-owner-add{border:1px solid var(--gold);border-radius:10px;padding:12px 15px;background:#211c13;color:#f2d99e;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.salon-owner-add:focus-visible{outline:2px solid #fff;outline-offset:3px}
.salon-owner-add:disabled{opacity:.5;cursor:wait}
.salon-owner-inline{display:flex;align-items:center;gap:12px}
.salon-owner-inline>.look-booking-button,.salon-owner-inline>.discover-link{min-width:0}
.salon-owner-plus{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0;border-radius:50%;font-size:28px;line-height:1}
.salon-event-owner-actions{position:absolute;right:102px;top:27px;display:flex;align-items:center;gap:8px;z-index:24}
.salon-event-owner-actions>.service-share{position:static;flex:0 0 48px}
.salon-owner-empty{height:100%;min-height:0;padding:90px 22px 22px;text-align:center}
.salon-owner-empty h2{font-size:21px;line-height:1.4}
.salon-owner-empty p{color:var(--muted)}

/* Align the owner's add action with the salon look booking button. */
.salon-service-feed .salon-owner-inline{align-items:center;gap:0;margin-top:12px}
.salon-service-feed .salon-owner-inline>.look-booking-button{margin-top:0}
.salon-service-feed .salon-owner-inline>.salon-owner-plus{flex:0 0 46px;width:46px;height:46px;margin:0 0 0 15px;border-radius:10px}

/* Personal privileges and public events share a single navigation section. */
.privileges-page>.privileges-tabs{position:sticky;top:0;z-index:20;background:#0c0c0c}
.privileges-tabs{display:flex;align-items:center}
.privileges-tabs>.tab{flex:1;min-width:0;font-size:clamp(11px,3vw,16px)}
.privileges-page .dashboard{padding:22px 16px}
.privileges-page .priv small{color:#fff}

/* Full-width events: the first tab and booking action share a left edge. */
.discovery.privileges-event-page{--event-inset:clamp(40px,5vw,56px);position:relative}
.discovery.privileges-event-page>.privileges-tabs{position:absolute;top:0;left:0;right:0;padding:14px var(--event-inset);gap:14px;background:transparent;z-index:25}
.discovery.privileges-event-page>.privileges-tabs>.tab{padding-left:0;padding-right:0;text-align:left;justify-content:flex-start}
.discovery.privileges-event-page #discoveryBody{height:100%}
.discovery.privileges-event-page .event-page{width:100%;height:100%;padding:0;overflow:auto}
.discovery.privileges-event-page .event-card{box-sizing:border-box;width:100%;max-width:none;min-height:100%;margin:0;padding:94px var(--event-inset) 30px;border:0;border-radius:0;background:linear-gradient(180deg,#51412b 0%,#29251f 40%,#111110 75%,#080808 100%);display:flex;flex-direction:column}
.discovery.privileges-event-page .event-intro{text-align:left;margin:0 0 28px;padding:0;color:#d2c6b1;font-size:13px;line-height:1.5}
.discovery.privileges-event-page .event-card>.heart{top:77px!important;right:12px}
.discovery.privileges-event-page .event-card h2{max-width:100%;overflow-wrap:anywhere}
.discovery.privileges-event-page .event-detail{white-space:pre-wrap;overflow-wrap:anywhere;flex:1}
.discovery.privileges-event-page .event-book-share{margin-top:16px;flex-shrink:0;align-items:center}
.discovery.privileges-event-page .event-book-share>[data-book]{text-align:left}
.discovery.privileges-event-page .discovery-arrow.event-navigation{position:absolute;top:50%;width:32px;height:62px;font-size:44px;background:transparent;border:0;z-index:20}
.discovery.privileges-event-page .discovery-arrow.previous{left:2px;right:auto}
.discovery.privileges-event-page .discovery-arrow.next{right:2px;left:auto}
.privileges-page{position:relative}
.privileges-page>.privileges-tabs{position:absolute;top:0;left:0;right:0;background:transparent;z-index:25}
.privileges-page .dashboard{padding-top:90px}
@media(prefers-reduced-motion:reduce){.discovery.privileges-event-page .event-navigation{animation:none}}

/* Keep desktop navigation available on every event, including narrow windows. */
@media (any-hover:hover) and (any-pointer:fine){
 .discovery.privileges-event-page .event-navigation,
 .discovery.privileges-event-page .event-navigation.desktop-only-arrow{display:block;visibility:visible;opacity:1;animation:none;pointer-events:auto}
}
.privileges-page .privileges-points-summary{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;border:0;background:transparent;color:inherit;padding:6px 0;cursor:pointer;text-align:center}
.privileges-page .privileges-points-card #privilegesPoints{width:100%;max-width:100%;margin:8px 0 0;padding:8px 0 0;border:0;border-top:1px solid #6e5b3766;background:transparent;font-size:10px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;text-align:center;cursor:pointer}
.privileges-page .privileges-points-summary:focus-visible,.privileges-page #privilegesPoints:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.privileges-tabs>.tab,.discovery.privileges-event-page>.privileges-tabs>.tab{ text-align:center;justify-content:center }
.discovery.privileges-event-page .event-book-share>[data-book]{text-align:center;justify-content:center}

/* Event filters float over the visible card; only background controls disappear. */
.discovery.privileges-event-page .event-card>.heart{right:var(--event-inset)}
.event-filter{position:fixed;z-index:100}
body:has(.event-filter) .discovery.privileges-event-page button{visibility:hidden!important;opacity:0!important;pointer-events:none!important}

/* Spacing shared by administrator and professional management screens. */
#collabBody>#newCollab,
#collabBody>#attachCollab,
#collabBody>#archiveCollab{display:block;width:100%;margin-top:15px}
#planningBody>#calendarConnections{margin-bottom:20px}

#salonLookup{min-width:0}#salonFilterResults{max-height:230px;overflow:auto;text-align:left;font-size:14px}
#salonFilterResults:empty{display:none}#salonFilterResults p{margin:10px 0}
#salonFilterResults .salon-filter-result{display:block;width:100%;margin:6px 0;padding:12px;border:1px solid #6d5b38;border-radius:9px;background:#24211b;color:#fff;text-align:left;white-space:normal}


/* Événements : défilement sans bande latérale et espace réservé au favori. */
.discovery.privileges-event-page .event-page{overflow-x:hidden;overflow-y:auto;scrollbar-width:none;scrollbar-gutter:auto}
.discovery.privileges-event-page .event-page::-webkit-scrollbar{display:none;width:0;height:0}
.discovery.privileges-event-page .event-intro{padding-right:60px;min-height:44px;overflow-wrap:anywhere}
.discovery.privileges-event-page .event-card>.heart{top:88px!important;width:44px;height:44px;line-height:1}


/* Public privileges and client-only invitations. */
.privilege-creator-actions{display:grid;gap:10px;margin-bottom:24px}
.privilege-workflow{padding:24px 22px 40px;max-width:900px;margin:auto}
.privilege-workflow h1{font-size:28px;overflow-wrap:anywhere}
.privilege-workflow .privilege-back{width:auto;padding:10px 18px;min-height:44px}
.privilege-workflow fieldset{border:1px solid #51452d;border-radius:14px;padding:16px;margin:16px 0}
.privilege-workflow [hidden]{display:none!important}
.privilege-workflow .privilege-choice{display:flex;align-items:center;gap:12px;padding:10px 0;line-height:1.5}
.privilege-choice input,.privilege-client input{flex:none;width:22px;height:22px;accent-color:var(--gold)}
.privilege-client-list{max-height:360px;overflow:auto;margin:14px 0;border:1px solid #51452d;border-radius:12px}
.privilege-workflow .privilege-client{display:flex;gap:12px;align-items:center;padding:12px;border-bottom:1px solid #333;cursor:pointer}
.privilege-client span{min-width:0}.privilege-client strong,.privilege-client small{display:block;overflow-wrap:anywhere}
.privilege-client small{color:var(--muted);margin-top:4px}
.privilege-selection-actions{display:flex;flex-wrap:wrap;gap:8px}.privilege-selection-actions button{flex:1;min-width:120px;width:auto;padding:10px;font-size:12px}
.privilege-capacity-note{padding:15px;border:1px solid var(--gold);border-radius:12px;color:var(--ivory);line-height:1.6}
.privilege-workflow input[readonly]{border-color:var(--gold);color:var(--gold)}
.privilege-workflow form>.primary,.privilege-workflow form>.secondary{margin-top:12px}
.privilege-ribbon{display:block;width:fit-content;max-width:100%;padding:7px 12px;margin:10px 0;background:var(--gold);color:#0c0c0c;font-size:11px;font-weight:850;letter-spacing:.05em;border-radius:4px;line-height:1.5;overflow-wrap:anywhere}
.tile .privilege-ribbon{font-size:9px;padding:3px 6px;margin:0 0 5px}
.privilege-created{padding:18px;border:1px solid #51452d;border-radius:16px;margin:18px 0;overflow-wrap:anywhere}
.privilege-created h2{font-size:22px}.privilege-created p{line-height:1.6}

.privilege-schedule{white-space:pre-line;line-height:1.6}

/* A warm inverted-L panel separates personal privileges from events. */
.privilege-creator-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.privilege-creator-actions>.secondary{min-width:0;min-height:48px;padding:10px 8px;font-size:12px;font-weight:600;letter-spacing:0;line-height:1.4;background:#171717;border-color:#51452d}
.privilege-creator-actions>.secondary:hover{background:#222018}
.privilege-creator-actions>.secondary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.privileges-controls-frame{margin:14px 16px 0;--privilege-panel:#292319;--privilege-edge:#8b7447}
.privileges-controls-frame>.privileges-tabs{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;gap:12px;background:none;align-items:stretch}
.privileges-controls-frame>.privileges-tabs>.tab{height:auto;min-height:64px}
.privileges-controls-frame>.privileges-tabs>#privilegesEvents{margin:0 0 12px;min-height:52px;border:1px solid var(--gold);background:#0c0c0c}
.privileges-controls-frame>.privileges-tabs>#tabPrivileges{margin:0;padding:10px;border:1px solid var(--privilege-edge);border-bottom:0;border-radius:16px 16px 0 0;background:var(--privilege-panel);color:var(--ivory);box-shadow:inset 0 2px 0 #be9e5c40}
.privileges-controls-frame>.privilege-creator-actions{position:relative;margin:0;padding:16px 12px;border:1px solid var(--privilege-edge);border-top:0;border-radius:0 0 16px 16px;background:linear-gradient(180deg,var(--privilege-panel),#201c15);box-shadow:0 8px 18px #00000030}
.privileges-controls-frame>.privilege-creator-actions:before{content:"";position:absolute;top:0;left:-1px;width:calc(50% + 6px);border-top:1px solid var(--privilege-edge);pointer-events:none}
.privileges-controls-frame>.privilege-creator-actions>.secondary{background:#151411;border-color:#665536;color:var(--ivory)}
.privileges-controls-frame>.privilege-creator-actions>.secondary:hover{background:#353023;border-color:var(--gold)}
.privileges-controls-frame button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.privileges-page>.privileges-controls-frame+.dashboard{padding-top:18px}
.privilege-workflow .privilege-client-search{display:block;margin-bottom:22px}
.privilege-workflow .privilege-client-search>.field{margin-bottom:0}


/* Larger search/filter symbol: preserve full-width strokes inside the lens. */
.tabs :is(#tabInspi,#tabEvent){display:flex;align-items:center;justify-content:center;gap:8px;line-height:1.2}
.tabs :is(#tabInspi,#tabEvent) .discovery-filter-icon.discovery-search-filter{display:block;width:26px;height:26px;margin:0;flex:0 0 26px}

