:root{
  --accent: #F43676;
  --card-bg: #ffffff;
  --muted: #6b6b6b;
  --radius: 14px;
  --shadow: 0 8px 30px rgba(9,9,10,0.06);
  --maxwidth: 760px;
  --gap: 12px;
}
.mdcat-card{
  max-width: var(--maxwidth);
  margin: 18px auto;
  padding: 18px;
  background: var(--card-bg);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  font-family: system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  color: #111;
}
.mdcat-card h2{
  margin:0 0 6px;
  font-size:20px;
  color:var(--accent);
}
.mdcat-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}
.lead{margin:8px 0 14px;color:var(--muted);font-size:14px}
.section{border-top:1px solid rgba(0,0,0,0.04);padding-top:12px;margin-top:10px}
.row{display:flex;gap:10px;flex-wrap:wrap}
label{flex:1 1 180px;display:block;font-size:13px}
.input-with-i{display:flex;align-items:center;gap:8px}
input[type="number"]{
  width:100%;
  padding:10px 12px;
  border-radius:8px;
  border:1px solid #e6e6e6;
  font-size:14px;
  box-sizing:border-box;
}
.info-btn{
  background:transparent;
  border:1px solid rgba(0,0,0,0.08);
  width:34px;height:34px;border-radius:8px;
  display:inline-grid;place-items:center;font-weight:700;color:var(--accent);
  cursor:pointer;
}
.info-btn:focus{outline:2px solid rgba(244,54,118,0.15)}
.tooltip{
  display:none;
  background: #fff9fb;
  border-left:4px solid var(--accent);
  padding:10px;
  margin-top:8px;
  border-radius:8px;
  font-size:13px;
  color:#222;
  box-shadow: 0 6px 20px rgba(0,0,0,0.03);
}
.tooltip.show{display:block}
.error{color:#b00020;font-size:13px;margin-top:6px;min-height:18px}

.actions{display:flex;gap:10px;margin-top:14px}
.btn{
  padding:9px 14px;border-radius:10px;border:1px solid transparent;background:var(--card-bg);cursor:pointer;
}
.btn.small{padding:6px 10px;font-size:13px}
.btn.primary{background:var(--accent);color:#fff;border-color:rgba(0,0,0,0.02)}
.btn.light{background:transparent;border:1px solid #e7e7e7}
.btn:active{transform:translateY(1px)}
.result-area{margin-top:18px}
.result-card{padding:12px;border-radius:10px;background:linear-gradient(180deg,#fff,#fff);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.02)}
.result-card p{margin:8px 0;color:#111}
.result-card ul{margin:6px 0 0 18px}
.result-actions{display:flex;gap:8px;margin-top:10px}

/* Hidden util */
.hidden{display:none}

/* footnote */
.footnote{font-size:12px;color:var(--muted);margin-top:12px}

/* Responsive */
@media (max-width:640px){
  .mdcat-card{padding:14px;border-radius:12px}
  .row{flex-direction:column}
  .theme-actions{display:inline-block}
}

/* Dark mode */
.mdcat-card.dark{
  background:#0f1113;color:#e6e6e9;
  box-shadow:none;border:1px solid rgba(255,255,255,0.03)
}
.mdcat-card.dark input{background:#0b0b0c;color:#eee;border:1px solid rgba(255,255,255,0.06)}
.mdcat-card.dark .tooltip{background:#111214;border-left-color:var(--accent);color:#dedede}
.mdcat-card.dark .info-btn{border-color:rgba(255,255,255,0.04)}