/* ==========================================================================
   TOOL-RICH-PALETTE.CSS (2026-08-21)
   The text-to-3d page skin, generalised. Scoped to body.tool-rich-page and
   loaded AFTER tool-page-palette.css on: text-to-3d, stl-generator,
   seedance-video-generator. (Supersedes text-to-3d-palette.css — same rules,
   shared scope.) The model-viewer / example-card rules only bite on pages
   that have those elements.
   ========================================================================== */
body.tool-rich-page{
  --t3d-red:#5A2132;
  --t3d-red-rgb:90,33,50;
  --t3d-white:#EFE9E9;
  --t3d-white-rgb:239,233,233;
  --t3d-teal:#035352;
  --t3d-teal-rgb:3,83,82;
  --t3d-yellow:#F3E8BC;
  --t3d-yellow-rgb:243,232,188;
  --t3d-blue:#1E223D;
  --t3d-blue-rgb:30,34,61;
  --t3d-orange:#F54F1B;
  --t3d-orange-rgb:245,79,27;
  --t3d-ink:#121527;
  --t3d-body:#4d5262;
  --t3d-muted:#707688;
  --t3d-line:rgba(30,34,61,.12);
  background:var(--t3d-white)!important;
  color:var(--t3d-ink);
  overflow-x:hidden;
}

body.tool-rich-page .container{
  width:min(1320px,calc(100% - 48px));
  max-width:none;
}

body.tool-rich-page .tool-hero{
  overflow:hidden;
  padding:calc(var(--navH,72px) + 46px) 0 58px;
  background:
    linear-gradient(rgba(239,233,233,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(239,233,233,.035) 1px,transparent 1px),
    radial-gradient(780px 420px at 16% 12%,rgba(var(--t3d-red-rgb),.3),transparent 66%),
    radial-gradient(680px 400px at 86% 10%,rgba(var(--t3d-teal-rgb),.28),transparent 68%),
    var(--t3d-blue);
  background-size:52px 52px,52px 52px,auto,auto,auto;
}

body.tool-rich-page .tool-hero .container{
  display:grid;
  gap:18px;
  max-width:1180px;
  text-align:center;
}

body.tool-rich-page .tool-hero h1{
  max-width:min(30ch,1080px);
  margin:0 auto;
  color:var(--t3d-white)!important;
  font-family:"Space Grotesk",Inter,system-ui,sans-serif;
  font-size:clamp(48px,5.8vw,78px);
  font-weight:800;
  line-height:1.02;
  letter-spacing:0;
  text-wrap:balance;
  white-space:normal;
  overflow-wrap:normal;
}

body.tool-rich-page .tool-subtitle{
  max-width:820px;
  margin:0 auto;
  color:rgba(var(--t3d-white-rgb),.72)!important;
  font-size:18px;
  line-height:1.65;
}

body.tool-rich-page .tool-intro,
body.tool-rich-page .tool-steps,
body.tool-rich-page .tool-usecases,
body.tool-rich-page .tool-examples,
body.tool-rich-page .tool-comparison,
body.tool-rich-page .tool-faq,
body.tool-rich-page .tool-related,
body.tool-rich-page .tool-cross-links{
  border-top:0;
  padding:58px 0;
}

body.tool-rich-page .tool-intro .container{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:34px;
  align-items:start;
  max-width:1180px;
}

body.tool-rich-page .tool-intro p{
  margin:0;
  color:var(--t3d-body);
  font-size:17px;
  line-height:1.75;
}

body.tool-rich-page .tool-intro p:first-child{
  grid-row:span 3;
  padding:34px;
  border-radius:24px;
  background:
    radial-gradient(420px 230px at 0% 0%,rgba(var(--t3d-yellow-rgb),.42),transparent 70%),
    #fff;
  border:1px solid rgba(var(--t3d-blue-rgb),.1);
  color:var(--t3d-ink);
  font-size:24px;
  line-height:1.48;
  box-shadow:0 20px 54px rgba(var(--t3d-blue-rgb),.08);
}

body.tool-rich-page .tool-steps-title,
body.tool-rich-page .tool-usecases-title,
body.tool-rich-page .tool-examples-title,
body.tool-rich-page .tool-comparison-title,
body.tool-rich-page .tool-faq-title,
body.tool-rich-page .tool-related-title,
body.tool-rich-page .tool-cross-links-title{
  margin:0 0 22px;
  color:var(--t3d-ink)!important;
  font-family:"Space Grotesk",Inter,system-ui,sans-serif;
  font-size:42px;
  font-weight:800;
  line-height:1.08;
  letter-spacing:0;
}

body.tool-rich-page .tool-examples-title{
  margin-bottom:12px;
}

body.tool-rich-page .tool-examples-intro,
body.tool-rich-page .tool-comparison-intro,
body.tool-rich-page .tool-comparison-note{
  color:var(--t3d-body);
  font-size:16px;
  line-height:1.72;
  max-width:860px;
}

body.tool-rich-page .tool-steps-grid,
body.tool-rich-page .tool-usecases-grid{
  gap:18px;
}

body.tool-rich-page .tool-step,
body.tool-rich-page .tool-usecase,
body.tool-rich-page .tool-link-card,
body.tool-rich-page .tool-cross-link{
  background:#fff;
  border:1px solid var(--t3d-line);
  box-shadow:0 18px 42px rgba(var(--t3d-blue-rgb),.06);
}

body.tool-rich-page .tool-step:nth-child(2),
body.tool-rich-page .tool-usecase:nth-child(2),
body.tool-rich-page .tool-link-card:nth-child(2),
body.tool-rich-page .tool-cross-link:nth-child(2n){
  background:linear-gradient(135deg,rgba(var(--t3d-yellow-rgb),.32),#fff 62%);
}

body.tool-rich-page .tool-step:nth-child(3),
body.tool-rich-page .tool-usecase:nth-child(3),
body.tool-rich-page .tool-link-card:nth-child(3),
body.tool-rich-page .tool-cross-link:nth-child(3n){
  background:linear-gradient(135deg,rgba(var(--t3d-teal-rgb),.09),#fff 66%);
}

body.tool-rich-page .tool-step-num{
  width:46px;
  height:46px;
  border-radius:15px;
  color:var(--t3d-orange);
  background:rgba(var(--t3d-orange-rgb),.09);
  border-color:rgba(var(--t3d-orange-rgb),.22);
  letter-spacing:0;
}

body.tool-rich-page .tool-step h3,
body.tool-rich-page .tool-usecase h4,
body.tool-rich-page .tool-link-card h4,
body.tool-rich-page .tool-cross-link h3{
  color:var(--t3d-ink)!important;
  font-size:18px;
  line-height:1.25;
  letter-spacing:0;
}

body.tool-rich-page .tool-step p,
body.tool-rich-page .tool-usecase p,
body.tool-rich-page .tool-link-card p,
body.tool-rich-page .tool-cross-link p{
  color:var(--t3d-body)!important;
  font-size:15px;
  line-height:1.65;
}

body.tool-rich-page .tool-examples{
  background:
    radial-gradient(900px 460px at 0% 6%,rgba(var(--t3d-yellow-rgb),.34),transparent 72%),
    radial-gradient(720px 480px at 100% 44%,rgba(var(--t3d-red-rgb),.09),transparent 70%);
}

body.tool-rich-page .tool-examples-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}

body.tool-rich-page .tool-example-card{
  --stage:rgba(var(--t3d-yellow-rgb),.42);
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:0!important;
  overflow:hidden;
  background:#fff!important;
  border:1px solid rgba(var(--t3d-blue-rgb),.12)!important;
  border-radius:24px;
  box-shadow:0 20px 50px rgba(var(--t3d-blue-rgb),.08);
  transform:none;
}

body.tool-rich-page .tool-example-card:nth-child(2n){
  --stage:rgba(var(--t3d-teal-rgb),.1);
}

body.tool-rich-page .tool-example-card:nth-child(3n){
  --stage:rgba(var(--t3d-red-rgb),.09);
}

body.tool-rich-page .tool-example-card:nth-child(4n){
  --stage:rgba(var(--t3d-orange-rgb),.11);
}

body.tool-rich-page .tool-example-card:hover{
  transform:translateY(-4px);
  border-color:rgba(var(--t3d-orange-rgb),.28)!important;
  box-shadow:0 28px 64px rgba(var(--t3d-red-rgb),.14);
}

body.tool-rich-page .tool-example-card::before{
  display:none;
}

body.tool-rich-page .tool-example-card model-viewer{
  width:100%;
  height:auto;
  min-height:0;
  position:relative;
  aspect-ratio:1.12 / 1;
  background:
    radial-gradient(circle at 50% 48%,rgba(255,255,255,.92),rgba(255,255,255,.28) 34%,transparent 58%),
    linear-gradient(rgba(var(--t3d-blue-rgb),.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(var(--t3d-blue-rgb),.045) 1px,transparent 1px),
    linear-gradient(140deg,var(--stage),#fff 72%);
  background-size:auto,34px 34px,34px 34px,auto;
  border:0;
  border-bottom:1px solid rgba(var(--t3d-blue-rgb),.08);
  --poster-color:transparent;
  overflow:hidden;
}

body.tool-rich-page .tool-example-card model-viewer::before,
body.tool-rich-page .tool-example-card model-viewer::after{
  position:absolute;
  left:50%;
  z-index:2;
  pointer-events:none;
  transition:opacity .32s ease, transform .32s ease;
}

body.tool-rich-page .tool-example-card model-viewer::before{
  content:"";
  top:50%;
  width:136px;
  height:136px;
  border:2px solid currentColor;
  color:var(--t3d-blue);
  background:
    linear-gradient(135deg,rgba(255,255,255,.86),rgba(var(--t3d-teal-rgb),.34)),
    radial-gradient(circle at 30% 28%,rgba(var(--t3d-orange-rgb),.88),transparent 17%);
  box-shadow:18px 18px 0 rgba(var(--t3d-red-rgb),.18);
  filter:drop-shadow(0 18px 30px rgba(var(--t3d-blue-rgb),.12));
  opacity:1;
  transform:translate(-50%,-58%) rotate(-8deg);
  animation:t3d-poster-float 6s ease-in-out infinite;
}

body.tool-rich-page .tool-example-card model-viewer::after{
  content:attr(data-preview-label);
  top:calc(50% + 88px);
  padding:8px 13px;
  border:1px solid rgba(var(--t3d-teal-rgb),.22);
  border-radius:999px;
  color:var(--t3d-teal);
  background:rgba(255,255,255,.72);
  font-size:13px;
  line-height:1;
  font-weight:800;
  letter-spacing:0;
  white-space:nowrap;
  transform:translateX(-50%);
}

body.tool-rich-page .tool-example-card model-viewer.is-loaded::before,
body.tool-rich-page .tool-example-card model-viewer.is-loaded::after{
  opacity:0;
  transform:translate(-50%,-58%) scale(.96);
}

body.tool-rich-page .tool-example-card model-viewer.t3d-preview--castle::before{
  clip-path:polygon(8% 88%,8% 38%,18% 38%,18% 22%,34% 22%,34% 38%,46% 38%,46% 18%,62% 18%,62% 38%,76% 38%,76% 24%,92% 24%,92% 88%);
}

body.tool-rich-page .tool-example-card model-viewer.t3d-preview--robot::before{
  border-radius:26px 26px 18px 18px;
  clip-path:polygon(18% 4%,82% 4%,82% 68%,66% 68%,66% 96%,54% 96%,54% 68%,46% 68%,46% 96%,34% 96%,34% 68%,18% 68%);
}

body.tool-rich-page .tool-example-card model-viewer.t3d-preview--plant::before{
  border-radius:46% 54% 44% 56%;
  clip-path:polygon(50% 0,64% 30%,96% 24%,72% 48%,100% 72%,62% 66%,50% 100%,38% 66%,0 72%,28% 48%,4% 24%,36% 30%);
}

body.tool-rich-page .tool-example-card model-viewer.t3d-preview--prop::before{
  height:82px;
  clip-path:polygon(0 42%,54% 18%,100% 30%,82% 56%,55% 54%,42% 82%,26% 82%,30% 58%,0 58%);
}

body.tool-rich-page .tool-example-card model-viewer.t3d-preview--character::before{
  border-radius:50% 50% 42% 42%;
  clip-path:polygon(26% 4%,42% 22%,58% 22%,74% 4%,72% 46%,88% 70%,66% 96%,34% 96%,12% 70%,28% 46%);
}

body.tool-rich-page .tool-example-card model-viewer.t3d-preview--city::before{
  clip-path:polygon(6% 90%,6% 44%,18% 44%,18% 24%,34% 24%,34% 62%,46% 62%,46% 12%,62% 12%,62% 50%,76% 50%,76% 30%,94% 30%,94% 90%);
}

body.tool-rich-page .t3d-model-fallback{
  width:100%;
  height:100%;
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:28px;
  color:var(--t3d-blue);
  text-align:center;
  background:
    radial-gradient(circle at 50% 43%,rgba(var(--t3d-yellow-rgb),.58),transparent 34%),
    linear-gradient(rgba(var(--t3d-teal-rgb),.1) 1px,transparent 1px),
    linear-gradient(90deg,rgba(var(--t3d-teal-rgb),.08) 1px,transparent 1px),
    linear-gradient(145deg,rgba(255,255,255,.76),rgba(var(--t3d-white-rgb),.9));
  background-size:auto,28px 28px,28px 28px,auto;
}

body.tool-rich-page .t3d-model-fallback::before{
  content:"";
  width:132px;
  height:132px;
  border:2px solid currentColor;
  background:
    linear-gradient(135deg,rgba(255,255,255,.78),rgba(var(--t3d-teal-rgb),.2)),
    radial-gradient(circle at 30% 30%,rgba(var(--t3d-orange-rgb),.72),transparent 16%);
  box-shadow:18px 18px 0 rgba(var(--t3d-red-rgb),.12);
  opacity:.92;
  transform:rotate(-8deg);
  animation:t3d-poster-float 6s ease-in-out infinite;
}

body.tool-rich-page .t3d-model-fallback--castle::before{
  clip-path:polygon(8% 88%,8% 38%,18% 38%,18% 22%,34% 22%,34% 38%,46% 38%,46% 18%,62% 18%,62% 38%,76% 38%,76% 24%,92% 24%,92% 88%);
}

body.tool-rich-page .t3d-model-fallback--robot::before{
  border-radius:26px 26px 18px 18px;
  clip-path:polygon(18% 4%,82% 4%,82% 68%,66% 68%,66% 96%,54% 96%,54% 68%,46% 68%,46% 96%,34% 96%,34% 68%,18% 68%);
}

body.tool-rich-page .t3d-model-fallback--plant::before{
  border-radius:46% 54% 44% 56%;
  clip-path:polygon(50% 0,64% 30%,96% 24%,72% 48%,100% 72%,62% 66%,50% 100%,38% 66%,0 72%,28% 48%,4% 24%,36% 30%);
}

body.tool-rich-page .t3d-model-fallback--prop::before{
  height:82px;
  clip-path:polygon(0 42%,54% 18%,100% 30%,82% 56%,55% 54%,42% 82%,26% 82%,30% 58%,0 58%);
}

body.tool-rich-page .t3d-model-fallback--character::before{
  border-radius:50% 50% 42% 42%;
  clip-path:polygon(26% 4%,42% 22%,58% 22%,74% 4%,72% 46%,88% 70%,66% 96%,34% 96%,12% 70%,28% 46%);
}

body.tool-rich-page .t3d-model-fallback--city::before{
  clip-path:polygon(6% 90%,6% 44%,18% 44%,18% 24%,34% 24%,34% 62%,46% 62%,46% 12%,62% 12%,62% 50%,76% 50%,76% 30%,94% 30%,94% 90%);
}

body.tool-rich-page .t3d-model-fallback span{
  padding:7px 12px;
  border:1px solid rgba(var(--t3d-teal-rgb),.24);
  border-radius:999px;
  color:var(--t3d-teal);
  background:rgba(255,255,255,.62);
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:0;
}

body.tool-rich-page .t3d-model-fallback strong{
  color:var(--t3d-ink);
  font-size:17px;
  line-height:1.2;
}

@keyframes t3d-poster-float{
  0%,100%{ transform:translateY(0) rotate(-8deg); }
  50%{ transform:translateY(-8px) rotate(2deg); }
}

body.tool-rich-page .tool-example-card h3{
  margin:20px 24px 10px;
  color:var(--t3d-ink)!important;
  font-size:21px;
  line-height:1.2;
  letter-spacing:0;
}

body.tool-rich-page .tool-example-card p{
  margin-left:24px;
  margin-right:24px;
  color:var(--t3d-body)!important;
  font-size:15px;
  line-height:1.66;
}

body.tool-rich-page .tool-example-card .tool-example-prompt{
  margin:0 24px 14px;
  padding:15px 16px;
  border:1px solid rgba(var(--t3d-yellow-rgb),.72);
  border-left:4px solid var(--t3d-orange);
  border-radius:5px 16px 16px 5px;
  background:rgba(var(--t3d-yellow-rgb),.32);
  color:var(--t3d-ink)!important;
  opacity:1;
  font-size:13px;
}

body.tool-rich-page .tool-example-card .tool-example-prompt strong{
  color:var(--t3d-red)!important;
}

body.tool-rich-page .tool-example-card .tool-example-desc{
  margin-bottom:24px;
}

body.tool-rich-page .tool-comparison-wrap{
  overflow:auto;
  border:1px solid rgba(var(--t3d-blue-rgb),.12);
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 44px rgba(var(--t3d-blue-rgb),.07);
}

body.tool-rich-page .tool-comparison-table{
  min-width:760px;
}

body.tool-rich-page .tool-comparison-table thead th{
  background:var(--t3d-blue);
  color:var(--t3d-yellow);
}

body.tool-rich-page .tool-comparison-table td{
  color:var(--t3d-body);
  border-color:rgba(var(--t3d-blue-rgb),.09);
}

body.tool-rich-page .tool-comparison-table td:first-child{
  color:var(--t3d-ink);
}

body.tool-rich-page .tool-faq-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  max-width:1180px;
}

body.tool-rich-page .tool-faq-list details{
  border:1px solid rgba(var(--t3d-blue-rgb),.1);
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 34px rgba(var(--t3d-blue-rgb),.05);
  overflow:hidden;
}

body.tool-rich-page .tool-faq-list details + details{
  margin-top:0;
}

body.tool-rich-page .tool-faq-list summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  cursor:pointer;
  list-style:none;
  min-height:72px;
  padding:15px 18px;
  color:var(--t3d-ink);
  font-size:14.5px;
  font-weight:800;
  line-height:1.36;
}

body.tool-rich-page .tool-faq-list summary::-webkit-details-marker{
  display:none;
}

body.tool-rich-page .tool-faq-list summary::after{
  content:"+";
  display:grid;
  place-items:center;
  flex:none;
  width:24px;
  height:24px;
  border:1px solid rgba(var(--t3d-orange-rgb),.26);
  border-radius:9px;
  background:rgba(var(--t3d-orange-rgb),.08);
  color:var(--t3d-orange);
}

body.tool-rich-page .tool-faq-list details[open] summary::after{
  content:"-";
}

body.tool-rich-page .tool-faq-list details p{
  margin:0;
  padding:0 18px 18px;
  color:var(--t3d-body);
  font-size:13.5px;
  line-height:1.66;
}

body.tool-rich-page .tool-cta{
  width:min(1320px,calc(100% - 48px));
  margin:36px auto;
  border-radius:28px;
  background:
    linear-gradient(rgba(239,233,233,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(239,233,233,.035) 1px,transparent 1px),
    radial-gradient(520px 260px at 36% 14%,rgba(var(--t3d-red-rgb),.34),transparent 66%),
    radial-gradient(520px 280px at 76% 78%,rgba(var(--t3d-teal-rgb),.28),transparent 70%),
    var(--t3d-blue);
  background-size:44px 44px,44px 44px,auto,auto,auto;
}

body.tool-rich-page .tool-cta-title{
  color:var(--t3d-white)!important;
}

body.tool-rich-page .tool-cta .nav-cta{
  border-radius:999px;
}

body.tool-rich-page .tool-related-grid,
body.tool-rich-page .tool-cross-links-grid{
  gap:18px;
}

body.tool-rich-page .tool-related{
  padding-top:44px;
}

@media (max-width:1180px){
  body.tool-rich-page .tool-examples-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:820px){
  body.tool-rich-page .container{
    width:100%!important;
    max-width:100%!important;
    padding-inline:22px!important;
  }

  body.tool-rich-page .tool-hero .container,
  body.tool-rich-page .tool-intro .container{
    width:100%!important;
    max-width:100%!important;
    padding-inline:22px!important;
  }

  body.tool-rich-page .tool-hero{
    padding:calc(var(--navH,72px) + 34px) 0 44px;
  }

  body.tool-rich-page .tool-hero h1{
    max-width:100%;
    font-size:34px;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  body.tool-rich-page .tool-subtitle{
    max-width:100%;
    font-size:16px;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  body.tool-rich-page .tool-intro,
  body.tool-rich-page .tool-steps,
  body.tool-rich-page .tool-usecases,
  body.tool-rich-page .tool-examples,
  body.tool-rich-page .tool-comparison,
  body.tool-rich-page .tool-faq,
  body.tool-rich-page .tool-related,
  body.tool-rich-page .tool-cross-links{
    padding:42px 0;
  }

  body.tool-rich-page .tool-intro .container{
    grid-template-columns:1fr;
    gap:18px;
  }

  body.tool-rich-page .tool-intro p:first-child{
    grid-row:auto;
    width:100%;
    max-width:100%;
    min-width:0;
    padding:24px;
    font-size:20px;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  body.tool-rich-page .tool-steps-title,
  body.tool-rich-page .tool-usecases-title,
  body.tool-rich-page .tool-examples-title,
  body.tool-rich-page .tool-comparison-title,
  body.tool-rich-page .tool-faq-title,
  body.tool-rich-page .tool-related-title,
  body.tool-rich-page .tool-cross-links-title{
    font-size:32px;
  }

  body.tool-rich-page .tool-usecases-grid,
  body.tool-rich-page .tool-examples-grid,
  body.tool-rich-page .tool-faq-list,
  body.tool-rich-page .tool-related-grid,
  body.tool-rich-page .tool-cross-links-grid{
    grid-template-columns:1fr;
    width:100%;
    min-width:0;
  }

  body.tool-rich-page .tool-step,
  body.tool-rich-page .tool-usecase,
  body.tool-rich-page .tool-example-card,
  body.tool-rich-page .tool-link-card,
  body.tool-rich-page .tool-cross-link,
  body.tool-rich-page .tool-faq-list details{
    min-width:0;
    max-width:100%;
  }

  body.tool-rich-page .tool-example-card model-viewer{
    aspect-ratio:1.24 / 1;
    overflow:hidden;
  }

  body.tool-rich-page .tool-cta{
    width:min(100% - 32px,720px);
    padding:30px 18px;
    border-radius:22px;
  }
}

@media (max-width:520px){
  body.tool-rich-page .container,
  body.tool-rich-page .tool-hero .container,
  body.tool-rich-page .tool-intro .container{
    padding-inline:18px!important;
  }

  body.tool-rich-page .tool-hero h1{
    font-size:32px;
  }

  body.tool-rich-page .tool-subtitle,
  body.tool-rich-page .tool-intro p,
  body.tool-rich-page .tool-examples-intro,
  body.tool-rich-page .tool-comparison-intro{
    font-size:15px;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  body.tool-rich-page .tool-step,
  body.tool-rich-page .tool-usecase,
  body.tool-rich-page .tool-link-card,
  body.tool-rich-page .tool-cross-link{
    padding:20px;
    border-radius:18px;
  }

  body.tool-rich-page .tool-example-card h3,
  body.tool-rich-page .tool-example-card p,
  body.tool-rich-page .tool-example-card .tool-example-prompt{
    margin-left:18px;
    margin-right:18px;
  }

  body.tool-rich-page .tool-example-card .tool-example-desc{
    margin-bottom:20px;
  }
}

@media (prefers-reduced-motion:reduce){
  body.tool-rich-page .tool-example-card,
  body.tool-rich-page .tool-step,
  body.tool-rich-page .tool-usecase,
  body.tool-rich-page .tool-link-card,
  body.tool-rich-page .tool-cross-link{
    transition:none;
  }
}

/* ---- placeholder de-dup (2026-08-21) ----
   The poster-slot fallback and the model-viewer ::before/::after placeholder
   painted the same shape + label twice, stacked. Once the custom element
   upgrades, the CSS placeholder owns the loading state and fades on
   .is-loaded; the slot div stays only for no-JS / unsupported browsers. */
body.tool-rich-page model-viewer:defined .t3d-model-fallback{display:none}


/* ==========================================================================
   Adaptations for pages sharing the skin (stl-generator, seedance)
   ========================================================================== */
/* An intro block that brings its own <h2> is the print-service callout, not
   the lede: keep it one column and let tool-page-palette's card paint it. */
body.tool-rich-page .tool-intro:has(h2) .container{
  display:block;
  max-width:none;
}
body.tool-rich-page .tool-intro:has(h2) p{
  font-size:15px;
  max-width:84ch;
}
/* Lede card only makes sense when a second paragraph exists to sit beside it */
body.tool-rich-page .tool-intro p:only-child{
  grid-row:auto;
  padding:0;
  border:0;
  background:none;
  box-shadow:none;
  font-size:17px;
}
