/* Additive working surfaces for Drawing Practice Pack 02; shared brand is unchanged. */
.studio-workspace{grid-template-columns:220px minmax(0,1fr) 270px}
.studio-workspace .preview-panel{top:92px;padding:16px}
.studio-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.studio-toolbar .button-row{margin:0}
.study-stage{position:relative;background:#eeede7;border:1px solid #d9ddd6;border-radius:7px;overflow:hidden;line-height:0;min-width:0}
.study-stage canvas,.study-stage svg,.study-stage>img{display:block;width:100%;height:auto;max-width:100%;touch-action:none;outline-offset:-4px;aspect-ratio:4/3;object-fit:contain}
.study-stage canvas{cursor:grab}
.study-stage canvas:active{cursor:grabbing}
.study-stage .portrait-art{aspect-ratio:4/5;background:#faf9f5}
.study-caption{margin-top:10px}
.preset-list{display:flex;flex-direction:column;gap:8px;max-height:380px;overflow:auto;padding:3px}
.preset-choice{text-align:left;display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:9px;font-size:12px;line-height:1.4;padding:8px;min-height:76px;height:auto;flex:none;overflow:hidden}
.preset-choice>span{min-width:0;overflow-wrap:anywhere}
.preset-choice img{display:block;width:64px;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:3px;background:#eeede7}
.preset-choice[aria-pressed=true]{border-color:#335d4b;background:#e9f0e9;box-shadow:inset 0 0 0 1px #335d4b}
.preset-choice small{display:block;font-weight:400;color:#57675f;line-height:1.4}
.studio-workspace .field{margin-bottom:12px}
.studio-workspace textarea{width:100%;margin-top:8px;resize:vertical}
.studio-legend{padding-left:17px;font-size:12px;line-height:1.6;color:#526158}
.studio-legend li{margin:7px 0}
.small-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.studio-note{border-left:3px solid #b6c7ad;padding-left:11px}
.guide-list{font-size:12px;line-height:1.5;padding-left:17px}
.static-fallback .live-controls{display:none}
.static-fallback .study-stage img{touch-action:auto}
.practice-focus .studio-workspace{display:block;max-width:1100px}
.practice-focus .studio-toolbar{padding-right:120px}
.practice-focus .study-stage{max-width:1100px}
.practice-focus #status{display:none}
.practice-focus .study-stage canvas{max-height:80vh;object-fit:contain}
.step-buttons{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.step-buttons button{font-size:12px;padding:8px;flex:1;min-width:72px}
.step-buttons [aria-current=step]{background:#e6eee7;border-color:#365b47}
.portrait-viewport{overflow:auto;max-height:68vh;background:#f4f3ee;min-width:0;touch-action:pan-x pan-y}
.portrait-viewport .portrait-art{display:block;width:100%;height:auto}
.portrait-viewport[data-zoom='2'] .portrait-art{width:200%;max-width:none}
.portrait-viewport[data-zoom='1.5'] .portrait-art{width:150%;max-width:none}
.portrait-gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:440px;overflow:auto;padding:3px}
.portrait-gallery .preset-choice{display:block;text-align:center;font-size:11px}
.portrait-gallery img{width:100%;aspect-ratio:4/5;object-fit:contain}
.study-stage .step-buttons,.study-stage>.button-row,.step-instruction{line-height:1.5;padding:0 12px}
.step-instruction{background:#fff;border-top:1px solid #dce1dc;font-size:13px;padding:12px 16px}
.step-instruction h3{margin:0 0 7px;font-size:15px}.step-instruction p{margin:5px 0}
.portrait-viewport{touch-action:pan-x pan-y pinch-zoom;height:clamp(320px,60vh,720px);max-height:none}
.portrait-viewport canvas.portrait-art{aspect-ratio:auto;max-width:none;touch-action:pan-x pan-y pinch-zoom}
.portrait-viewport canvas{margin-inline:auto}
.portrait-gallery .preset-choice small{font-size:10px}
.studio-toolbar output{font-size:11px;color:#57675f;align-self:center}
.scene-modes{gap:5px}.scene-modes button{font-size:12px;padding:8px 10px}
.scene-modes [aria-pressed=true],.scene-object-list [aria-pressed=true]{background:#e6eee7;border-color:#365b47;box-shadow:inset 0 0 0 1px #365b47}
.scene-object-list{display:flex;flex-direction:column;gap:5px;margin-top:12px}
.scene-object-list button{text-align:left;font-size:12px;min-height:38px;padding:8px 10px}
.scene-selected-caption{font-size:12px;line-height:1.5;margin:8px 0;color:#364f45}
.scene-collision{font-size:12px;line-height:1.5;color:#825b20}.scene-collision:empty{display:none}
.study-stage canvas[data-interaction=arrange]{cursor:move}
.studio-workspace .small-field-pair input{min-width:0;width:100%}
.static-fallback .scene-selected-caption{color:#59635e}
@media(max-width:1200px){.studio-workspace{grid-template-columns:190px minmax(0,1fr) 240px;gap:12px}.studio-workspace .left-panel,.studio-workspace .right-panel{padding:13px}}
@media(max-width:960px){.studio-workspace{display:grid;grid-template-columns:minmax(0,1fr) 260px}.studio-workspace .preview-panel{grid-column:1;grid-row:1}.studio-workspace .left-panel{grid-column:1;grid-row:2}.studio-workspace .right-panel{grid-column:2;grid-row:1/span 2}}
@media(max-width:640px){.studio-workspace{display:flex;flex-direction:column}.studio-workspace .preview-panel{order:0}.studio-workspace .left-panel{order:1}.studio-workspace .right-panel{order:2}.studio-workspace .preview-panel{padding:11px}.studio-toolbar h2{font-size:17px}.preset-list{max-height:230px}.preset-choice{grid-template-columns:75px 1fr}.portrait-viewport{max-height:60vh}.study-stage{border-radius:4px}}
@media print{
 .study-paper .study-print-content{min-height:0;flex:1;display:flex;flex-direction:column;gap:6mm}
 .study-paper .print-reference{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden}
 .study-paper .print-reference img{display:block;width:100%;height:100%;object-fit:contain;max-width:var(--reference-max-width,100%)}
 .study-paper .with-practice .print-reference{flex:0 0 47%}
 .study-paper .print-practice{border:1px solid #bcc3bf;min-height:0;flex:1;padding:3mm;color:#777;font-size:8pt}
 .print-sequence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:4mm;min-height:0;flex:1}
 .print-sequence figure{min-height:0;display:flex;flex-direction:column}
 .print-sequence img{width:100%;min-height:0;height:0;flex:1;object-fit:contain}
 .print-sequence figcaption{font-size:8pt;margin-top:2mm}
 .print-sequence figure:last-child{grid-column:1/-1}
 .study-paper .print-sequence{grid-template-rows:1fr 1fr 1.35fr}
}
