.epoxies-page { --epoxies-accent:#6cd4c8; --epoxies-muted:#b1c0bd; }
.epoxies-page .detail { max-width:none; }
.epoxies-demo { margin:30px 0; font-family:var(--font-ui); color:#e8e4dd; }
.epoxies-demo [hidden] { display:none !important; }
.epoxies-demo figcaption { display:grid; gap:8px; margin-bottom:20px; }
.epoxies-demo figcaption strong { font-size:21px; font-weight:500; }
.epoxies-demo figcaption span { font-size:12px; color:var(--epoxies-muted); }
.epoxies-controls, .epoxies-actions { display:flex; flex-wrap:wrap; gap:8px; }
.epoxies-demo button { min-height:44px; padding:10px 14px; border:1px solid #344642; border-radius:5px; background:#111919; color:#d3dfda; cursor:pointer; font:13px/1.4 var(--font-ui); }
.epoxies-demo button[aria-pressed="true"] { color:var(--epoxies-accent); border-color:var(--epoxies-accent); background:#142e2a; }
.epoxies-demo button:hover:not(:disabled) { background:#1a302b; }
.epoxies-demo #epoxies-next { display:inline-flex; align-items:center; gap:14px; background:var(--epoxies-accent); border-color:var(--epoxies-accent); color:#061311; font-weight:600; }
.epoxies-demo #epoxies-next:hover:not(:disabled) { background:#8ee2d8; border-color:#8ee2d8; }
.epoxies-demo #epoxies-next:disabled { background:#111919; border-color:#344642; color:#d3dfda; }
.epoxies-step-hint { margin:12px 0 0; color:var(--prose); font:calc(14px + var(--prose-size-increase))/1.7 var(--font-body); }
.epoxies-demo button:disabled { opacity:.45; cursor:default; }
.epoxies-demo button:focus-visible, .epoxies-method summary:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.epoxies-goal { display:flex; flex-wrap:wrap; gap:8px 20px; margin:22px 0; padding:17px; border:1px solid #344642; border-radius:5px; font-size:12px; line-height:1.5; color:var(--epoxies-muted); }
.epoxies-goal strong { flex-basis:100%; color:#e8e4dd; font-size:15px; font-weight:500; }
.epoxies-goal span { white-space:nowrap; }
.epoxies-progress { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 18px; margin:0 0 14px; font-size:12px; line-height:1.6; color:var(--epoxies-muted); font-variant-numeric:tabular-nums; }
.epoxies-progress strong { color:var(--epoxies-accent); font-size:18px; font-weight:500; }
.epoxies-chart { border:1px solid #283936; background:#0a1211; border-radius:6px; overflow:hidden; }
.epoxies-chart svg { display:block; width:100%; height:auto; font-family:var(--font-ui); }
.epoxies-legend { font:12px/1.7 var(--font-ui); color:var(--epoxies-muted); margin:12px 0 20px; }
.epoxies-result { margin:22px 0; padding:18px; border-radius:5px; background:#122421; }
.epoxies-result strong { display:block; color:var(--epoxies-accent); font:500 17px/1.5 var(--font-ui); }
.epoxies-result p { margin:9px 0 0; color:var(--prose); font:calc(15px + var(--prose-size-increase))/1.75 var(--font-body); }
.epoxies-measurements { width:100%; border-collapse:collapse; font-size:13px; line-height:1.5; font-variant-numeric:tabular-nums; }
.epoxies-measurements caption { text-align:left; color:#d3dfda; padding:0 0 12px; font-size:13px; }
.epoxies-measurements th, .epoxies-measurements td { padding:10px 12px; text-align:right; border-bottom:1px solid #263632; font-weight:400; color:var(--epoxies-muted); }
.epoxies-measurements th:first-child { text-align:left; padding-left:8px; color:#d3dfda; }
.epoxies-measurements th span { display:block; font-size:10px; color:#93a29b; }
.epoxies-measurements .epoxies-candidate { background:#101e1b; }
.epoxies-measurements .epoxies-candidate th { color:var(--epoxies-accent); }
.epoxies-page .epoxies-followup { margin-top:30px; }
.epoxies-method { max-width:var(--prose-width); margin-top:26px; color:var(--prose); font:calc(14px + var(--prose-size-increase))/1.75 var(--font-body); }
.epoxies-method summary { cursor:pointer; padding:8px 0; color:#e8e4dd; font:13px/1.5 var(--font-ui); }
.epoxies-method p { margin:12px 0 0; }
.epoxies-static-note { color:var(--prose); font:calc(14px + var(--prose-size-increase))/1.7 var(--font-body); }
@media (max-width:600px) {
  .epoxies-demo button { font-size:12px; padding:9px 11px; }
  .epoxies-goal { padding:14px; gap:8px 14px; }
  .epoxies-result { padding:14px; }
  .epoxies-measurements { font-size:12px; }
  .epoxies-measurements th, .epoxies-measurements td { padding:9px 6px; }
}
@media print { .epoxies-controls, .epoxies-actions, .epoxies-step-hint { display:none !important; } }
