.mp-page{--mp-ink:#11100d;--mp-muted:#625b50;--mp-line:#e5dccb;--mp-accent:#c9a23f;--mp-accent-ink:#9e7922;--mp-paper:#f7f6f2;color:var(--mp-ink);overflow-wrap:anywhere}
.mp-page .container{max-width:1140px}
.mp-page a{color:var(--mp-accent-ink)}
.mp-kicker{margin:26px 0 7px;color:var(--mp-accent-ink);font-size:.76rem;font-weight:800;text-transform:uppercase}
.mp-page h1{max-width:860px;margin:0;font-size:clamp(2.35rem,6vw,4.7rem);line-height:1.02;letter-spacing:0}
.mp-lede{max-width:900px;font-size:1.14rem;line-height:1.65}
.mp-meta,.mp-boundary{color:var(--mp-muted);font-size:.88rem;line-height:1.55}
.mp-nav,.mp-downloads,.mp-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.mp-nav a,.mp-downloads a,.mp-actions button{min-height:40px;padding:9px 13px;border:1px solid var(--mp-line);border-radius:4px;background:#fff;color:var(--mp-ink);font:inherit;font-weight:750;text-decoration:none}
.mp-nav a:hover,.mp-downloads a:hover,.mp-actions button:hover{border-color:var(--mp-accent);background:var(--mp-paper)}
.mp-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:28px 0 42px;border-top:3px solid var(--mp-accent)}
.mp-strip>div{min-height:116px;padding:18px;border:1px solid var(--mp-line);border-top:0;background:#fff}
.mp-strip span,.mp-result-label{display:block;color:var(--mp-muted);font-size:.78rem}
.mp-strip strong{display:block;margin:7px 0;font-size:1.34rem}
.mp-workbench{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;align-items:start}
.mp-list{border-top:1px solid var(--mp-line)}
.mp-row{display:grid;grid-template-columns:34px minmax(180px,.48fr) minmax(260px,1fr);gap:12px;padding:15px 10px;border:1px solid var(--mp-line);border-top:0;background:#fff}
.mp-row input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--mp-accent)}
.mp-row label{font-weight:800;line-height:1.35;cursor:pointer}
.mp-prompt{margin:0 0 8px;line-height:1.55}
.mp-example{display:block;color:var(--mp-muted);font-size:.84rem}
.mp-row details{margin-top:9px;font-size:.84rem}
.mp-row summary{color:var(--mp-accent-ink);font-weight:750;cursor:pointer}
.mp-row details p{margin:8px 0;color:var(--mp-muted)}
.mp-row details a{display:inline-block;margin:3px 12px 3px 0}
.mp-panel{position:sticky;top:18px;border:1px solid var(--mp-line);border-top:4px solid var(--mp-accent);padding:20px;background:#fff}
.mp-count{display:block;margin:8px 0 2px;font-size:2.7rem;line-height:1;font-weight:850}
.mp-progress{height:10px;margin:15px 0 21px;overflow:hidden;border:1px solid var(--mp-line);background:var(--mp-paper)}
.mp-progress span{display:block;width:0;height:100%;background:var(--mp-accent);transition:width .18s ease}
.mp-state{display:block;margin:6px 0 12px;font-size:1.45rem;line-height:1.15}
.mp-missing{padding:12px;background:var(--mp-paper);font-size:.84rem;line-height:1.55}
.mp-chart{margin:42px 0}
.mp-chart img{display:block;width:100%;height:auto;border:1px solid var(--mp-line);background:var(--mp-paper)}
.mp-chart figcaption{padding:10px 0;color:var(--mp-muted);font-size:.87rem}
.mp-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:20px 0;background:var(--mp-line);border:1px solid var(--mp-line)}
.mp-source{padding:18px;background:#fff}
.mp-source h3{margin:0 0 5px;font-size:1rem}
.mp-source p{margin:8px 0;font-size:.88rem;line-height:1.55}
.mp-source .mp-source-boundary{padding-left:10px;border-left:3px solid var(--mp-accent);color:var(--mp-muted)}
.mp-learning{margin:44px 0;padding:24px;border-left:4px solid var(--mp-accent);background:var(--mp-paper)}
.mp-learning h2{margin-top:0}
.mp-learning li{margin:8px 0;line-height:1.5}
.mp-faq details{padding:15px 0;border-bottom:1px solid var(--mp-line)}
.mp-faq summary{font-weight:800;cursor:pointer}
.mp-faq p{max-width:850px;line-height:1.6}
@media(max-width:820px){.mp-workbench{grid-template-columns:1fr}.mp-panel{position:static}.mp-row{grid-template-columns:30px 1fr}.mp-row>div{grid-column:2}.mp-source-grid{grid-template-columns:1fr}}
@media(max-width:620px){.mp-page .container{padding-inline:16px}.mp-page h1{font-size:2.55rem}.mp-strip{grid-template-columns:1fr}.mp-nav a,.mp-downloads a{flex:1 1 145px;text-align:center}.mp-row{padding:14px 7px}.mp-actions button{flex:1 1 120px}}
@media(prefers-reduced-motion:reduce){.mp-progress span{transition:none}}
