/* Communication 101 — visual operating system */
.communication{--cm-blue:#397b8f;--cm-gold:#b78432;--cm-coral:#b75d4b;--cm-green:#4f8067;--cm-violet:#75699b;--cm-ink:var(--text);--cm-paper:var(--surface);--cm-soft:color-mix(in srgb,var(--cm-blue) 7%,var(--surface));--fs-cm:.98rem}
[data-theme="dark"] .communication{--cm-blue:#70b3c4;--cm-gold:#d2aa62;--cm-coral:#db8978;--cm-green:#78ad8f;--cm-violet:#a89bd0}
body:has(.communication) #pointcloud-bg,body:has(.communication) .shape-toggle-btn{display:none!important}.communication .page-content{max-width:64rem}.communication .page-header{margin-bottom:1.2rem}.communication .page-header h1{display:none}.communication .page-header .subtitle{max-width:none}
.cm-progress{position:fixed;inset:0 auto auto 0;z-index:80;width:100%;height:3px;pointer-events:none}.cm-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cm-blue),var(--cm-gold),var(--cm-coral))}
.cm-rail{position:sticky;top:4.25rem;z-index:12;display:grid;grid-template-columns:repeat(10,1fr);margin:0 0 1.4rem;border:1px solid var(--border-ui);border-radius:var(--radius-md);overflow:hidden;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px)}.cm-rail a{display:grid;gap:.15rem;padding:.52rem .25rem;color:var(--muted);text-align:center;text-decoration:none;border-right:1px solid var(--line);font-size:.68rem}.cm-rail a:last-child{border:0}.cm-rail b{color:var(--cm-blue);font:700 .58rem/1 "Space Grotesk",sans-serif}.cm-rail a.is-current{color:var(--text);box-shadow:inset 0 -3px var(--cm-blue);background:var(--surface)}
.cm-prose p,.cm-prose li,.cm-hero p{font-size:var(--fs-cm);line-height:1.72;color:var(--muted)}.cm-part{padding:2.3rem 0;scroll-margin-top:7rem;border-top:1px solid var(--line)}.cm-heading{display:grid;grid-template-columns:2.5rem 1fr;gap:.7rem;align-items:start;margin-bottom:1.4rem}.cm-heading>span{padding-top:.35rem;color:var(--cm-blue);font:700 .72rem/1 "Space Grotesk",sans-serif}.cm-heading h2{margin:0;color:var(--text);font:650 clamp(1.6rem,3vw,2.35rem)/1.08 "Space Grotesk",sans-serif;letter-spacing:-.035em}.cm-heading p{margin:.35rem 0 0;max-width:62ch}.cm-kicker{color:var(--cm-blue)!important;text-transform:uppercase;letter-spacing:.12em;font:700 .73rem/1.3 "Space Grotesk",sans-serif!important}
.cm-hero{padding:1.2rem 0 3rem;scroll-margin-top:7rem}.cm-hero-copy h1{max-width:15ch;margin:.4rem 0 .8rem;color:var(--text);font:650 clamp(2.6rem,7vw,5.5rem)/.94 "Space Grotesk",sans-serif;letter-spacing:-.06em}.cm-hero-copy>p:last-child{max-width:58ch;font-size:1.08rem}.cm-transfer{display:grid;grid-template-columns:1.2fr .8fr 1fr;align-items:center;gap:1rem;margin:2rem 0;padding:clamp(1rem,3vw,1.6rem);border:1px solid var(--border-ui);border-radius:var(--radius-lg);background:linear-gradient(135deg,color-mix(in srgb,var(--cm-violet) 8%,var(--surface)),color-mix(in srgb,var(--cm-blue) 8%,var(--surface)))}.cm-mind{position:relative;min-height:12rem}.cm-mind span{position:absolute;padding:.3rem .55rem;border:1px solid color-mix(in srgb,var(--cm-violet) 45%,var(--line));border-radius:999px;background:var(--surface);color:var(--text);font-size:.72rem}.cm-mind span:nth-child(1){left:3%;top:10%}.cm-mind span:nth-child(2){right:5%;top:4%}.cm-mind span:nth-child(3){left:33%;top:34%}.cm-mind span:nth-child(4){right:0;bottom:25%}.cm-mind span:nth-child(5){left:0;bottom:15%}.cm-mind span:nth-child(6){right:25%;bottom:0}.cm-mind strong,.cm-received strong{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);color:var(--text);font:650 1rem/1.2 "Space Grotesk",sans-serif}.cm-channel{text-align:center}.cm-channel i{display:block;height:2px;background:var(--cm-gold);position:relative}.cm-channel i:after{content:"";position:absolute;right:0;top:50%;width:.55rem;height:.55rem;border-top:2px solid var(--cm-gold);border-right:2px solid var(--cm-gold);transform:translateY(-50%) rotate(45deg)}.cm-channel b,.cm-channel small{display:block}.cm-channel b{margin-top:.7rem;color:var(--cm-gold);font:700 .8rem/1 "Space Grotesk",sans-serif}.cm-channel small{margin-top:.3rem;color:var(--muted);font-size:.68rem}.cm-received{position:relative;min-height:12rem}.cm-received span{position:absolute;left:50%;width:7rem;height:7rem;border:1px solid var(--cm-blue);border-radius:50%;transform:translateX(-50%)}.cm-received span:nth-child(1){top:0}.cm-received span:nth-child(2){top:1.4rem;width:5.5rem;height:5.5rem}.cm-received span:nth-child(3){top:2.7rem;width:3rem;height:3rem;background:color-mix(in srgb,var(--cm-blue) 16%,transparent)}.cm-received strong{top:auto;bottom:.2rem;width:100%;text-align:center;transform:translateX(-50%)}
.cm-hero blockquote,.cm-part blockquote{margin:1.4rem 0;padding:1rem 1.2rem;border-left:4px solid var(--cm-gold);border-radius:0 var(--radius-md) var(--radius-md) 0;background:color-mix(in srgb,var(--cm-gold) 7%,var(--surface));color:var(--text);font:600 clamp(1.05rem,2.4vw,1.35rem)/1.55 "Space Grotesk",sans-serif}
.cm-crossed{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin:1rem 0 1.5rem}.cm-crossed>div:not(.cm-collision){display:flex;align-items:center;gap:.6rem;padding:1rem;border:1px solid var(--line);background:var(--surface)}.cm-crossed>div:first-child{justify-content:flex-end;border-radius:var(--radius-md) 0 0 var(--radius-md)}.cm-crossed>div:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.cm-crossed small{color:var(--muted)}.cm-crossed b{color:var(--text)}.cm-crossed i{color:var(--cm-coral)}.cm-collision{z-index:2;padding:.7rem;border-radius:50%;background:var(--cm-coral);color:white;text-align:center;font-size:.65rem;line-height:1.25}.cm-tool{margin:1.5rem 0;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--border-ui);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--cm-soft),var(--surface))}.cm-tool-head span{color:var(--cm-blue);text-transform:uppercase;letter-spacing:.1em;font:700 .68rem/1 "Space Grotesk",sans-serif}.cm-tool-head h3{margin:.35rem 0;color:var(--text);font:650 1.35rem/1.2 "Space Grotesk",sans-serif}.cm-tool-head p{margin:.2rem 0 1rem;font-size:.86rem}.cm-objective-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem}.cm-objective-grid button,.cm-support-buttons button{padding:.7rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;text-align:left}.cm-objective-grid button b,.cm-objective-grid button small{display:block}.cm-objective-grid button small{margin-top:.2rem;color:var(--muted);font-size:.68rem}.cm-objective-grid button:hover,.cm-objective-grid button.is-on,.cm-support-buttons button:hover,.cm-support-buttons button.is-on{border-color:var(--cm-blue);background:color-mix(in srgb,var(--cm-blue) 9%,var(--surface));transform:translateY(-1px)}.cm-objective-out,.cm-support-out{margin-top:.8rem;padding:.85rem 1rem;border-left:3px solid var(--cm-blue);background:var(--surface);color:var(--text);font-size:.88rem;line-height:1.55}.cm-first-question{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1rem;align-items:center;margin:1.4rem 0;padding:1.2rem;border:1px solid var(--line);border-radius:var(--radius-lg)}.cm-first-question span{grid-row:1/3;color:var(--cm-gold);font:700 .7rem/1.2 "Space Grotesk",sans-serif;text-transform:uppercase;writing-mode:vertical-rl}.cm-first-question p{margin:0;color:var(--text);font:600 1.25rem/1.4 "Space Grotesk",sans-serif}.cm-first-question small{color:var(--muted)}
.cm-ladder-wrap{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:center}.cm-ladder{display:flex;flex-direction:column-reverse;gap:.35rem}.cm-ladder button{display:grid;grid-template-columns:2rem 1fr auto;align-items:center;gap:.55rem;width:calc(55% + var(--i,0)*10%);padding:.62rem .75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;text-align:left}.cm-ladder button:nth-child(1){--i:0}.cm-ladder button:nth-child(2){--i:1}.cm-ladder button:nth-child(3){--i:2}.cm-ladder button:nth-child(4){--i:3}.cm-ladder button:nth-child(5){--i:4}.cm-ladder button b{display:grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:color-mix(in srgb,var(--cm-blue) 12%,transparent);color:var(--cm-blue)}.cm-ladder button small{color:var(--muted);font-size:.66rem}.cm-ladder button.is-on{border-color:var(--cm-blue);background:var(--cm-soft)}.cm-ladder-read{min-height:8rem;padding:1.2rem;border-radius:var(--radius-lg);background:var(--cm-blue);color:white}.cm-ladder-read small{opacity:.8}.cm-ladder-read p{margin:.6rem 0 0;color:white;font:600 1.1rem/1.55 "Space Grotesk",sans-serif}.cm-rule{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0 1.5rem;padding:.75rem 1rem;background:color-mix(in srgb,var(--cm-gold) 8%,var(--surface));border-radius:var(--radius-md)}.cm-rule b{color:var(--text)}.cm-rule span{color:var(--muted)}.cm-frameworks{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.cm-framework{padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.cm-framework.is-wide{grid-column:1/-1}.cm-framework header span{color:var(--cm-blue);font:700 .67rem/1 "Space Grotesk",sans-serif;text-transform:uppercase;letter-spacing:.08em}.cm-framework h3{margin:.35rem 0;color:var(--text);font:650 1.05rem/1.3 "Space Grotesk",sans-serif}.cm-framework p{font-size:.88rem}.cm-framework strong{color:var(--cm-gold);font-size:.82rem}.cm-framework ol{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;padding:0;margin:.7rem 0 0;counter-reset:f}.cm-framework li{counter-increment:f;padding:.4rem .55rem;border-radius:999px;background:var(--cm-soft);font-size:.75rem}.cm-framework li:before{content:counter(f) ". ";color:var(--cm-blue);font-weight:700}.cm-pyramid{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem;text-align:center}.cm-pyramid b{grid-column:1/-1;justify-self:center;width:40%;padding:.4rem;background:var(--cm-gold);color:white;clip-path:polygon(50% 0,100% 100%,0 100%)}.cm-pyramid span{padding:.35rem;background:var(--cm-soft);font-size:.74rem}.cm-pyramid i{grid-column:1/-1;color:var(--muted);font-size:.68rem}.cm-compress label{display:block;margin:.7rem 0 .3rem;color:var(--text);font-size:.8rem;font-weight:650}.cm-compress textarea,.cm-compress input{box-sizing:border-box;width:100%;padding:.8rem;border:1px solid var(--border-ui);border-radius:var(--radius-md);background:var(--bg);color:var(--text);font:inherit}.cm-compress textarea:focus,.cm-compress input:focus{outline:2px solid color-mix(in srgb,var(--cm-blue) 45%,transparent);outline-offset:2px}.cm-meter{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;margin:.45rem 0;color:var(--muted);font-size:.7rem}.cm-meter>i{height:5px;border-radius:999px;background:var(--line);overflow:hidden}.cm-meter em{display:block;width:0;height:100%;background:var(--cm-blue)}.cm-compress-checks{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.7rem}.cm-compress-checks span{padding:.35rem .5rem;border-radius:999px;background:var(--cm-soft);color:var(--muted);font-size:.68rem}.cm-triad{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin:1.4rem 0 .5rem}.cm-triad article{padding:.85rem;border-top:3px solid var(--c);background:var(--surface)}.cm-triad article:nth-child(1){--c:var(--cm-blue)}.cm-triad article:nth-child(2){--c:var(--cm-violet)}.cm-triad article:nth-child(3){--c:var(--cm-green)}.cm-triad span{color:var(--c);font:700 .7rem/1 "Space Grotesk",sans-serif;text-transform:uppercase}.cm-triad p{margin:.4rem 0 0;font-size:.82rem}.cm-confidence{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin:1.2rem 0}.cm-confidence>div{padding:.8rem;border:1px solid var(--line);background:var(--surface)}.cm-confidence span,.cm-confidence b{display:block}.cm-confidence span{color:var(--cm-blue);font-size:.68rem;text-transform:uppercase}.cm-confidence b{margin-top:.3rem;color:var(--text);font-size:.82rem}.cm-confidence p{grid-column:1/-1;margin:.2rem 0;font-size:.85rem}.cm-mini-grid,.cm-repair-grid,.cm-situation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.cm-mini-grid article,.cm-repair-grid article,.cm-situation-grid article{padding:.8rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.cm-mini-grid b,.cm-repair-grid b,.cm-situation-grid b{color:var(--text);font-size:.82rem}.cm-mini-grid p,.cm-repair-grid p,.cm-situation-grid p{margin:.3rem 0 0;font-size:.74rem;line-height:1.5}
.cm-timeline{display:grid;gap:.7rem;margin:1.2rem 0}.cm-timeline>div{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;position:relative}.cm-timeline span,.cm-timeline b{padding:.75rem .45rem;text-align:center;font-size:.72rem;background:var(--surface);border-bottom:3px solid var(--c)}.cm-private{--c:var(--cm-coral)}.cm-public{--c:var(--cm-green)}.cm-timeline b{color:var(--text)}.cm-clarity-gauge>div{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem}.cm-clarity-gauge i{grid-column:2;height:9px;border-radius:999px;background:linear-gradient(90deg,var(--line),var(--cm-green),var(--cm-coral))}.cm-clarity-gauge strong{position:absolute;left:var(--p);top:-.5rem;transform:translateX(-50%);padding:.28rem .45rem;border-radius:999px;background:var(--text);color:var(--bg);font-size:.65rem}.cm-clarity-gauge p{font-size:.85rem}.cm-script-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.cm-script-row article{padding:.9rem;border-left:3px solid var(--cm-blue);background:var(--surface)}.cm-script-row small{color:var(--cm-blue);text-transform:uppercase;font-size:.65rem}.cm-script-row p{margin:.4rem 0 0;color:var(--text);font-size:.8rem}.cm-silences{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;margin-top:1rem}.cm-silences article{padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-md)}.cm-silences b,.cm-silences span{display:block}.cm-silences b{color:var(--text);font-size:.78rem}.cm-silences span{margin-top:.3rem;color:var(--muted);font-size:.7rem}
.cm-lara{display:flex;align-items:stretch;gap:.35rem;margin:1.3rem 0}.cm-lara>div{flex:1;padding:.9rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.cm-lara>i{align-self:center;color:var(--cm-blue)}.cm-lara b{display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:50%;background:var(--cm-blue);color:white}.cm-lara span,.cm-lara small{display:block}.cm-lara span{margin-top:.5rem;color:var(--text);font-weight:650}.cm-lara small{margin-top:.25rem;color:var(--muted);font-size:.68rem}.cm-support-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.cm-support-buttons b,.cm-support-buttons small{display:block}.cm-support-buttons small{margin-top:.2rem;color:var(--muted)}.cm-validation{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:1.2rem 0}.cm-validation>div{padding:1rem;border-top:3px solid var(--c);background:var(--surface)}.cm-validation>div:first-child{--c:var(--cm-green)}.cm-validation>div:last-child{--c:var(--cm-coral)}.cm-validation span,.cm-validation b,.cm-validation small{display:block}.cm-validation span{color:var(--c);font-size:.7rem;text-transform:uppercase}.cm-validation b{margin:.45rem 0;color:var(--text)}.cm-validation small{color:var(--muted)}.cm-listener-map{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem}.cm-listener-map article{padding:1rem;text-align:center;border:1px solid var(--line);border-radius:50%;aspect-ratio:1;display:grid;place-content:center}.cm-listener-map b{color:var(--cm-blue);font-size:1.1rem}.cm-listener-map p{margin:.25rem 0;font-size:.7rem;line-height:1.4}.cm-doors{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin:1.2rem 0}.cm-doors p{display:grid;grid-template-columns:minmax(max-content,6.5rem) minmax(0,1fr);column-gap:.75rem;align-items:baseline;margin:0;padding:.75rem .8rem;border-left:3px solid var(--cm-gold);background:var(--surface);font-size:.75rem;line-height:1.45}.cm-doors b{color:var(--text)}
.cm-before-after{display:grid;grid-template-columns:1fr auto 1fr;gap:.6rem;align-items:center}.cm-before-after>div{padding:1rem;border:1px solid var(--line);border-top:3px solid var(--c);background:var(--surface)}.cm-before-after .bad{--c:var(--cm-coral)}.cm-before-after .good{--c:var(--cm-green)}.cm-before-after small{color:var(--c)}.cm-before-after p{margin:.4rem 0 0;color:var(--text);font-size:.85rem}.cm-conflict-models{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;margin:1.2rem 0}.cm-conflict-models article{border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.cm-conflict-models header{padding:.7rem;background:var(--cm-soft)}.cm-conflict-models header b,.cm-conflict-models header span{display:block}.cm-conflict-models header b{color:var(--cm-blue);font-size:1.1rem}.cm-conflict-models header span{color:var(--muted);font-size:.66rem}.cm-conflict-models ol{margin:.6rem 0;padding:0 1.5rem 0 1.8rem}.cm-conflict-models li{font-size:.72rem;line-height:1.6}.cm-48{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-lg)}.cm-48-clock{display:grid;place-items:center;width:6rem;aspect-ratio:1;border:5px solid var(--cm-gold);border-radius:50%}.cm-48-clock b{font:700 2rem/1 "Space Grotesk",sans-serif;color:var(--text)}.cm-48-clock span{font-size:.7rem;color:var(--muted)}.cm-48 h3{margin:0;color:var(--text)}.cm-48 p{margin:.25rem 0}.cm-arrow-seq{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.cm-arrow-seq span{padding:.3rem .45rem;background:var(--cm-soft);color:var(--text);font-size:.7rem}.cm-arrow-seq i{color:var(--cm-blue)}.cm-repair-grid{margin:1rem 0}.cm-apology{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:1rem}.cm-apology span{padding:.7rem;background:var(--cm-green);color:white;text-align:center;font-size:.72rem}.cm-apology p{grid-column:1/-1;margin:.5rem 0;font-size:.8rem}
.cm-persuasion{display:flex;align-items:center;gap:.35rem;overflow-x:auto;padding:.8rem 0}.cm-persuasion span{flex:1;min-width:7rem;padding:.65rem;background:var(--cm-soft);border-radius:var(--radius-sm);color:var(--text);text-align:center;font-size:.72rem}.cm-persuasion i{color:var(--cm-blue)}.cm-disagree-order{display:grid;grid-template-columns:repeat(6,1fr);gap:.35rem;margin:1rem 0}.cm-disagree-order article{padding:.65rem;border-top:3px solid var(--cm-violet);background:var(--surface)}.cm-disagree-order b,.cm-disagree-order span{display:block}.cm-disagree-order b{color:var(--cm-violet)}.cm-disagree-order span{margin-top:.3rem;color:var(--muted);font-size:.68rem;line-height:1.4}.cm-negotiation{display:grid;grid-template-columns:1fr 2fr;gap:.6rem;align-items:stretch}.cm-batna{display:grid;place-content:center;padding:1rem;background:var(--cm-blue);color:white;text-align:center}.cm-batna small,.cm-batna b,.cm-batna span{display:block}.cm-batna b{font:700 2rem/1 "Space Grotesk",sans-serif}.cm-batna span{margin-top:.4rem;font-size:.72rem}.cm-four-numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}.cm-four-numbers span{display:grid;place-content:center;padding:.8rem;background:var(--surface);border:1px solid var(--line);color:var(--text);text-align:center}.cm-four-numbers small{display:block;color:var(--cm-gold);font-size:.62rem;text-transform:uppercase}.cm-tradeoffs{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.cm-tradeoffs article{padding:.9rem;border-left:3px solid var(--cm-gold);background:var(--surface)}.cm-tradeoffs h3{margin:0;color:var(--text);font-size:.86rem}.cm-tradeoffs p{margin:.35rem 0 0;font-size:.78rem}
.cm-leader-message{display:grid;grid-template-columns:repeat(7,1fr);gap:.3rem}.cm-leader-message article{min-height:6rem;padding:.65rem;border-top:3px solid var(--cm-blue);background:var(--surface)}.cm-leader-message b,.cm-leader-message span{display:block}.cm-leader-message b{color:var(--text);font-size:.78rem}.cm-leader-message span{margin-top:.35rem;color:var(--muted);font-size:.65rem;line-height:1.4}.cm-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:1rem 0}.cm-work-grid article{padding:.9rem;border:1px solid var(--line);border-radius:var(--radius-md)}.cm-work-grid span{color:var(--cm-blue);font-size:.68rem;text-transform:uppercase}.cm-work-grid p{margin:.3rem 0 0;font-size:.78rem}.cm-work-grid b{color:var(--text)}.cm-meeting{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:.5rem;margin:1rem 0}.cm-meeting>div{padding:.9rem;background:var(--surface);border-top:3px solid var(--c)}.cm-meeting-before{--c:var(--cm-gold)}.cm-meeting-room{--c:var(--cm-blue)}.cm-meeting-close{--c:var(--cm-green)}.cm-meeting h3{margin:0 0 .5rem;color:var(--text)}.cm-meeting li,.cm-meeting p{font-size:.7rem;line-height:1.45}.cm-meeting ul{padding-left:1rem}.cm-meeting-room p{margin:.35rem 0}.cm-meeting-close div{display:grid;gap:.3rem}.cm-meeting-close b{padding:.35rem;background:var(--cm-soft);font-size:.68rem}.cm-writing{display:flex;align-items:center;gap:.35rem;overflow-x:auto}.cm-writing>div{flex:1;min-width:8rem;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-sm)}.cm-writing span,.cm-writing b{display:block}.cm-writing span{color:var(--cm-blue);font-size:.65rem;text-transform:uppercase}.cm-writing b{margin-top:.25rem;color:var(--text);font-size:.74rem}.cm-writing>i{color:var(--cm-blue)}.cm-five-update{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin:1rem 0;padding:.75rem;background:var(--cm-soft)}.cm-five-update b{margin-right:auto;color:var(--text)}.cm-five-update span{font-size:.7rem}.cm-five-update i{color:var(--cm-blue)}
.cm-context-tabs{display:flex;gap:.35rem;overflow-x:auto}.cm-context-tabs button{padding:.6rem .8rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);cursor:pointer;white-space:nowrap}.cm-context-tabs button[aria-selected="true"]{background:var(--cm-blue);border-color:var(--cm-blue);color:white}.cm-context-panel{min-height:13rem;margin:1rem 0;padding:1.2rem;border:1px solid var(--border-ui);border-radius:var(--radius-lg);background:var(--surface)}.cm-context-panel h3{margin:0;color:var(--text)}.cm-context-panel .cm-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.8rem}.cm-context-panel article{padding:.75rem;background:var(--cm-soft)}.cm-context-panel b{color:var(--text);font-size:.78rem}.cm-context-panel p{margin:.3rem 0 0;font-size:.72rem}.cm-situation-grid{grid-template-columns:repeat(4,1fr)}
.cm-card{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.cm-card section{border:1px solid var(--border-ui);border-radius:var(--radius-lg);overflow:hidden}.cm-card header{padding:1rem;background:var(--c);color:white}.cm-card section:nth-child(1){--c:var(--cm-gold)}.cm-card section:nth-child(2){--c:var(--cm-blue)}.cm-card section:nth-child(3){--c:var(--cm-green)}.cm-card header span,.cm-card header b{display:block}.cm-card header span{font-size:.65rem;text-transform:uppercase}.cm-card header b{margin-top:.25rem}.cm-card ol{margin:0;padding:1rem 1rem 1rem 2rem}.cm-card li{font-size:.74rem;line-height:1.65}.cm-failures{margin:1.2rem 0;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.cm-failures h3{margin:0;padding:1rem;background:var(--cm-soft);color:var(--text)}.cm-failures>div{display:grid;grid-template-columns:1fr 1.4fr;gap:.6rem;padding:.6rem 1rem;border-top:1px solid var(--line);font-size:.76rem}.cm-failures span{color:var(--muted)}.cm-failures b{color:var(--text)}.cm-resets{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.cm-resets article{padding:.9rem;border-left:3px solid var(--cm-violet);background:var(--surface)}.cm-resets small{color:var(--cm-violet);text-transform:uppercase}.cm-resets p{margin:.35rem 0 0;color:var(--text);font-size:.8rem}.cm-final-model{display:flex;align-items:center;justify-content:center;gap:.4rem;flex-wrap:wrap;margin:1.5rem 0;padding:1.2rem;border:1px solid var(--line);border-radius:var(--radius-lg)}.cm-final-model p{margin:0;padding:.5rem;background:var(--cm-soft);color:var(--text);font-size:.72rem}.cm-final-model i{color:var(--cm-blue)}.cm-final-model strong{flex-basis:100%;margin-top:.5rem;color:var(--text);text-align:center}.cm-final-quote{text-align:center;border:0!important;border-top:3px solid var(--cm-gold)!important;border-radius:0!important}
@media(max-width:800px){.cm-rail{grid-template-columns:repeat(5,1fr);position:relative;top:auto}.cm-transfer{grid-template-columns:1fr}.cm-channel{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:center}.cm-channel i{transform:rotate(90deg);width:4rem;justify-self:center}.cm-objective-grid{grid-template-columns:repeat(3,1fr)}.cm-ladder-wrap{grid-template-columns:1fr}.cm-conflict-models,.cm-situation-grid{grid-template-columns:repeat(2,1fr)}.cm-disagree-order{grid-template-columns:repeat(3,1fr)}.cm-leader-message{grid-template-columns:repeat(4,1fr)}.cm-meeting{grid-template-columns:1fr}.cm-silences{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cm-hero-copy h1{font-size:2.75rem}.cm-crossed{grid-template-columns:1fr}.cm-crossed>div:first-child,.cm-crossed>div:last-child{justify-content:center;border-radius:var(--radius-md)}.cm-collision{justify-self:center;margin:-.4rem 0}.cm-objective-grid{grid-template-columns:repeat(2,1fr)}.cm-frameworks,.cm-script-row,.cm-validation,.cm-tradeoffs,.cm-work-grid,.cm-context-panel .cm-context-grid,.cm-card,.cm-resets{grid-template-columns:1fr}.cm-triad,.cm-confidence,.cm-mini-grid,.cm-repair-grid{grid-template-columns:1fr}.cm-lara{display:grid;grid-template-columns:1fr}.cm-lara>i{transform:rotate(90deg);justify-self:center}.cm-support-buttons{grid-template-columns:1fr}.cm-listener-map{grid-template-columns:1fr 1fr}.cm-doors{grid-template-columns:1fr}.cm-before-after{grid-template-columns:1fr}.cm-before-after>i{transform:rotate(90deg);justify-self:center}.cm-conflict-models,.cm-situation-grid{grid-template-columns:1fr}.cm-48{grid-template-columns:1fr}.cm-48-clock{margin:auto}.cm-apology{grid-template-columns:1fr}.cm-apology p{grid-column:1}.cm-negotiation{grid-template-columns:1fr}.cm-four-numbers{grid-template-columns:1fr 1fr}.cm-leader-message{grid-template-columns:1fr 1fr}.cm-writing{display:grid;grid-template-columns:1fr}.cm-writing>i{transform:rotate(90deg);justify-self:center}.cm-failures>div{grid-template-columns:1fr}.cm-final-model{align-items:stretch;flex-direction:column}.cm-final-model i{transform:rotate(90deg);text-align:center}}
@media(prefers-reduced-motion:reduce){.communication *{scroll-behavior:auto!important;transition:none!important}}
.cm-manual{padding:2.5rem 0;border-top:1px solid var(--line)}.cm-manual-head>span{color:var(--cm-blue);font:700 .7rem/1 "Space Grotesk",sans-serif;text-transform:uppercase;letter-spacing:.1em}.cm-manual-head h2{margin:.4rem 0;color:var(--text);font:650 clamp(1.8rem,4vw,2.8rem)/1.05 "Space Grotesk",sans-serif}.cm-manual-head p{max-width:62ch}.cm-chapter{margin:1rem 0;border:1px solid var(--border-ui);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.cm-chapter>summary{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;padding:1rem 1.1rem;cursor:pointer;list-style:none}.cm-chapter>summary::-webkit-details-marker{display:none}.cm-chapter>summary span{color:var(--cm-blue);font:700 .7rem/1 "Space Grotesk",sans-serif}.cm-chapter>summary b{color:var(--text)}.cm-chapter>summary i{width:.55rem;height:.55rem;border-right:2px solid var(--cm-blue);border-bottom:2px solid var(--cm-blue);transform:rotate(45deg);transition:transform .2s}.cm-chapter[open]>summary i{transform:rotate(225deg)}.cm-chapter-body{padding:0 1.1rem 1.1rem}.cm-chapter-body>article{padding:1.5rem 0;border-top:1px solid var(--line);scroll-margin-top:7rem}.cm-chapter-body article>header{display:grid;grid-template-columns:2rem 1fr;gap:.6rem;align-items:start}.cm-chapter-body article>header span{padding-top:.25rem;color:var(--cm-blue);font:700 .68rem/1 "Space Grotesk",sans-serif}.cm-chapter-body h3{margin:0 0 .7rem;color:var(--text);font:650 1.25rem/1.2 "Space Grotesk",sans-serif}.cm-chapter-body h4{margin:1rem 0 .2rem;color:var(--text);font:650 .9rem/1.3 "Space Grotesk",sans-serif}.cm-chapter-body p{max-width:72ch;margin:.55rem 0}.cm-chapter-body blockquote{max-width:68ch;margin:.8rem 0;padding:.8rem 1rem;border-left:3px solid var(--cm-gold);background:color-mix(in srgb,var(--cm-gold) 6%,var(--surface));color:var(--text);font-size:.9rem;line-height:1.6}.cm-chapter-body ol{max-width:72ch}.cm-manual-progress{padding:1rem;border-left:3px solid var(--cm-gold);background:color-mix(in srgb,var(--cm-gold) 7%,var(--surface));font-size:.82rem!important}
.cm-final-rules{margin-top:1.5rem;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--border-ui);border-radius:var(--radius-lg);background:linear-gradient(135deg,color-mix(in srgb,var(--cm-gold) 8%,var(--surface)),color-mix(in srgb,var(--cm-blue) 7%,var(--surface)))}.cm-final-rules header span{color:var(--cm-gold);font:700 .7rem/1 "Space Grotesk",sans-serif;text-transform:uppercase;letter-spacing:.1em}.cm-final-rules h2{margin:.4rem 0 1rem;color:var(--text);font:650 clamp(1.5rem,3vw,2.2rem)/1.1 "Space Grotesk",sans-serif}.cm-final-rules ol{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;counter-reset:final;list-style:none;padding:0}.cm-final-rules li{counter-increment:final;display:grid;grid-template-columns:1.8rem 1fr;gap:.5rem;align-items:start;padding:.65rem;background:var(--surface);font-size:.75rem}.cm-final-rules li:before{content:counter(final);display:grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:50%;background:var(--cm-blue);color:white;font-weight:700}.cm-final-rules blockquote{margin:1rem 0 0!important;border-left-color:var(--cm-gold)!important}@media(max-width:560px){.cm-final-rules ol{grid-template-columns:1fr}}
.communication :is(.cm-mini-grid,.cm-repair-grid,.cm-situation-grid,.cm-script-row,.cm-silences,.cm-doors,.cm-tradeoffs,.cm-work-grid,.cm-meeting,.cm-context-panel,.cm-final-rules) :is(p,li,span,b){font-size:max(.82rem,1em)}.cm-chapter-body :is(p,li,blockquote){font-size:1rem;line-height:1.75}.cm-chapter-body h4{font-size:1rem}.cm-chapter>summary{min-height:3.25rem}.cm-objective-grid button,.cm-support-buttons button,.cm-context-tabs button{min-height:2.75rem}

/* Complete reference: every lesson is its own tagged, filterable card. */
.cm-manual-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin:1.35rem 0 1rem}.cm-manual-filters{display:flex;flex-wrap:wrap;gap:.4rem}.cm-manual-filters button{padding:.48rem .72rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font:650 .76rem/1.2 "Space Grotesk",sans-serif;cursor:pointer}.cm-manual-filters button:hover{border-color:var(--cm-blue);color:var(--text)}.cm-manual-filters button[aria-pressed="true"]{border-color:var(--cm-blue);background:var(--cm-blue);color:white}.cm-manual-count{flex:none;margin:0!important;color:var(--muted);font-size:.78rem!important;white-space:nowrap}.cm-manual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;align-items:start}.cm-lesson-card{border:1px solid var(--border-ui);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;scroll-margin-top:7rem}.cm-lesson-card[hidden]{display:none}.cm-lesson-card>summary{display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:.65rem;align-items:start;min-height:3.4rem;padding:.9rem;cursor:pointer;list-style:none}.cm-lesson-card>summary::-webkit-details-marker{display:none}.cm-lesson-number{padding-top:.15rem;color:var(--cm-blue);font:700 .68rem/1 "Space Grotesk",sans-serif}.cm-lesson-title{color:var(--text);font:650 .96rem/1.35 "Space Grotesk",sans-serif}.cm-lesson-card>summary i{width:.5rem;height:.5rem;margin-top:.2rem;border-right:2px solid var(--cm-blue);border-bottom:2px solid var(--cm-blue);transform:rotate(45deg);transition:transform .2s}.cm-lesson-card[open]>summary i{transform:rotate(225deg)}.cm-lesson-tags{display:flex;flex-wrap:wrap;gap:.3rem;padding:0 .9rem .8rem}.cm-lesson-tags span{padding:.25rem .42rem;border-radius:999px;background:var(--cm-soft);color:var(--cm-blue);font:650 .65rem/1.2 "Space Grotesk",sans-serif}.cm-lesson-body{padding:.2rem .95rem 1rem;border-top:1px solid var(--line)}.cm-lesson-body :is(p,li,blockquote){font-size:.9rem;line-height:1.65}.cm-lesson-body h4{margin:1rem 0 .2rem;color:var(--text);font:650 .88rem/1.3 "Space Grotesk",sans-serif}.cm-lesson-body blockquote{margin:.8rem 0;padding:.75rem .85rem;border-left:3px solid var(--cm-gold);background:color-mix(in srgb,var(--cm-gold) 6%,var(--surface));color:var(--text)}.cm-lesson-body ol,.cm-lesson-body ul{padding-left:1.3rem}.cm-lesson-card[open]{grid-column:1/-1}.cm-lesson-card[open] .cm-lesson-title{font-size:1.08rem}@media(max-width:700px){.cm-manual-tools{align-items:flex-start;flex-direction:column}.cm-manual-grid{grid-template-columns:1fr}.cm-lesson-card[open]{grid-column:auto}.cm-manual-count{order:-1}}

/* ── Nine working figures ─────────────────────────────────
   Each figure takes one control and answers immediately. Colour is consistent
   across all nine: blue is you, gold is them, coral is the failure, green is
   the version that works. Type stays large and labels stay to a few words, so
   the picture can be read before any sentence around it. */
.cm-fig{margin:1.4rem 0 1.8rem;padding:0;border:1px solid var(--border-ui);border-radius:var(--radius-lg);background:var(--cm-soft);overflow:hidden}
.cm-fig{scroll-margin-top:7.5rem}
.cm-fig figcaption{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .8rem;padding:.75rem 1rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--cm-blue) 10%,transparent)}
.cm-fig figcaption .n{font:700 .66rem "Space Grotesk",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--cm-blue)}
.cm-fig figcaption b{font:700 1.05rem "Space Grotesk",sans-serif;color:var(--text)}
.cm-fig figcaption em{font-style:normal;font-size:.8rem;color:var(--muted)}
.cm-fig-body{padding:1rem}
.cm-fig-svg{display:block;width:100%;height:auto;margin-bottom:.6rem}

.cm-fig-ctl{display:grid;gap:.3rem;margin:.6rem 0}
.cm-fig-ctl span{font:700 .72rem "Space Grotesk",sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cm-fig-ctl input[type=range]{width:100%;height:1.6rem;accent-color:var(--cm-blue);cursor:pointer}
.cm-fig-read{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.6rem;margin-top:.5rem}
.cm-fig-read>div{display:grid}
.cm-fig-read b{font:700 1.6rem/1 "Space Grotesk",sans-serif;color:var(--cm-blue)}
.cm-fig-read span{font-size:.72rem;color:var(--muted)}
.cm-fig-read p{flex:1 1 15rem;margin:0!important;font-size:.9rem!important;line-height:1.5;color:var(--text)!important}
.is-ok{color:var(--cm-green)!important}.is-bad{color:var(--cm-coral)!important}.is-warn{color:var(--cm-gold)!important}

.cf-lab{font:600 11px "Space Grotesk",sans-serif;fill:var(--muted)}
.cf-ax{stroke:var(--line-strong);stroke-width:1.4}
.cf-transfer-plot{display:grid;grid-template-columns:minmax(0,1fr) 3.5rem minmax(0,1fr) 3.5rem minmax(0,1fr);gap:.65rem;align-items:stretch;margin-bottom:1rem}.cf-transfer-stage{display:grid;grid-template-rows:auto 1fr;gap:1rem;min-height:11rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.cf-transfer-stage header{display:grid;gap:.15rem}.cf-transfer-stage small{color:var(--cm-blue);font:700 .62rem/1 "Space Grotesk",sans-serif;letter-spacing:.1em;text-transform:uppercase}.cf-transfer-stage b{color:var(--text);font:700 1rem/1.2 "Space Grotesk",sans-serif}.cf-transfer-stage header span{color:var(--muted);font-size:.7rem}.cf-idea-dots{display:grid;grid-template-columns:repeat(8,.62rem);grid-auto-rows:.62rem;gap:.3rem;align-content:center;justify-content:center;min-height:4.3rem}.cf-idea-dots i{display:block;width:.62rem;height:.62rem;border-radius:50%;background:color-mix(in srgb,var(--cm-blue) 62%,transparent)}.cf-transfer-stage.received .cf-idea-dots i{background:var(--cm-green)}.cf-transfer-stage.received .cf-idea-dots:empty:after{content:"Nothing retained";color:var(--muted);font-size:.7rem}.cf-message-meter{position:relative;align-self:center;height:2.8rem;border-radius:999px;background:color-mix(in srgb,var(--muted) 14%,transparent);overflow:hidden}.cf-message-meter>i{position:absolute;inset:0 auto 0 0;background:var(--cm-blue);transition:width .18s ease}.cf-message-meter>b{position:absolute;inset:0;display:grid;place-items:center;color:var(--text);font-size:.78rem}.cf-transfer-arrow{display:grid;grid-template-rows:1fr auto 1fr;gap:.4rem;align-items:center;justify-items:center;color:var(--cm-gold)}.cf-transfer-arrow i{grid-row:2;display:block;width:100%;height:2px;background:currentColor;position:relative}.cf-transfer-arrow i:after{content:"";position:absolute;right:0;top:50%;width:.5rem;height:.5rem;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:translateY(-50%) rotate(45deg)}.cf-transfer-arrow span{grid-row:3;align-self:start;color:var(--muted);font:700 .58rem/1 "Space Grotesk",sans-serif;letter-spacing:.08em;text-transform:uppercase}

/* 2 · two jobs */
.cf-two{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.cf-who{display:block;margin-bottom:.4rem;font:700 .72rem "Space Grotesk",sans-serif;letter-spacing:.06em;text-transform:uppercase}
.cf-who.you{color:var(--cm-blue)}.cf-who.them{color:var(--cm-gold)}
.cf-opts{display:flex;flex-wrap:wrap;gap:.25rem}
.cf-opts button{padding:.4rem .6rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font:600 .82rem "Space Grotesk",sans-serif;cursor:pointer}
.cf-opts button:hover{border-color:var(--cm-blue);color:var(--text)}
#cf-mine-opts button.is-on{border-color:var(--cm-blue);background:color-mix(in srgb,var(--cm-blue) 18%,var(--surface));color:var(--text)}
#cf-their-opts button.is-on{border-color:var(--cm-gold);background:color-mix(in srgb,var(--cm-gold) 18%,var(--surface));color:var(--text)}
.cf-verdict{margin-top:.8rem;padding:.7rem .85rem;border-left:4px solid var(--muted);border-radius:var(--radius-sm);background:var(--surface);font-size:.92rem;line-height:1.55}
.cf-verdict.is-ok{border-left-color:var(--cm-green)}
.cf-verdict.is-bad{border-left-color:var(--cm-coral)}
.cf-verdict.is-warn{border-left-color:var(--cm-gold)}

/* 3 · depth */
.cf-depth-bars{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:.2rem}
.cf-depth-bars i{display:block;height:.7rem;border-radius:2px;background:color-mix(in srgb,var(--muted) 16%,transparent)}
.cf-depth-bars i.is-on{background:var(--cm-blue)}
.cf-depth-out{margin-top:.5rem}
.cf-msg{margin:0!important;padding:.75rem .85rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);font-size:1rem!important;line-height:1.6;color:var(--text)!important}
.cf-for{margin:.4rem 0 0!important;font-size:.78rem!important;color:var(--muted)!important}

/* 4 · silence */
.cf-grow{fill:none;stroke:var(--cm-coral);stroke-width:3;stroke-linecap:round}
.cf-thresh{stroke:var(--cm-coral);stroke-width:1.2;stroke-dasharray:5 5;opacity:.7}
.cf-head{fill:var(--cm-blue)}
.cf-head.is-over{fill:var(--cm-coral)}

/* 5 · listening */
.cf-track{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;margin-bottom:.3rem}
.cf-track span{display:grid;place-items:center;padding:.7rem .3rem;border-radius:2px;background:color-mix(in srgb,var(--muted) 12%,transparent);text-align:center}
.cf-track span.is-heard{background:color-mix(in srgb,var(--cm-blue) 26%,transparent)}
.cf-track span.is-point{outline:2px solid var(--cm-gold);outline-offset:-2px}
.cf-track em{font-style:normal;font-size:.72rem;line-height:1.3;color:var(--text)}

/* 6 · framing */
.cf-toggle{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.7rem}
.cf-toggle button{flex:1 1 10rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font:600 .88rem "Space Grotesk",sans-serif;cursor:pointer}
.cf-toggle button.is-on{border-color:var(--cm-blue);background:color-mix(in srgb,var(--cm-blue) 14%,var(--surface));color:var(--text)}
.cf-toggle.wide button{flex:1 1 8rem}
.cf-chain{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.cf-chain span{padding:.55rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);font-size:.86rem;color:var(--text)}
.cf-chain i{color:var(--muted);font-style:normal}
.cf-chain.is-judge span:last-child{border-color:var(--cm-coral);background:color-mix(in srgb,var(--cm-coral) 14%,var(--surface))}
.cf-chain.is-observe span:last-child{border-color:var(--cm-green);background:color-mix(in srgb,var(--cm-green) 14%,var(--surface))}

/* 7 · bridges */
.cf-them{fill:var(--cm-gold)}
.cf-ask{fill:var(--cm-blue);transition:cx .18s ease}
.cf-bridge{fill:color-mix(in srgb,var(--cm-blue) 45%,transparent)}

/* 8 · unsaid things */
.cf-switches{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.7rem}
.cf-switches button{flex:1 1 7rem;padding:.6rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font:600 .88rem "Space Grotesk",sans-serif;cursor:pointer}
.cf-switches button.is-on{border-color:var(--cm-green);background:color-mix(in srgb,var(--cm-green) 16%,var(--surface));color:var(--text)}
.cf-cost{position:relative;height:1.5rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--cm-green) 20%,transparent);overflow:hidden}
.cf-cost i{position:absolute;inset:0 auto 0 0;background:color-mix(in srgb,var(--cm-coral) 45%,transparent);transition:width .25s ease}
.cf-cost span{position:absolute;inset:0;display:grid;place-items:center;font:700 .76rem "Space Grotesk",sans-serif;color:var(--text)}

/* 9 · formats */
.cf-dials{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-bottom:.7rem}
.cf-dial span{display:block;margin-bottom:.2rem;font:700 .68rem "Space Grotesk",sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.cf-dial i{display:block;height:.55rem;border-radius:999px;background:color-mix(in srgb,var(--muted) 14%,transparent);overflow:hidden}
.cf-dial em{display:block;height:100%;background:var(--cm-blue);transition:width .25s ease}

@media(max-width:640px){
  .cf-two,.cf-dials{grid-template-columns:1fr}
  .cf-transfer-plot{grid-template-columns:1fr;gap:.35rem}.cf-transfer-stage{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto;align-items:center;gap:.75rem;min-height:0;padding:.85rem}.cf-transfer-stage.message .cf-message-meter{width:8.5rem}.cf-transfer-arrow{display:flex;flex-direction:column;gap:.15rem;height:2.45rem}.cf-transfer-arrow i{width:2px;height:1.45rem}.cf-transfer-arrow i:after{inset:auto auto 0 50%;transform:translate(-50%,0) rotate(135deg)}.cf-transfer-arrow span{font-size:.54rem}.cf-idea-dots{grid-template-columns:repeat(8,.48rem);grid-auto-rows:.48rem;gap:.23rem;min-height:2.8rem}.cf-idea-dots i{width:.48rem;height:.48rem}
  .cf-track{grid-template-columns:1fr;gap:2px}
  .cf-track span{padding:.5rem}
  .cf-depth-bars{grid-template-columns:repeat(5,1fr)}
  .cm-fig-read b{font-size:1.35rem}
  .cf-chain{flex-direction:column;align-items:stretch}
  .cf-chain i{text-align:center;transform:rotate(90deg)}
}

/* Lesson diagrams: a shared visual grammar with topic-specific charts. */
.cm-lesson-viz{position:relative;height:8.25rem;margin:0 .9rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:linear-gradient(145deg,color-mix(in srgb,var(--cm-blue) 9%,var(--surface)),var(--surface));overflow:hidden}.cm-lesson-viz svg{display:block;width:100%;height:100%}.cm-lesson-viz figcaption{position:absolute;right:.55rem;bottom:.45rem;color:var(--muted);font:700 .59rem/1 "Space Grotesk",sans-serif;letter-spacing:.09em;text-transform:uppercase}.cm-lesson-viz :is(.vg,.va,.vb,.vc,.vd,.vi){vector-effect:non-scaling-stroke}.cm-lesson-viz .vg{fill:none;stroke:var(--line-strong);stroke-width:2}.cm-lesson-viz .va{fill:color-mix(in srgb,var(--cm-blue) 25%,transparent);stroke:var(--cm-blue);stroke-width:2.5}.cm-lesson-viz path.va{fill:none;stroke-linecap:round}.cm-lesson-viz .vb{fill:color-mix(in srgb,var(--cm-gold) 24%,transparent);stroke:var(--cm-gold);stroke-width:2.5}.cm-lesson-viz path.vb{fill:none;stroke-linecap:round}.cm-lesson-viz .vc{fill:color-mix(in srgb,var(--cm-violet) 18%,var(--surface));stroke:var(--cm-violet);stroke-width:1.5}.cm-lesson-viz .vd{fill:color-mix(in srgb,var(--cm-coral) 22%,transparent);stroke:var(--cm-coral);stroke-width:2.5}.cm-lesson-viz path.vd{fill:none;stroke-linecap:round}.cm-lesson-viz .vi{fill:var(--text);stroke:var(--text);stroke-width:2}.cm-lesson-viz path.vi{fill:none;stroke-linecap:round}.cm-lesson-card[open] .cm-lesson-viz{height:12rem}.cm-lesson-card[open] .cm-lesson-viz svg{max-width:34rem;margin:auto}
.cm-lesson-card:not([open])>.cm-lesson-viz{display:block!important}.cm-lesson-card:not([open])>.cm-lesson-tags{display:flex!important}

/* The complete reference is deliberately a reading list, one lesson per row. */
.cm-manual-grid{grid-template-columns:minmax(0,1fr)}
.cm-lesson-card[open]{grid-column:auto}
.cm-lesson-viz .vmark{fill:color-mix(in srgb,var(--cm-blue) 8%,var(--surface));stroke:var(--line);stroke-width:1}
.cm-lesson-viz .vicon{color:var(--cm-blue);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.cm-lesson-viz .vl{fill:var(--text);font:650 7px/1 "Space Grotesk",sans-serif;text-anchor:middle}.cm-lesson-viz .vs{fill:var(--muted);font:600 5.5px/1 "Space Grotesk",sans-serif;text-anchor:middle}.cm-lesson-viz figcaption a{color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent);text-underline-offset:2px}
.cm-lesson-viz .vhalo{fill:color-mix(in srgb,var(--cm-blue) 9%,var(--surface));stroke:color-mix(in srgb,var(--cm-blue) 30%,var(--line));stroke-width:1}.cm-lesson-viz .vorbit{fill:none;stroke:color-mix(in srgb,var(--cm-gold) 65%,var(--line));stroke-width:1.4;stroke-dasharray:3 4}.cm-lesson-viz .vdot{fill:var(--cm-gold)}.cm-lesson-viz .vlesson{color:var(--cm-blue);fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;overflow:visible}.cm-lesson-viz figcaption{max-width:calc(100% - 1rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cm-lesson-card>summary .cm-lesson-viz{grid-column:1/-1;width:auto;margin:.2rem 0 0}.cm-lesson-card>summary .cm-lesson-viz a{position:relative;z-index:1}
.cm-lesson-viz .vn{fill:var(--text);font:700 7px/1 "Space Grotesk",sans-serif;text-anchor:middle}.cm-lesson-viz.has-key,.cm-lesson-card[open] .cm-lesson-viz.has-key{height:auto}.cm-lesson-viz.has-key>svg{height:7.2rem}.cm-viz-key{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.3rem;margin:0;padding:.55rem .65rem;border-top:1px solid var(--line);list-style:none}.cm-viz-key li{display:grid;grid-template-columns:1.15rem minmax(0,1fr);gap:.35rem;align-items:start;color:var(--muted);font:600 .66rem/1.35 "Space Grotesk",sans-serif}.cm-viz-key b{display:grid;place-items:center;width:1.05rem;height:1.05rem;border-radius:50%;background:var(--cm-soft);color:var(--cm-blue);font-size:.58rem}.cm-lesson-viz.has-key figcaption{position:static;padding:0 .65rem .55rem;text-align:right}.cm-lesson-card[open] .cm-lesson-viz.has-key>svg{max-width:34rem}
