/* Move your desk: four distinct file paths and one visible review step. */
.mg-hero { text-align:center; padding-bottom:clamp(3.5rem,5vw,6rem); overflow:hidden; }
.mg-hero__copy { max-width:760px; margin-inline:auto; }
.mg-hero h1 { font:600 clamp(2.65rem,5.8vw,5.6rem)/1.02 var(--display); letter-spacing:-.05em; margin:22px 0; text-wrap:balance; }
.mg-hero__copy .lead { max-width:620px; margin-inline:auto; }
.mg-plan-note { max-width:570px; margin:20px auto 0; font-size:.8125rem; line-height:1.65; color:var(--muted); }
.mg-plan-note strong { display:block; font-weight:500; color:var(--body); }
.mg-route { display:grid; grid-template-columns:1fr; align-items:center; max-width:1050px; margin:clamp(32px,5vw,66px) auto 0; text-align:left; }
.mg-route__label { display:block; font-size:.8125rem; color:var(--muted); font-weight:500; margin-bottom:14px; }
.mg-route__source { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.mg-route__source .mg-route__label { grid-column:1/-1; text-align:center; margin-bottom:2px; }
.mg-file { display:flex; gap:9px; align-items:center; padding:11px 12px; border:1px solid var(--line2); border-radius:12px; background:var(--paper); font-size:.8125rem; color:var(--ink); box-shadow:0 3px 8px #203c3505; }
.mg-file .ic { color:var(--forest); flex:none; }
.mg-route__connector { width:28px; height:37px; justify-self:center; }
.mg-route__connector svg { display:block; width:42px; height:24px; transform:translate(-7px,7px) rotate(90deg); overflow:visible; }
.mg-route__connector path { stroke:var(--ln-rail); stroke-width:1.8; fill:none; stroke-linecap:round; stroke-linejoin:round; }
.mg-gate { border-radius:24px; padding:24px 20px; text-align:center; --glass-r:24px; }
.mg-gate__icon { width:44px; height:44px; display:grid; place-items:center; margin:0 auto 12px; background:var(--amber-soft); color:var(--amber-ink); border-radius:14px; }
.mg-gate__icon .ic { width:25px; height:25px; }
.mg-gate strong { display:block; font:600 1.35rem/1.2 var(--display); letter-spacing:-.035em; }
.mg-gate p { margin-top:10px; font-size:.875rem; line-height:1.55; }
.mg-gate__seal { display:inline-flex; margin-top:17px; padding:6px 12px; border:1px solid var(--ok-line); border-radius:50px; background:var(--ok-bg); color:var(--ok); font-size:.75rem; }
.mg-route__destination { text-align:center; }
.mg-route__destination .mg-route__label { margin-bottom:10px; }
.mg-route__destination > div { display:inline-flex; align-items:center; gap:7px; font-size:.8125rem; padding:3px 5px; color:var(--ink); }
.mg-route__destination .ic { width:16px; height:16px; color:var(--forest); flex:none; }
.mg-route__destination p { margin-top:8px; font-size:.75rem; color:var(--muted); }
.mg-tabs { display:grid; grid-template-columns:1fr 1fr; gap:5px; padding:6px; border:1px solid var(--line); background:var(--band); border-radius:18px; max-width:880px; margin:0 auto 36px; }
.mg-tabs[hidden] { display:none; }
.mg-tabs button { display:flex; justify-content:center; align-items:center; gap:7px; padding:14px 9px; font:500 .8125rem/1.3 var(--sans); color:var(--body); border:1px solid transparent; border-radius:12px; min-height:48px; background:transparent; cursor:pointer; }
.mg-tabs button[aria-selected="true"] { background:var(--paper); border-color:var(--line2); color:var(--ink); box-shadow:0 2px 7px #203c3508; }
.mg-tabs button .ic { width:18px; height:18px; flex:none; }
.mg-panel { display:grid; gap:30px; align-items:center; max-width:1080px; margin-inline:auto; }
.mg-panel[hidden] { display:none; }
.mg-panel + .mg-panel:not([hidden]) { margin-top:50px; }
.mg-paths.is-enhanced .mg-panel { margin-top:0; }
.mg-filetype { font-size:.75rem; font-weight:500; color:var(--amber-ink); }
.mg-panel h3 { font-size:clamp(1.65rem,2.5vw,2.25rem); letter-spacing:-.04em; line-height:1.15; margin:12px 0 16px; max-width:17em; }
.mg-panel__copy > p { font-size:.9375rem; line-height:1.7; }
.mg-panel__copy .checks { margin:22px 0; font-size:.875rem; }
.mg-panel__copy .mg-boundary { font-size:.8125rem; line-height:1.65; color:var(--muted); padding-left:14px; border-left:2px solid var(--line2); }
.mg-preview,.mg-example { --glass-r:22px; border-radius:22px; padding:20px; min-width:0; }
.mg-preview__head > span,.mg-example__caption { display:block; font-size:.75rem; color:var(--amber-ink); font-weight:500; }
.mg-preview__head strong { display:block; font:600 1.125rem/1.25 var(--display); margin-top:9px; letter-spacing:-.03em; }
.mg-preview__head p { font-size:.8125rem; margin-top:7px; }
.mg-preview__rows { margin:19px 0 0; padding:0; border:0; }
.mg-pick { display:grid; grid-template-columns:24px 1fr; column-gap:8px; padding:15px 0; border-top:1px solid var(--line); cursor:pointer; min-height:76px; }
.mg-pick input { width:20px; height:20px; accent-color:var(--forest); cursor:pointer; margin:1px 0 0; }
.mg-pick strong { display:block; color:var(--ink); font-size:.8125rem; line-height:1.4; }
.mg-pick small { display:block; font-size:.75rem; line-height:1.5; margin-top:3px; color:var(--muted); }
.mg-pick .status { grid-column:2; justify-self:start; margin-top:8px; font-size:.75rem; }
.mg-pick:has(input:not(:checked)) strong { color:var(--muted); }
.mg-preview__foot { border-top:1px solid var(--line); padding-top:15px; }
.mg-preview__foot output { display:block; font-size:.8125rem; color:var(--forest); font-weight:600; }
.mg-preview__foot > span { display:block; font-size:.75rem; color:var(--muted); line-height:1.6; margin-top:6px; }
.mg-example__step { display:flex; gap:17px; align-items:center; position:relative; padding:21px 0; border-bottom:1px solid var(--line); }
.mg-example__step:last-child { border-bottom:0; padding-bottom:0; }
.mg-example__step > .ic { width:38px; height:38px; padding:9px; color:var(--forest); background:var(--ok-bg); border:1px solid var(--ok-line); border-radius:11px; flex:none; }
.mg-example__step strong { font-size:.9375rem; color:var(--ink); font-weight:600; }
.mg-example__step p { font-size:.8125rem; margin-top:4px; }
.mg-mapping { display:grid; grid-template-columns:1fr 1fr; margin-top:20px; gap:0 28px; position:relative; }
.mg-mapping > * { font-size:.8125rem; padding:14px 0; border-bottom:1px solid var(--line); line-height:1.45; }
.mg-mapping > span { color:var(--muted); font-weight:400; padding-top:0; font-size:.75rem; }
.mg-mapping > strong { color:var(--ink); font-weight:500; }
.mg-mapping > strong:nth-child(odd)::after { content:'→'; position:absolute; left:calc(50% - 6px); color:var(--amber-ink); }
.mg-example__note { font-size:.8125rem; margin-top:20px; }
.mg-steps { list-style:none; display:grid; gap:24px; margin:0; padding:0; }
.mg-steps li { display:grid; grid-template-columns:34px 1fr; gap:5px 12px; }
.mg-steps li > span { font-family:var(--display); font-weight:500; color:var(--amber-ink); grid-row:1/3; font-size:1.15rem; }
.mg-steps h3 { font-size:1.0625rem; letter-spacing:-.025em; line-height:1.4; }
.mg-steps p { font-size:.875rem; line-height:1.65; }
.mg-screen { max-width:1120px; margin-inline:auto; }
.mg-destination .section-actions { margin-top:22px; }
.mg-close h2 { margin:20px 0; }
.mg-close .lead { max-width:620px; margin-inline:auto; }
.mg-close__note { margin-top:20px; }
@media(min-width:640px) {
 .mg-route { grid-template-columns:1fr 50px 1fr; }
 .mg-route__source { display:block; }
 .mg-route__source .mg-route__label { text-align:left; margin-bottom:13px; }
 .mg-file + .mg-file { margin-top:8px; }
 .mg-route__connector { width:50px; height:24px; }
 .mg-route__connector svg { width:50px; transform:none; }
 .mg-route__connector:nth-of-type(4) { display:none; }
 .mg-route__destination { grid-column:1/-1; margin-top:23px; border-top:1px solid var(--line); padding-top:18px; }
 .mg-route__destination .mg-route__label { display:none; }
 .mg-tabs { grid-template-columns:repeat(4,1fr); }
 .mg-tabs button { font-size:.875rem; padding-inline:8px; }
 .mg-tabs button .ic { width:20px; height:20px; }
 .mg-preview,.mg-example { padding:26px; }
 .mg-pick { grid-template-columns:24px 1fr auto; align-items:center; }
 .mg-pick .status { grid-column:auto; margin:0; }
 .mg-steps { grid-template-columns:1fr 1fr; gap:34px; }
}
@media(min-width:900px) {
 .mg-route { grid-template-columns:1fr 64px 1.22fr 64px 1fr; }
 .mg-route__connector:nth-of-type(4) { display:block; }
 .mg-route__destination { grid-column:auto; text-align:left; margin:0; padding:0; border:0; }
 .mg-route__destination .mg-route__label { display:block; }
 .mg-route__destination > div { display:flex; padding:8px 0; font-size:.8125rem; }
 .mg-route__destination p { margin-top:13px; }
 .mg-gate { padding:28px 16px; }
 .mg-panel { grid-template-columns:1fr 1.06fr; gap:clamp(40px,5vw,80px); min-height:430px; }
 .mg-steps { grid-template-columns:repeat(4,1fr); gap:32px; }
 .mg-steps li { display:block; border-top:1px solid var(--line2); padding-top:18px; }
 .mg-steps li > span { display:block; margin-bottom:14px; }
 .mg-steps p { margin-top:10px; }
}
@media(max-width:639px) {
 .mg-hero { --under-nav-pad:34px; }
 .mg-hero .lead { font-size:1rem; line-height:1.65; }
 .mg-route { max-width:390px; }
 .mg-route__destination .mg-route__label { display:none; }
 .mg-route__destination p { margin-top:5px; }
 .mg-route__destination > div { display:flex; justify-content:center; padding:3px 0; }
 .mg-gate { max-width:320px; width:100%; justify-self:center; }
 .mg-screen { max-width:320px; }
 .mg-screen .frame__url { display:none; }
 .mg-screen .sample-note { padding-inline:0; font-size:.75rem; line-height:1.6; }
 .mg-sample-tag { white-space:nowrap; }
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
 .mg-file,.mg-tabs,.mg-tabs button[aria-selected="true"] { background:var(--paper); box-shadow:none; border-color:var(--ink); }
}
@media(forced-colors:active) {
 .mg-gate__seal,.mg-gate__icon,.mg-file,.mg-tabs,.mg-tabs button[aria-selected="true"],.mg-example__step > .ic { border:1px solid CanvasText; background:Canvas; color:CanvasText; }
 .mg-tabs button[aria-selected="true"] { outline:2px solid Highlight; }
 .mg-route__connector path { stroke:CanvasText; }
}
@media print { .mg-tabs { display:none!important; } .mg-panel[hidden] { display:grid!important; } .mg-panel { break-inside:avoid; margin-block:30px!important; } }
