/* Phase 65: Specialty Studios polish and competitive workflow layer */
.spx-panel {
  margin: 14px;
  border: 1px solid rgba(120, 86, 38, .22);
  border-radius: 22px;
  background:
    radial-gradient(circle at 14% 0%, rgba(255, 218, 128, .45), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,248,232,.82));
  box-shadow: 0 18px 50px rgba(67, 48, 20, .12);
  overflow: hidden;
}
.spx-panel.compact { margin: 10px 12px 0; }
.spx-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .8fr);
  gap: 14px;
  padding: 16px;
  align-items: stretch;
}
.spx-kicker {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: .68rem;
  letter-spacing: .11em;
  text-transform: uppercase;
  font-weight: 900;
  color: #9a5b18;
}
.spx-title {
  margin: 5px 0 6px;
  font-size: clamp(1.28rem, 2vw, 2rem);
  line-height: 1.04;
  color: #27190c;
  letter-spacing: -.035em;
}
.spx-copy {
  margin: 0;
  max-width: 78ch;
  color: #6d5a43;
  font-size: .92rem;
  line-height: 1.5;
}
.spx-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.spx-btn {
  border: 1px solid rgba(91, 57, 18, .18);
  border-radius: 999px;
  padding: 9px 12px;
  min-height: 38px;
  background: #211812;
  color: #fff7df;
  font-weight: 900;
  font-size: .78rem;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(63, 42, 17, .16);
}
.spx-btn.secondary {
  background: rgba(255,255,255,.8);
  color: #3b2815;
}
.spx-btn:hover { transform: translateY(-1px); }
.spx-meter-card {
  border-radius: 18px;
  padding: 13px;
  background: rgba(35, 25, 15, .88);
  color: #fff7df;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 160px;
}
.spx-meter-label {
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .11em;
  opacity: .72;
  font-weight: 900;
}
.spx-score {
  font-size: 2.2rem;
  font-weight: 950;
  letter-spacing: -.06em;
  margin: 8px 0 4px;
}
.spx-score span { font-size: .9rem; opacity: .65; }
.spx-bar {
  height: 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  overflow: hidden;
}
.spx-fill {
  height: 100%;
  width: 0%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ffb340, #77d970, #39b8ff);
}
.spx-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 0 16px 16px;
}
.spx-card {
  border: 1px solid rgba(121, 88, 48, .18);
  border-radius: 18px;
  padding: 12px;
  background: rgba(255,255,255,.72);
  min-height: 118px;
}
.spx-card h4 {
  margin: 0 0 6px;
  font-size: .86rem;
  color: #2e2013;
}
.spx-card p {
  margin: 0;
  color: #6f604d;
  font-size: .79rem;
  line-height: 1.42;
}
.spx-pills {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 9px;
}
.spx-pill {
  border-radius: 999px;
  padding: 5px 8px;
  background: #fff6dc;
  border: 1px solid rgba(145, 96, 32, .16);
  color: #7b4c12;
  font-size: .68rem;
  font-weight: 900;
}
.spx-lane {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  padding: 0 16px 16px;
}
.spx-step {
  border-radius: 15px;
  padding: 10px;
  background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,250,237,.86));
  border: 1px solid rgba(121, 88, 48, .18);
}
.spx-step strong {
  display: block;
  color: #2f2114;
  font-size: .78rem;
  margin-bottom: 4px;
}
.spx-step span {
  color: #75644f;
  font-size: .7rem;
  line-height: 1.35;
}
.spx-panel[data-kind="podcast"] {
  background: radial-gradient(circle at 12% 0%, rgba(110, 231, 183, .35), transparent 30%),
    linear-gradient(135deg, rgba(250,255,252,.94), rgba(232,252,244,.8));
}
.spx-panel[data-kind="doc"] {
  background: radial-gradient(circle at 12% 0%, rgba(147, 197, 253, .38), transparent 30%),
    linear-gradient(135deg, rgba(249,252,255,.95), rgba(234,244,255,.82));
}
.spx-panel[data-kind="ad"] {
  background: radial-gradient(circle at 12% 0%, rgba(251, 146, 60, .38), transparent 30%),
    linear-gradient(135deg, rgba(255,250,244,.95), rgba(255,240,224,.84));
}
.spx-panel[data-kind="music"] {
  background: radial-gradient(circle at 12% 0%, rgba(244, 114, 182, .34), transparent 30%),
    linear-gradient(135deg, rgba(255,248,253,.95), rgba(247,236,255,.84));
}
@media (max-width: 920px) {
  .spx-hero { grid-template-columns: 1fr; }
  .spx-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .spx-lane { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .spx-panel { margin: 10px; border-radius: 18px; }
  .spx-hero, .spx-grid, .spx-lane { padding-left: 12px; padding-right: 12px; }
  .spx-grid, .spx-lane { grid-template-columns: 1fr; }
  .spx-actions { flex-direction: column; }
  .spx-btn { width: 100%; justify-content: center; }
}
