:root{--p-ink:#182539;--p-paper:#fffefa;--p-blue:#18396c;--p-line:#bdcbd9;--p-well:#101f32;--p-live:#88ddd4;--p-gold:#f0c17c;--p-muted:#496177}
*{box-sizing:border-box}
.panoptes-page{max-width:1180px;margin:24px auto;background:var(--p-paper);color:var(--p-ink);border:1px solid #36455f;box-shadow:8px 9px 0 #25364c33;font:17px/1.65 Calibri,'Segoe UI',Arial,sans-serif}
.page-hero{padding:26px 42px 34px;background:linear-gradient(125deg,#132e58,#224d82);color:white}
.page-hero h1{font-size:clamp(2.4rem,5vw,4.7rem);line-height:1.05;margin:27px 0 16px;letter-spacing:-.035em}
.page-hero>p{font-size:1.25rem;max-width:850px;margin:0;color:#e0eafa}
.hierarchy-nav{display:flex;gap:12px;flex-wrap:wrap;font-size:15px}
.hierarchy-nav a{color:#e1ebfb}
.chapter-nav{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--p-line);background:#e9eef4}
.chapter-nav a{display:block;padding:13px 16px;color:#253d58;font-size:15px;border-right:1px solid var(--p-line);text-decoration:none}
.chapter-nav a[aria-current]{background:var(--p-blue);color:white}
.panoptes-page section{padding:32px 42px;border-bottom:1px solid var(--p-line)}
h2{font-size:1.85rem;line-height:1.22;margin:0 0 18px;font-weight:650}
h3{font-size:1.15rem}
p{max-width:900px;margin:15px 0}
a{color:#205da0;text-underline-offset:3px}
a:hover{color:#122e58}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #d88824;outline-offset:3px}
figure{margin:0;background:#102031}
figure img{display:block;width:100%;height:auto}
figcaption{font-size:14px;line-height:1.5;padding:15px 42px;color:#d6e3ee;background:#263c53}
.table-wrap{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:16px;margin:22px 0}
th,td{padding:13px 14px;vertical-align:top;text-align:left;border-bottom:1px solid #c7d1db}
th{background:#e9eef4;font-weight:650}
td:first-child{font-weight:600;min-width:155px}
.chapters{padding-left:24px}
.chapters li{padding:12px 0;border-bottom:1px solid #dbe1e7}
.chapters li>a{font-size:1.18rem;font-weight:650}
.chapters p{margin:5px 0}
.instrument{display:grid;grid-template-columns:245px minmax(0,1fr);gap:0;margin:26px -18px;background:var(--p-well);border:1px solid #324b65;color:#e3edf7}
.controls{background:#e8edf3;color:var(--p-ink);padding:18px;border-right:1px solid #667e98;display:flex;flex-direction:column;gap:14px}
.controls label{font-size:14px;line-height:1.4;display:block}
.controls input[type=number],.optimizer input{display:block;width:100%;background:#fff;color:#16243a;border:1px solid #8ba0b8;border-radius:0;padding:7px 9px;margin-top:6px;font-family:inherit;font-size:16px;line-height:1.4;font-variant-numeric:tabular-nums}
.controls input[type=range]{width:100%;accent-color:#225d88;margin-top:10px}
.controls output{float:right;font-variant-numeric:tabular-nums;font-weight:bold}
.controls button,.optimizer button{background:linear-gradient(#fff,#dce5ed);color:#183450;border:1px solid #6b839a;padding:9px 12px;box-shadow:0 2px 0 #8297aa;font-family:inherit;font-size:14px;font-weight:600;line-height:1.3;cursor:pointer}
.controls button:active,.optimizer button:active{box-shadow:none;transform:translateY(1px)}
.button-row{display:grid;gap:8px}
.display{padding:12px;min-width:0;align-self:start}
.panoptes-page canvas{width:100%;height:auto;display:block;background:var(--p-well);margin:8px 0;border:1px solid #354e65}
.readouts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.readouts>div{padding:11px;border-top:1px solid #375067}
.readouts b{display:block;color:var(--p-live);font-size:1.2rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.readouts span{font-size:14px;color:#c7d8e9;display:block}
.model-note{grid-column:1/-1;padding:14px 18px;border-top:1px solid #466077;margin:0;max-width:none;color:#c3d4e5;font-size:14px;line-height:1.5}
.optimizer{padding:20px;background:#e9eef4;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.optimizer label{font-size:15px}
.optimizer #opt-result{grid-column:1/-1}
footer{padding:24px 42px;background:#eef1f6;font-size:14px}
footer p{margin:0 0 8px}
.skip{position:absolute;left:-10000px}
.skip:focus{left:20px;top:20px;z-index:50;background:white;padding:10px}
.noscript{padding:20px;background:white;color:#182539}
.error{color:#ffcf97;padding:12px}
.readouts .wide{grid-column:1/-1}
 @media(max-width:760px){.panoptes-page{margin:0;box-shadow:none}
.page-hero{padding:22px}
.panoptes-page section{padding:26px 20px}
.chapter-nav a{font-size:14px;padding:10px}
.instrument{margin:20px -6px;grid-template-columns:1fr}
.controls{border-right:0;display:grid;grid-template-columns:1fr 1fr;padding:14px}
.display{padding:5px}
.readouts b{font-size:1rem}
.readouts>div{padding:9px}
.optimizer{grid-template-columns:1fr}
figcaption,footer{padding:16px 20px}
h2{font-size:1.55rem}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}
}
@media(forced-colors:active){.readouts b,.readouts span,.model-note{color:CanvasText}
.instrument,canvas{border:1px solid CanvasText}
}


.panoptes-page .hierarchy-nav a,.panoptes-page .chapter-nav a{display:inline-flex;align-items:center;min-height:44px}
.panoptes-page button,.panoptes-page input[type=number]{min-height:44px}
