:root{--ink:#122c39;--muted:#56707c;--teal:#087e86;--line:#d9e2e6;--blue:#eaf4f6;--orange:#c17025;--paper:#f7f9fa}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'Segoe UI',Arial,sans-serif}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:var(--teal);text-underline-offset:4px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,svg [role=button]:focus-visible{outline:3px solid #e59235;outline-offset:3px}button{background:white;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:9px 15px;min-height:44px}button:hover{background:var(--blue)}button.active,button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}header{padding:18px max(3vw,20px);display:flex;align-items:center;gap:28px;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);line-height:1.15}.brand>b{font-size:38px;font-weight:750;letter-spacing:-2px}.brand>span{font-size:14px;letter-spacing:1.6px;font-weight:650}.brand small{font-size:11px;letter-spacing:2px;color:var(--muted)}.draft{font-size:12px;letter-spacing:1.6px;margin:auto;color:var(--muted)}.download{font-size:14px;font-weight:600;white-space:nowrap}main{max-width:1560px;padding:34px max(3vw,20px) 70px;margin:auto}.page-intro{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:24px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:2px;color:var(--teal);margin:0 0 8px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(27px,3vw,42px);line-height:1.15;letter-spacing:-1.3px;margin-bottom:12px}h2{font-size:29px;line-height:1.2;letter-spacing:-.6px}h3{line-height:1.3;font-size:20px}p{margin-bottom:14px}.page-intro>div>p:last-child{max-width:710px;color:var(--muted);margin-bottom:0}.method{flex:0 0 290px;padding-left:23px;border-left:3px solid var(--teal);display:flex;flex-direction:column;font-size:14px;color:var(--muted)}.method b{font-size:16px;color:var(--ink);margin-bottom:4px}.floors{display:flex;gap:8px;margin-bottom:16px}.floors button{display:flex;gap:14px;align-items:center;padding:10px 20px}.floors b{font-size:14px;opacity:.7}.workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,1fr);background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 8px 35px #19354308}.visual-panel{border-right:1px solid var(--line);min-width:0}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);flex-wrap:wrap}.toolbar>div{display:flex;gap:5px}.toolbar button{font-size:14px;padding:6px 12px}.toolbar>span{font-size:12px;color:var(--muted)}#map{height:594px;padding:14px;background:white}#map svg{width:100%;height:100%;display:block}svg .route{fill:none;stroke:var(--teal);stroke-width:3.2;stroke-linejoin:round;stroke-linecap:round;opacity:.8;stroke-dasharray:6 4}svg .station{cursor:pointer}svg .station circle{fill:#fff;stroke:var(--teal);stroke-width:2.5}svg .station text{font:bold 12px Arial;fill:var(--teal);text-anchor:middle;dominant-baseline:central;pointer-events:none}svg .station.selected circle{fill:var(--teal);stroke:white;stroke-width:3}svg .station.selected text{fill:white}svg .station:hover circle{fill:#d7edef}.legend{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 20px;font-size:12px;border-top:1px solid var(--line);padding:12px}.legend>span{display:flex;align-items:center;gap:6px}.dot{width:10px;height:10px;border-radius:50%;background:var(--teal)}.diamond{height:9px;width:9px;background:var(--orange);transform:rotate(45deg)}.line{width:22px;border-top:2px dashed var(--teal)}.plan-note{font-size:12px;color:var(--muted);padding:0 20px 14px;margin:0;text-align:center}.shot-panel{padding:22px 26px;min-width:0;display:flex;flex-direction:column}.step-picker label{font-size:11px;letter-spacing:1.8px;font-weight:bold;display:block;margin-bottom:6px}.step-picker select{width:100%;padding:10px;border-radius:5px;border:1px solid var(--line);font-size:16px;background:white;color:var(--ink)}.shot-title{margin:23px 0 18px}.shot-title .eyebrow{font-size:12px}.shot-title h2{font-size:25px;margin:0}.cue{background:var(--blue);border-left:3px solid var(--teal);padding:13px 16px;font-size:15px;margin:0 0 18px}.cue small{display:block;letter-spacing:1.1px;font-size:11px;font-weight:700;color:var(--teal);margin-bottom:4px}.shot-list{padding-left:22px;font-size:15px;margin:0}.shot-list li{padding:0 0 11px 5px}.watch{font-size:14px;color:#80501f;background:#fff6e9;padding:12px 15px;border-radius:5px;margin:7px 0 16px}.reference{margin:0 0 10px;display:grid;grid-template-columns:105px 1fr;gap:12px;align-items:center}.reference img{width:105px;height:70px;object-fit:cover;border-radius:5px}.reference figcaption{font-size:12px;color:var(--muted)}.step-controls{margin-top:auto;padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}.step-controls button{font-size:13px;padding:7px 12px}.instructions{padding-top:54px}.section-heading{max-width:740px}.section-heading>p:last-child{color:var(--muted)}.instruction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:26px}.instruction-grid article{border-top:2px solid var(--ink);padding-top:18px}.num{color:var(--teal);font-weight:700;font-size:14px;display:block;margin-bottom:14px}.instruction-grid p{font-size:15px;color:var(--muted)}.audio-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin:42px 0;background:var(--ink);color:white;padding:34px;border-radius:8px}.audio-section .eyebrow{color:#91e5e9}.audio-section p{color:#cddbe2;font-size:15px}.audio-card{border-left:1px solid #53717e;padding-left:30px}.audio-card>small{color:#92e0e5;letter-spacing:1.2px;font-size:11px}.audio-card blockquote{margin:14px 0;font-size:20px;line-height:1.5}.audio-card p{font-size:13px}.details{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{padding:20px 0;cursor:pointer;font-weight:650;font-size:17px}.detail-body{max-width:1000px;padding-bottom:16px;color:var(--muted);font-size:15px}.downloads{display:flex;gap:16px;flex-wrap:wrap}.downloads a{font-size:14px}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);background:#fff;padding:22px max(3vw,20px);font-size:12px;color:var(--muted)}footer b{color:var(--ink);letter-spacing:1px}#model{height:594px;position:relative;background:#eaf0f4}#model-canvas{display:block;width:100%;height:100%;touch-action:none}.model-tools{position:absolute;top:10px;left:10px;right:10px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.model-tools button{font-size:12px;padding:5px 9px;min-height:35px}.model-tools label{font-size:12px;background:#ffffffee;padding:4px 10px;border-radius:5px;display:flex;align-items:center;gap:6px}.model-tools input{width:75px}.model-note{position:absolute;bottom:10px;left:10px;background:#fffffff0;padding:8px 12px;border-radius:4px;font-size:11px;color:var(--muted);pointer-events:none}#model-error{position:absolute;inset:100px 20px auto;background:white;padding:20px}[hidden]{display:none!important}
@media(max-width:1000px){.workspace{grid-template-columns:minmax(0,1.2fr) minmax(310px,1fr)}.method{display:none}.shot-panel{padding:20px}#map,#model{height:560px}.toolbar>span{display:none}.audio-section{gap:28px}}
@media(max-width:740px){header{padding:14px 18px}.brand>b{font-size:32px}.brand>span{font-size:12px}.draft{display:none}.download{margin-left:auto;font-size:12px}main{padding:24px 16px 40px}.page-intro{margin-bottom:22px}h1{font-size:30px}.page-intro p{font-size:15px}.floors{gap:5px}.floors button{flex:1;padding:8px;display:block;font-size:13px;line-height:1.4}.floors b{display:block;font-size:12px}.workspace{display:block}.visual-panel{border-right:0;border-bottom:1px solid var(--line)}#map{height:490px;padding:10px}#model{height:460px}.shot-panel{padding:22px}.legend{font-size:11px;gap:8px 12px}.plan-note{font-size:11px}.instruction-grid{grid-template-columns:1fr;gap:12px}.instruction-grid article{padding-top:12px}.num{float:left;margin-right:14px}.instruction-grid h3{font-size:19px;margin-bottom:10px}.instructions{padding-top:35px}.audio-section{grid-template-columns:1fr;padding:23px;gap:16px}.audio-card{padding:20px 0 0;border-left:0;border-top:1px solid #53717e}.audio-card blockquote{font-size:19px}.model-tools label{flex-basis:90%;max-width:260px}.model-note{max-width:calc(100% - 20px)}footer{display:block}footer span{display:block;margin-top:6px}}
