/* Carbon-only layout. Colours, font, cards and controls use Electricity tokens. */
.cc-root .cc-body{width:100%;max-width:1050px;margin:0 auto;padding:20px 22px 40px;flex-shrink:0}
.cc-root .cc-stage{border:1px solid var(--ec-border);border-radius:12px;background:var(--ec-deep);padding:16px;margin:18px 0;overflow:hidden}
.cc-root svg{display:block;width:100%;max-height:440px;margin:auto}
.cc-root .cc-stage>svg{min-height:200px}
.cc-root .bond{stroke:var(--ec-light);stroke-width:3;fill:none;stroke-linecap:round}
.cc-root .faint{stroke:var(--ec-border);stroke-width:2;fill:none}
.cc-root .atom{fill:var(--ec-deep);stroke:var(--ec-border);stroke-width:1.5}
.cc-root .highlight{fill:var(--ec-surface);stroke:var(--ec-cream);stroke-width:3}
.cc-root .symbol{fill:var(--ec-text);font:600 26px Manrope,sans-serif}
.cc-root .label{fill:var(--ec-light);font:600 23px Manrope,sans-serif}
.cc-root .tiny{fill:var(--ec-secondary);font:500 18px Manrope,sans-serif}
.cc-root .electron{fill:var(--ec-mint)}
.cc-root .electron.other{fill:var(--ec-cream)}
.cc-root .lone{fill:var(--ec-secondary)}
.cc-root .orbit,.cc-root .glass{fill:none;stroke:var(--ec-secondary);stroke-width:3}
.cc-root .nucleus{fill:var(--ec-surface);stroke:var(--ec-mint);stroke-width:2}
.cc-root .tail{stroke:var(--ec-cream);stroke-width:5;fill:none}
.cc-root .head{fill:var(--ec-mint);stroke:var(--ec-light);stroke-width:2}
.cc-root .oil{fill:#E6C770}.cc-root .foam,.cc-root .scum{fill:var(--ec-cream);stroke:var(--ec-muted);stroke-width:1}
.cc-root .fabric{stroke:var(--ec-muted);stroke-width:10}
.cc-root .cc-caption,.cc-root .cc-card{background:var(--ec-deep);border:1px solid var(--ec-border);border-radius:12px;padding:20px;margin:18px 0}
.cc-root .cc-caption>p:last-child{font-size:20px;line-height:1.5;margin:0}
.cc-root .cc-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end}
.cc-root .cc-control{display:flex;flex-direction:column;gap:7px;font-size:14px;color:var(--ec-secondary);max-width:100%;min-width:0;flex:1}
.cc-root select{font:inherit;font-size:16px;color:var(--ec-text);background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:10px;padding:12px;max-width:100%;width:100%;min-width:0}
.cc-root .cc-molecule{margin:0 auto;width:100%;max-width:760px}
.cc-root .cc-molecule svg{height:320px}
.cc-root figcaption,.cc-root .cc-note{font-size:13px;color:var(--ec-secondary);line-height:1.5;margin:12px 0}
.cc-root .cc-compare,.cc-root .cc-structures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.cc-root .cc-structures:has(> :nth-child(3)){grid-template-columns:1fr}
.cc-root .cc-observe{border-left:2px solid var(--ec-mint);padding:10px 16px;color:var(--ec-light)}
.cc-root h2{font-size:22px;line-height:1.4;margin:8px 0 18px}.cc-root h3{font-size:18px;line-height:1.4}
.cc-root .cc-equation{padding:18px 0;border-top:1px solid var(--ec-border);margin:16px 0}
.cc-root .cc-equation p:last-child,.cc-root .cc-formula{font-size:clamp(20px,3vw,28px);line-height:1.8;overflow-wrap:anywhere}
.cc-root .cc-table{overflow:auto;margin:20px 0}.cc-root table{width:100%;border-collapse:collapse;font-size:15px}.cc-root th,.cc-root td{border:1px solid var(--ec-border);padding:12px;text-align:left}.cc-root caption{text-align:left;color:var(--ec-mint);padding-bottom:10px}
.cc-root summary{cursor:pointer;font-weight:600;padding:3px 0}.cc-root .cc-map-links,.cc-root .cc-question-links{display:grid;gap:6px}.cc-root .cc-map-links a,.cc-root .cc-question-links a{padding:12px;color:var(--ec-light);border-bottom:1px solid var(--ec-border);line-height:1.5;text-decoration:none}.cc-root .cc-map-links small{float:right;color:var(--ec-muted)}
.cc-root .cc-count{margin-left:auto;font-size:12px;color:var(--ec-secondary)}.cc-root .ec-controls>[data-action=next]{margin-left:auto}.cc-root .ec-chapter-title{white-space:normal}
.cc-root .cc-answer{margin-top:24px}.cc-root .cc-answer>svg{max-height:380px}.cc-root .cc-answer p{line-height:1.7}
@media(max-width:600px){.cc-root .cc-body{padding:16px 16px 32px}.cc-root .ec-heading{padding:20px 16px 0}.cc-root .cc-stage{padding:8px}.cc-root .cc-card,.cc-root .cc-caption{padding:16px}.cc-root .cc-compare{grid-template-columns:1fr}.cc-root .cc-molecule svg{height:260px}.cc-root .cc-structures{grid-template-columns:1fr}.cc-root .cc-controls{align-items:stretch}.cc-root .cc-control{flex-basis:44%}.cc-root .ec-chapter-title{font-size:12px}.cc-root .cc-caption>p:last-child{font-size:18px}.cc-root .ec-action{padding:10px 12px}.cc-root th,.cc-root td{padding:9px}}
@media(min-width:1500px){.cc-root .cc-body{max-width:1280px}.cc-root .cc-stage svg{max-height:520px}.cc-root .cc-molecule svg{height:420px}.cc-root .cc-caption>p:last-child{font-size:23px}}
@media(prefers-reduced-motion:reduce){.cc-root *{transition:none!important}}

.cc-root .gas{fill:none;stroke:var(--ec-mint);stroke-width:2}
.cc-root h2,.cc-root h3{color:var(--ec-text)}
.cc-root .cc-molecule{overflow-x:auto}
.cc-root.cc-enlarged .cc-molecule svg{min-width:620px;height:380px}

.cc-root .bond.emphasized{stroke:var(--ec-cream);stroke-width:4}
