:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#26352f;background:#FFF8EC;font-size:16px;line-height:1.55;--ink:#26352f;--muted:#536056;--accent:#315f4a;--line:#788477}
*{box-sizing:border-box}body{margin:0}a{color:#265c48;text-underline-offset:4px;overflow-wrap:anywhere}a:hover{color:#163d2c}button,input,select{font:inherit}button,.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:10px 20px;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:10px;cursor:pointer;font-weight:600;text-decoration:none;gap:8px}button:hover,.button:hover{background:#234b38;color:white}button:disabled{opacity:.5;cursor:wait}button.secondary,.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}button.secondary:hover{background:#e8ece5}button[aria-pressed=true]{background:#244b39;color:#fff;border-color:#244b39}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a46e27;outline-offset:4px}input,select{display:block;width:100%;min-height:48px;padding:10px 12px;background:#fff;border:1px solid #9aa79c;border-radius:8px;color:var(--ink)}label{display:block;font-weight:600;margin-bottom:8px}form>*+*{margin-top:16px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.9rem,5vw,3.1rem);line-height:1.15;letter-spacing:-.035em;max-width:24ch;margin-bottom:24px}h2{font-size:1.45rem;line-height:1.3;margin-bottom:16px}h3{font-size:1.12rem;line-height:1.35;margin-bottom:10px}p{margin-bottom:18px}small,.muted{color:var(--muted)}.banner{background:#e6ebe1;border-bottom:1px solid var(--line);padding:12px 24px;text-align:center;font-size:.86rem}.site-header{max-width:1120px;margin:auto;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-size:1.35rem;font-weight:800;letter-spacing:-.04em;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:10px}.pilot,.badge{font-size:.75rem;font-weight:500;letter-spacing:0;background:#e9ece3;border:1px solid var(--line);border-radius:6px;padding:3px 8px;display:inline-block}.pilot{color:var(--muted)}main{width:min(100% - 48px,960px);margin:36px auto 72px;min-height:55vh}body[data-page=join] main,body[data-page=test] main{max-width:660px}.intro{font-size:1.15rem;color:var(--muted);max-width:64ch}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.77rem;color:var(--muted);font-weight:700;margin-bottom:14px}.panel,.card{padding:24px;background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:20px;min-width:0}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{text-decoration:underline}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cards .card{margin:0;display:flex;flex-direction:column}.cards .card .button{margin-top:auto;align-self:flex-start}.card .why{flex:1}.row,.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.actions{margin-top:24px}.stack{display:grid;gap:12px}.answers button{width:100%;justify-content:flex-start;min-height:56px;text-align:left;background:#fff;color:var(--ink);border-color:#b8c2b5;font-weight:500}.answers button:hover{background:#edf1e9}.answers button[aria-pressed=true]{background:#315f4a;color:white}.answer-number{border:1px solid currentColor;width:30px;height:30px;flex-shrink:0;border-radius:8px;text-align:center}.question{margin-top:24px;font-size:clamp(1.5rem,4vw,2rem);letter-spacing:-.025em;max-width:36ch}.progress-text{display:flex;justify-content:space-between;color:var(--muted);font-size:.9rem;margin-bottom:8px}progress{display:block;appearance:none;width:100%;height:10px;border:0;border-radius:10px;overflow:hidden;background:#e4e9df;color:var(--accent)}progress::-webkit-progress-bar{background:#e4e9df}progress::-webkit-progress-value{background:var(--accent);border-radius:10px}progress::-moz-progress-bar{background:var(--accent);border-radius:10px}.scale{display:grid;grid-template-columns:minmax(130px,1fr) minmax(60px,2fr) 48px;gap:14px;align-items:center;margin-bottom:16px}.scale span:last-child{text-align:right;color:var(--muted);font-size:.9rem}.notice,.error{padding:16px 20px;border-radius:10px;background:#edf0e8;border:1px solid #d3ddcc;margin:20px 0}.error{background:#fff3e8;border-color:#d8baa0;color:#643c1c}.inline-error:empty{display:none}.inline-error{color:#81421d;margin-top:12px}.skeleton{height:100px;background:#e4e7df;border-radius:12px;margin:18px 0;animation:pulse 1.5s ease-in-out infinite}.skeleton.short{height:40px;width:60%}@keyframes pulse{50%{opacity:.45}}footer{max-width:1120px;margin:auto;padding:24px;color:var(--muted);font-size:.85rem;border-top:1px solid var(--line)}.skip{position:absolute;left:12px;top:-100px;padding:10px;background:white;z-index:10}.skip:focus{top:8px}.qr{display:block;width:min(100%,300px);height:auto;aspect-ratio:1;background:white}.join-code{font-size:2.2rem;font-weight:800;letter-spacing:.12em;overflow-wrap:anywhere}.group-head{display:flex;gap:20px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.group-head .qr{max-width:180px}.feedback button{min-width:48px}.feedback{margin-bottom:12px}.course{padding:14px 0;border-top:1px solid var(--line)}.course p{margin:4px 0}.summary{margin-top:16px}.summary:empty{display:none}[hidden]{display:none!important}body[data-page=projector] main{max-width:1000px;text-align:center;margin-top:12px}body[data-page=projector] h1{max-width:none;font-size:2rem;margin-bottom:16px}body[data-page=projector] .qr{width:min(58vh,650px,100%);margin:0 auto}body[data-page=projector] .join-code{font-size:clamp(2rem,7vw,4rem);margin:12px 0}body[data-page=projector] .live{font-size:1.6rem}body[data-page=projector] .site-header{padding-top:12px;padding-bottom:12px}body[data-page=projector] footer{display:none}.check-label{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:10px;font-weight:500}.check-label input{width:22px;min-height:22px;margin:0;flex-shrink:0}.code-input{text-transform:uppercase;letter-spacing:.15em}.back-link{display:inline-block;margin-bottom:24px}.compact{margin-bottom:8px}
@media(max-width:600px){.banner{padding:10px 16px}.site-header{padding:20px 16px}main{width:calc(100% - 32px);margin-top:24px}.cards{grid-template-columns:1fr}.panel,.card{padding:20px}.scale{grid-template-columns:minmax(115px,1.2fr) minmax(40px,1fr) 44px;gap:8px;font-size:.86rem}.group-head .qr{max-width:150px}.actions>*{flex-grow:1}footer{padding:20px 16px}.pilot{display:none}}
@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}
@media print{body{background:white;color:black}.banner,.site-header,footer,.actions,.feedback,button,.no-print,.back-link{display:none!important}main{margin:0;width:100%;max-width:none}.cards{display:block}.card,.panel{break-inside:avoid;border:1px solid #aaa;padding:14px;margin:12px 0}.badge{color:black}.card .button{display:none}a{color:black;text-decoration:none}h1{font-size:24pt}h2{font-size:16pt}progress{print-color-adjust:exact;-webkit-print-color-adjust:exact}.notice{background:white}body{font-size:11pt}}

h1,h2,h3,p,.join-code{overflow-wrap:anywhere}

a{min-height:44px;display:inline-flex;align-items:center}

/* Audience, diagrams and optional practical trials. No external assets. */
img{max-width:100%;height:auto}button,.button{overflow-wrap:anywhere;max-width:100%}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #2A62B0;outline-offset:4px}
body[data-large=true]{font-size:1.3rem}body[data-large=true] button,body[data-large=true] a,body[data-large=true] .button,body[data-large=true] input,body[data-large=true] select{min-height:56px}
body[data-page=test] main{max-width:800px}.audience-hero{width:100%;max-height:260px;object-fit:contain;margin-bottom:20px}.group-hero{display:block;width:180px;max-height:100px;object-fit:contain}
.item-icon{display:block;width:120px;height:120px;margin:0 0 16px}.item .question{margin-top:0;font-size:1.35em;max-width:none;letter-spacing:0}.item .examples{margin-bottom:20px;font-size:1em;color:var(--ink)}.examples ul{margin:8px 0 0;padding-left:1.4em}.examples li+li{margin-top:8px}
.answer-scale{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.answer-scale button{border-color:#788477;justify-content:center;min-height:56px;min-width:48px;padding:8px;font-weight:700}.answer-scale button[aria-checked=true]{background:#315f4a;color:white;border-color:#315f4a}.scale-ends{display:flex;justify-content:space-between;gap:16px;font-size:.9em;margin-top:8px}.scale-ends span{max-width:45%}.scale-ends span:last-child{text-align:right}
.background-tiles,.profile-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}.background-tiles button{text-align:left;justify-content:flex-start;min-height:64px}.profile-choice{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;padding:14px;border:2px solid var(--line);border-radius:12px;font-weight:500;cursor:pointer;margin:0}.profile-choice:has(input:checked){border-color:#315f4a;background:#edf0e8}.profile-choice input{width:24px;min-height:24px;flex:0 0 24px}.profile-choice .group-hero{width:calc(100% - 40px)}.profile-choice span{flex-basis:100%}fieldset{min-width:0;border:1px solid var(--line);border-radius:10px;padding:12px;margin:0 0 16px}legend{padding:0 6px;font-weight:600}
.radar{display:block;width:min(100%,460px);height:auto;margin:0 auto 20px}.scale-world .illustration{width:240px;display:block;margin:auto}.scheme{position:relative;margin:24px 0;width:100%;font-size:inherit;container-type:inline-size}.scheme-image{display:block;width:100%}.scheme-slots{list-style:none;margin:0;padding:0}.scheme-slots li{position:absolute;transform:translate(-50%,-50%);text-align:center;line-height:1.15;width:23%}.ladder .scheme-slots{position:absolute;inset:0 0 auto;height:auto;aspect-ratio:4}.ladder .scheme-slots li{width:16%;font-size:clamp(.6rem,2.3vw,1rem)}.ladder .scheme-slots li:nth-child(1){left:12.5%;top:75%}.ladder .scheme-slots li:nth-child(2){left:37.5%;top:60%}.ladder .scheme-slots li:nth-child(3){left:62.5%;top:45%}.ladder .scheme-slots li:nth-child(4){left:87.5%;top:30%}.scheme-details{font-size:1em;display:grid;gap:8px;margin-top:20px}.scheme-details p{padding:10px 12px;background:#FFF8EC;border-left:3px solid #C8501E;margin:0}.scheme-details strong{display:block}
.practice-hero{width:160px;height:120px;object-fit:contain}.trial h3{margin-top:16px}.pattern{padding:8px 0 20px;border-bottom:1px solid var(--line);margin-bottom:20px}.pattern-row{font-size:clamp(1.1rem,4vw,1.7rem);letter-spacing:.03em}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.task-note{margin:16px 0 0}.task-note:empty{display:none}.rating-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.rating-options button{display:flex;flex-direction:column;padding:12px 4px}.face{width:56px;height:56px}.circuit{display:block;width:100%;height:auto}.circuit-box{position:relative}.terminal-controls button{position:absolute;padding:0;width:56px;height:56px;min-height:56px;border:3px solid #26352f;border-radius:50%;background:#FFF8EC;color:#26352f;transform:translate(-50%,-50%)}.terminal-controls button:nth-child(1){left:18.0556%;top:27.2727%}.terminal-controls button:nth-child(2){left:45.8333%;top:18.1818%}.terminal-controls button:nth-child(3){left:18.0556%;top:75.7576%}.terminal-controls button:nth-child(4){left:77.7778%;top:81.8182%}.terminal-controls button[aria-pressed=true]{background:#2A62B0;color:white}.lamp.lit{animation:lamp-on .6s ease-out}@keyframes lamp-on{from{fill:#FFF8EC}to{fill:#E5B843}}
.drawing-tools fieldset{display:flex;flex-wrap:wrap;gap:8px}.drawing-tools{display:grid;gap:12px}.drawing-tools button{font-size:.9em}.drawing-canvas{display:block;width:100%;aspect-ratio:4/3;height:auto;border:2px solid #46586A;background:white;margin:0 0 20px;touch-action:none}.category-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.trial .stack button{text-align:left;justify-content:flex-start}
body[data-page=projector] #projector-summary{text-align:left;margin-top:24px}body[data-page=projector] #projector-summary .radar{max-width:400px}
@media(max-width:600px){.background-tiles,.profile-cards{grid-template-columns:1fr}.answer-scale{gap:6px}.item{padding:16px}.item-icon{width:88px;height:88px}.scheme-details{font-size:1em}.circuit-box{margin:12px 0}.profile-choice{min-height:100px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
@media print{.rating,.trial{break-inside:avoid}.radar{max-width:320px}}

/* Flex and grid children may shrink when the browser is zoomed. */
.site-header{flex-wrap:wrap}.brand{min-width:0}.scale{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto}.scale progress{min-width:0}
.answer-scale{grid-template-columns:repeat(auto-fit,minmax(48px,1fr))}


.circuit-key{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr));gap:6px 16px;margin-bottom:16px}.circuit-key p{margin:0;font-size:.9em}

.trial{container-type:inline-size}.scheme-slots strong{overflow-wrap:anywhere}
@container(max-width:250px){.scheme-slots{position:static!important;display:grid;gap:8px;aspect-ratio:auto!important}.scheme-slots li{position:static!important;width:auto!important;transform:none!important;font-size:1em!important;text-align:left}}
@container(max-width:230px){.terminal-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.terminal-controls button{position:static;transform:none;width:100%}}

.scale span{overflow-wrap:anywhere}.progress-text{flex-wrap:wrap;gap:8px}

/* Round 6G: readable steps and consistent, compact trial controls. */
.scheme.howto{padding:0;margin:24px 0}
.howto .scheme-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.howto .scheme-slots li{position:static;transform:none;width:auto;display:flex;flex-direction:column;align-items:center;gap:12px;line-height:1.4}
.howto .scheme-slots strong{display:block;width:100%;overflow-wrap:normal;word-break:normal;hyphens:manual;font-size:1em}
.step-icon{width:88px;height:88px;flex-shrink:0}
.profile-scale{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:8px;margin:0 0 24px}
.profile-scale:last-child{margin-bottom:0}
.scale-title{display:flex;align-items:center;gap:10px;margin:0;font-size:1.125em;overflow-wrap:normal}
.scale-title span{min-width:0;overflow-wrap:anywhere}
.scale-symbol{width:24px;height:24px;flex-shrink:0}
.scale-description{font-size:1em;margin:0}
.practice-card.card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px 16px;align-content:start}
.practice-card .practice-hero{width:96px;height:96px;grid-row:1/3}
.practice-card h2{font-size:1.2em;margin:0}
.practice-card p{grid-column:2;margin:0}
.practice-card.card button{grid-column:1/-1;width:100%;margin-top:4px}
.trial:has(.drawing-canvas),.trial:has(.circuit){padding:0;border:0;background:transparent}
.drawing-idea{margin-bottom:16px}.drawing-privacy{margin-bottom:12px}
.drawing-tools{gap:16px}.drawing-tools fieldset{margin:0;gap:10px;padding:12px}
.drawing-tools .drawing-palette{gap:4px;padding:12px 8px}
.drawing-tools .drawing-sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.drawing-tools .drawing-sizes button{padding:8px 4px;font-size:1em;min-width:0}
.drawing-tools .row button{flex-grow:1}
.swatch{width:48px;height:48px;min-height:48px!important;padding:0;border-radius:50%;border:2px solid var(--ink);position:relative;flex-shrink:0}
.swatch-0,.swatch-0:hover,.swatch-0[aria-pressed=true]{background:#26352f}
.swatch-1,.swatch-1:hover,.swatch-1[aria-pressed=true]{background:#C8501E}
.swatch-2,.swatch-2:hover,.swatch-2[aria-pressed=true]{background:#2A62B0}
.swatch-3,.swatch-3:hover,.swatch-3[aria-pressed=true]{background:#8E44A8}
.swatch-4,.swatch-4:hover,.swatch-4[aria-pressed=true]{background:#1F8F5F}
.swatch-5,.swatch-5:hover,.swatch-5[aria-pressed=true]{background:#C28A00}
.swatch[aria-pressed=true]::after{content:'';position:absolute;inset:-6px;border:2px solid var(--ink);border-radius:50%}
.rating{padding:16px}.rating h2{font-size:1.2em;margin-bottom:8px}.rating p{margin-bottom:12px}
.rating [role=status]:empty{display:none}.rating [role=status]{margin:12px 0 0}
.rating-options button{min-width:0;padding:8px 2px;gap:6px;font-size:1rem;min-height:96px}
.rating-options .face{width:44px;height:44px}
button.secondary[aria-pressed=true],button.secondary[aria-pressed=true]:hover{background:#244b39;color:#fff;border-color:#244b39}
.trial-navigation{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.trial-navigation button{flex:1;min-width:120px;padding:8px 12px}
.trial .pattern:last-of-type{border-bottom:0;margin-bottom:0;padding-bottom:0}
.trial .receipt-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.receipt-list button{min-height:96px;padding:10px;flex-direction:column;align-items:flex-start;gap:4px}
.receipt-category{font-size:.9em}.receipt-summary p{margin:8px 0}
@media(max-width:600px){
  .howto .scheme-slots{grid-template-columns:1fr;gap:16px}
  .howto .scheme-slots li{flex-direction:row;text-align:left;gap:16px}
  .howto .scheme-slots strong{flex:1;min-width:0}
  .practice-card h2{font-size:1.1em}
}
@container(max-width:520px){
  .howto .scheme-slots{grid-template-columns:1fr}
  .howto .scheme-slots li{flex-direction:row;text-align:left}
}
@container(max-width:260px){
  .howto .scheme-slots li{flex-direction:column;align-items:flex-start;gap:8px}
}
.drawing-surface{position:relative;margin-bottom:20px}.drawing-surface .drawing-canvas{margin-bottom:0}.drawing-cursor{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.drawing-cursor[hidden]{display:none}
