:root{
  --navy:#10233c;--navy-700:#1b3a63;--blue:#3d7fca;--blue-soft:#84b7ec;
  --orange:#ff6b35;--orange-dark:#c9451a;--green:#1e7e54;--red:#c0392b;
  --amber:#b06a00;--cream:#f7f1e7;--paper:#fffdf8;--muted:#637285;
  --line:rgba(27,58,99,.16);--shadow:0 22px 60px rgba(27,58,99,.12)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--navy);font-family:Calibri,"Segoe UI",system-ui,Arial,sans-serif;font-size:16px;line-height:1.55}
button,input,select{font:inherit}
button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(255,107,53,.5);outline-offset:3px}
a{color:var(--navy-700)}
.experience{min-height:100vh;background:radial-gradient(circle at 83% 11%,rgba(132,183,236,.2),transparent 27%),var(--cream)}
.topbar{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px max(20px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--line);background:rgba(255,253,248,.94)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy-700)}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--navy-700);color:#fff;font-family:"Trebuchet MS",Calibri,Arial,sans-serif;font-weight:800}
.brand strong,.brand small{display:block}.brand strong{font-family:"Trebuchet MS",Calibri,Arial,sans-serif}.brand small{font-size:12px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.topbar-actions{display:flex;gap:8px}.pill{min-height:38px;padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--navy-700);font-weight:700;cursor:pointer}
.pill[aria-pressed="false"]{border-style:dashed;color:var(--muted)}
.hero{width:min(1180px,calc(100% - 40px));min-height:calc(100vh - 74px);margin:auto;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:48px;padding:55px 0 70px}
.eyebrow{margin:0 0 7px;color:var(--orange-dark);font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
h1,h2,h3,strong{font-family:"Trebuchet MS",Calibri,Arial,sans-serif}
.hero h1{margin:0;color:var(--navy-700);font-size:clamp(45px,5.4vw,76px);line-height:.98;letter-spacing:-.015em}.hero h1 span,.final-message h2 span{color:var(--orange-dark)}
.hero-copy>p:not(.eyebrow){max-width:650px;margin:24px 0 18px;font-size:18px;line-height:1.65}.chapter-back{display:block;width:max-content;max-width:100%;margin:0 0 20px;font-weight:700}
.start{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:11px 20px;border:0;border-radius:999px;background:var(--navy-700);color:#fff;font-weight:800;box-shadow:0 8px 22px rgba(27,58,99,.16);cursor:pointer}.duration{display:block;margin-top:10px;color:var(--muted)}
.hero-route{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.hero-route article{grid-column:1;min-height:122px;padding:20px;border:1px solid var(--line);border-left:6px solid var(--navy-700);border-radius:18px;background:var(--paper);box-shadow:0 2px 10px rgba(27,58,99,.08)}.hero-route article:nth-of-type(2){border-left-style:dashed;border-left-color:var(--orange-dark)}.hero-route article:nth-of-type(3){border-left-style:double;border-left-width:7px;border-left-color:var(--green)}.hero-route i{grid-column:2;font-size:25px;color:var(--orange-dark);font-style:normal}.hero-route i:last-of-type{grid-row:3}.hero-route small,.hero-route strong,.hero-route span{display:block}.hero-route small{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.14em}.hero-route strong{margin:3px 0;color:var(--navy-700);font-size:25px}.hero-route span{color:var(--muted)}

.module-shell{width:min(1180px,calc(100% - 40px));min-height:720px;margin:0 auto 80px;display:grid;grid-template-columns:164px minmax(0,1fr);gap:12px;scroll-margin-top:10px}
.stepper{display:grid;align-content:start;gap:5px}.stepper button{display:flex;align-items:center;gap:8px;min-height:39px;padding:4px 7px;border:1px solid var(--line);border-left:3px solid var(--line);border-radius:10px;background:var(--paper);color:var(--muted);text-align:left;cursor:pointer}.stepper button b{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border:1px solid currentColor;border-radius:50%;font-size:10px}.stepper button span{font-size:10px;font-weight:800;line-height:1.1}.stepper button.active{border-left:5px solid var(--blue);color:var(--navy-700);background:#eef6ff}.stepper button.done{border-left:5px double var(--green);color:var(--green)}
.lesson-card{min-width:0;min-height:720px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;padding:20px;border:1px solid var(--line);border-radius:24px;background:var(--paper);box-shadow:var(--shadow)}
.lesson-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.lesson-top h2{margin:0;color:var(--navy-700);font-size:clamp(27px,3.4vw,44px);line-height:1.02;letter-spacing:-.015em}.lesson-text{max-width:900px;margin:10px 0 8px;color:var(--muted);font-size:15px;line-height:1.48}
.voice-controls{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.voice-controls button,.voice-controls select{min-height:34px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--navy-700);cursor:pointer}.exit-course{padding:5px 11px}.voice-choice-control span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.voice-choice-control select{max-width:195px;padding:4px 9px}.speed{display:flex;align-items:center;gap:3px}.speed button{width:32px;padding:0}.speed span{min-width:46px;color:var(--muted);font-size:11px;text-align:center}.listen{padding:5px 12px!important;background:var(--navy-700)!important;color:#fff!important;font-weight:800}.listen[aria-pressed="true"]{background:var(--orange-dark)!important}
.interactive-zone{min-height:0;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:18px;background:#fff}.lesson-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:9px}.nav{justify-self:end;min-height:38px;padding:8px 14px;border:0;border-radius:999px;background:var(--navy-700);color:#fff;font-weight:800;cursor:pointer}.nav.subtle{justify-self:start;border:1px solid var(--line);background:var(--paper);color:var(--navy-700)}.nav:disabled{opacity:.45;cursor:not-allowed}#status{color:var(--muted);font-size:11px;font-weight:800;text-align:center}.speech-warning{margin:5px 0 0;color:var(--amber);font-size:11px}

.lab{height:100%;display:grid;gap:10px}.two-col{grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr);align-items:start}.three-col{grid-template-columns:repeat(3,1fr)}.stack{display:grid;gap:8px}.panel,.formula-card,.result-card,.source-card,.mode-card{min-width:0;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.panel h3,.formula-card h3,.result-card h3{margin:0 0 7px;color:var(--navy-700);font-size:18px}.panel p,.formula-card p,.result-card p{margin:5px 0;color:var(--muted);font-size:12px;line-height:1.4}.graph-type{display:block;color:var(--orange-dark);font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.equation{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;padding:10px;border:2px solid var(--navy-700);border-radius:13px;background:#f3f7fb;color:var(--navy-700);font-family:Consolas,monospace;font-size:clamp(15px,2vw,22px);font-weight:800}.equation i{font-style:normal;color:var(--orange-dark)}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.field{display:grid;gap:3px;color:var(--navy-700);font-size:11px;font-weight:800}.field input,.field select{width:100%;min-height:36px;padding:6px 8px;border:1px solid rgba(27,58,99,.28);border-radius:9px;background:#fff;color:var(--navy);font-family:Consolas,monospace}.field small{color:var(--muted);font-weight:500}.wide{grid-column:1/-1}
.readouts{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.readouts span{padding:9px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted);font-size:10px}.readouts b{display:block;margin-top:2px;color:var(--navy-700);font-size:18px}.readouts .total{border:4px double var(--green);background:#f3fbf7}.readouts .warning{border:3px dotted var(--amber);background:#fffaf0}
.callout{padding:10px 12px;border:1px solid var(--line);border-left:5px solid var(--navy-700);border-radius:10px;background:#f3f7fb;font-size:11px;line-height:1.4}.callout.key{border-left:6px double var(--green);background:#f3fbf7}.callout.trap{border-left:5px dashed var(--orange-dark);background:#fff9f5}.callout b{color:var(--navy-700)}
.heat-map{position:relative;min-height:280px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:linear-gradient(#edf7ff 0 48%,#ece6d6 48%)}.cold-room{position:absolute;left:18%;right:18%;top:16%;bottom:11%;border:9px double var(--navy-700);background:#eaf6ff}.cold-room::before{content:"CHAMBRE FROIDE";position:absolute;inset:12px auto auto 50%;transform:translateX(-50%);color:var(--navy-700);font:800 13px "Trebuchet MS",sans-serif;white-space:nowrap}.door{position:absolute;right:-9px;bottom:8%;width:34px;height:50%;border:5px solid var(--orange-dark);border-right:0;background:#fff}.crate{position:absolute;left:20%;bottom:15%;width:42%;height:27%;border:4px solid var(--amber);background:#fff4e0}.crate::before{content:"PRODUITS";display:grid;place-items:center;height:100%;font-size:10px;font-weight:900;color:#6b4a00}.heat-arrow{position:absolute;display:flex;align-items:center;gap:4px;color:var(--orange-dark);font-size:10px;font-weight:900}.heat-arrow::after{content:"➜";font-size:24px}.heat-arrow.a{left:2%;top:23%}.heat-arrow.b{right:2%;top:53%;flex-direction:row-reverse}.heat-arrow.c{left:4%;bottom:5%}.heat-arrow.d{right:6%;top:8%}.source-list{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.source-card{border-left:4px solid var(--navy-700)}.source-card b,.source-card span{display:block}.source-card b{color:var(--navy-700);font-size:13px}.source-card span{color:var(--muted);font-size:10px}
.heat-intro-lab{height:100%;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);align-items:center;gap:16px}.cold-room-visual{position:relative;width:100%;aspect-ratio:16/9;margin:0;overflow:hidden;border:3px solid var(--navy-700);border-radius:20px;background:#f6f0e8;box-shadow:0 12px 30px rgba(27,58,99,.16)}.cold-room-visual img{display:block;width:100%;height:100%;object-fit:cover}.cold-room-visual::after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(transparent,rgba(16,35,60,.72));pointer-events:none}.cold-room-visual figcaption{position:absolute;z-index:3;left:16px;right:16px;bottom:13px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.35)}.cold-room-visual figcaption strong,.cold-room-visual figcaption span{display:block}.cold-room-visual figcaption strong{font-size:23px;line-height:1}.cold-room-visual figcaption span{margin-top:4px;font-size:15px;font-weight:700}.heat-marker{position:absolute;z-index:4;display:flex;align-items:center;gap:4px;opacity:.38;filter:saturate(.75);transition:opacity .18s,transform .18s,filter .18s}.heat-marker b{display:grid;place-items:center;width:42px;height:42px;border:3px solid #fff;border-radius:50%;background:var(--orange-dark);color:#fff;font:900 20px "Trebuchet MS",sans-serif;box-shadow:0 4px 14px rgba(16,35,60,.28)}.heat-marker i{color:var(--orange-dark);font:900 42px/1 "Trebuchet MS",sans-serif;text-shadow:0 1px #fff,1px 0 #fff,-1px 0 #fff,0 -1px #fff}.marker-walls{left:4%;top:24%}.marker-air{right:4%;top:45%;flex-direction:row-reverse}.marker-products{left:49%;bottom:19%;flex-direction:column-reverse}.marker-internal{left:45%;top:7%;flex-direction:column}.cold-room-visual[data-active-source="walls"] .marker-walls,.cold-room-visual[data-active-source="air"] .marker-air,.cold-room-visual[data-active-source="products"] .marker-products,.cold-room-visual[data-active-source="internal"] .marker-internal{opacity:1;filter:none;transform:scale(1.12)}.heat-learning{display:grid;align-content:center;gap:9px}.heat-prompt{margin:0;color:var(--orange-dark);font:900 13px "Trebuchet MS",sans-serif;letter-spacing:.14em;text-transform:uppercase}.source-bricks{display:grid;gap:7px}.source-brick{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:66px;padding:9px 11px;border:2px solid var(--line);border-left:7px solid var(--navy-700);border-radius:14px;background:#fff;color:var(--navy);text-align:left;box-shadow:0 3px 10px rgba(27,58,99,.07);cursor:pointer;transition:transform .15s,border-color .15s,background .15s}.source-brick:nth-child(2){border-left-style:dashed;border-left-color:var(--orange-dark)}.source-brick:nth-child(3){border-left-style:double;border-left-color:var(--green)}.source-brick:nth-child(4){border-left-style:dotted;border-left-color:var(--amber)}.source-brick:hover{transform:translateY(-2px)}.source-brick.active{border-color:var(--blue);background:#edf6ff;box-shadow:0 7px 18px rgba(27,58,99,.14)}.source-brick>i{display:grid;place-items:center;width:36px;height:36px;border:2px solid currentColor;border-radius:50%;color:var(--navy-700);font:900 17px "Trebuchet MS",sans-serif;font-style:normal}.source-brick span,.source-brick b,.source-brick small{display:block}.source-brick b{color:var(--navy-700);font-size:18px;line-height:1.05}.source-brick small{margin-top:3px;color:var(--muted);font-size:14px;line-height:1.15}.heat-focus{min-height:88px;padding:12px 14px;border:1px solid var(--line);border-left:6px double var(--green);border-radius:14px;background:#f3fbf7}.heat-focus b{display:block;color:var(--navy-700);font-size:18px;line-height:1.15}.heat-focus p{margin:5px 0 0;color:var(--ink);font-size:15px;line-height:1.3}.heat-rule{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px;margin:0;padding:10px 12px;border:2px solid var(--navy-700);border-radius:13px;background:#f3f7fb}.heat-rule b{color:var(--navy-700);font-size:14px}.heat-rule span{font-size:15px;font-weight:700}
.energy-track{position:relative;height:26px;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:#edf0f3}.energy-fill{height:100%;width:50%;background:linear-gradient(90deg,var(--blue),var(--orange));transition:width .2s}.bar-list{display:grid;gap:6px}.bar-row{display:grid;grid-template-columns:100px minmax(0,1fr) 72px;align-items:center;gap:7px;font-size:10px}.bar-row>span:last-child{text-align:right;font-family:Consolas,monospace;font-weight:800}.bar{height:14px;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:#edf0f3}.bar i{display:block;height:100%;background:var(--blue)}.bar-row:nth-child(2) .bar i{background:var(--orange-dark)}.bar-row:nth-child(3) .bar i{background:var(--amber)}.bar-row:nth-child(4) .bar i{background:var(--green)}.bar-row:nth-child(5) .bar i{background:var(--red)}
.building{position:relative;min-height:245px;border:1px solid var(--line);border-radius:16px;background:#f5fbff}.house{position:absolute;inset:22% 18% 10%;border:6px solid var(--navy-700);background:var(--paper)}.roof{position:absolute;left:13%;right:13%;top:5%;height:30%;clip-path:polygon(50% 0,100% 100%,0 100%);background:var(--navy-700)}.inside{position:absolute;inset:43% 28% 25%;display:grid;place-items:center;border:2px solid var(--line);border-radius:10px;color:var(--navy-700);font-weight:900}.flow{position:absolute;padding:4px 7px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-size:10px;font-weight:800}.flow.one{left:3%;top:43%}.flow.two{right:3%;top:43%}.flow.three{left:35%;bottom:2%}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:7px}.mode-button{min-height:40px;border:2px solid var(--line);border-radius:11px;background:#fff;color:var(--navy-700);font-weight:800;cursor:pointer}.mode-button.active{border-color:var(--blue);background:#edf6ff}.mode-button.active[data-mode="summer"]{border-style:dashed;border-color:var(--orange-dark);background:#fff7f2}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.metric{padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff}.metric:nth-child(1),.metric:nth-child(3){border-left:5px double var(--green)}.metric:nth-child(2),.metric:nth-child(4){border-left:5px dashed var(--orange-dark)}.metric small,.metric strong,.metric span{display:block}.metric small{color:var(--muted);font-size:9px;font-weight:900}.metric strong{color:var(--navy-700);font-size:22px}.metric span{color:var(--muted);font-size:10px}.balance{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:6px;text-align:center}.balance span{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.balance b{display:block;color:var(--navy-700);font-size:20px}.balance i{font-style:normal;color:var(--orange-dark);font-size:22px}
.project-chain{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.project-chain article{position:relative;padding:13px;border:1px solid var(--line);border-top:5px solid var(--navy-700);border-radius:13px;background:#fff}.project-chain article:nth-child(2){border-top-style:dashed;border-top-color:var(--orange-dark)}.project-chain article:nth-child(3){border-top-style:double;border-top-color:var(--green)}.project-chain article:nth-child(4){border-top-style:dotted;border-top-color:var(--amber)}.project-chain small,.project-chain b,.project-chain span{display:block}.project-chain small{color:var(--muted);font-size:9px;font-weight:900}.project-chain b{margin:4px 0;color:var(--navy-700)}.project-chain span{color:var(--muted);font-size:10px}
.check-source{width:100%;margin-top:9px;padding:6px;border:2px dotted var(--amber);border-radius:9px;background:#fffaf0;color:#6b4a00;font-size:10px;font-weight:800;cursor:pointer}.check-source.checked{border:4px double var(--green);background:#e3f5ec;color:var(--green)}

.label-lab{height:100%;display:grid;grid-template-columns:minmax(330px,.9fr) minmax(0,1.1fr);align-items:start;gap:10px}.energy-label{min-width:0;overflow:hidden;border:3px solid var(--navy-700);border-radius:12px;background:#fff}.energy-label>header{display:grid;grid-template-columns:auto 1fr;gap:0 9px;padding:8px 11px;background:#e7f4ff;border-bottom:3px solid var(--navy-700)}.energy-label>header span{grid-row:1/3;align-self:center;padding:5px 8px;background:var(--blue);color:#fff;font:900 20px "Trebuchet MS",sans-serif;letter-spacing:.08em}.energy-label>header b{align-self:end;color:var(--navy-700);font-size:12px}.energy-label>header small{color:var(--muted);font-size:8px}.label-body{display:grid;grid-template-columns:1fr 1fr;gap:0}.label-cooling,.label-heating{padding:9px}.label-cooling{border-right:1px solid var(--line)}.label-cooling>small,.label-heating>small{display:block;color:var(--muted);font-size:8px;font-weight:900}.label-cooling>strong,.label-heating>strong{display:block;margin:2px 0 6px;color:var(--navy-700);font-size:18px}.grade-ladder{display:grid;gap:2px;margin:4px 0}.grade-ladder i{width:calc(50% + var(--grade,0%));padding:2px 5px;background:#eef2f5;color:var(--navy-700);font-size:8px;font-style:normal;font-weight:900;clip-path:polygon(0 0,92% 0,100% 50%,92% 100%,0 100%)}.grade-ladder em{font-style:normal}.grade-ladder i:nth-child(1){--grade:0%;border-left:5px double var(--green)}.grade-ladder i:nth-child(2){--grade:7%;border-left:5px double var(--green)}.grade-ladder i:nth-child(3){--grade:14%;border-left:4px solid #5a9c42}.grade-ladder i:nth-child(4){--grade:21%;border-left:4px dotted var(--amber)}.grade-ladder i:nth-child(5){--grade:28%;border-left:4px dotted var(--amber)}.grade-ladder i:nth-child(6){--grade:35%;border-left:4px dashed var(--orange-dark)}.grade-ladder i:nth-child(7){--grade:42%;border-left:4px dashed var(--red)}.grade-ladder i.active{background:#e3f5ec;outline:2px solid var(--green)}.energy-label dl{display:grid;gap:4px;margin:0}.energy-label dl div{display:flex;align-items:baseline;justify-content:space-between;gap:7px;padding:5px;border:1px solid var(--line);border-radius:7px}.energy-label dt{color:var(--muted);font-size:8px}.energy-label dd{margin:0;color:var(--navy-700);font-family:Consolas,monospace;font-size:10px;font-weight:900;text-align:right}.energy-label>footer{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:7px 9px;border-top:1px solid var(--line);background:#fff;color:var(--navy-700);font-size:8px;font-weight:800}.label-guide{display:grid;align-content:start;gap:8px}.climate-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.climate-switch button{min-height:36px;border:2px solid var(--line);border-radius:9px;background:#fff;color:var(--navy-700);font-weight:800;cursor:pointer}.climate-switch button:nth-child(1){border-style:dashed;border-color:var(--orange-dark)}.climate-switch button:nth-child(2){border-style:double;border-color:var(--green)}.climate-switch button:nth-child(3){border-style:dotted;border-color:var(--blue)}.climate-switch button.active{background:#edf6ff;outline:2px solid var(--navy-700)}.label-read{display:grid;grid-template-columns:1fr 1fr;gap:6px}.label-read article{padding:8px;border:1px solid var(--line);border-left:4px solid var(--navy-700);border-radius:9px;background:var(--paper)}.label-read article:nth-child(2){border-left-style:double;border-left-color:var(--green)}.label-read article:nth-child(3){border-left-style:dotted;border-left-color:var(--amber)}.label-read article:nth-child(4){border-left-style:dashed;border-left-color:var(--orange-dark)}.label-read b,.label-read span{display:block}.label-read b{color:var(--navy-700);font-size:11px}.label-read span{color:var(--muted);font-size:9px;line-height:1.3}

.quiz-wrap{height:100%;display:grid;grid-template-rows:auto auto 1fr auto;gap:9px}.quiz-head{display:flex;justify-content:space-between;color:var(--navy-700);font-size:11px}.quiz-progress{display:grid;grid-template-columns:repeat(10,1fr);gap:3px}.quiz-progress i{height:6px;border-radius:999px;background:#dce3ea}.quiz-progress i.current{background:var(--orange)}.quiz-progress i.done{background:var(--green)}.quiz-question{margin:0;color:var(--navy-700);font:800 clamp(18px,2.3vw,27px)/1.15 "Trebuchet MS",sans-serif}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:7px;align-content:start}.quiz-option{padding:11px;border:2px solid var(--line);border-radius:11px;background:#fff;color:var(--navy);text-align:left;cursor:pointer}.quiz-option.good{border:5px double var(--green);background:#e3f5ec}.quiz-option.bad{border:3px dashed var(--red);background:#fbe7e4}.quiz-option:disabled{color:var(--navy)}.quiz-feedback{min-height:40px;margin:0;padding:8px;border-left:4px solid var(--navy-700);background:#f3f7fb;font-size:11px}.quiz-result{height:100%;display:grid;place-content:center;text-align:center}.quiz-result b{color:var(--navy-700);font-size:68px}.quiz-result h3{margin:5px;color:var(--navy-700);font-size:28px}.quiz-result p{max-width:590px;color:var(--muted)}

.final-message{min-height:100vh;display:none;place-content:center;padding:70px 20px 90px;text-align:center;background:var(--cream)}.final-message h2{max-width:900px;margin:8px auto 18px;color:var(--navy-700);font-size:clamp(38px,5vw,68px);line-height:1.02}.pillars{display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap;margin:14px auto}.pillars span,.pillars strong{padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:var(--paper)}.pillars i{color:var(--orange-dark);font-style:normal}.next-brick{max-width:720px;margin:18px auto 0;padding:22px;border:1px solid var(--line);border-left:7px double var(--green);border-radius:16px;background:var(--paper);text-align:left}.next-brick small,.next-brick strong,.next-brick span{display:block}.next-brick small{color:var(--orange-dark);font-weight:900}.next-brick strong{margin:4px 0;color:var(--navy-700);font-size:27px}.next-brick span{color:var(--muted)}.next-tool{display:inline-block;margin-top:12px;font-weight:800}
.refs{width:min(860px,calc(100% - 40px));margin:30px auto 80px;padding:24px;border:1px solid var(--line);border-left:6px solid var(--navy-700);border-radius:16px;background:var(--paper)}.refs h2{margin:0;color:var(--navy-700)}.refs li{margin:.45em 0}.source-links{display:flex;flex-wrap:wrap;gap:9px}.source-links a{padding:7px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800}
footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px max(20px,calc((100vw - 1180px)/2));border-top:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:12px}footer button{border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--navy-700);font-weight:800;cursor:pointer}

body.course-running,body.summary-running{height:100dvh;overflow:hidden}
.course-running .topbar,.course-running .hero,.course-running .refs,.course-running footer{display:none}
.course-running .module-shell{position:fixed;inset:0;width:100%;height:100dvh;min-height:0;margin:0;padding:8px;grid-template-columns:154px minmax(0,1fr);gap:8px;background:var(--cream)}
.course-running .stepper{min-height:0;overflow:hidden;align-content:stretch;grid-template-rows:repeat(16,minmax(0,1fr))}.course-running .stepper button{min-height:0;padding:2px 5px}.course-running .stepper button b{width:21px;height:21px;flex-basis:21px;font-size:8px}.course-running .stepper button span{font-size:9px}.course-running .lesson-card{height:100%;min-height:0;padding:11px 13px;border-radius:18px}.course-running .lesson-top h2{font-size:clamp(24px,2.8vw,38px)}.course-running .eyebrow{margin-bottom:2px;font-size:9px}.course-running .lesson-text{margin:4px 0 6px;font-size:13px;line-height:1.28}.course-running .interactive-zone{overflow:hidden;padding:8px;border-radius:13px}.course-running .lesson-footer{margin-top:5px}.course-running .lesson-footer .nav{min-height:31px;padding:5px 11px;font-size:11px}.course-running .voice-controls button,.course-running .voice-controls select{min-height:30px;font-size:10px}.course-running .listen{padding:3px 9px!important}.course-running .panel,.course-running .formula-card,.course-running .result-card,.course-running .source-card,.course-running .mode-card{padding:8px}.course-running .panel h3,.course-running .formula-card h3,.course-running .result-card h3{font-size:15px}.course-running .panel p,.course-running .formula-card p,.course-running .result-card p{font-size:10px}.course-running .heat-map{min-height:0;height:100%}.course-running .building{min-height:0;height:100%}.course-running .field input,.course-running .field select{min-height:30px;padding:3px 6px}.course-running .readouts span{padding:6px}.course-running .readouts b{font-size:15px}.course-running .callout{padding:7px;font-size:9px}.course-running .quiz-question{font-size:21px}.course-running .quiz-option{padding:8px;font-size:11px}.course-running .quiz-feedback{min-height:31px;padding:6px;font-size:10px}
.course-running .energy-label>header{padding:5px 7px}.course-running .energy-label>header span{font-size:15px}.course-running .label-cooling,.course-running .label-heating{padding:6px}.course-running .label-cooling>strong,.course-running .label-heating>strong{font-size:14px}.course-running .energy-label dl div{padding:3px}.course-running .grade-ladder i{padding:1px 4px}.course-running .label-read article{padding:6px}
.summary-running .topbar,.summary-running .hero,.summary-running .module-shell,.summary-running .refs{display:none}.summary-running .final-message{display:grid}.summary-running footer{position:fixed;left:0;right:0;bottom:0}

@media(max-width:800px){
  .hero{grid-template-columns:1fr;gap:28px;padding-top:35px}.hero-route{max-width:650px}.module-shell{grid-template-columns:1fr}.stepper{grid-template-columns:repeat(5,1fr)}.stepper button span{display:none}.lesson-card{min-height:690px}.metric-grid,.project-chain{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  body{font-size:14px}.topbar{min-height:60px;padding:8px 10px}.brand-mark{width:34px;height:34px}.brand small{display:none}.topbar-actions{gap:4px}.pill{min-height:34px;padding:5px 8px;font-size:10px}.hero{width:calc(100% - 24px);min-height:calc(100vh - 60px);padding:24px 0 45px}.hero h1{font-size:clamp(36px,11vw,54px)}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-route article{min-height:105px;padding:15px}.hero-route strong{font-size:21px}
  .course-running .module-shell{padding:4px;grid-template-columns:1fr;grid-template-rows:29px minmax(0,1fr);gap:4px}.course-running .stepper{grid-template-columns:repeat(16,1fr);grid-template-rows:1fr;gap:1px}.course-running .stepper button{justify-content:center;padding:0;border-left-width:1px}.course-running .stepper button span{display:none}.course-running .stepper button b{width:17px;height:17px;flex-basis:17px;font-size:7px}.course-running .lesson-card{padding:7px;border-radius:12px}.course-running .lesson-top{gap:5px}.course-running .lesson-top h2{font-size:19px}.course-running .voice-controls{gap:3px}.course-running .voice-choice-control,.course-running .speed{display:none}.course-running .exit-course{width:30px;padding:0;font-size:0}.course-running .exit-course::after{content:"×";font-size:18px}.course-running .listen{width:31px;padding:0!important}.course-running .listen b{display:none}.course-running .lesson-text{font-size:12px;line-height:1.2}.course-running .interactive-zone{padding:5px}.course-running .lesson-footer .nav{padding:5px 7px;font-size:9px}.course-running #status{font-size:8px}.three-col{grid-template-columns:1fr}.course-running .two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px}.course-running .two-col:has(>.heat-map),.course-running .two-col:has(>.building){grid-template-columns:1fr}.course-running .two-col>.heat-map,.course-running .two-col>.building{display:none}.course-running .source-list{grid-template-columns:1fr 1fr}.course-running .source-card{padding:6px}.course-running .source-card b{font-size:10px}.course-running .source-card span{font-size:8px}.course-running .field-grid{gap:3px}.course-running .field{font-size:8px;line-height:1.05}.course-running .field small{font-size:7px}.course-running .field input,.course-running .field select{min-height:26px;padding:2px 4px;font-size:9px}.course-running .fictional{padding:3px;font-size:7px;line-height:1.1}.course-running .readouts{grid-template-columns:1fr 1fr;gap:3px}.course-running .readouts span{padding:4px;font-size:8px}.course-running .readouts b{font-size:12px}.course-running .bar-row{grid-template-columns:58px 1fr 48px;gap:3px;font-size:7px}.course-running .metric-grid{grid-template-columns:1fr 1fr;gap:3px}.course-running .metric{padding:4px}.course-running .metric strong{font-size:14px}.course-running .project-chain{grid-template-columns:1fr 1fr;gap:4px}.course-running .project-chain article{padding:6px}.course-running .project-chain span{font-size:8px}.course-running .balance{gap:2px}.course-running .balance span{padding:4px;font-size:8px}.course-running .balance b{font-size:12px}.course-running .equation{padding:5px;font-size:11px}.course-running .quiz-options{grid-template-columns:1fr}.course-running .quiz-question{font-size:17px}.course-running .quiz-result b{font-size:45px}.course-running .quiz-result h3{font-size:21px}
  .course-running .label-lab{grid-template-columns:1fr 1fr;gap:4px}.course-running .energy-label>header{display:none}.course-running .label-body{height:100%}.course-running .label-cooling,.course-running .label-heating{padding:4px}.course-running .grade-ladder i{font-size:6px}.course-running .energy-label dl div{display:grid;gap:0;padding:2px}.course-running .energy-label dt{font-size:6px}.course-running .energy-label dd{font-size:8px;text-align:left}.course-running .energy-label>footer{display:none}.course-running .climate-switch button{min-height:28px;font-size:8px}.course-running .label-read{gap:3px}.course-running .label-read article{padding:4px}.course-running .label-read b{font-size:8px}.course-running .label-read span{font-size:7px}
  .summary-running .final-message{padding:8px 10px 55px;place-content:start center}.summary-running .final-message h2{margin:4px auto 7px;font-size:27px}.summary-running .pillars{display:grid;grid-template-columns:1fr auto 1fr;margin:5px auto;font-size:9px}.summary-running .pillars span,.summary-running .pillars strong{padding:6px}.summary-running .next-brick{margin-top:6px;padding:10px}.summary-running .next-brick strong{font-size:20px}.summary-running .next-brick span{font-size:11px}.summary-running footer{padding:9px}
}

@media print{
  @page{margin:15mm}
  *{box-shadow:none!important;text-shadow:none!important}
  body,.experience,.hero,.lesson-card,.interactive-zone,.panel,.formula-card,.result-card,.source-card,.mode-card,.refs,.next-brick{background:#fff!important;color:#000!important}
  body{font-size:12pt;overflow:visible!important;height:auto!important}
  .topbar,.topbar-actions,.start,.chapter-back,.stepper,.voice-controls,.lesson-footer,footer,.heat-arrow,.mobile{display:none!important}
  .hero,.module-shell,.final-message,.refs{display:block!important;width:100%!important;min-height:0!important;margin:0 0 10mm!important;padding:0!important;position:static!important}
  .lesson-card{display:block!important;min-height:0!important;padding:0!important;border:0!important}.interactive-zone{overflow:visible!important;border:1px solid #1b3a63!important}.refs{border-left:2pt solid #1b3a63!important}.callout.key{border-left:4pt double #1e7e54!important}.callout.trap{border-left:3pt dashed #c9451a!important}.hero-route article,.metric,.project-chain article{break-inside:avoid;border-color:#1b3a63!important;background:#fff!important}.source-links a::after{content:" (" attr(href) ")";font-weight:400}.final-message{text-align:left!important}.quiz-wrap{display:none!important}
}

/* Reprise lisibilité 2026-08 : priorité à la projection et aux textes pédagogiques. */
@media screen and (min-width:651px){
  .course-running .module-shell{grid-template-columns:132px minmax(0,1fr)}
  .course-running .stepper button{padding:3px 5px}.course-running .stepper button b{width:23px;height:23px;flex-basis:23px;font-size:10px}.course-running .stepper button span{font-size:11px;line-height:1.12}
  .course-running .lesson-card{padding:14px 16px}.course-running .lesson-top h2{font-size:clamp(31px,3.2vw,43px);line-height:1.04}.course-running .eyebrow{font-size:11px}.course-running .lesson-text{margin:7px 0 10px;max-width:none;color:#405268;font-size:clamp(16px,1.45vw,18px);line-height:1.36}.course-running .interactive-zone{padding:12px;background:linear-gradient(145deg,#fff,#fbfcfe)}
  .course-running .panel,.course-running .formula-card,.course-running .result-card,.course-running .source-card,.course-running .mode-card{padding:13px;border-radius:16px;box-shadow:0 4px 14px rgba(27,58,99,.08)}.course-running .panel h3,.course-running .formula-card h3,.course-running .result-card h3{font-size:21px;line-height:1.12}.course-running .panel p,.course-running .formula-card p,.course-running .result-card p{font-size:14.5px;line-height:1.42}.course-running .graph-type{font-size:11px;letter-spacing:.12em}.course-running .equation{padding:11px;font-size:clamp(18px,2vw,25px)}
  .course-running .field-grid{gap:10px}.course-running .field{font-size:14px;line-height:1.2}.course-running .field input,.course-running .field select{min-height:40px;padding:7px 9px;font-size:16px}.course-running .field small{font-size:13px;line-height:1.2}.course-running .readouts{gap:9px}.course-running .readouts span{padding:10px;font-size:13.5px}.course-running .readouts b{font-size:23px;line-height:1.15}.course-running .callout{padding:10px 12px;font-size:14.5px;line-height:1.38}
  .course-running .bar-list{gap:9px}.course-running .bar-row{grid-template-columns:118px minmax(0,1fr) 84px;gap:9px;font-size:13px}.course-running .bar{height:19px}.course-running .metric-grid{gap:10px}.course-running .metric{padding:13px}.course-running .metric small{font-size:11px}.course-running .metric strong{font-size:26px}.course-running .metric span{font-size:13px;line-height:1.25}.course-running .balance span{padding:13px;font-size:14px}.course-running .balance b{font-size:23px}.course-running .mode-button{min-height:48px;font-size:16px}
  .course-running .project-chain article{padding:14px}.course-running .project-chain small{font-size:11px}.course-running .project-chain b{font-size:18px}.course-running .project-chain span{font-size:13px;line-height:1.3}.course-running .check-source{padding:9px;font-size:12px}
  .course-running .label-lab{grid-template-columns:minmax(430px,1.15fr) minmax(0,.85fr);gap:12px}.course-running .energy-label>header{padding:7px 9px}.course-running .energy-label>header span{font-size:20px}.course-running .energy-label>header b{font-size:15px}.course-running .energy-label>header small{font-size:11px}.course-running .label-cooling,.course-running .label-heating{padding:9px}.course-running .label-cooling>small,.course-running .label-heating>small{font-size:11.5px}.course-running .label-cooling>strong,.course-running .label-heating>strong{font-size:22px}.course-running .grade-ladder i{padding:4px 7px;font-size:11.5px}.course-running .energy-label dl{gap:6px}.course-running .energy-label dl div{padding:6px}.course-running .energy-label dt{font-size:13px}.course-running .energy-label dd{font-size:15px}.course-running .energy-label>footer{font-size:11.5px}.course-running .climate-switch button{min-height:44px;font-size:15px}.course-running .label-read b{font-size:15px}.course-running .label-read span{font-size:13px;line-height:1.35}
  .course-running .quiz-question{font-size:26px;line-height:1.18}.course-running .quiz-option{padding:12px;font-size:15px}.course-running .quiz-feedback{min-height:47px;padding:10px;font-size:14px;line-height:1.35}
}

@media screen and (max-width:650px){
  .course-running .stepper button b{width:18px;height:18px;flex-basis:18px;font-size:9px}.course-running .lesson-top h2{font-size:21px;line-height:1.05}.course-running .eyebrow{font-size:9px}.course-running .lesson-text{margin:5px 0 7px;color:#405268;font-size:13.5px;line-height:1.24}.course-running .interactive-zone{padding:6px;background:linear-gradient(145deg,#fff,#fbfcfe)}
  .course-running .panel,.course-running .formula-card,.course-running .result-card,.course-running .source-card,.course-running .mode-card{padding:7px}.course-running .panel h3,.course-running .formula-card h3,.course-running .result-card h3{font-size:15px;line-height:1.12}.course-running .panel p,.course-running .formula-card p,.course-running .result-card p{font-size:11.5px;line-height:1.3}.course-running .graph-type{font-size:10px}.course-running .field{font-size:10.5px;line-height:1.1}.course-running .field small{font-size:10px}.course-running .field input,.course-running .field select{min-height:29px;font-size:12.5px}.course-running .readouts span{font-size:10.5px}.course-running .readouts b{font-size:16px}.course-running .callout{font-size:10.5px;line-height:1.25}.course-running .bar-row{grid-template-columns:68px 1fr 57px;font-size:10px}.course-running .metric small{font-size:9px}.course-running .metric strong{font-size:17px}.course-running .metric span{font-size:10px}.course-running .balance span{font-size:10px}.course-running .balance b{font-size:16px}.course-running .project-chain small{font-size:9px}.course-running .project-chain b{font-size:13px}.course-running .project-chain span{font-size:10px}.course-running .check-source{font-size:10px}
  .heat-intro-lab{grid-template-columns:1fr;align-content:center;gap:6px}.cold-room-visual{border-width:2px;border-radius:13px}.cold-room-visual figcaption{left:9px;right:9px;bottom:7px}.cold-room-visual figcaption strong{font-size:14px}.cold-room-visual figcaption span{margin-top:2px;font-size:10px}.heat-marker b{width:28px;height:28px;border-width:2px;font-size:13px}.heat-marker i{font-size:28px}.heat-learning{gap:4px}.heat-prompt{font-size:10px}.source-bricks{grid-template-columns:1fr 1fr;gap:4px}.source-brick{min-height:57px;gap:5px;padding:5px 6px;border-left-width:4px;border-radius:9px;box-shadow:none}.source-brick>i{width:25px;height:25px;font-size:11px}.source-brick b{font-size:12px}.source-brick small{margin-top:2px;font-size:10px}.heat-focus{min-height:55px;padding:7px 8px;border-radius:9px}.heat-focus b{font-size:11.5px}.heat-focus p{margin-top:3px;font-size:10.5px;line-height:1.2}.heat-rule{gap:5px;padding:6px 7px;border-radius:9px}.heat-rule b{font-size:10px}.heat-rule span{font-size:10.5px}
  .course-running .label-lab{grid-template-columns:1fr;grid-template-rows:auto auto;align-content:start;gap:5px}.course-running .label-body{height:auto}.course-running .label-cooling,.course-running .label-heating{padding:5px}.course-running .label-cooling>small,.course-running .label-heating>small{font-size:9px}.course-running .label-cooling>strong,.course-running .label-heating>strong{font-size:16px}.course-running .grade-ladder{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin:3px 0}.course-running .grade-ladder i{width:100%;padding:3px 2px;border-left-width:3px;clip-path:none;font-size:9.5px;text-align:center}.course-running .grade-ladder em{display:none}.course-running .energy-label dl{gap:3px}.course-running .energy-label dl div{display:flex;gap:4px;padding:3px}.course-running .energy-label dt{font-size:10px}.course-running .energy-label dd{font-size:11px;text-align:right}.course-running .climate-switch button{min-height:31px;font-size:10.5px}.course-running .label-read{grid-template-columns:1fr 1fr;gap:4px}.course-running .label-read article{padding:5px}.course-running .label-read b{font-size:11px}.course-running .label-read span{font-size:10px;line-height:1.2}.course-running .quiz-question{font-size:19px}.course-running .quiz-option{font-size:12px}.course-running .quiz-feedback{font-size:11px}
}

/* Tome 4 v3 — chaque notion possède un ancrage visuel lisible. */
@keyframes travel{0%{transform:translateX(-18px);opacity:0}25%,75%{opacity:1}100%{transform:translateX(70px);opacity:0}}
@keyframes breathe{0%,100%{transform:scale(.96);opacity:.76}50%{transform:scale(1.04);opacity:1}}
@keyframes orbit{to{transform:rotate(360deg)}}

.power-energy-visual{display:grid;grid-template-columns:auto auto minmax(90px,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:9px 12px;border:2px solid var(--navy-700);border-radius:15px;background:#f3f7fb;color:var(--navy-700)}
.power-energy-visual>i{font-style:normal;font-weight:900}.power-pulse,.power-energy-visual>strong{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--navy-700);color:#fff;font:900 23px "Trebuchet MS",sans-serif}.power-pulse{animation:breathe 1.8s ease-in-out infinite}.power-energy-visual>strong{background:var(--orange-dark)}.energy-cells{display:grid;grid-template-columns:repeat(8,1fr);gap:3px}.energy-cells b{height:24px;border:1px solid var(--blue);border-radius:4px;background:#dcecff;animation:breathe 2.2s ease-in-out infinite}.energy-cells b:nth-child(even){animation-delay:.2s;background:#ffd8c9}

.product-journey{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:7px;padding:8px;border:1px solid var(--line);border-radius:14px;background:#f3f7fb}.product-journey>em{color:var(--orange-dark);font:900 24px "Trebuchet MS",sans-serif;font-style:normal}.crate{position:relative;display:grid;place-items:center;min-height:66px;padding:7px;border:2px solid var(--navy-700);border-radius:10px;background:#fff;text-align:center}.crate i{display:block;width:24px;height:18px;margin-bottom:3px;border:3px solid currentColor;border-top:0}.crate b,.crate small{display:block}.crate b{color:var(--navy-700);font-size:12px}.crate small{color:var(--muted);font-size:10px}.crate.hot{color:var(--orange-dark)}.crate.cool{color:var(--blue)}.crate.frozen{color:#2574b8}.crate.frozen::after{content:"✦";position:absolute;right:5px;top:2px;color:var(--blue);animation:breathe 1.6s infinite}

.wall-lab{height:100%;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:12px}.wall-visual-panel,.wall-learning{min-width:0;display:grid;align-content:start;gap:8px}.wall-visual-panel{grid-template-rows:minmax(250px,1fr) auto}.wall-scene{position:relative;min-height:250px;overflow:hidden;border:2px solid var(--navy-700);border-radius:18px;background:linear-gradient(90deg,#fff2ea 0 20%,#f3f7fb 20% 80%,#e6f3ff 80%)}.wall-assembly{position:absolute;left:19%;right:19%;top:16%;bottom:22%;display:flex;align-items:stretch;justify-content:center;filter:drop-shadow(0 10px 10px rgba(16,35,60,.16))}.wall-slab{position:relative;flex:0 0 var(--slab);min-width:34px;padding:8px 4px;border:2px solid #fff;border-radius:7px;background:#d8dde2;color:var(--navy);box-shadow:inset 0 0 0 1px rgba(27,58,99,.25);writing-mode:vertical-rl;text-orientation:mixed;cursor:pointer;transition:flex-basis .2s,transform .2s,outline-color .2s}.wall-slab.insulation{background:repeating-linear-gradient(135deg,#f3cf6d 0 8px,#f8df99 8px 16px)}.wall-slab.structure{background:linear-gradient(135deg,#aeb7c0,#dde1e5 48%,#9ca7b2)}.wall-slab.active{z-index:2;transform:translateY(-7px);outline:4px solid var(--orange);outline-offset:2px}.wall-slab b,.wall-slab span,.wall-slab small{display:inline-block;font-style:normal}.wall-slab b{font-size:15px}.wall-slab span{font-size:13px;font-weight:900}.wall-slab small{font-size:12px}.wall-temp{position:absolute;top:44%;display:grid;gap:3px;color:var(--navy-700);font-size:12px;font-weight:900;text-align:center}.wall-temp b{font-size:25px}.wall-temp.outdoor{left:2%}.wall-temp.indoor{right:2%}.wall-heat-arrow{position:absolute;left:12%;right:12%;bottom:5%;height:34px;border-top:4px solid var(--orange-dark);color:var(--orange-dark);text-align:center}.wall-heat-arrow::after{content:"";position:absolute;right:-2px;top:-10px;border-width:8px 0 8px 13px;border-style:solid;border-color:transparent transparent transparent var(--orange-dark)}.wall-heat-arrow i{position:absolute;left:20%;top:-10px;width:18px;height:18px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px #fff;animation:travel 2.6s linear infinite}.wall-heat-arrow b{display:inline-block;margin-top:7px;padding:2px 7px;border-radius:999px;background:#fff;font-size:12px}.wall-formula-path{display:grid;grid-template-columns:1fr auto 1.35fr auto 1fr auto 1.25fr;align-items:center;gap:5px}.wall-formula-path span{min-height:58px;display:flex;align-items:center;gap:6px;padding:6px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy-700);font-size:12px;font-weight:800}.wall-formula-path span b{display:grid;place-items:center;min-width:23px;height:23px;border-radius:50%;background:var(--navy-700);color:#fff}.wall-formula-path>i{color:var(--orange-dark);font-style:normal;font-weight:900}.wall-learning{grid-template-rows:auto auto auto auto auto}.wall-mode-switch .mode-button{font-size:13px}.wall-editor,.wall-result{padding:10px;border:1px solid var(--line);border-radius:14px;background:#fff}.wall-editor h3{margin:2px 0 8px;color:var(--navy-700);font-size:20px}.wall-editor p,.wall-result p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.3}.wall-common-fields{grid-template-columns:repeat(3,1fr)}.wall-result{border-left:6px double var(--green);background:#f3fbf7}.wall-result .readouts{grid-template-columns:1fr 1fr}.wall-result .readouts span{padding:7px}.wall-result .readouts b{font-size:17px}.wall-learning .fictional{margin:0}

.season-lab{height:100%;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:center;gap:14px}.clim-house-visual{position:relative;width:100%;aspect-ratio:16/9;margin:0;overflow:hidden;border:3px solid var(--navy-700);border-radius:20px;background:#f8f2ea;box-shadow:0 12px 28px rgba(27,58,99,.16)}.clim-house-visual img{display:block;width:100%;height:100%;object-fit:cover}.season-badge{position:absolute;left:12px;top:12px;padding:7px 11px;border-radius:999px;background:var(--navy-700);color:#fff;font-size:13px;font-weight:900;letter-spacing:.06em}.season-flow{position:absolute;display:grid;grid-template-columns:auto auto;align-items:center;gap:0 6px;max-width:165px;padding:7px 9px;border:2px solid var(--blue);border-radius:12px;background:rgba(255,255,255,.94);color:var(--navy-700);box-shadow:0 4px 12px rgba(16,35,60,.16)}.season-flow i{grid-row:1/3;color:var(--blue);font:900 27px "Trebuchet MS",sans-serif;font-style:normal;animation:breathe 1.8s infinite}.season-flow b,.season-flow small{display:block}.season-flow b{font-size:12px}.season-flow small{font-size:10px;line-height:1.1}.flow-envelope{left:4%;top:44%}.flow-air{right:3%;top:49%}.flow-split{left:46%;top:28%}.flow-sun{right:4%;top:7%;border-color:var(--amber)}.flow-sun i{color:var(--amber)}.season-lab[data-season="summer"] .season-badge{background:var(--orange-dark)}.season-lab[data-season="summer"] .flow-envelope,.season-lab[data-season="summer"] .flow-air{border-color:var(--orange-dark)}.season-lab[data-season="summer"] .flow-envelope i,.season-lab[data-season="summer"] .flow-air i{color:var(--orange-dark)}.season-learning{display:grid;align-content:center;gap:10px}.season-equation{display:grid;grid-template-columns:1fr auto 1.5fr;align-items:center;gap:8px;margin-top:12px}.season-equation b,.season-equation strong{padding:10px;border:2px solid var(--navy-700);border-radius:10px;background:#fff;color:var(--navy-700);text-align:center}.season-equation strong{border-color:var(--orange-dark)}.season-equation i{color:var(--orange-dark);font:900 24px "Trebuchet MS",sans-serif;font-style:normal}

.heating-visual{display:grid;grid-template-columns:125px 1fr 1fr;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:14px;background:#f3f7fb}.mini-room{position:relative;display:grid;place-items:center;height:78px;border:5px solid var(--navy-700);background:#fff;color:var(--navy-700);font-size:18px;font-weight:900}.mini-room i{position:absolute;right:-32px;color:var(--orange-dark);font:900 26px "Trebuchet MS",sans-serif;font-style:normal;animation:breathe 1.7s infinite}.mini-room .loss-wall{top:7px}.mini-room .loss-air{bottom:7px;animation-delay:.4s}.heating-visual>span{display:block;padding:8px;border-left:5px solid var(--blue);background:#fff}.heating-visual>span:last-child{border-left-style:dashed;border-left-color:var(--orange-dark)}.heating-visual b,.heating-visual small{display:block}.heating-visual b{font-size:12px;color:var(--navy-700)}.heating-visual small{font-size:11px;color:var(--muted)}
.load-split{display:flex;min-height:72px;margin:7px 0;overflow:hidden;border:2px solid var(--navy-700);border-radius:14px;background:#fff}.load-split span{display:grid;align-content:center;min-width:18%;padding:8px;color:#fff;text-align:center;transition:width .25s}.load-split span:first-child{background:var(--blue)}.load-split span:last-child{background:var(--orange-dark)}.load-split b,.load-split small{display:block}.load-split b{font-size:16px}.load-split small{font-size:11px}
.season-wheel{position:relative;min-height:126px;border:2px solid var(--navy-700);border-radius:18px;background:radial-gradient(circle at center,#fff 0 34%,#eef5fb 35% 62%,#fff 63%)}.season-wheel::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px;border-radius:50%;background:var(--orange-dark);transform-origin:0 0;box-shadow:0 -49px 0 5px var(--orange);animation:orbit 7s linear infinite}.season-wheel>i{position:absolute;padding:4px 7px;border-radius:999px;background:#fff;color:var(--navy-700);font-size:10px;font-style:normal;font-weight:900}.season-wheel .winter{left:5%;top:12%}.season-wheel .spring{right:5%;top:12%}.season-wheel .summer{right:5%;bottom:12%}.season-wheel .autumn{left:5%;bottom:12%}.season-wheel>b{position:absolute;inset:39% 35%;display:grid;place-items:center;color:var(--navy-700);font-size:12px;text-align:center}
.conversion-flow{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-top:8px}.conversion-flow span,.conversion-flow strong{padding:9px;border:2px solid var(--navy-700);border-radius:10px;background:#fff;color:var(--navy-700);text-align:center}.conversion-flow strong{border-color:var(--green)}.conversion-flow i{position:relative;padding:5px 8px;border-radius:999px;background:#ffe7dd;color:var(--orange-dark);font-style:normal;font-weight:900}.conversion-flow i::after{content:"";position:absolute;left:4px;top:50%;width:9px;height:9px;margin-top:-5px;border-radius:50%;background:var(--orange);animation:travel 2.3s linear infinite}

.bar i{transition:width .3s ease}.balance i{animation:breathe 1.8s ease-in-out infinite}.project-chain article{transition:transform .2s,box-shadow .2s}.project-chain article:has(.checked){transform:translateY(-3px);box-shadow:0 6px 16px rgba(30,126,84,.16)}

/* Étiquette de climatiseur : structure 626/2011, données d'exercice. */
.eu-label-lab{height:100%;display:grid;grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);align-items:stretch;gap:14px}.eu-energy-label{position:relative;justify-self:center;width:min(100%,380px);height:100%;max-height:500px;min-height:390px;display:grid;grid-template-rows:52px 28px 31px minmax(0,1fr) 86px 31px;overflow:hidden;border:4px solid #168dcc;border-radius:14px;background:#fff;color:#111;box-shadow:0 8px 24px rgba(27,58,99,.16);font-family:Arial,sans-serif}.eu-energy-label>header{display:grid;grid-template-columns:42px 1fr;grid-template-rows:1fr 1fr;align-items:center;padding:5px 8px;background:#18a2df;color:#fff}.eu-mark{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border:2px solid #ffdd32;border-radius:50%;font-size:10px;font-weight:900}.eu-energy-label>header b{font-size:25px;line-height:1;letter-spacing:.03em}.eu-energy-label>header small{font-size:8px;font-weight:700}.eu-model{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 8px;border-bottom:2px solid #168dcc;font-size:9px}.eu-model span{font-weight:900}.eu-model b{font-size:10px}.eu-service-head{display:grid;grid-template-columns:.93fr 1.07fr;border-bottom:2px solid #168dcc;text-align:center}.eu-service-head span{padding:5px;font-size:13px;font-weight:900}.eu-service-head .cool{color:#168dcc;border-right:2px solid #168dcc}.eu-service-head .heat{color:#e44a22}.eu-service-head i{font-style:normal}.eu-label-main{min-height:0;display:grid;grid-template-columns:.93fr 1.07fr}.label-zone{position:relative;cursor:pointer;transition:filter .18s,box-shadow .18s}.label-zone:focus-visible{outline:4px solid var(--orange);outline-offset:-4px}.label-zone.focused{z-index:3;box-shadow:inset 0 0 0 5px rgba(255,107,53,.72);filter:saturate(1.1)}.eu-cooling-zone{padding:7px;border-right:2px solid #168dcc}.eu-grade-wrap{position:relative;height:calc(100% - 54px)}.eu-grade-scale{height:100%;display:grid;grid-template-rows:repeat(7,1fr);gap:2px;padding-right:32px}.eu-grade-scale i{position:relative;display:flex;align-items:center;padding-left:7px;clip-path:polygon(0 0,88% 0,100% 50%,88% 100%,0 100%);color:#fff;font-size:10px;font-style:normal;font-weight:900}.eu-grade-scale .grade-0{width:61%;background:#009641}.eu-grade-scale .grade-1{width:67%;background:#38a64a}.eu-grade-scale .grade-2{width:73%;background:#8cc63f}.eu-grade-scale .grade-3{width:79%;background:#f2df16;color:#111}.eu-grade-scale .grade-4{width:85%;background:#f8b51b;color:#111}.eu-grade-scale .grade-5{width:91%;background:#f47a20}.eu-grade-scale .grade-6{width:97%;background:#e31e24}.eu-grade-scale i.selected{outline:2px solid #111;outline-offset:1px}.eu-grade-pointer{position:absolute;right:0;top:14%;display:grid;place-items:center;width:48px;height:31px;background:#222;color:#fff;clip-path:polygon(18% 0,100% 0,100% 100%,18% 100%,0 50%);font-size:14px}.eu-values{height:51px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding-top:4px;border-top:1px solid #168dcc}.eu-values span{display:block;text-align:center}.eu-values b,.eu-values small{display:block}.eu-values b{font-size:13px}.eu-values small{font-size:7px}.eu-heating-zone{min-width:0;padding:7px}.eu-climate-grades{height:44%;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:3px}.eu-climate-grades span{display:grid;gap:4px;text-align:center}.eu-climate-grades small{font-size:7px}.eu-climate-grades b{display:grid;place-items:center;height:33px;background:#222;color:#fff;clip-path:polygon(15% 0,100% 0,100% 100%,15% 100%,0 50%);font-size:12px}.eu-climate-grades .warm b{border-bottom:5px solid #f47a20}.eu-climate-grades .average b{border-bottom:5px solid #49a84c}.eu-climate-grades .cold b{border-bottom:5px solid #3d7fca}.eu-climate-values{height:56%;display:grid;grid-template-rows:repeat(3,1fr);gap:3px;padding-top:5px}.eu-climate-values>span{display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:center;border-top:1px solid #9bcfe7;text-align:center}.eu-climate-values b{font-size:10px}.eu-climate-values small{font-size:7px;writing-mode:vertical-rl}.eu-label-bottom{display:grid;grid-template-columns:1.05fr .95fr;border-top:2px solid #168dcc}.eu-sound{display:grid;grid-template-rows:1fr 1fr;border-right:2px solid #168dcc}.eu-sound span{display:grid;grid-template-columns:25px 1fr;grid-template-rows:1fr 1fr;align-items:center;padding:3px 6px}.eu-sound span+span{border-top:1px solid #9bcfe7}.eu-sound i{grid-row:1/3;font-size:18px;font-style:normal;color:#168dcc}.eu-sound b{font-size:11px}.eu-sound small{font-size:7px}.eu-map{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto 1fr;align-items:end;gap:2px;padding:5px;background:linear-gradient(135deg,#eaf6fc,#fff)}.eu-map>b{grid-column:1/-1;color:#168dcc;font-size:10px;text-align:center}.eu-map span{display:grid;place-items:end center;height:100%;padding:3px 1px;border-radius:4px 4px 0 0;color:#fff;font-size:7px;font-weight:900}.map-warm{height:50%!important;background:#f47a20}.map-average{height:72%!important;background:#49a84c}.map-cold{background:#3d7fca}.eu-energy-label>footer{display:grid;align-content:center;padding:3px 7px;border-top:2px solid #168dcc;background:#f2faff}.eu-energy-label>footer b{color:#12658d;font-size:8px}.eu-energy-label>footer span{font-size:7px}.eu-label-guide{min-width:0;display:grid;align-content:start;gap:9px}.label-focus-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.label-focus-tabs button{min-height:42px;padding:6px;border:2px solid var(--line);border-radius:10px;background:#fff;color:var(--navy-700);font-weight:900;cursor:pointer}.label-focus-tabs button.active{border-color:var(--navy-700);background:#edf6ff;box-shadow:inset 0 -4px var(--orange)}.label-detail{min-height:190px;padding:14px;border:2px solid var(--navy-700);border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(27,58,99,.1)}.detail-kicker{display:block;color:var(--orange-dark);font-size:11px;font-weight:900;letter-spacing:.08em}.label-detail h3{margin:4px 0 10px;color:var(--navy-700);font-size:25px}.label-detail p{margin:10px 0 0;color:var(--ink);font-size:14px;line-height:1.35}.detail-values{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.detail-values span{padding:10px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:10px;color:var(--muted);font-size:12px}.detail-values span:nth-child(2){border-left-style:double;border-left-color:var(--green)}.detail-values span:nth-child(3){border-left-style:dashed;border-left-color:var(--orange-dark)}.detail-values b{display:block;margin-top:3px;color:var(--navy-700);font-size:20px}.sound-values{grid-template-columns:1fr 1fr}.climate-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.climate-cards span{padding:10px;border:2px solid var(--line);border-radius:10px;background:#fff}.climate-cards b,.climate-cards small{display:block}.climate-cards b{font-size:13px}.climate-cards small{margin-top:4px;font-size:12px}.climate-cards .warm{border-color:#f47a20}.climate-cards .average{border-color:#49a84c}.climate-cards .cold{border-color:#3d7fca}.old-label-note{margin:0;padding:9px 11px;border-left:5px dashed var(--orange-dark);border-radius:9px;background:#fff7f2;color:var(--ink);font-size:12px;line-height:1.3}

@media screen and (min-width:651px){
  .course-running .wall-lab{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr)}.course-running .wall-visual-panel{grid-template-rows:minmax(250px,1fr) auto}.course-running .wall-editor p,.course-running .wall-result p{font-size:12px}.course-running .wall-formula-path span{font-size:13px}.course-running .wall-result .readouts{grid-template-columns:repeat(4,1fr)}.course-running .wall-result .readouts span{padding:7px 5px;font-size:11px}.course-running .wall-result .readouts b{font-size:16px}.course-running .wall-learning>.fictional{display:none}.course-running .season-lab{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)}
  .course-running .eu-label-lab{grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr)}.course-running .eu-energy-label{max-height:none}.course-running .label-focus-tabs button{font-size:14px}.course-running .label-detail{min-height:180px}.course-running .label-detail h3{font-size:25px}.course-running .detail-values b{font-size:21px}.course-running .old-label-note{font-size:13px}
}

@media screen and (max-width:650px){
  .course-running .power-energy-visual{min-height:45px;padding:4px;gap:4px}.course-running .power-pulse,.course-running .power-energy-visual>strong{width:30px;height:30px;font-size:15px}.course-running .energy-cells{gap:1px}.course-running .energy-cells b{height:17px}.course-running .product-journey{gap:3px;padding:4px}.course-running .crate{min-height:47px;padding:3px}.course-running .crate i{width:17px;height:12px}.course-running .crate b{font-size:9px}.course-running .crate small{font-size:8px}.course-running .product-journey>em{font-size:15px}
  .course-running .wall-lab{grid-template-columns:1fr;grid-template-rows:160px minmax(0,1fr);gap:4px}.course-running .wall-visual-panel{grid-template-rows:116px 40px;gap:4px}.course-running .wall-scene{min-height:116px;border-width:1px;border-radius:10px}.course-running .wall-assembly{left:22%;right:22%;top:8%;bottom:24%}.course-running .wall-slab{max-width:58px;padding:3px 1px;border-width:1px}.course-running .wall-slab.active{transform:translateY(-2px);outline-width:2px}.course-running .wall-slab b{font-size:9px}.course-running .wall-slab span{font-size:8.5px}.course-running .wall-slab small{font-size:8px}.course-running .wall-temp{top:36%;font-size:8px}.course-running .wall-temp b{font-size:13px}.course-running .wall-heat-arrow{height:21px;border-top-width:2px}.course-running .wall-heat-arrow::after{top:-6px;border-width:5px 0 5px 8px}.course-running .wall-heat-arrow i{top:-6px;width:10px;height:10px}.course-running .wall-heat-arrow b{margin-top:2px;font-size:8.5px}.course-running .wall-formula-path{gap:2px}.course-running .wall-formula-path span{min-height:40px;gap:2px;padding:2px;font-size:8.5px;line-height:1.05}.course-running .wall-formula-path span b{min-width:16px;height:16px;font-size:8px}.course-running .wall-formula-path>i{font-size:9px}.course-running .wall-learning{gap:3px;grid-template-rows:auto auto auto auto}.course-running .wall-mode-switch{gap:3px}.course-running .wall-mode-switch .mode-button{min-height:29px;font-size:10px}.course-running .wall-editor,.course-running .wall-result{padding:5px}.course-running .wall-editor h3{margin:1px 0 3px;font-size:13px}.course-running .wall-editor p,.course-running .wall-result p{margin-top:3px;font-size:9px;line-height:1.1}.course-running .wall-common-fields{grid-template-columns:repeat(3,1fr)}.course-running .wall-result .readouts{grid-template-columns:repeat(4,1fr);gap:2px}.course-running .wall-result .readouts span{padding:3px;font-size:8.5px}.course-running .wall-result .readouts b{font-size:11px}.course-running .wall-learning .fictional{display:none}
  .course-running .season-lab{grid-template-columns:1fr;grid-template-rows:auto 1fr;align-content:start;gap:5px}.course-running .clim-house-visual{max-height:190px;border-width:2px;border-radius:12px}.course-running .season-badge{left:6px;top:6px;padding:4px 7px;font-size:9px}.course-running .season-flow{max-width:105px;padding:3px 5px;border-width:1px;border-radius:7px;gap:0 3px}.course-running .season-flow i{font-size:16px}.course-running .season-flow b{font-size:9px}.course-running .season-flow small{font-size:8.5px}.course-running .flow-envelope{left:2%;top:50%}.course-running .flow-air{right:2%;top:55%}.course-running .flow-split{left:44%;top:29%}.course-running .flow-sun{right:2%;top:5%}.course-running .season-learning{gap:4px}.course-running .season-learning .mode-button{min-height:30px;font-size:10px}.course-running .season-learning .result-card{padding:6px}.course-running .season-learning .result-card h3{margin-bottom:3px}.course-running .season-learning .result-card p{margin:2px 0}.course-running .season-equation{gap:3px;margin-top:4px}.course-running .season-equation b,.course-running .season-equation strong{padding:5px;font-size:9px}.course-running .season-equation i{font-size:14px}.course-running .season-learning .callout{padding:5px}
  .course-running .heating-visual{grid-template-columns:75px 1fr 1fr;gap:3px;padding:3px}.course-running .mini-room{height:48px;border-width:3px;font-size:11px}.course-running .mini-room i{right:-18px;font-size:15px}.course-running .heating-visual>span{padding:3px;border-left-width:3px}.course-running .heating-visual b{font-size:8px}.course-running .heating-visual small{font-size:8px}.course-running .load-split{min-height:47px;margin:3px 0}.course-running .load-split span{padding:3px}.course-running .load-split b{font-size:10px}.course-running .load-split small{font-size:9px}.course-running .season-wheel{min-height:76px;border-radius:10px}.course-running .season-wheel>i{padding:2px 3px;font-size:7px}.course-running .season-wheel>b{font-size:8px}.course-running .season-wheel::after{box-shadow:0 -27px 0 3px var(--orange)}.course-running .conversion-flow{gap:3px;margin-top:3px}.course-running .conversion-flow span,.course-running .conversion-flow strong{padding:4px;font-size:9px}.course-running .conversion-flow i{padding:3px;font-size:8px}
  .course-running .eu-label-lab{grid-template-columns:1fr;grid-template-rows:205px minmax(0,1fr);gap:4px}.course-running .eu-energy-label{width:100%;height:205px;min-height:0;max-height:none;grid-template-rows:25px 17px 19px minmax(0,1fr) 43px 18px;border-width:2px;border-radius:8px}.course-running .eu-energy-label>header{grid-template-columns:25px 1fr;padding:2px 4px}.course-running .eu-mark{width:19px;height:19px;border-width:1px;font-size:6px}.course-running .eu-energy-label>header b{font-size:14px}.course-running .eu-energy-label>header small{font-size:6.5px}.course-running .eu-model{padding:1px 4px;font-size:7.5px}.course-running .eu-model b{font-size:8px}.course-running .eu-service-head span{padding:2px;font-size:9px}.course-running .eu-cooling-zone,.course-running .eu-heating-zone{padding:3px}.course-running .eu-grade-scale{gap:1px;padding-right:22px}.course-running .eu-grade-scale i{padding-left:3px;font-size:7.5px}.course-running .eu-grade-pointer{width:34px;height:20px;font-size:9px}.course-running .eu-values{height:30px;padding-top:1px}.course-running .eu-values b{font-size:9px}.course-running .eu-values small{font-size:6.5px}.course-running .eu-climate-grades{gap:1px}.course-running .eu-climate-grades small{font-size:6.5px}.course-running .eu-climate-grades b{height:19px;font-size:8px}.course-running .eu-climate-values{gap:1px;padding-top:1px}.course-running .eu-climate-values b{font-size:7px}.course-running .eu-climate-values small{font-size:6px}.course-running .eu-sound span{grid-template-columns:17px 1fr;padding:1px 3px}.course-running .eu-sound i{font-size:11px}.course-running .eu-sound b{font-size:8px}.course-running .eu-sound small{font-size:6.5px}.course-running .eu-map{padding:2px}.course-running .eu-map>b{font-size:7px}.course-running .eu-map span{padding:1px;font-size:6.5px}.course-running .eu-energy-label>footer{padding:1px 4px}.course-running .eu-energy-label>footer b{font-size:6.5px}.course-running .eu-energy-label>footer span{font-size:6px}.course-running .eu-label-guide{gap:3px}.course-running .eu-label-guide>.graph-type{display:none}.course-running .label-focus-tabs{gap:2px}.course-running .label-focus-tabs button{min-height:29px;padding:2px;font-size:9px}.course-running .eu-label-guide .climate-switch{gap:2px}.course-running .eu-label-guide .climate-switch button{min-height:28px}.course-running .label-detail{min-height:105px;padding:6px;border-width:1px;border-radius:9px}.course-running .detail-kicker{font-size:8.5px}.course-running .label-detail h3{margin:1px 0 4px;font-size:15px}.course-running .label-detail p{margin-top:4px;font-size:10px;line-height:1.18}.course-running .detail-values{gap:3px}.course-running .detail-values span{padding:4px;border-left-width:3px;font-size:9px}.course-running .detail-values b{font-size:13px}.course-running .climate-cards{gap:3px}.course-running .climate-cards span{padding:4px}.course-running .climate-cards b{font-size:9px}.course-running .climate-cards small{font-size:8.5px}.course-running .old-label-note{padding:4px 6px;border-left-width:3px;font-size:9.5px;line-height:1.12}
}

@media (prefers-reduced-motion:reduce){.power-pulse,.energy-cells b,.crate.frozen::after,.wall-heat-arrow i,.season-flow i,.mini-room i,.season-wheel::after,.conversion-flow i::after,.balance i{animation:none!important}}

@media screen and (min-width:651px) and (max-height:730px){
  .course-running .wall-result>p{display:none}
  .course-running .product-journey{height:72px;padding:4px}.course-running .crate{min-height:54px;padding:3px}.course-running .crate i{width:19px;height:13px}.course-running .crate b{font-size:10px}.course-running .crate small{font-size:9px}.course-running .product-journey>em{font-size:18px}
  .course-running .heating-visual{min-height:64px;padding:3px}.course-running .mini-room{height:52px}.course-running .heating-visual>span{padding:4px}.course-running .heating-visual b{font-size:10px}.course-running .heating-visual small{font-size:9px}
  .course-running .eu-label-guide{gap:4px}
}

@media screen and (max-width:650px) and (max-height:700px){
  .course-running .wall-lab{grid-template-rows:100px minmax(0,1fr)}.course-running .wall-visual-panel{grid-template-rows:1fr}.course-running .wall-scene{min-height:92px}.course-running .wall-formula-path{display:none}.course-running .wall-editor p,.course-running .wall-result p{display:none}.course-running .wall-editor h3{font-size:12px}.course-running .wall-learning{gap:2px}.course-running .wall-result .readouts span{font-size:8px}.course-running .wall-result .readouts b{font-size:10px}
  .course-running .products-lab{gap:3px}.course-running .products-lab .product-formulas{padding:4px}.course-running .air-usages-lab .fictional,.course-running .seasonal-lab .fictional,.course-running .air-usages-lab .callout.key,.course-running .seasonal-lab .callout.key{display:none}
  .course-running .heating-stack>.fictional{display:none}.course-running .eu-label-lab{grid-template-rows:180px minmax(0,1fr)}.course-running .eu-energy-label{height:180px;grid-template-rows:23px 15px 17px minmax(0,1fr) 39px 16px}.course-running .label-detail{min-height:90px}.course-running .old-label-note{font-size:8.8px}
}

/* Relecture pédagogique v4 : chaque symbole est nommé et la plaque réglementaire reste une image officielle intacte. */
.product-formulas{display:grid;grid-template-columns:1fr 1fr;gap:8px}.product-formulas>span{display:grid;align-content:center;min-height:68px;padding:9px;border:2px solid var(--navy-700);border-radius:12px;background:#f3f7fb}.product-formulas>span:last-child{border-style:dashed;border-color:var(--orange-dark);background:#fff8f4}.product-formulas small,.product-formulas b{display:block}.product-formulas small{color:var(--muted);font-size:10px;font-weight:900}.product-formulas b{margin-top:3px;color:var(--navy-700);font-family:Consolas,monospace;font-size:15px;line-height:1.25}
.wall-glossary{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:7px}.wall-glossary span{padding:5px;border:1px solid var(--line);border-radius:8px;background:#f3f7fb;color:var(--muted);font-size:10px;line-height:1.15}.wall-glossary b{display:block;color:var(--navy-700);font-size:12px}
.course-running .products-lab .fictional,.course-running .heating-stack>.fictional{display:none}
.formula-legend{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.formula-legend span{padding:6px 8px;border-left:5px solid var(--blue);border-radius:7px;background:#fff;color:var(--muted);font-size:11px}.formula-legend span+span{border-left-style:dashed;border-left-color:var(--orange-dark)}.formula-legend b{color:var(--navy-700)}

.official-label-figure{min-width:0;min-height:0;height:100%;margin:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:6px}.official-label-open{position:relative;min-width:0;min-height:0;width:100%;height:100%;overflow:hidden;padding:5px;border:2px solid #168dcc;border-radius:15px;background:#eef9ff;cursor:zoom-in}.official-label-open img{display:block;width:100%;height:100%;object-fit:contain}.official-label-open>span{position:absolute;left:10px;right:10px;bottom:9px;padding:6px 9px;border-radius:999px;background:rgba(16,35,60,.9);color:#fff;font-size:12px;font-weight:900;text-align:center}.official-label-figure figcaption{display:grid;gap:1px;padding:6px 8px;border-left:5px solid #168dcc;border-radius:8px;background:#f2faff}.official-label-figure figcaption b{color:var(--navy-700);font-size:12px}.official-label-figure figcaption small{color:var(--muted);font-size:10px}
.eu-label-guide{align-content:start}.label-number-list{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:8px}.label-number-list span{display:flex;align-items:center;gap:5px;min-width:0;padding:6px;border:1px solid var(--line);border-radius:9px;background:#f3f7fb;color:var(--navy-700);font-size:10.5px;font-weight:800;line-height:1.15}.label-number-list b{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:var(--navy-700);color:#fff;font-size:11px}.sound-values strong{display:block;margin-top:3px;color:var(--navy-700);font:800 20px "Trebuchet MS",Calibri,Arial,sans-serif}
.official-label-dialog{width:min(94vw,690px);height:min(94dvh,930px);padding:0;border:0;border-radius:18px;background:var(--paper);box-shadow:0 24px 80px rgba(16,35,60,.38)}.official-label-dialog::backdrop{background:rgba(16,35,60,.72)}.official-label-dialog>div{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:5px;padding:10px}.official-label-dialog button{justify-self:end;min-height:38px;padding:7px 13px;border:0;border-radius:999px;background:var(--navy-700);color:#fff;font-weight:900;cursor:pointer}.official-label-dialog h3{margin:0;color:var(--navy-700);font-size:23px;text-align:center}.official-label-dialog img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.official-label-dialog p{margin:0;color:var(--muted);font-size:12px;text-align:center}

@media screen and (min-width:651px){
  .course-running .products-lab{grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr)}.course-running .products-lab .field-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .course-running .product-formulas b{font-size:16px}.course-running .product-formulas small{font-size:11px}.course-running .wall-glossary{margin-top:4px}.course-running .wall-glossary span{padding:4px;font-size:11px}.course-running .wall-glossary b{font-size:13px}.course-running .formula-legend span{font-size:13px}
  .course-running .eu-label-lab{grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr)}.course-running .official-label-figure figcaption b{font-size:14px}.course-running .official-label-figure figcaption small{font-size:12px}.course-running .label-number-list span{font-size:12px}.course-running .label-detail{min-height:220px}
}

@media screen and (max-width:650px){
  .course-running .product-formulas{gap:3px}.course-running .product-formulas>span{min-height:46px;padding:4px;border-width:1px}.course-running .product-formulas small{font-size:8px}.course-running .product-formulas b{font-size:10px;line-height:1.12}
  .course-running .wall-glossary{gap:2px;margin-top:3px}.course-running .wall-glossary span{padding:2px;font-size:7.5px}.course-running .wall-glossary b{font-size:9px}.course-running .formula-legend{gap:3px;margin-top:3px}.course-running .formula-legend span{padding:3px;border-left-width:3px;font-size:8px}
  .course-running .eu-label-lab{grid-template-columns:1fr;grid-template-rows:150px minmax(0,1fr);gap:4px}.course-running .official-label-figure{grid-template-columns:112px 1fr;grid-template-rows:1fr;gap:4px}.course-running .official-label-open{border-width:1px;border-radius:8px;padding:2px}.course-running .official-label-open>span{display:none}.course-running .official-label-figure figcaption{align-content:center;padding:5px;border-left-width:4px}.course-running .official-label-figure figcaption b{font-size:11px;line-height:1.15}.course-running .official-label-figure figcaption small{font-size:9.5px;line-height:1.15}
  .course-running .label-number-list{grid-template-columns:1fr 1fr;gap:2px;margin-bottom:3px}.course-running .label-number-list span{gap:3px;padding:3px;font-size:8.5px}.course-running .label-number-list b{flex-basis:17px;width:17px;height:17px;font-size:8px}.course-running .sound-values strong{font-size:13px}.course-running .label-detail{min-height:0}.course-running .official-label-dialog h3{font-size:18px}
}

@media screen and (max-width:650px) and (max-height:700px){
  .course-running .eu-label-lab{grid-template-rows:116px minmax(0,1fr)}.course-running .official-label-figure{grid-template-columns:84px 1fr}.course-running .official-label-figure figcaption small{font-size:8.5px}.course-running .label-detail p{font-size:9px}.course-running .old-label-note{display:none}
}
