.decision-studio {
  overflow:hidden;
  border-color:#cbd8c6;
  background:#fcfdf8;
}
.studio-summary {
  display:flex;
  align-items:center;
  gap:12px;
  padding:21px 22px;
  cursor:pointer;
  list-style:none;
}
.studio-summary::-webkit-details-marker {
  display:none;
}
.studio-summary>span:nth-child(2) {
  flex:1;
  min-width:0;
}
.studio-summary strong {
  display:block;
  color:var(--forest);
  font-size:17px;
  line-height:1.4;
}
.studio-summary small {
  display:block;
  color:var(--muted);
  font-size:12px;
  margin-top:3px;
}
.studio-summary-icon {
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  flex:0 0 36px;
  border-radius:50%;
  background:#e7eddd;
  color:var(--forest);
  font-size:24px;
}
.studio-readonly {
  border:1px solid #d6dfcf;
  border-radius:20px;
  color:#587044;
  padding:3px 8px;
  font-size:10px;
  white-space:nowrap;
}
.studio-chevron {
  color:var(--forest);
  font-size:20px;
  transition:transform .15s;
}
.studio-disclosure[open] .studio-chevron {
  transform:rotate(180deg);
}
.studio-disclosure[open] .studio-summary {
  border-bottom:1px solid var(--line);
}
.studio-body {
  padding:0 22px 22px;
}
.studio-intro,.studio-trail-intro {
  color:var(--muted);
  font-size:12px;
  line-height:1.75;
  margin:16px 0;
}
.studio-switch {
  display:flex;
  gap:5px;
  padding:4px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#f1f3ec;
  margin-bottom:18px;
}
.studio-switch button {
  flex:1;
  min-width:0;
  min-height:40px;
  border:1px solid transparent;
  border-radius:6px;
  background:transparent;
  color:var(--muted);
  padding:7px 6px;
  font:inherit;
  font-size:12px;
  cursor:pointer;
}
.studio-switch button[aria-pressed="true"] {
  color:var(--forest);
  background:#fff;
  border-color:#d8e0d2;
  box-shadow:0 1px 3px #223a2910;
}
.studio-switch button span {
  font-size:11px;
  margin-left:3px;
}
.studio-choices {
  display:grid;
  gap:8px;
}
.studio-choice {
  position:relative;
  width:100%;
  border:1px solid var(--line);
  border-radius:9px;
  text-align:left;
  background:#fff;
  color:var(--ink);
  padding:12px 13px;
  cursor:pointer;
  font:inherit;
}
.studio-choice[aria-pressed="true"] {
  background:#edf2e7;
  border-color:#758e5e;
  box-shadow:inset 3px 0 #758e5e;
}
.studio-choice:hover {
  border-color:#8da67a;
}
.studio-choice-top {
  display:flex;
  gap:9px;
  align-items:flex-start;
}
.studio-choice-top strong {
  font-size:13px;
  line-height:1.6;
}
.studio-choice-mark {
  color:#6a8455;
  font-size:14px;
}
.studio-choice-effect,.studio-choice-proposal {
  display:block;
  font-size:11px;
  margin:3px 0 0 23px;
  color:var(--muted);
}
.studio-choice-proposal {
  color:#557139;
  font-weight:600;
}
.studio-choice-detail {
  margin-top:16px;
  padding:17px 15px;
  border:1px solid #dce5d4;
  border-radius:9px;
  background:#fff;
}
.studio-choice-detail h3,.studio-trail-detail h3 {
  font-size:17px;
  line-height:1.5;
  margin:6px 0 9px;
}
.studio-choice-detail p,.studio-trail-detail p {
  font-size:12px;
  line-height:1.75;
  margin:8px 0;
}
.studio-choice-detail .eyebrow,.studio-trail-detail .eyebrow {
  font-size:9px;
  letter-spacing:1.2px;
}
.studio-facts {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:13px 12px;
  margin:15px 0;
}
.studio-facts>div {
  min-width:0;
}
.studio-facts dt {
  color:var(--muted);
  font-size:10px;
  margin-bottom:3px;
}
.studio-facts dd {
  color:var(--ink);
  font-size:12px;
  margin:0;
  overflow-wrap:anywhere;
}
.studio-state-change {
  display:flex;
  gap:12px;
  align-items:center;
  margin:15px 0;
  padding:11px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  color:var(--muted);
  font-size:10px;
}
.studio-state-change>span:nth-child(2) {
  color:#70845c;
  font-size:19px;
}
.studio-state-change strong {
  color:var(--forest);
  font-size:14px;
  margin-left:4px;
}
.studio-note,.studio-binding,.studio-decision-kind {
  color:var(--muted);
  font-size:11px;
  line-height:1.75;
  overflow-wrap:anywhere;
}
.studio-binding {
  border-top:1px dashed #d7dfce;
  padding-top:14px;
  margin:18px 0 0;
}
.studio-use {
  margin-top:16px;
}
.studio-use .button {
  width:100%;
  white-space:normal;
  text-align:center;
  line-height:1.5;
}
.studio-use .studio-note {
  font-size:10px;
  margin-top:8px;
}
.studio-rationale summary,.studio-blocked summary,.studio-provenance summary {
  cursor:pointer;
  min-height:35px;
  padding:7px 0;
  font-size:12px;
  font-weight:600;
  color:var(--forest);
}
.studio-rationale p,.studio-blocked p,.studio-provenance p {
  font-size:11px;
}
.studio-blocked,.studio-provenance {
  border-top:1px solid var(--line);
  margin-top:15px;
  padding-top:5px;
}
.studio-blocked-item {
  border-left:2px solid #d9c7ab;
  margin:12px 0;
  padding-left:11px;
  font-size:11px;
}
.studio-blocked-item strong {
  color:#775426;
  font-size:12px;
}
.studio-blocked-item ul {
  color:var(--muted);
  padding-left:15px;
  margin:5px 0;
  line-height:1.75;
}
.studio-trail {
  position:relative;
  list-style:none;
  padding:0;
  margin:14px 0 17px;
  display:grid;
  gap:5px;
}
.studio-trail:before {
  content:"";
  position:absolute;
  left:22px;
  top:23px;
  bottom:23px;
  width:1px;
  background:#ced9c5;
}
.studio-trail button {
  position:relative;
  display:flex;
  gap:12px;
  align-items:center;
  width:100%;
  min-height:57px;
  padding:8px;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  color:var(--ink);
  cursor:pointer;
  text-align:left;
  font:inherit;
}
.studio-trail button[aria-pressed="true"] {
  background:#eaf0e3;
  border-color:#c8d7bb;
}
.studio-trail button strong {
  display:block;
  font-size:12px;
  line-height:1.5;
}
.studio-trail button small {
  display:block;
  color:var(--muted);
  font-size:10px;
  margin-top:1px;
}
.studio-step-number {
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  flex:0 0 28px;
  border-radius:50%;
  border:1px solid #ced9c5;
  background:#fcfdf8;
  color:#617b48;
  font-size:11px;
}
.studio-trail button[aria-pressed="true"] .studio-step-number {
  background:var(--forest);
  border-color:var(--forest);
  color:#fff;
}
.studio-trail-detail {
  padding:16px 14px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
}
.studio-feature-value {
  padding:13px;
  background:#edf2e7;
  border-radius:7px;
  font-size:11px;
}
.studio-feature-value span,.studio-feature-value strong {
  display:block;
}
.studio-feature-value span {
  color:var(--muted);
}
.studio-feature-value strong {
  margin-top:4px;
  font-size:15px;
  color:var(--forest);
}
.studio-review-record {
  border-top:1px solid var(--line);
  margin-top:15px;
  padding-top:14px;
}
.studio-review-record blockquote,.studio-human-reason {
  margin:10px 0;
  padding:0 0 0 12px;
  border-left:2px solid #c5d4b9;
  font-size:12px;
  overflow-wrap:anywhere;
}
.studio-review-record p {
  font-size:10px;
  color:var(--muted);
}
.studio-policy-counts {
  display:flex;
  gap:20px;
  padding:12px 0;
  font-size:11px;
  color:var(--muted);
}
.studio-policy-counts strong {
  color:var(--forest);
  font-size:19px;
  margin-right:3px;
}
.studio-ranking {
  padding:0;
  list-style:none;
  margin-top:14px;
}
.studio-ranking li {
  padding:12px 0;
  border-top:1px solid var(--line);
}
.studio-ranking strong {
  font-size:12px;
}
.studio-ranking p {
  color:var(--muted);
  font-size:11px;
}
.decision-studio .evidence-chips {
  gap:6px;
  margin:11px 0;
}
.decision-studio .evidence-chip {
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:left;
  max-width:100%;
  font-size:10px;
  line-height:1.6;
  min-height:32px;
}
.studio-loading {
  display:flex;
  align-items:center;
  gap:12px;
  min-height:95px;
  color:var(--muted);
  font-size:12px;
}
.studio-loading .spinner {
  width:20px;
  height:20px;
  flex:0 0 20px;
}
.studio-error {
  background:#faf4e9;
  border:1px solid #eadfc9;
  padding:14px;
  border-radius:8px;
  color:#795727;
  font-size:12px;
}
.decision-studio button:focus-visible,.studio-summary:focus-visible,
.decision-studio summary:focus-visible,.studio-audit-link:focus-visible {
  outline:3px solid #9caf84;
  outline-offset:3px;
}
@media (max-width:1000px) {
  .decision-studio {
    grid-row:3;
  }
}
@media (max-width:700px) {
  .studio-summary {
    padding:17px 15px;
    gap:9px;
  }
  .studio-body {
    padding:0 15px 17px;
  }
  .studio-summary strong {
    font-size:16px;
  }
  .studio-readonly {
    font-size:9px;
    padding:3px 6px;
  }
  .studio-summary-icon {
    display:none;
  }
  .studio-choice-detail,.studio-trail-detail {
    padding:15px 12px;
  }
  .studio-facts {
    grid-template-columns:minmax(0,1fr);
  }
  .studio-state-change {
    gap:8px;
    font-size:9px;
  }
  .studio-state-change strong {
    display:block;
    margin:2px 0 0;
  }
}
@media (prefers-reduced-motion:reduce) {
  .studio-chevron {
    transition:none;
  }
}
