@import url('../../teach/teach.css');
[hidden]{display:none!important}
body{background:radial-gradient(ellipse at 85% 0%,#12313a 0,transparent 48%),var(--bg)}
.shell{width:min(1120px,calc(100% - 2rem));margin:auto}.topbar{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.4rem 0;border-bottom:1px solid var(--border)}
.brand{font-weight:800;letter-spacing:.12em;text-decoration:none}.hero{padding:4rem 0 2.4rem;max-width:850px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--teal);font-size:.78rem;font-weight:750}
h1{font-size:clamp(2.4rem,6vw,4.7rem);line-height:1.06;letter-spacing:-.045em;margin:.6rem 0 1.2rem;color:var(--text-hi)}h2{color:var(--text-hi);line-height:1.2}h3{color:var(--text-hi)}.lede{font-size:1.18rem;max-width:70ch}.small{font-size:.88rem;color:var(--text-dim)}
.panel{padding:clamp(1rem,3vw,1.7rem);border:1px solid var(--border);border-radius:14px;background:var(--panel);margin:0 0 1.3rem;min-width:0}.panel>h2:first-child{margin-top:0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cards .panel{margin:0}.card-link{display:block;text-decoration:none;color:var(--text);transition:border-color .15s}.card-link:hover{border-color:var(--teal);color:var(--text)}.card-link h3{color:var(--teal)}
.controls{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0}.controls>*{max-width:100%}button,.button{font:inherit;font-weight:650;border:1px solid var(--teal);background:#143a3b;color:var(--text-hi);border-radius:7px;padding:.65rem .9rem;cursor:pointer;text-decoration:none;display:inline-block}button:hover,.button:hover{background:#205356;color:#fff}button.secondary{background:var(--panel-strong);border-color:#597180}button:disabled{opacity:.45;cursor:not-allowed}
label{display:block;font-weight:650;margin:.7rem 0 .3rem}textarea,select,input{font:inherit;border:1px solid #597180;background:#061018;color:var(--text-hi);border-radius:6px;padding:.65rem;max-width:100%;width:100%}textarea{min-height:100px;resize:vertical}.controls label{margin:0}.controls select{width:auto}.filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:end}.filters>div{flex:1;min-width:min(220px,100%)}
.status{padding:1rem;border-left:4px solid var(--amber);background:#18232b;margin:1rem 0;overflow-wrap:anywhere}.status[data-tone=good]{border-color:var(--teal)}.status[data-tone=bad]{border-color:#ff8e9e}.status p:last-child{margin-bottom:0}.status strong{color:var(--text-hi)}
pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:1rem;background:#061018;border:1px solid var(--border);border-radius:6px;max-height:340px;overflow:auto}code{overflow-wrap:anywhere}.badge{display:inline-block;padding:.2rem .55rem;border:1px solid #476571;border-radius:99px;color:var(--teal);font-size:.76rem;font-weight:700}.badge.modern{color:var(--amber)}.badge.intro{color:#d5b6ff}.chapter{scroll-margin-top:1rem}.chapter header{display:flex;justify-content:space-between;gap:1rem;align-items:start}.chapter h2{margin:.5rem 0}.chapter-links{display:flex;gap:.6rem;flex-wrap:wrap;list-style:none;padding:0}.chapter-links a{border:1px solid var(--border);border-radius:6px;padding:.4rem .65rem;display:block}.chapter p{max-width:85ch}.chapter[hidden]{display:none}.exercise{border-left:2px solid var(--teal);padding-left:1rem}.steps{padding-left:1.4rem}.steps li{padding:.25rem 0}.custody{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.custody>div{padding:1rem;border:1px solid var(--border);border-radius:9px;background:#061018}.custody b{display:block;color:var(--teal);font-size:1.05rem}.custody p{font-size:.88rem;margin:.5rem 0}.chain{padding-left:1.4rem}.chain li{padding:.7rem 0}.sources li{margin:.5rem 0}details{margin:.9rem 0}summary{cursor:pointer;color:var(--teal);font-weight:650}footer{border-top:1px solid var(--border);margin-top:2rem;padding:1.5rem 0 2.5rem;color:var(--text-dim)}.notice{padding:.8rem 1rem;border:1px solid var(--border);border-radius:8px}.checkpoint{display:flex;gap:.6rem;align-items:center;font-size:.9rem}.checkpoint input{width:auto}.progress{color:var(--teal)}
@media(max-width:760px){.grid,.cards{grid-template-columns:1fr}.hero{padding-top:2.5rem}.custody{grid-template-columns:1fr}.chapter header{display:block}.controls button{flex:1 1 160px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:white;color:black}.topbar,.controls,.filters,.checkpoint,footer{display:none}.panel{background:white;border-color:#777;break-inside:avoid;color:black}h1,h2,h3,.eyebrow,.badge,a{color:black}pre{max-height:none}.hero{padding:1rem 0}.cards,.grid{display:block}}
