
.comma-shell{
  padding:16px;border:1px solid var(--tl-line,#596163);border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,0)),var(--tl-panel-2,#383e40);
  color:var(--tl-cream,#eadfc8);
}
.comma-equation,.comma-derivation,.comma-cents,.comma-check,.theory-description{
  border:1px solid var(--tl-line,#596163);border-radius:10px;background:var(--tl-panel,#303638)
}
.comma-equation,.comma-derivation{padding:14px}
.block-head{display:grid;gap:3px}
.block-head span{color:var(--tl-muted,#aea491);font-size:.68rem}
.block-head strong{color:var(--tl-cream,#eadfc8);font-size:1rem;font-weight:850}

.equation-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;margin-top:12px}
.equation-compare article{
  display:grid;gap:5px;padding:12px;border:1px solid rgba(231,217,186,.09);border-radius:8px;
  background:rgba(255,255,255,.012);text-align:center
}
.equation-compare span{color:var(--tl-muted,#aea491);font-size:.70rem}
.equation-compare strong{color:var(--tl-cream,#eadfc8)}
.neq{color:var(--tl-copper-2,#bf8060);font-size:1.45rem;font-weight:900}

.comma-derivation{margin-top:10px}
.derivation-flow{
  display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:center;margin-top:12px
}
.math-step{
  position:relative;display:grid;gap:4px;padding:12px 10px;border:1px solid rgba(231,217,186,.09);
  border-radius:8px;background:rgba(255,255,255,.012);text-align:center
}
.math-step>span{position:absolute;left:7px;top:6px;color:var(--tl-muted,#aea491);font-size:.58rem}
.math-step.accent{border-color:rgba(191,128,96,.38)}
.derivation-flow>b{color:var(--tl-copper-2,#bf8060)}

.comma-cents{display:grid;grid-template-columns:1.35fr 1fr;gap:10px;margin-top:10px;padding:12px}
.cents-card,.cents-result{display:grid;gap:6px;padding:10px 12px;border:1px solid rgba(231,217,186,.09);border-radius:8px;background:rgba(255,255,255,.012)}
.cents-card span,.cents-result span{color:var(--tl-muted,#aea491);font-size:.69rem}
.cents-result{border-left:3px solid var(--tl-copper-2,#bf8060)}

.comma-check{
  margin-top:10px;padding:11px 13px;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center
}
.comma-check span{color:var(--tl-muted,#aea491);font-size:.70rem}
.comma-check strong{text-align:center;color:var(--tl-cream,#eadfc8)}

.theory-description{margin-top:10px;overflow:hidden}
.theory-description summary{display:flex;align-items:center;gap:12px;padding:12px 13px;list-style:none;cursor:pointer}
.theory-description summary::-webkit-details-marker{display:none}
.theory-description summary>span{color:var(--tl-cream,#eadfc8);font-size:.88rem;font-weight:850}
.theory-description summary>small{margin-left:auto;color:var(--tl-muted,#aea491);font-size:.70rem}
.theory-description summary::after{content:"+";color:var(--tl-copper-2,#bf8060);font-weight:900}
.theory-description[open] summary::after{content:"−"}
.description-body{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:11px 13px 14px;border-top:1px solid rgba(255,255,255,.05)}
.description-body p{margin:0;color:var(--tl-cream-2,#d5c8af);font-size:.88rem;line-height:1.58}

mjx-container{margin:.25em 0!important}

@media(max-width:900px){
  .equation-compare,.comma-cents,.comma-check{grid-template-columns:1fr}
  .neq{text-align:center}
  .derivation-flow{grid-template-columns:1fr}
  .derivation-flow>b{transform:rotate(90deg);text-align:center}
  .description-body{grid-template-columns:1fr}
}


/* ---------- definition ---------- */

.comma-definition{
  display:grid;
  grid-template-columns:1.7fr .8fr;
  gap:18px;
  align-items:center;
  padding:12px 14px;
  margin-bottom:10px;
  border:1px solid var(--tl-line,#596163);
  border-left:3px solid var(--tl-copper-2,#bf8060);
  border-radius:10px;
  background:var(--tl-panel,#303638);
}

.comma-definition>div{
  display:grid;
  gap:6px;
}

.comma-definition span{
  color:var(--tl-muted,#aea491);
  font-size:.70rem;
  font-weight:800;
}

.comma-definition p{
  margin:0;
  color:var(--tl-cream-2,#d5c8af);
  font-size:.88rem;
  line-height:1.55;
}

.comma-definition>strong{
  color:var(--tl-cream,#eadfc8);
  font-size:1rem;
  text-align:center;
}

@media(max-width:760px){
  .comma-definition{
    grid-template-columns:1fr;
  }
}
