:root{
  --p:#441752;
  --ink:#1f1b24;
  --mut:#6b6473;
  --bd:#E7DDF1;
  --fx:#F6F1FB;
  --bg:#ffffff;
  --radius:14px;
  --shadow:0 1px 2px rgba(0,0,0,.04), 0 8px 22px rgba(0,0,0,.06);
}

/* ===== WRAP ===== */
.sc-decisions{
  font-family:Rubik,system-ui,sans-serif;
  color:var(--ink);
  max-width:1200px;
  margin:0 auto;
  padding:12px 20px 56px;
}

/* ===== TOP STRIP (Hero) ===== */
.dec-hero{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;
  gap:12px;
  background:var(--p);
  color:#fff;
  border-radius:10px;
  padding:10px 12px;
  box-shadow:var(--shadow);
}
.dec-hero__title{
  margin:2px 0;
  line-height:1.25;
  font-weight:700;
  font-size:clamp(.95rem, .8vw + .6rem, 1.15rem);
  letter-spacing:.15px;
}
.dec-hero__cta,
.dec-hero__cta:link,
.dec-hero__cta:visited{
  background:rgba(255,255,255,.20);
  color:#fff;
  border:0;
  border-radius:10px;
  font-weight:700;
  font-size:clamp(.9rem, 1.1vw + .5rem, 1rem);
  line-height:1.3;
  letter-spacing:.1px;
  white-space:normal;
  overflow-wrap:anywhere;
  hyphens:auto;
  text-wrap:balance;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  max-width:100%;
}
.dec-hero__cta:hover{ background:rgba(255,255,255,.30); }
.dec-hero__cta:focus{ outline:2px solid #fff; outline-offset:2px; }

@media (max-width: 768px){
  .dec-hero__cta{ width:100%; text-align:center; padding:12px 14px; }
}
@media (max-width: 420px){
  .dec-hero__cta{ font-size:.92rem; border-radius:9px; }
}

/* ===== DISCLAIMER ===== */
.dec-disclaimer{
  margin-top:14px;
  border-left:6px solid #f1b9be;
  background:#f9e9eb;
  color:#201a22;
  border-radius:10px;
  padding:14px 16px;
  box-shadow:var(--shadow);
}
.dec-disclaimer__title{
  margin:.1rem 0 .35rem 0;
  color:#ff1f1f;
  font-size:1.05rem;
  font-weight:800;
}
.dec-disclaimer__text{
  margin:0;
  line-height:1.5;
}

/* ===== SEARCH BAR ===== */
.dec-bar{
  display:flex;gap:10px;align-items:center;flex-wrap:wrap;
  background:var(--bg);border:1px solid var(--bd);border-radius:12px;
  padding:10px;box-shadow:var(--shadow);position:sticky;top:64px;z-index:3;
  margin-top:12px;
}
.dec-field{position:relative;flex:1 1 420px}
.dec-field input{
  width:100%;padding:12px 38px 12px 14px;border:1px solid var(--bd);border-radius:10px;outline:none;background:#fff;
  font:inherit;color:var(--ink)
}
.dec-field input:focus{border-color:#d9c7ee;box-shadow:0 0 0 4px #f2ebff}
.dec-clear{
  position:absolute;right:6px;top:50%;transform:translateY(-50%);
  width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:#8a8197;cursor:pointer
}
.dec-clear:hover{background:#f4eefb}
.dec-status{color:#6e6380;font-size:.9rem}

/* ===== TABLE WRAPPER ===== */
.dec-tablewrap{
  margin-top:12px;
  background:#fff;border:1px solid var(--bd);border-radius:12px;
  box-shadow:var(--shadow);overflow:hidden
}

/* ===== TABLE ===== */
.dec-table{
  width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;
  min-width:720px;
}

/* Head (sticky) */
.dec-table thead th{
  position:sticky;top:0;background:linear-gradient(180deg,#faf7ff,#fff 65%);
  color:#3a2a54;text-align:left;font-weight:800;padding:12px 14px;border-bottom:1px solid var(--bd);z-index:1
}
.dec-table thead th.col-title{ width:68%; }
.dec-table thead th.col-case { width:16%; }
.dec-table thead th.col-date { width:16%; }

/* Body rows */
.dec-table tbody tr{ background:#fff; transition:background .12s ease; }
.dec-table tbody tr:nth-child(odd){ background:#fcfaff; }
.dec-table tbody tr:hover{ background:#f8f4fb; }

.dec-table td{
  padding:12px 14px;
  vertical-align:top;
  border-bottom:1px solid var(--bd);
  color:#2b2140;
  line-height:1.2;
}

/* ===== TITLE (2-line ellipsis) ===== */
.td-title{ overflow:hidden; }
.dec-title{
  font-size:clamp(.92rem, 1.2vw, 1.0rem);
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
  overflow:hidden; text-overflow:ellipsis; white-space:normal;
  line-height:1.25; max-height:calc(1.25em * 2);
  font-weight:800; color:#2b1740; text-decoration:none;
}
.dec-title:hover{ color:var(--p); text-decoration:underline; }

/* ===== CASE NO. & DATE ===== */
.td-case, .td-date{ color:#4a3e59; }
.td-case{
  font-weight:700;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
  hyphens:auto;
  font-size:.95rem;
}

/* ===== LOAD MORE / EMPTY ===== */
.dec-more{ display:flex; justify-content:center; margin-top:14px; }
.btn-tonal,
.btn-tonal:link,
.btn-tonal:visited{
  display:inline-block;padding:10px 14px;border-radius:12px;background:var(--fx);border:1px solid var(--bd);
  color:var(--p);font-weight:800;text-decoration:none;cursor:pointer
}
.btn-tonal:hover{ background:#efe6fb }

.dec-empty{
  border:1px dashed var(--bd);border-radius:12px;padding:18px;text-align:center;margin-top:12px;color:var(--mut)
}

/* ===== ACCESSIBILITY FOCUS ===== */
a.dec-title:focus,
.btn-tonal:focus,
.dec-clear:focus,
.dec-field input:focus{
  outline:none;
  box-shadow:0 0 0 4px #f2ebff;
  border-color:#d9c7ee;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1200px){
  .sc-decisions{ padding:12px 16px 48px; }
}
@media (max-width: 1024px){
  .dec-hero{ padding:10px 12px; gap:10px; }
  .dec-bar{ top:56px; }
}
@media (max-width: 768px){
  .sc-decisions{ padding:10px 14px 40px; }
  .dec-hero{ flex-direction:column; align-items:flex-start; }
  .dec-hero__cta{ width:100%; text-align:center; }
  .dec-tablewrap{ overflow:auto; }
  .dec-table{ min-width:600px; }
}
@media (max-width: 480px){
  .dec-hero__title{ font-size:1rem; }
  .dec-hero__cta{ padding:10px 12px; }
  .dec-field input{ padding:10px 36px 10px 12px; }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .dec-table tbody tr{ transition:none; }
}
