#cpc{
  --bg: #000000;
  --panel: #111111;
  --panel-2: #1c1c1c;
  --text: #ffffff;
  --muted: #e6e6e6;      
  --accent: #F2E6A6;
  --accent-ink: #000000;
  --line: #5a5a5a;
  --danger: #ffb4a8;
  --focus: #F2E6A6;
  --radius: 14px;
}
#cpc, #cpc *{ box-sizing: border-box; }
#cpc{
  margin: 0; background: var(--bg); color: var(--text);
  
  font-size: 20px; line-height: 1.45; font-weight: 500;
  overflow-x: hidden;
}
#cpc .wrap{ max-width: 720px; margin: 0 auto; padding: 16px; }
#cpc h1,#cpc h2,#cpc h3{ line-height: 1.2; font-weight: 800; margin: 0 0 12px; overflow-wrap: anywhere; }
#cpc h1{ font-size: 1.6rem; }
#cpc h2{ font-size: 1.35rem; }
#cpc h3{ font-size: 1.15rem; }
#cpc p{ margin: 0 0 14px; }
#cpc a{ color: var(--accent); font-weight: 700; }
#cpc :focus-visible{ outline: 4px solid var(--focus); outline-offset: 3px; }
#cpc .topbar{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; margin-bottom: 14px; }
#cpc .brand{ font-weight: 800; font-size: 1rem; letter-spacing: .02em; }
#cpc .lang{ display: flex; gap: 6px; }
#cpc button,#cpc .btn{
  font: inherit; font-weight: 800; min-height: 52px; min-width: 52px;
  padding: 10px 18px; border-radius: var(--radius); cursor: pointer;
  border: 3px solid var(--text); background: var(--bg); color: var(--text);
  text-decoration: none; display: inline-flex; align-items: center; justify-content: center; text-align: center;
}
#cpc button.primary,#cpc .btn.primary{ background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
#cpc button[aria-pressed="true"]{ background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
#cpc button:disabled{ opacity: .55; cursor: not-allowed; }
#cpc .btn-row{ display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0; }
#cpc .btn-row > *{ flex: 1 1 140px; }
#cpc .disclaimer{
  border: 4px solid var(--accent); background: var(--panel); border-radius: var(--radius);
  padding: 16px; margin: 0 0 18px;
}
#cpc .disclaimer strong.tag{
  display: inline-block; background: var(--accent); color: var(--accent-ink);
  padding: 4px 10px; border-radius: 8px; margin-bottom: 8px; font-size: 1.05rem;
}
#cpc .disclaimer p:last-child{ margin-bottom: 0; }
#cpc .cta{
  background: var(--accent); color: var(--accent-ink); border-radius: var(--radius);
  padding: 18px 16px; margin: 18px 0; text-align: center;
}
#cpc .cta p{ margin: 0 0 8px; font-weight: 700; }
#cpc .cta a.call{
  display: block; background: var(--bg); color: var(--text); text-decoration: none;
  font-size: 1.55rem; font-weight: 900; padding: 14px 10px; border-radius: var(--radius);
  min-height: 60px; overflow-wrap: anywhere;
}
#cpc .cta .small{ font-size: 1rem; margin-top: 8px; }
#cpc .progress{ display: flex; gap: 6px; margin: 6px 0 16px; }
#cpc .progress span{ flex: 1; height: 10px; border-radius: 6px; background: var(--line); }
#cpc .progress span.on{ background: var(--accent); }
#cpc .stepnum{ font-weight: 800; color: var(--accent); margin-bottom: 4px; }
#cpc .card{ background: var(--panel); border: 2px solid var(--line); border-radius: var(--radius); padding: 14px; margin: 0 0 14px; }
#cpc .help{ color: var(--muted); font-size: 1.02rem; }
#cpc label{ display: block; font-weight: 800; margin: 0 0 6px; }
#cpc input[type="search"],#cpc input[type="text"],#cpc select{
  font: inherit; width: 100%; min-height: 56px; padding: 10px 14px;
  border: 3px solid var(--text); border-radius: var(--radius); background: var(--bg); color: var(--text);
}
#cpc .check{ display: flex; gap: 12px; align-items: flex-start; min-height: 52px; padding: 10px 0; cursor: pointer; font-weight: 700; }
#cpc .check input{ width: 30px; height: 30px; flex: 0 0 30px; margin-top: 2px; accent-color: var(--accent); }
#cpc .chips{ display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
#cpc .chips button{ flex: 0 0 auto; min-width: 52px; padding: 8px 12px; }
#cpc .results{ list-style: none; margin: 10px 0 0; padding: 0; }
#cpc .results li{ margin: 0 0 8px; }
#cpc .results button{
  width: 100%; display: block; text-align: left; font-weight: 600; padding: 12px 14px;
  border-width: 2px; border-color: var(--line);
}
#cpc .results .lv{ display: inline-block; background: var(--accent); color: var(--accent-ink); font-weight: 900; border-radius: 8px; padding: 0 8px; margin-right: 8px; }
#cpc .results .st{ font-weight: 800; }
#cpc .picked{ border: 3px solid var(--accent); }
#cpc .picked .row{ display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between; }
#cpc .stepper-row{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 0; border-bottom: 1px solid var(--line); }
#cpc .stepper-row:last-child{ border-bottom: 0; }
#cpc .stepper-row .lbl{ flex: 1 1 140px; font-weight: 700; overflow-wrap: anywhere; }
#cpc .stepper-row .pts{ display: block; font-size: .95rem; color: var(--muted); font-weight: 600; }
#cpc .stepper{ display: flex; align-items: center; gap: 6px; flex: 0 0 auto; }
#cpc .stepper button{ width: 52px; padding: 0; font-size: 1.6rem; }
#cpc .stepper output{ min-width: 2.2ch; text-align: center; font-size: 1.4rem; font-weight: 900; }
#cpc .big-number{ font-size: 3rem; font-weight: 900; line-height: 1; color: var(--accent); overflow-wrap: anywhere; }
#cpc .verdict{ font-size: 1.3rem; font-weight: 900; padding: 14px; border-radius: var(--radius); margin: 12px 0; }
#cpc .verdict.prison{ background: var(--accent); color: var(--accent-ink); }
#cpc .verdict.noprison{ border: 3px solid var(--accent); }
#cpc table.breakdown{ width: 100%; border-collapse: collapse; font-size: 1rem; }
#cpc table.breakdown td{ padding: 8px 4px; border-bottom: 1px solid var(--line); vertical-align: top; overflow-wrap: anywhere; }
#cpc table.breakdown td.n{ text-align: right; font-weight: 800; white-space: nowrap; }
#cpc table.breakdown tr.total td{ font-weight: 900; border-top: 3px solid var(--text); }
#cpc .warn{ border-left: 6px solid var(--danger); padding: 8px 12px; margin: 10px 0; background: var(--panel-2); }
#cpc .sr-only{ position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
#cpc footer{ margin-top: 24px; font-size: 1rem; color: var(--muted); }
@media (max-width: 340px) {#cpc{ font-size: 18px; }#cpc .wrap{ padding: 12px; }#cpc h1{ font-size: 1.35rem; }#cpc .big-number{ font-size: 2.4rem; }#cpc .cta a.call{ font-size: 1.25rem; }#cpc .stepper button{ width: 46px; min-width: 46px; }#cpc button,#cpc .btn{ padding: 8px 12px; }}
#cpc .block{ display: block; }
#cpc .btn-row.col{ flex-direction: column; }
#cpc .btn-row.col > *{ flex: 0 0 auto; width: 100%; }
#cpc{ padding:0 0 24px; }
#cpc .cpc-foot p{ font-size:17px; color:#FFFFFF; }
