:root{
  --tools-bg:#09090f;
  --tools-panel:#12121b;
  --tools-panel-2:#171725;
  --tools-line:rgba(255,255,255,.09);
  --tools-line-strong:rgba(146,122,255,.28);
  --tools-text:#f6f3fb;
  --tools-muted:#aaa6b5;
  --tools-violet:#8f73ff;
  --tools-violet-2:#6f56d9;
  --tools-blue:#6bb7ff;
  --tools-green:#65d3a5;
  --tools-red:#ff7d86;
  --tools-shadow:0 18px 50px rgba(0,0,0,.24);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 82% 5%,rgba(97,64,177,.16),transparent 29%),
    radial-gradient(circle at 8% 38%,rgba(36,117,150,.08),transparent 24%),
    var(--tools-bg);
  color:var(--tools-text);
  font:15px/1.55 Arial,sans-serif
}
button,input{font:inherit}
button{cursor:pointer}
.tools-wrap{width:min(1380px,calc(100% - 34px));margin:auto}
.catalogue{padding:34px 0 40px}

.eyebrow{
  color:#b4a5ff;
  font-size:.69rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase
}
.section-head{margin-bottom:18px}
.section-head>div{max-width:880px}
.section-head h2{
  margin:6px 0 8px;
  font-size:clamp(2rem,3.8vw,3.4rem);
  line-height:1;
  letter-spacing:-.05em
}
.section-head p{
  margin:0;
  color:var(--tools-muted);
  max-width:760px;
  font-size:.94rem
}

.tools-navigation-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px
}
.tools-tabs{
  display:flex;
  gap:7px;
  overflow-x:auto;
  scrollbar-width:none
}
.tools-tabs::-webkit-scrollbar{display:none}
.tools-tab{
  flex:0 0 auto;
  min-height:42px;
  padding:9px 15px;
  border:1px solid var(--tools-line);
  border-radius:12px;
  background:rgba(255,255,255,.035);
  color:#b8b3c2;
  font-weight:850
}
.tools-tab:hover{border-color:rgba(143,115,255,.36);color:#fff}
.tools-tab.active{
  background:linear-gradient(145deg,rgba(126,101,220,.28),rgba(87,68,153,.18));
  border-color:rgba(143,115,255,.52);
  color:#fff;
  box-shadow:0 8px 24px rgba(34,20,71,.18)
}

.tools-control-bar{
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.6fr);
  gap:12px;
  align-items:end;
  margin:0 0 10px;
  padding:12px;
  border:1px solid var(--tools-line);
  border-radius:16px;
  background:rgba(255,255,255,.026)
}
.tools-search{
  display:grid;
  gap:5px
}
.tools-search>span{
  color:#8f8a99;
  font-size:.67rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase
}
.tools-search input{
  width:100%;
  min-height:42px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:11px;
  outline:none;
  background:#0e0e16;
  color:#fff
}
.tools-search input::placeholder{color:#75717f}
.tools-search input:focus{
  border-color:rgba(143,115,255,.62);
  box-shadow:0 0 0 3px rgba(143,115,255,.11)
}

.tools-category-tabs{
  display:flex;
  gap:7px;
  overflow-x:auto;
  scrollbar-width:none
}
.tools-category-tabs::-webkit-scrollbar{display:none}
.tools-category-tab{
  flex:0 0 auto;
  min-height:42px;
  padding:9px 13px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:11px;
  background:rgba(255,255,255,.025);
  color:#9f9aa9;
  font-weight:800
}
.tools-category-tab:hover{
  border-color:rgba(143,115,255,.32);
  color:#fff
}
.tools-category-tab.active{
  color:#fff;
  background:linear-gradient(145deg,rgba(112,86,217,.34),rgba(69,54,126,.24));
  border-color:rgba(143,115,255,.5)
}
.tools-result-summary{
  min-height:24px;
  margin:3px 0 10px;
  color:#817d8c;
  font-size:.75rem
}

.tools-panel[hidden]{display:none!important}
.tools-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:start
}

.tool-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:18px;
  border:1px solid var(--tools-line);
  border-radius:18px;
  background:
    linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),
    #101018;
  box-shadow:0 14px 34px rgba(0,0,0,.17);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease
}
.tool-card:hover{
  transform:translateY(-2px);
  border-color:rgba(143,115,255,.28);
  box-shadow:0 20px 42px rgba(0,0,0,.23)
}
.tool-card.featured{border-color:rgba(143,115,255,.19)}
.tool-card[hidden]{display:none!important}
.tool-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px
}
.tool-icon,.macos-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  flex:0 0 auto;
  border:1px solid rgba(143,115,255,.24);
  border-radius:13px;
  background:linear-gradient(145deg,rgba(143,115,255,.17),rgba(87,68,153,.09));
  color:#cfc4ff;
  font-size:1.05rem;
  font-weight:900
}
.tool-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 8px;
  border:1px solid rgba(101,211,165,.23);
  border-radius:999px;
  background:rgba(101,211,165,.075);
  color:#7fe0b7;
  font-size:.65rem;
  font-weight:850
}
.tool-status i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#69d5a8
}
.tool-status.muted{
  border-color:var(--tools-line);
  background:rgba(255,255,255,.03);
  color:#8f8a99
}
.tool-category{
  display:block;
  margin-top:14px;
  color:#a99bff;
  font-size:.63rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase
}
.tool-card h3,.macos-empty h3{
  margin:5px 0 8px;
  font-size:1.32rem;
  line-height:1.1;
  letter-spacing:-.02em
}
.tool-card>p{
  min-height:3.9em;
  margin:0 0 10px;
  color:#aaa6b5;
  font-size:.81rem;
  line-height:1.55
}

.tool-card-glance{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:2px 0 10px
}
.tool-card-glance span{
  padding:5px 7px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:8px;
  background:rgba(255,255,255,.025);
  color:#c7c2cf;
  font-size:.67rem;
  line-height:1.3
}

.tool-card-toggle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  width:100%;
  min-height:36px;
  margin:0 0 10px;
  padding:7px 9px;
  border:1px solid rgba(143,115,255,.18);
  border-radius:9px;
  background:rgba(143,115,255,.05);
  color:#c7bfff;
  font-size:.72rem;
  font-weight:850
}
.tool-card-toggle:hover{
  border-color:rgba(143,115,255,.38);
  background:rgba(143,115,255,.085)
}
.tool-card-toggle i{
  font-style:normal;
  transition:transform .18s ease
}
.tool-card.is-expanded .tool-card-toggle i{transform:rotate(180deg)}

.tool-collapsible-content{
  animation:toolOpen .18s ease
}
.tool-card.is-collapsed .tool-collapsible-content{display:none!important}
.tool-card.is-expanded .tool-features,
.tool-card.is-expanded .tool-modes{display:grid}

.tool-features,.tool-modes{
  grid-template-columns:1fr;
  gap:7px;
  margin:0 0 10px
}
.tool-features span,.tool-modes>div{
  padding:8px 9px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:10px;
  background:rgba(255,255,255,.026);
  color:#d9d5df;
  font-size:.73rem
}
.tool-modes>div{display:grid;gap:2px}
.tool-modes strong{font-size:.74rem}
.tool-modes small{color:#96919f;font-size:.67rem}
.tool-modes .pro-mode{
  border-color:rgba(101,211,165,.17);
  background:rgba(101,211,165,.035)
}

.tool-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:auto
}
.tool-actions a,
.account-callout>a,
.commercial-plan>a,
.hero-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:39px;
  padding:9px 12px;
  border-radius:10px;
  text-decoration:none;
  font-size:.75rem;
  font-weight:850;
  transition:transform .16s ease,border-color .16s ease,background .16s ease
}
.primary-action,
.commercial-plan>a.pro-cta{
  color:#fff!important;
  border:1px solid rgba(143,115,255,.46)!important;
  background:linear-gradient(145deg,#755ce2,#5a46b5)!important;
  box-shadow:0 8px 18px rgba(73,50,156,.18)
}
.primary-action:hover,
.commercial-plan>a.pro-cta:hover{
  transform:translateY(-1px);
  background:linear-gradient(145deg,#8368ed,#654fc5)!important
}
.secondary-action,
.commercial-plan>a,
.account-callout>a,
.hero-actions .secondary{
  color:#ece8f4!important;
  border:1px solid rgba(255,255,255,.105)!important;
  background:rgba(255,255,255,.035)!important
}
.secondary-action:hover,
.commercial-plan>a:hover,
.account-callout>a:hover,
.hero-actions .secondary:hover{
  border-color:rgba(143,115,255,.34)!important;
  background:rgba(143,115,255,.07)!important
}
.tool-actions a{flex:1}

.private-tools-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,340px));
  gap:9px;
  margin:0 0 12px
}
.private-tools-strip:empty{display:none}
.owner-private-tool{
  width:100%;
  min-height:0;
  margin:0;
  padding:10px 11px!important;
  border-style:dashed!important;
  background:rgba(143,115,255,.028)!important;
  box-shadow:none!important
}
.owner-private-row{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:9px
}
.owner-private-icon{
  display:grid;
  place-items:center;
  width:32px;height:32px;
  border:1px solid rgba(143,115,255,.18);
  border-radius:9px;
  background:rgba(143,115,255,.08)
}
.owner-private-label{
  display:block;
  color:#858090;
  font-size:.55rem;
  font-weight:900;
  letter-spacing:.08em
}
.owner-private-tool h3{margin:1px 0!important;font-size:.82rem!important}
.owner-private-tool p{min-height:0!important;margin:0!important;font-size:.62rem!important;line-height:1.35!important}
.owner-private-tool a{
  padding:6px 8px;
  border:1px solid rgba(143,115,255,.28);
  border-radius:8px;
  background:rgba(143,115,255,.07);
  color:#d7d0ff;
  text-decoration:none;
  font-size:.62rem;
  font-weight:900
}

.coming{
  min-height:0;
  border-style:dashed;
  opacity:.72
}
.coming p{min-height:auto}
.text-link{
  color:#bfb4ff;
  font-size:.75rem;
  font-weight:800;
  text-decoration:none
}

.macos-empty{
  display:flex;
  align-items:center;
  gap:18px;
  min-height:170px;
  padding:24px;
  border:1px solid var(--tools-line);
  border-radius:18px;
  background:rgba(255,255,255,.03)
}
.macos-empty p{margin:5px 0 10px;color:var(--tools-muted)}

.pricing-commercial{
  padding:0 0 24px
}
.pricing-commercial>.section-head{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:20px;
  align-items:end;
  padding:18px;
  margin-bottom:10px;
  border:1px solid var(--tools-line);
  border-radius:16px;
  background:rgba(255,255,255,.024)
}
.pricing-commercial .section-head h2{
  font-size:1.35rem;
  line-height:1.15;
  letter-spacing:-.02em
}
.pricing-commercial .section-head p{
  font-size:.79rem
}
.pricing-cards{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px
}
.commercial-plan{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:15px;
  border:1px solid var(--tools-line);
  border-radius:15px;
  background:rgba(255,255,255,.028)
}
.commercial-plan.pro{
  border-color:rgba(143,115,255,.28);
  background:rgba(143,115,255,.04)
}
.commercial-badge{
  align-self:flex-start;
  padding:4px 6px;
  border-radius:7px;
  background:rgba(255,255,255,.05);
  color:#928d9b;
  font-size:.56rem;
  font-weight:900;
  letter-spacing:.08em
}
.commercial-badge.recommended{
  background:rgba(143,115,255,.16);
  color:#cfc6ff
}
.commercial-plan h3{margin:8px 0 2px;font-size:1rem}
.commercial-price{display:flex;align-items:baseline;gap:4px}
.commercial-price strong{font-size:1.18rem}
.commercial-price span{color:#8d8896;font-size:.65rem}
.commercial-plan ul{
  display:grid;
  gap:5px;
  list-style:none;
  margin:10px 0 12px;
  padding:0
}
.commercial-plan li{
  position:relative;
  padding-left:14px;
  color:#c3becb;
  font-size:.68rem
}
.commercial-plan li::before{
  content:'•';
  position:absolute;
  left:2px;
  color:#8f73ff
}
.commercial-plan>a{margin-top:auto}

.account-callout{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  margin-bottom:22px;
  padding:18px;
  border:1px solid var(--tools-line);
  border-radius:16px;
  background:rgba(255,255,255,.025)
}
.account-callout h2{margin:4px 0;font-size:1.15rem}
.account-callout p{margin:0;color:#9994a3;font-size:.76rem;max-width:820px}

.tools-hero.mc-secondary-intro{
  width:min(1380px,calc(100% - 34px));
  margin:0 auto 28px!important;
  padding:16px 18px!important;
  border:1px solid var(--tools-line)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.02)!important
}
.tools-hero.mc-secondary-intro .tools-wrap{width:100%}
.tools-hero.mc-secondary-intro h1{
  margin:3px 0 5px!important;
  font-size:1.2rem!important
}
.tools-hero.mc-secondary-intro p{
  margin:0!important;
  color:#8f8a99!important;
  font-size:.74rem!important
}
.hero-actions{margin-top:9px}
.hero-pills{display:flex;flex-wrap:wrap;gap:6px}
.hero-pills span{
  padding:5px 7px;
  border:1px solid var(--tools-line);
  border-radius:8px;
  color:#aaa6b4;
  font-size:.65rem
}

@keyframes toolOpen{
  from{opacity:.2;transform:translateY(-3px)}
  to{opacity:1;transform:none}
}

@media(max-width:1180px){
  .tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pricing-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .tools-wrap{width:min(100% - 22px,1380px)}
  .catalogue{padding-top:22px}
  .section-head h2{font-size:2rem}
  .tools-control-bar{grid-template-columns:1fr}
  .tools-category-tabs{padding-bottom:2px}
  .pricing-commercial>.section-head{grid-template-columns:1fr}
  .account-callout{grid-template-columns:1fr}
}
@media(max-width:620px){
  .tools-grid{grid-template-columns:1fr}
  .pricing-cards{grid-template-columns:1fr}
  .tool-card{padding:15px}
  .tool-card>p{min-height:0}
  .tool-actions{display:grid;grid-template-columns:1fr}
  .private-tools-strip{grid-template-columns:1fr}
  .macos-empty{align-items:flex-start;flex-direction:column;padding:18px}
  .owner-private-row{grid-template-columns:auto 1fr auto}
}
@media(prefers-reduced-motion:reduce){
  .tool-card,.tool-card-toggle,.primary-action,.secondary-action{transition:none!important}
}

.private-tools-strip{
  grid-template-columns:auto repeat(auto-fit,minmax(260px,340px));
  align-items:stretch
}
.private-tools-heading{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:150px;
  padding:10px 4px 10px 0
}
.private-tools-heading span{
  color:#777282;
  font-size:.57rem;
  font-weight:900;
  letter-spacing:.09em
}
.private-tools-heading strong{
  margin-top:2px;
  font-size:.8rem;
  color:#d8d3df
}

.pricing-commercial{
  margin-bottom:16px;
  padding:0
}
.pricing-summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:15px 17px;
  border:1px solid var(--tools-line);
  border-radius:15px;
  background:rgba(255,255,255,.025);
  cursor:pointer
}
.pricing-summary::-webkit-details-marker{display:none}
.pricing-summary>div{
  display:flex;
  flex-direction:column;
  gap:2px
}
.pricing-summary strong{font-size:.9rem}
.pricing-summary small{color:#85808e;font-size:.67rem}
.pricing-summary-action{
  flex:0 0 auto;
  padding:7px 10px;
  border:1px solid rgba(143,115,255,.2);
  border-radius:9px;
  color:#c5bbff;
  background:rgba(143,115,255,.055);
  font-size:.68rem;
  font-weight:850
}
.pricing-commercial[open] .pricing-summary-action::after{content:''}
.pricing-commercial[open] .pricing-summary-action{font-size:0}
.pricing-commercial[open] .pricing-summary-action::before{
  content:'Replier';
  font-size:.68rem
}
.pricing-details{
  padding:10px 0 0
}

.tools-about-details{
  margin-bottom:24px;
  border:1px solid var(--tools-line);
  border-radius:14px;
  background:rgba(255,255,255,.018)
}
.tools-about-details>summary{
  list-style:none;
  padding:12px 15px;
  color:#aaa5b3;
  font-size:.75rem;
  font-weight:800;
  cursor:pointer
}
.tools-about-details>summary::-webkit-details-marker{display:none}
.tools-about-details>div{
  padding:0 15px 14px;
  color:#8c8795;
  font-size:.72rem
}
.tools-about-details p{margin:0 0 8px}
.tools-about-details a{
  color:#c2b8ff;
  text-decoration:none;
  font-weight:800
}

@media(max-width:900px){
  .private-tools-strip{grid-template-columns:1fr 1fr}
  .private-tools-heading{grid-column:1/-1}
}
@media(max-width:620px){
  .private-tools-strip{grid-template-columns:1fr}
}

/* ===== Requalification cartes et actions v3 ===== */

/* Les informations compactes ne doivent jamais être répétées dans le détail. */
.tool-card.is-expanded .tool-card-glance{
  display:none!important;
}

/* Gabarit homogène : toutes les cartes publiques ont la même assise visuelle. */
#panel-online .tools-grid > .tool-card[data-tool-card="1"]{
  min-height:365px;
}
.tool-card.is-collapsed{
  min-height:365px;
}
.tool-card.is-expanded{
  min-height:0;
}
.tool-card .tool-actions{
  margin-top:auto;
  padding-top:12px;
}

/* Bouton Déplier/Replier : sombre, fin, lumineux, proche du style de référence. */
.tool-card-toggle{
  width:auto;
  min-width:138px;
  align-self:center;
  justify-content:center;
  gap:10px;
  min-height:42px;
  margin:4px auto 12px;
  padding:9px 18px;
  border:1px solid rgba(104,224,255,.82);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(20,23,34,.98),rgba(11,13,20,.98));
  color:#f7fbff;
  box-shadow:
    0 0 0 1px rgba(87,116,255,.14) inset,
    0 0 16px rgba(66,205,255,.14),
    0 8px 18px rgba(0,0,0,.22);
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.01em;
}
.tool-card-toggle:hover,
.tool-card-toggle:focus-visible{
  border-color:#8be9ff;
  background:linear-gradient(180deg,rgba(27,31,45,.98),rgba(14,16,24,.98));
  box-shadow:
    0 0 0 1px rgba(123,107,255,.22) inset,
    0 0 22px rgba(77,220,255,.22),
    0 10px 22px rgba(0,0,0,.28);
  outline:none;
  transform:translateY(-1px);
}
.tool-card-toggle i{
  font-size:.84rem;
  color:#90eaff;
}

/* Actions de carte : plus de gros pavés violets. */
.tool-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(135px,1fr));
  gap:8px;
}
.tool-actions a,
.primary-action,
.secondary-action{
  min-height:43px!important;
  padding:9px 13px!important;
  border-radius:13px!important;
  font-size:.72rem!important;
  font-weight:900!important;
  letter-spacing:.005em;
  box-shadow:none!important;
}
.primary-action{
  color:#fff!important;
  border:1px solid rgba(127,117,255,.72)!important;
  background:linear-gradient(180deg,rgba(67,55,130,.72),rgba(36,29,79,.82))!important;
}
.primary-action:hover,
.primary-action:focus-visible{
  border-color:#9f95ff!important;
  background:linear-gradient(180deg,rgba(81,67,155,.8),rgba(43,34,92,.9))!important;
  box-shadow:0 0 18px rgba(118,103,255,.16)!important;
  transform:translateY(-1px);
  outline:none;
}
.secondary-action{
  color:#f2eff7!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:linear-gradient(180deg,rgba(31,31,42,.94),rgba(19,19,27,.96))!important;
}
.secondary-action:hover,
.secondary-action:focus-visible{
  border-color:rgba(118,220,255,.58)!important;
  box-shadow:0 0 16px rgba(79,211,255,.10)!important;
  transform:translateY(-1px);
  outline:none;
}

/* ===== Outils privés : vraies cartes rouges, même gabarit que le catalogue ===== */
.private-tools-section{
  margin:4px 0 18px;
}
.private-tools-section[hidden]{
  display:none!important;
}
.private-tools-section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:14px;
  margin:0 0 10px;
}
.private-tools-section-head>div{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.private-tools-section-head span{
  color:#ff747e;
  font-size:.61rem;
  font-weight:950;
  letter-spacing:.11em;
}
.private-tools-section-head strong{
  font-size:.95rem;
  color:#f7edf0;
}
.private-tools-section-head small{
  color:#8f8187;
  font-size:.68rem;
}
.private-tools-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.private-tools-grid .tool-card{
  min-height:365px;
  height:100%;
}
.tool-card.tool-card-private{
  border-color:rgba(255,75,88,.46);
  background:
    radial-gradient(circle at 92% 0%,rgba(255,55,75,.11),transparent 34%),
    linear-gradient(160deg,rgba(93,23,34,.22),rgba(23,12,18,.94)),
    #120d12;
  box-shadow:
    0 15px 34px rgba(0,0,0,.22),
    0 0 0 1px rgba(255,77,90,.04) inset;
}
.tool-card.tool-card-private:hover{
  border-color:rgba(255,93,105,.72);
  box-shadow:
    0 20px 42px rgba(0,0,0,.28),
    0 0 22px rgba(255,63,80,.10);
}
.tool-card-private .tool-icon{
  border-color:rgba(255,86,99,.44);
  background:linear-gradient(145deg,rgba(255,76,91,.22),rgba(103,24,35,.18));
  color:#ffb1b7;
}
.tool-card-private .tool-category{
  color:#ff7d87;
}
.tool-card-private .tool-status{
  border-color:rgba(255,90,101,.42);
  background:rgba(255,65,80,.10);
  color:#ff9ea6;
}
.tool-card-private .tool-status i{
  background:#ff6370;
}
.tool-card-private .tool-card-glance span{
  border-color:rgba(255,81,95,.18);
  background:rgba(255,62,79,.055);
  color:#e9c9cd;
}
.tool-card-private .primary-action{
  border-color:rgba(255,84,99,.7)!important;
  background:linear-gradient(180deg,rgba(128,38,51,.80),rgba(70,21,31,.92))!important;
}
.tool-card-private .primary-action:hover,
.tool-card-private .primary-action:focus-visible{
  border-color:#ff818c!important;
  background:linear-gradient(180deg,rgba(151,43,58,.88),rgba(82,23,35,.96))!important;
  box-shadow:0 0 18px rgba(255,70,87,.14)!important;
}
.tool-card-private .private-access-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  align-self:flex-start;
  margin-top:2px;
  padding:5px 8px;
  border:1px solid rgba(255,87,100,.28);
  border-radius:999px;
  background:rgba(255,65,81,.08);
  color:#ff929b;
  font-size:.62rem;
  font-weight:900;
}
.tool-card-private .private-access-badge::before{
  content:'●';
  font-size:.45rem;
}

/* La vieille miniature privée ne doit plus influencer le layout. */
.private-tools-strip,
.private-tools-heading,
.owner-private-row,
.owner-private-icon,
.owner-private-label{
  all:unset;
}

@media(max-width:1180px){
  .private-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  #panel-online .tools-grid > .tool-card[data-tool-card="1"],
  .tool-card.is-collapsed,
  .private-tools-grid .tool-card{
    min-height:0;
  }
  .private-tools-grid{grid-template-columns:1fr}
  .private-tools-section-head{align-items:flex-start;flex-direction:column}
  .tool-card-toggle{width:100%}
}

/* Harmonisation finale des CTA : style sombre bord lumineux */
.tool-actions a,
.primary-action,
.secondary-action{
  color:#f9f8ff!important;
  background:linear-gradient(180deg,rgba(24,25,36,.98),rgba(13,14,21,.99))!important;
  border:1px solid rgba(126,113,255,.72)!important;
  box-shadow:
    0 0 0 1px rgba(111,212,255,.05) inset,
    0 0 14px rgba(110,96,255,.08)!important;
}
.tool-actions a:hover,
.tool-actions a:focus-visible,
.primary-action:hover,
.primary-action:focus-visible,
.secondary-action:hover,
.secondary-action:focus-visible{
  color:#fff!important;
  border-color:rgba(111,226,255,.88)!important;
  background:linear-gradient(180deg,rgba(30,32,46,.99),rgba(16,18,27,.99))!important;
  box-shadow:
    0 0 0 1px rgba(129,114,255,.14) inset,
    0 0 20px rgba(76,214,255,.14)!important;
  outline:none;
  transform:translateY(-1px);
}
.tool-card-private .tool-actions a,
.tool-card-private .primary-action{
  border-color:rgba(255,82,96,.72)!important;
  background:linear-gradient(180deg,rgba(53,19,27,.98),rgba(25,12,17,.99))!important;
  box-shadow:
    0 0 0 1px rgba(255,91,104,.05) inset,
    0 0 14px rgba(255,55,75,.08)!important;
}
.tool-card-private .tool-actions a:hover,
.tool-card-private .tool-actions a:focus-visible{
  border-color:#ff7884!important;
  background:linear-gradient(180deg,rgba(70,23,33,.99),rgba(32,13,19,.99))!important;
  box-shadow:
    0 0 0 1px rgba(255,108,120,.12) inset,
    0 0 20px rgba(255,63,82,.16)!important;
}

/* Déduplication stricte résumé / détail */
.tool-feature-summary-source{
  display:none!important;
}
.tool-features-empty-after-summary{
  display:none!important;
}
.tool-card.is-expanded .tool-card-glance{
  display:flex!important;
}

.tools-formula-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 auto 18px;
  padding:14px 16px;
  border:1px solid var(--tools-line);
  border-radius:15px;
  background:rgba(255,255,255,.022);
}
.tools-formula-link>div{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.tools-formula-link strong{font-size:.9rem}
.tools-formula-link small{color:#878290;font-size:.69rem}
.tools-formula-link>a{
  flex:0 0 auto;
  min-height:41px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 14px;
  border:1px solid rgba(104,224,255,.55);
  border-radius:13px;
  background:linear-gradient(180deg,rgba(24,25,36,.98),rgba(13,14,21,.99));
  color:#fff;
  text-decoration:none;
  font-size:.72rem;
  font-weight:900;
}
.tools-formula-link>a:hover,
.tools-formula-link>a:focus-visible{
  border-color:#8be9ff;
  box-shadow:0 0 18px rgba(77,220,255,.14);
  outline:none;
}
@media(max-width:680px){
  .tools-formula-link{align-items:stretch;flex-direction:column}
  .tools-formula-link>a{width:100%}
}

/* V5 — Outils privilégiés : premières cases, alignées à gauche, dans la grille de choix. */
#panel-online .tools-grid > .private-tools-section:not([hidden]),
#panel-online .tools-grid > .private-tools-section:not([hidden]) > .private-tools-grid {
  display: contents;
}
#panel-online .tools-grid > .private-tools-section:not([hidden]) > .private-tools-section-head {
  grid-column: 1 / -1;
  margin: 0 0 1px;
}
#panel-online .tools-grid > .private-tools-section:not([hidden]) .tool-card-private {
  min-width: 0;
  min-height: 365px;
  height: 100%;
}
@media(max-width:760px){
  #panel-online .tools-grid > .private-tools-section:not([hidden]) .tool-card-private {
    min-height: 0;
  }
}
