/* The drawing stage owns the composition; art occupies its side margins. */
.truth-composer{font-size:16px}
.truth-composer .masthead,.truth-composer main{width:min(1120px,calc(100% - 48px));background:transparent}
.truth-composer .masthead{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:32px 0 24px;border-bottom:1px solid #888}
.truth-composer .masthead h1{font-size:clamp(2.25rem,1.25rem + 3vw,4.5rem);line-height:1;letter-spacing:-.035em}
.truth-composer .masthead p{font-size:16px;margin-top:12px}
.truth-composer .masthead>a{font-size:14px;max-width:none}
.truth-composer .composer{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:24px 40px;background:transparent;padding:24px 0 40px}
.truth-composer .compose-drawing{grid-column:1/-1;grid-row:1;min-width:0}
.truth-composer .compose-controls{grid-column:1;grid-row:2}
.truth-composer .compose-notes{grid-column:2;grid-row:2}
.truth-composer .freehand-toolbar,.truth-composer .guide-actions,.truth-composer .compose-actions,.truth-composer #composeStatus,.effect-context{max-width:720px;margin-left:auto;margin-right:auto}
.truth-composer .freehand-toolbar{margin-bottom:16px;align-items:center}
.truth-composer .freehand-toolbar button{font-size:14px}
.drawing-stage{position:relative;isolation:isolate;padding:0 0 24px}
.truth-composer .compose-board{position:relative;width:min(720px,72%);max-width:none;margin:auto;background:#080808;border:0;outline:0;border-radius:48% 48% 0 0 / 14% 14% 0 0;padding:24px 16px 16px}
.truth-composer .compose-board canvas{background:transparent!important;outline:0;position:relative}
.truth-composer .compose-board:has(canvas:focus-visible){outline:2px solid #777;outline-offset:4px}
.truth-composer .compose-board canvas:focus-visible{outline:none}
.stage-instruction{color:#ccc;font:italic 16px/1.4 Georgia,serif;text-align:center;margin:0 12px 16px;pointer-events:none}
.truth-composer .guide-actions{font-size:14px;margin-top:0}
.truth-composer .guide-actions button,.truth-composer .compose-actions button{font-size:14px}
.truth-composer .compose-actions{margin-top:24px;align-items:center}
.truth-composer .compose-actions .primary{flex:1;max-width:320px;padding:16px 24px;font-size:18px}
.effect-context{font-size:14px;color:#555;margin-top:16px;line-height:1.5}
.truth-composer #composeStatus{font:14px/1.5 Arial,sans-serif;margin-top:8px;color:#333}
.truth-composer .compose-notes>details{border-top:1px solid #888;padding-top:16px}
.truth-composer .compose-notes summary{font:20px Georgia,serif;min-height:44px;cursor:pointer;user-select:none}
.truth-composer .reading,.truth-composer .render-study{padding:48px 0}
.truth-composer .study-grid p:not(.page-number),.truth-composer .reading details>p,.truth-composer .render-study p{font-size:16px;line-height:1.6}
.truth-composer .study-grid a{font-size:14px}
.truth-composer .reading h2,.truth-composer .render-study h2{font-size:16px;color:#555}
.truth-composer .composer summary,.truth-composer .reading summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;font:400 1rem/1.5 'Helvetica Neue',Arial,sans-serif;min-height:44px;user-select:none;cursor:pointer}
.truth-composer summary::-webkit-details-marker{display:none}
.truth-composer summary::marker{content:""}
.truth-composer .composer summary::after,.truth-composer .reading summary::after{content:"";width:7px;height:7px;flex:0 0 7px;margin-right:4px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
.truth-composer .composer details[open]>summary::after,.truth-composer .reading details[open]>summary::after{transform:rotate(225deg)}
@media(max-width:760px){
 .truth-composer .masthead,.truth-composer main{width:calc(100% - 32px)}
 .truth-composer .masthead{grid-template-columns:1fr;padding:24px 0 16px;gap:12px}
 .truth-composer .masthead>a{width:fit-content;min-height:24px}
 .truth-composer .composer{gap:24px;padding-top:16px}
 .truth-composer .compose-board{width:calc(100% - 48px);padding:24px 8px 12px}
 .stage-instruction{font-size:14px;margin-bottom:8px}
 .truth-composer .freehand-toolbar{gap:8px;justify-content:center}
 .truth-composer .freehand-toolbar button{padding:8px 10px}
 .truth-composer .compose-controls,.truth-composer .compose-notes{grid-column:1/-1}
 .truth-composer .compose-notes{grid-row:3}
 .truth-composer .compose-actions .primary{flex-basis:100%;max-width:none}
 .truth-composer .compose-actions button:not(.primary){flex:1}
}
