/* Editable layouts shared by the course editor and learner exports. */
.studio-text-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.studio-table-scroll{overflow:auto}.studio-table{border-collapse:collapse;width:100%;min-width:300px}.studio-table th,.studio-table td{border:1px solid var(--course-border,#8a7b8d);padding:13px;min-width:90px;vertical-align:top}.studio-table th{background:var(--course-tint,#f5ebce);color:var(--course-ink,#2f2d32);text-align:left}
.studio-statement{font-size:1.4em;line-height:1.5;padding:24px}.statement-a{text-align:center;border-top:4px solid var(--accent);border-bottom:4px solid var(--accent)}.statement-b{border-left:7px solid var(--course-note-edge,#a14e2e);background:var(--course-note,#f7e7dc);color:var(--course-ink,#2f2d32)}.statement-c{text-align:center;background:var(--course-ink,#2f2d32);color:#fff;border-radius:8px}.statement-d{border:2px solid currentColor;text-align:center}.statement-note{display:flex;gap:18px;align-items:flex-start;background:var(--course-note,#f7e7dc);color:var(--course-ink,#2f2d32);border-radius:8px;font-size:1em}.statement-icon{border:2px solid currentColor;border-radius:50%;width:28px;height:28px;flex-shrink:0;text-align:center;font-weight:700}
.studio-quote.quote-a{border-left:4px solid var(--accent);padding-left:20px}.studio-quote.quote-b{text-align:center;border-top:2px solid currentColor;border-bottom:2px solid currentColor;padding:20px}.studio-quote.quote-c{background:var(--course-tint,#f5ebce);padding:25px;color:var(--course-ink,#2f2d32);border-radius:8px}.studio-quote.quote-d{border:2px solid currentColor;padding:25px}.studio-quote.quote-image{position:relative;isolation:isolate;min-height:240px;display:grid;align-content:center;padding:30px;background:var(--course-ink,#2f2d32);color:white}.quote-image>img{position:absolute!important;inset:0;object-fit:cover;width:100%;height:100%;z-index:-2}.quote-image:after{content:'';position:absolute;inset:0;background:#0007;z-index:-1}.quote-image>.image-placeholder{margin-bottom:12px}
.studio-checklist{display:grid;gap:12px}.studio-checklist label{display:flex;align-items:flex-start;gap:14px;padding:12px;border-bottom:1px solid var(--course-border,#8a7b8d)}.studio-checklist input{margin-top:7px;width:19px;height:19px;flex-shrink:0;accent-color:var(--accent)}
.studio-gallery{display:grid;gap:20px}.gallery-2{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-3{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-4{grid-template-columns:repeat(4,minmax(0,1fr))}.studio-gallery figure,.studio-slide figure{margin:0;min-width:0}.studio-gallery img{width:100%;height:180px;object-fit:cover}.studio-gallery figcaption,.studio-slide figcaption{font-size:14px;margin-top:10px;line-height:1.5}.studio-slide[hidden],[role=tabpanel][hidden]{display:none!important}.studio-slide-nav{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:24px;font-size:16px}.studio-slide-nav button{border:1px solid var(--course-border,#8a7b8d);background:var(--course-surface,#fbfaf7);color:var(--course-muted,#625961);border-radius:8px;padding:8px 16px;font-size:20px}.studio-slide-nav button:disabled{opacity:.35}.studio-slide .flashcard{width:100%;min-height:230px}.studio-slide+.studio-slide:not([hidden]){margin-top:25px;padding-top:25px;border-top:1px dashed var(--course-border,#8a7b8d)}
.studio-tabs [role=tablist]{display:flex;gap:5px;flex-wrap:wrap;border-bottom:2px solid var(--course-border,#8a7b8d)}.studio-tabs [role=tab]{background:var(--course-tint,#f5ebce);color:var(--course-muted,#625961);border:1px solid var(--course-border,#8a7b8d);border-radius:6px 6px 0 0;padding:14px;font:inherit}.studio-tabs [role=tab][aria-selected=true]{background:var(--accent);color:white}.studio-tabs [role=tabpanel]{padding:25px 10px;line-height:1.7}.studio-edit-tabs article{border:1px solid var(--course-border,#8a7b8d);padding:18px;margin-bottom:10px}.studio-process .process-number{display:inline-grid;place-items:center;width:48px;height:48px;border:2px solid var(--accent);border-radius:50%;font-size:24px;margin-bottom:16px}.studio-timeline{border-left:3px solid var(--accent);margin-left:12px;padding-left:28px}.studio-timeline article{position:relative;padding:0 0 35px}.timeline-dot{position:absolute;left:-38px;top:8px;background:var(--accent);width:17px;height:17px;border-radius:50%;border:3px solid white}
.studio-attachment{display:flex;gap:25px;border:1px solid var(--course-border,#8a7b8d);padding:25px;border-radius:8px}.studio-attachment>span{font-size:36px}.studio-embed iframe{width:100%;height:350px;border:1px solid var(--course-border,#8a7b8d);border-radius:7px}.embed-placeholder{background:var(--course-tint,#f5ebce);border:1px dashed var(--course-border,#8a7b8d);padding:25px;text-align:center;font-size:28px;color:var(--course-muted,#625961)}.embed-placeholder p{font-size:16px}.studio-divider{border:0;border-top:2px solid var(--course-border,#8a7b8d);margin:10px 0}.studio-numbered-divider{display:flex;align-items:center;gap:20px}.studio-numbered-divider:before,.studio-numbered-divider:after{content:'';height:1px;background:currentColor;flex:1}.studio-numbered-divider>span{border:2px solid currentColor;border-radius:50%;min-width:50px;text-align:center}.studio-spacer{min-height:15px}.studio-chart svg{display:block;width:100%;max-height:340px}.studio-chart table{border-collapse:collapse;margin:20px auto 0;width:100%;max-width:500px;font-size:16px}.studio-chart th,.studio-chart td{border-bottom:1px solid var(--course-border,#8a7b8d);text-align:left;padding:8px}.chart-key{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:10px}
.studio-sorting>p{font-size:16px}.sort-pool{display:flex;flex-wrap:wrap;gap:12px;min-height:65px;margin:22px 0}.sort-card{position:relative;padding:16px 42px 16px 16px;border:2px solid var(--course-border,#8a7b8d);border-radius:8px;background:var(--course-surface,#fbfaf7);color:var(--course-ink,#2f2d32);cursor:grab;font:inherit;touch-action:none;user-select:none;min-width:120px}.sort-card p{margin:0}.sort-card[aria-pressed=true]{outline:3px solid var(--accent);outline-offset:3px}.sort-bins{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sort-bin{border:2px dashed var(--course-border,#8a7b8d);border-radius:8px;min-height:150px;padding:12px;background:var(--course-tint,#f5ebce)}.sort-bin-title{display:block;width:100%;padding:12px;background:var(--course-surface,#fbfaf7);color:var(--course-ink,#2f2d32);border:1px solid var(--course-border,#8a7b8d);border-radius:6px;font:inherit;font-weight:600}.sort-bin-cards{display:grid;gap:10px;margin-top:12px}.sort-correct{border-color:#2f8555;background:#e8f6ed;color:#236c40}.sort-wrong{border-color:#c64b53;background:#fff0f1;color:#ac303b}.sort-result{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:27px;font-weight:700}.sort-drag-ghost{position:fixed;pointer-events:none;z-index:99999;background:var(--course-surface,#fbfaf7);color:var(--course-ink,#2f2d32);box-shadow:0 8px 24px #0003;border:2px solid var(--course-accent,#5b3f5f);border-radius:8px;padding:15px;font-size:16px}.studio-sort-editor article{border:1px solid var(--course-border,#8a7b8d);border-radius:7px;padding:15px;margin:10px 0}.studio-sort-editor small{font-size:14px;display:block;margin-top:8px}
.course-block.layout-image-full .image-layout>img,.course-block.layout-banner .image-layout>img{max-height:none;width:100%;object-fit:cover}.course-block.layout-banner .image-layout{min-height:260px}.course-block.layout-banner .image-layout>img{min-height:260px}.fill-answer{width:100%;font:inherit;border:1px solid var(--course-border,#8a7b8d);padding:14px;border-radius:6px}.fill-accepted-answer{padding:12px;border:1px solid var(--course-border,#8a7b8d);margin-bottom:10px}.family-chart .rich{min-height:20px}
@media(max-width:650px){.studio-text-columns,.gallery-3,.gallery-4{grid-template-columns:1fr}.studio-gallery img{height:auto}.sort-bins{grid-template-columns:1fr}.studio-statement{padding:18px}.studio-table th,.studio-table td{padding:9px}.studio-attachment{padding:18px;gap:12px}}

.course-block.layout-image-centered .image-layout>img{width:75%;margin-left:auto;margin-right:auto;display:block}.course-block.layout-image-full-width{padding-left:0!important;padding-right:0!important}.layout-image-full-width .image-copy{padding-left:30px;padding-right:30px}.layout-image-full-width .image-layout>img{width:100%;max-width:none}

/* Road timeline: local artwork and interaction shared by preview and website exports. */
.course-block.family-timeline.layout-road{padding-left:0;padding-right:0}
.studio-road{--road-grass:#edf2e9;--road-plum:var(--course-accent,#5b3f5f);background:var(--course-surface,#fbfaf7);color:var(--course-ink,#302e32);border:1px solid var(--course-line,#d4dccf);border-radius:14px;overflow:hidden;text-align:left}
.studio-road-edit{--road-grass:#f4e7d1}
.studio-road-intro{padding:24px 24px 0}
.studio-road-intro>.content-heading{margin:0 0 12px}
.studio-road-scene{position:relative;height:226px;margin-top:18px;background:var(--road-grass);isolation:isolate}
.studio-road-lane{position:absolute;top:87px;left:0;right:0;height:60px;background:#555459}
.studio-road-lane:after{content:"";position:absolute;top:28px;left:0;right:0;height:3px;background:repeating-linear-gradient(to right,#f5efdb 0 19px,transparent 19px 37px)}
.studio-road-stops{display:grid;grid-template-columns:repeat(var(--road-count),minmax(0,1fr));height:100%;position:relative;z-index:2}
.studio-road-stop{min-width:0;appearance:none;color:var(--course-ink,#302e32);border:0;background:transparent;padding:5px 5px 10px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;font:500 14px/1.4 Arial,Helvetica,sans-serif}
.studio-road-stop:disabled{opacity:1;cursor:default}
.studio-road-milestone{position:relative;display:flex;align-items:center;justify-content:center;width:72px;height:64px;flex-shrink:0;color:#e5680f}
.studio-road-milestone svg{width:44px;height:44px;transform:translateX(-12px);fill:#ffb05c;stroke-width:1.6}
.studio-road-number{position:absolute;top:20px;right:0;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--course-surface,#fbfaf7);color:var(--road-plum);font:500 15px/1 Arial,Helvetica,sans-serif}
.studio-road-stop[aria-pressed=true] .studio-road-number{background:var(--road-plum);color:#fff}
.studio-road-label{margin-top:89px;max-width:140px;padding-bottom:4px;border-bottom:2px solid transparent;overflow-wrap:anywhere}
.studio-road-stop[aria-pressed=true] .studio-road-label{color:var(--road-plum);border-bottom-color:var(--road-plum)}
.studio-road-stop:not(:disabled):hover .studio-road-milestone{transform:translateY(-3px)}
.studio-road-car{position:absolute;top:104px;transform:translateX(-50%);width:56px;height:40px;background:transparent;color:#f5efdb;display:flex;align-items:center;justify-content:center;overflow:visible;z-index:3;pointer-events:none;transition:left .35s ease}
.studio-road-car svg{width:80px;height:80px;flex-shrink:0;transform:translateY(-11px);fill:#df74ec;stroke-width:1.8;filter:drop-shadow(0 2.5px 1.25px #302e3240)}
.studio-road-car svg circle{fill:currentColor}
.studio-road-tree{position:absolute;top:27px;width:17px;height:21px;border:2px solid #74876b;border-radius:9px 8px 6px 6px;opacity:.5;z-index:0}
.studio-road-tree:after{content:"";position:absolute;left:6px;bottom:-7px;height:7px;border-left:2px solid #74876b}
.studio-road-tree.first{left:8px}.studio-road-tree.last{right:8px}
.studio-road-content{padding:22px 24px 24px}
.studio-road-count{color:var(--road-plum);font-size:13px;margin:0 0 7px}
.studio-road-panel>.content-heading{font-size:24px;margin:0 0 14px}
.studio-road-panel>.media-box{margin-top:20px}
.studio-road-edit .studio-road-panel+.studio-road-panel{margin-top:28px;padding-top:24px;border-top:1px solid var(--course-line,#d4dccf)}
.studio-road-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:22px}
.studio-road-footer button{border:1px solid var(--course-border,#a495a7);border-radius:24px;color:var(--road-plum);background:var(--course-surface,#fbfaf7);font:500 14px/1.3 Arial,Helvetica,sans-serif;padding:9px 16px}
@media(max-width:460px){.studio-road-intro{padding:19px 17px 0}.studio-road-content{padding:20px 17px}.studio-road-stop{font-size:12px;padding-left:4px;padding-right:4px}.studio-road-milestone{width:64px}.studio-road-milestone svg{width:40px;height:40px;transform:translateX(-11px)}.studio-road-number{width:22px;height:22px;top:21px;font-size:13px}.studio-road-tree{display:none}.studio-road-car{width:48px;height:36px;top:108px}.studio-road-car svg{width:70.4px;height:70.4px;transform:translateY(-13px)}}
@media(pointer:coarse){.studio-road button{min-height:44px}}
@media(prefers-reduced-motion:reduce){.studio-road-car{transition:none}}

/* Tab labels use the same compact default in authoring and playback. */
.studio-edit-tabs .content-heading{font-size:1em;font-weight:400;line-height:1.7}
