:root{
  --ink:#17382e;--deep:#104b39;--green:#176b4a;--line:#cec7b8;--gold:#c49a42;
  --paper:#f6f2e7;--white:#fffef9;--muted:#65736c;--warn:#9d392d;
  --red:#ef2525;--blue:#253cff;--purple:#8b168e;
  --sans:"Yu Gothic UI","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
  --serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#e9eee9;color:var(--ink);font-family:var(--serif);font-size:19px}
button,input{font:inherit}button{cursor:pointer}[hidden]{display:none!important}
.methodArticle p,.methodArticle li{white-space:pre-line}
.methodArticle .bandBlock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:24px 0}.methodArticle .bandBlock>div{display:grid;gap:6px;padding:14px;border:1px solid #cbd6cf;background:#f4f7f4;font:14px/1.6 var(--sans)}.methodArticle .bandBlock>p{grid-column:1/-1;margin:2px 0 0}.methodArticle .interactiveBlock iframe{display:block;width:100%;height:590px;border:0;border-radius:7px;background:#fff}.methodArticle .interactiveBlock>p{margin-bottom:12px}
@media(max-width:720px){.methodArticle .bandBlock{grid-template-columns:1fr 1fr}.methodArticle .interactiveBlock iframe{height:520px}}
.siteHeader{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,54px);background:rgba(255,254,249,.96);border-bottom:1px solid #d9d3c4;position:sticky;top:0;z-index:50;backdrop-filter:blur(8px)}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.brandLeaf{display:block;width:31px;height:auto}.brandText{display:flex;flex-direction:column;line-height:1}.brandText strong{font-size:29px;font-weight:500;letter-spacing:.12em;white-space:nowrap}.brandText small{margin-top:4px;font:8px/1.1 var(--sans);letter-spacing:.22em;color:#416057}.prototypeBadge{font:12px/1.2 var(--sans);color:#7b5d19;border:1px solid #d8c28b;background:#fff7d9;padding:6px 9px}
main{width:min(1680px,calc(100% - 36px));margin:auto;background:var(--paper);box-shadow:0 0 34px #1c3e3214;padding:0 clamp(18px,3vw,52px) 60px}.breadcrumb{display:flex;gap:10px;padding-top:20px;font:13px/1.5 var(--sans);color:var(--muted)}.breadcrumb a{color:var(--deep)}
.hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(500px,.92fr);grid-template-areas:"heading heading" "lead points" "note control";column-gap:clamp(24px,3vw,48px);row-gap:14px;align-items:stretch;padding:50px 0 44px;border-bottom:1px solid var(--line)}.heroHeading{grid-area:heading}.heroLeadBlock{grid-area:lead;padding:19px 22px;border:1px solid var(--line);background:rgba(255,254,249,.62)}.scienceNote{grid-area:note}.sciencePoints{grid-area:points}.hero .controlPanel{grid-area:control}.eyebrow{margin:0 0 8px;color:#8b6926;font:700 12px/1.4 var(--sans);letter-spacing:.15em}.hero h1{margin:0;font-size:clamp(42px,4.8vw,72px);font-weight:500;letter-spacing:.035em}.lead{margin:0;max-width:980px;font-size:clamp(19px,1.6vw,25px);line-height:1.8}.scienceNote{padding:20px 22px;border-left:5px solid var(--gold);background:#fff9e8;font:16px/1.8 var(--sans)}.scienceNote strong{display:block;margin-bottom:7px;font-size:18px}.scienceNote p{margin:0}.sciencePoints{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.sciencePoints li{display:grid;grid-template-columns:minmax(190px,.78fr) minmax(0,1.22fr);gap:18px;align-items:center;border-bottom:1px solid var(--line);padding:15px 4px}.sciencePoints strong{font-size:17px;font-weight:600}.sciencePoints small{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 13px;text-align:right;font:15px/1.6 var(--sans);color:var(--muted)}.sciencePoints a{color:var(--deep);font-weight:700;white-space:nowrap}
.controlPanel{padding:19px clamp(18px,2vw,28px);background:linear-gradient(145deg,#2a6651,#185440);color:#fff;border:1px solid #22543f;box-shadow:none}.sectionTitle{margin-bottom:13px}.sectionTitle>div{display:flex;align-items:center;gap:13px}.sectionTitle h2{margin:0;font-size:clamp(23px,1.9vw,30px);font-weight:500}.sectionNumber,.sectionHeading>div>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold);color:var(--gold);font:700 12px var(--sans);flex:0 0 auto}.dateModeGrid{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(360px,1.28fr);gap:12px}.dateMode{display:grid;grid-template-rows:auto 44px;gap:10px}.dateMode label{display:grid;gap:5px;font:15px/1.4 var(--sans)}.dateMode input{height:44px;width:100%;border:1px solid #8aa195;background:#fffef9;color:var(--ink);padding:0 13px;font:700 17px/1 var(--sans);letter-spacing:.08em}.rangeDateInputs{display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(130px,1fr);gap:10px;align-items:end}.rangeArrow{align-self:center;padding-top:22px;color:#e1c06d}.dateMode button{height:44px;border:1px solid rgba(255,255,255,.42);background:rgba(255,255,255,.10);color:#fff;font:700 16px var(--sans);transition:background .16s,border-color .16s,color .16s}.dateMode button:hover,.dateMode button:focus-visible{background:#e2be70;color:var(--ink);outline:2px solid #fff;outline-offset:2px}.dateMode button.isSelected,.dateMode button[aria-pressed="true"]{background:#d2aa57;border-color:#e5c778;color:#17382e;box-shadow:inset 0 -3px 0 rgba(84,58,6,.22)}.dateMode button:disabled{cursor:wait;opacity:.72}.rangeInfo{margin-top:15px;padding-top:13px;border-top:1px solid rgba(255,255,255,.28);font:15px/1.65 var(--sans)}.rangeInfo p{margin:0}.rangeInfo p+p{margin-top:5px}.statusMessage{min-height:0;margin:6px 0 0;color:#dbe6e1;font:14px/1.55 var(--sans)}.statusMessage.isError{color:#ffdca1;font-weight:700}
.viewerSection{margin-top:36px;padding:28px clamp(16px,2vw,32px);background:var(--white);border:1px solid #c9c2b4;box-shadow:0 8px 25px #1b3f3210}.sectionHeading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}.sectionHeading>div{display:flex;align-items:center;gap:13px}.sectionHeading h2{margin:0;font-size:clamp(25px,2.2vw,34px);font-weight:500}.sectionHeading>p{margin:0;color:var(--muted);font:13px/1.6 var(--sans);text-align:right}.bandGuide{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px;font:11px/1.4 var(--sans);color:#40544c}.bandGuide span{display:flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #d3d8d4;background:#fff}.bandGuide i{display:block;width:26px;height:12px}.bandCold{background:rgba(70,130,180,.35)}.bandCool{background:rgba(173,216,230,.55)}.bandComfort{background:rgba(255,255,0,.38)}.bandWarm{background:rgba(255,165,0,.38)}.bandHot{background:rgba(250,128,114,.42)}.bandUncomfortable{background:rgba(255,0,0,.30)}.bandSevere{background:rgba(139,0,0,.30)}
.diViewer{position:relative;padding:20px;background:#fff;border:1px solid #cfd8d2}.viewerHead{display:flex;justify-content:space-between;gap:20px;align-items:end;padding-bottom:13px;border-bottom:2px solid var(--deep)}.viewerHead p{margin:0 0 4px;color:#6a776f;font:11px/1.4 var(--sans)}.viewerHead h3{margin:0;font:600 clamp(21px,2vw,30px)/1.3 var(--sans)}.viewerHead dl{display:flex;gap:8px;margin:0;font:11px/1.3 var(--sans)}.viewerHead dl div{display:grid;grid-template-columns:auto auto;border:1px solid #ccd5d0}.viewerHead dt,.viewerHead dd{margin:0;padding:6px 8px}.viewerHead dt{background:#edf2ee;color:#51635b}.viewerHead dd{font-weight:700}.diGrid{display:grid;gap:10px;margin-top:14px;cursor:zoom-in}.diGrid.layoutOne{grid-template-columns:1fr}.diGrid.layoutFew{grid-template-columns:repeat(2,minmax(0,1fr))}.diGrid.layoutMedium{grid-template-columns:repeat(2,minmax(0,1fr))}.diGrid.layoutDense{grid-template-columns:repeat(3,minmax(0,1fr))}.diGrid:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.diCard{min-width:0;border:1px solid #d0d9d3;background:#fff;padding:8px}.diCard.isMissing{display:grid;align-content:start;min-height:240px;background:#fbf8f3}.diCardHead{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:5px}.diCardHead h4{margin:0;font:700 13px/1.35 var(--sans)}.diCardHead span{color:#68776f;font:10px/1.3 var(--sans)}.diCanvas{position:relative;height:260px}.layoutOne .diCanvas{height:470px}.layoutFew .diCanvas{height:320px}.layoutDense .diCanvas{height:225px}.diCanvas canvas{width:100%!important;height:100%!important}.noData{display:grid;place-items:center;min-height:190px;margin-top:10px;border:1px dashed #c98575;background:#fff7f3;color:#8a4034;text-align:center;font:700 14px/1.6 var(--sans)}.processingNote{margin:13px 0 0;padding-top:10px;border-top:1px solid #d2dad5;color:#52635c;font:11px/1.65 var(--sans)}
.expandClose{display:none}.viewerExpanded{overflow:hidden}.diViewer.isExpanded{position:fixed;inset:10px;z-index:1000;padding:18px 18px 48px;background:#fffef9;border-radius:8px;box-shadow:0 0 0 100vmax rgba(10,29,23,.82),0 24px 70px #07130fcc;overflow:auto}.diViewer.isExpanded .viewerHead{position:sticky;top:-18px;z-index:3;padding:12px 58px 12px 4px;background:#fffef9}.diViewer.isExpanded .diGrid{cursor:default;gap:14px}.diViewer.isExpanded .diGrid.layoutOne{width:max(1120px,100%);grid-template-columns:1fr}.diViewer.isExpanded .diGrid.layoutFew{width:max(1740px,100%);grid-template-columns:repeat(2,minmax(820px,1fr))}.diViewer.isExpanded .diGrid.layoutMedium,.diViewer.isExpanded .diGrid.layoutDense{width:max(2400px,100%);grid-template-columns:repeat(3,minmax(760px,1fr))}.diViewer.isExpanded .diCard{padding:11px}.diViewer.isExpanded .diCardHead h4{font-size:17px}.diViewer.isExpanded .diCardHead span{font-size:12px}.diViewer.isExpanded .diCanvas{height:450px}.diViewer.isExpanded .expandClose{display:block;position:fixed;top:22px;right:25px;z-index:1002;width:46px;height:42px;border:1px solid #85958d;background:#fff;color:var(--ink);font:28px/1 var(--sans)}.diViewer.isExpanded .expandClose:hover,.diViewer.isExpanded .expandClose:focus-visible{background:var(--deep);color:#fff;outline:2px solid var(--gold)}
.methodSection{margin-top:36px;padding:clamp(28px,3vw,48px);background:#e6eee8;border-top:4px solid var(--deep);scroll-margin-top:80px}.methodHeader{width:100%;max-width:none;margin:0 0 28px}.methodSection h2{margin:0;font-size:clamp(29px,3vw,42px);font-weight:500}.methodArticle{width:100%;max-width:none;margin:0;padding:clamp(22px,2vw,34px);background:#fffef9;border:1px solid #ccd6cf}.methodArticle h2{margin:38px 0 14px;padding-top:24px;border-top:1px solid #d8d1c3;font-size:clamp(25px,2.3vw,34px)}.methodArticle h2:first-child{margin-top:0;padding-top:0;border-top:0}.methodArticle p,.methodArticle li{color:#304b41;font:17px/2 var(--sans)}.methodArticle ul{padding-left:1.4em}.methodArticle .lead{font-size:21px}.methodArticle .contentNotice{margin:24px 0;padding:18px 20px;border-left:5px solid var(--gold);background:#fff8e5}.methodArticle .contentNotice strong{display:block;margin-bottom:6px;font:700 17px/1.5 var(--sans)}.methodArticle figure{margin:28px 0}.methodArticle img{display:block;max-width:100%;height:auto;margin:auto}.methodArticle figcaption{margin-top:8px;color:var(--muted);font:13px/1.7 var(--sans)}.methodArticle hr{margin:34px 0;border:0;border-top:1px solid #d7d0c2}.methodArticle a{color:var(--deep);font-weight:700}.siteFooter{text-align:center;padding:20px;color:#68766f;font:12px var(--sans)}
@media(max-width:1200px){.hero{grid-template-columns:1fr;grid-template-areas:"heading" "lead" "note" "points" "control"}.sciencePoints{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.sciencePoints li{grid-template-columns:1fr;border:0;border-right:1px solid var(--line)}.sciencePoints li:last-child{border-right:0}.sciencePoints small{justify-content:flex-start;text-align:left}.dateModeGrid{grid-template-columns:minmax(170px,.7fr) minmax(330px,1.3fr)}.diGrid.layoutDense{grid-template-columns:repeat(2,minmax(0,1fr))}.sectionHeading{display:block}.sectionHeading>p{margin-top:8px;text-align:left}}
@media(max-width:720px){body{font-size:17px}.siteHeader{padding:0 12px}.brand{gap:7px}.brandLeaf{width:27px}.brandText strong{font-size:23px;letter-spacing:.07em}.brandText small{font-size:7px;letter-spacing:.12em}.prototypeBadge{display:none}main{width:calc(100% - 24px);padding:0 0 36px}.breadcrumb{padding-left:12px}.hero{padding:34px 12px 30px;gap:27px}.hero h1{font-size:43px}.lead{font-size:18px}.scienceNote{font-size:14px}.sciencePoints{grid-template-columns:1fr}.sciencePoints li{border-right:0;border-bottom:1px solid var(--line);padding:12px}.sciencePoints li:last-child{border-bottom:0}.controlPanel,.viewerSection{padding:20px 12px}.sectionTitle>div{align-items:start}.sectionTitle h2{font-size:25px}.dateModeGrid{grid-template-columns:1fr}.rangeDateInputs{grid-template-columns:1fr}.rangeArrow{display:none}.rangeInfo{font-size:13px}.sectionHeading>div{align-items:start}.sectionHeading h2{font-size:25px}.bandGuide span{padding:4px 6px}.viewerHead{display:block}.viewerHead dl{margin-top:10px}.diGrid.layoutOne,.diGrid.layoutFew,.diGrid.layoutMedium,.diGrid.layoutDense{grid-template-columns:1fr}.diCanvas,.layoutOne .diCanvas,.layoutFew .diCanvas,.layoutDense .diCanvas{height:330px}.methodSection{padding:25px 12px}.methodArticle{padding:22px 16px}.methodArticle p,.methodArticle li{font-size:16px}.diViewer.isExpanded{inset:4px;padding:9px 9px 35px}.diViewer.isExpanded .viewerHead{top:-9px;padding-top:9px}.diViewer.isExpanded .diGrid.layoutOne{width:920px}.diViewer.isExpanded .diGrid.layoutFew{width:1680px;grid-template-columns:repeat(2,820px)}.diViewer.isExpanded .diGrid.layoutMedium,.diViewer.isExpanded .diGrid.layoutDense{width:2280px;grid-template-columns:repeat(3,740px)}.diViewer.isExpanded .expandClose{top:11px;right:13px;width:41px;height:38px}}

/* discomfort-editor-blocks-v28 */
.hero.hasTopBlocks{grid-template-areas:"heading heading" "top top" "control control"}
.topBlockArticle{grid-area:top}
.topBlockArticle.methodArticle{padding:0;background:transparent;border:0}
.topBlockArticle .contentNotice{margin:16px 0}
.topBlockArticle>:first-child{margin-top:0}
.topBlockArticle>:last-child{margin-bottom:0}
.methodArticle .contentNotice{border-left-color:var(--notice-border);background:var(--notice-bg)}
.methodArticle .contentNotice strong{color:var(--notice-label)}
@media(max-width:1200px){.hero.hasTopBlocks{grid-template-areas:"heading" "top" "control"}}

/* date-panel-v46: same functional colors as the top-page graph controls */
.controlPanel{
  padding:24px 28px 22px;
  background:#faf8f2;
  color:var(--ink);
  border:1px solid #d1c9b7;
  border-radius:8px;
  box-shadow:0 10px 28px #5a4d3514;
}
.methodSection{background:#faf8f2}
.methodSection .methodArticle{padding:0;background:transparent;border:0}
.sectionTitle{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #cdd7d1}
.sectionTitle h2{margin:0;font-size:24px;font-weight:600}
.dateModeGrid{grid-template-columns:minmax(280px,.8fr) minmax(560px,1.55fr);gap:24px;align-items:end}
.dateMode{display:grid;grid-template-rows:auto auto;gap:7px}
.dateModeLabel{display:block;color:var(--ink);font:600 16px/1.4 var(--sans)}
.singleDateControls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.dateMode input{
  width:100%;height:44px;min-width:0;padding:0 13px;
  border:1px solid #aebdb5;border-radius:4px;background:#fff;color:var(--ink);
  text-align:center;font:500 16px/1 var(--sans);letter-spacing:.08em;
}
.dateMode input::placeholder{color:#6e7b75;opacity:1}
.rangeDateInputs{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:8px;align-items:center}
.rangeArrow{align-self:center;padding:0;color:#53675e;font-weight:600}
.dateMode button{
  height:44px;min-width:126px;padding:0 18px;border:1px solid #799489;border-radius:4px;
  background:#edf1ed;color:var(--ink);font:600 16px var(--sans);
  transition:background .16s,border-color .16s,color .16s;
}
.dateMode button:hover,.dateMode button:focus-visible{background:#dde8e1;border-color:#5a7668;color:var(--ink);outline:2px solid #5a7668;outline-offset:2px}
.dateMode button.isSelected,.dateMode button[aria-pressed="true"]{background:#f0bd43;border-color:#dfa82c;color:#17382e;box-shadow:none}
.dateMode button:disabled{cursor:wait;opacity:.72}
.rangeInfo{margin-top:16px;padding-top:13px;border-top:1px solid #cdd7d1;color:#4f6259;font:600 16px/1.65 var(--sans)}
.rangeInfo p{display:flex;flex-wrap:nowrap;align-items:center;gap:4px 24px;margin:0;white-space:nowrap}
.rangeInfo .statusMessage{min-height:0;margin:0;color:#4f6259;font:600 16px/1.65 var(--sans)}.rangeInfo .statusMessage.isError{color:#7c3024}
.viewerSection{scroll-margin-top:82px}

@media(max-width:1100px){
  .dateModeGrid{grid-template-columns:1fr}
  .rangeInfo p{flex-wrap:wrap;white-space:normal}
}
@media(max-width:720px){
  .controlPanel{padding:20px 16px}
  .sectionTitle h2{font-size:22px}
  .singleDateControls{grid-template-columns:minmax(0,1fr) auto}
  .rangeDateInputs{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
  .rangeDateInputs button{grid-column:1/-1;width:100%}
  .rangeArrow{display:block}
  .rangeInfo{font-size:14px}
}
@media(max-width:430px){
  .singleDateControls,.rangeDateInputs{grid-template-columns:1fr}
  .singleDateControls button,.rangeDateInputs button{width:100%;grid-column:auto}
  .rangeArrow{text-align:center}
}

/* graph-layout-v50 */
.graphRedundantHeading,.bandGuideTop,.processingNote{display:none!important}
.viewerHead>div{display:block}.viewerHead>div>p{display:none}
.viewerHead{justify-content:space-between}
.viewerHead h3{font:600 clamp(22px,2vw,30px)/1.35 var(--sans)}
.viewerHead dl{font-size:14px}
.diCardHead{display:grid;grid-template-columns:minmax(150px,1fr) auto minmax(110px,1fr);gap:18px;align-items:center;margin-bottom:12px;padding:3px 4px}
.diCardHead h4{margin:0;font:600 16px/1.4 var(--sans)}
.seriesLegend{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 20px;font:600 18px/1.4 var(--sans)}
.diCardHead .seriesLegend span{display:flex;align-items:center;gap:8px;color:var(--ink);font:600 18px/1.4 var(--sans)}
.seriesLegend i{display:block;width:34px;height:4px}
.seriesLegend i.temperature{background:var(--red)}
.seriesLegend i.humidity{background:var(--blue)}
.seriesLegend i.di{background:var(--purple)}
.diCardHead .missingStatus{justify-self:end;color:#53655d;font:500 16px/1.4 var(--sans)}
.diCanvas{height:290px}.layoutOne .diCanvas{height:520px}.layoutFew .diCanvas{height:370px}.layoutDense .diCanvas{height:250px}
.bandGuideBottom{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:18px 0 0;padding-top:16px;border-top:1px solid #d2dad5;font:500 16px/1.4 var(--sans);color:#40544c}
.bandGuideBottom span{display:flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid #d3d8d4;background:#fff}
.bandGuideBottom i{display:block;width:28px;height:14px;flex:0 0 auto}
.diViewer.isExpanded .diCardHead h4,.diViewer.isExpanded .diCardHead .missingStatus{font-size:16px}.diViewer.isExpanded .seriesLegend{font-size:18px}
.diViewer.isExpanded .diCanvas{height:480px}
@media(max-width:900px){.diCardHead{grid-template-columns:1fr auto}.seriesLegend{grid-column:1/-1;grid-row:2;justify-content:flex-start}.diCardHead .missingStatus{grid-column:2;grid-row:1}}
@media(max-width:520px){.diCardHead{grid-template-columns:1fr}.diCardHead .missingStatus{grid-column:1;grid-row:2;justify-self:start}.seriesLegend{grid-column:1;grid-row:3}.bandGuideBottom{gap:7px}.bandGuideBottom span{padding:7px 9px}}

/* shared-series-legend-v56 */
.viewerHead{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;gap:0;align-items:center}
.viewerHead>.viewerSeriesLegend{display:flex;flex-direction:row;justify-content:center;justify-self:center;align-items:center;flex-wrap:nowrap;white-space:nowrap}
.viewerSeriesLegend span{display:flex;align-items:center;gap:8px;color:var(--ink);font:600 18px/1.4 var(--sans)}
.diCardHead{grid-template-columns:minmax(150px,1fr) auto;gap:18px;margin-bottom:8px}
.diCardHead .missingStatus{grid-column:2;grid-row:1;justify-self:end}
.diViewer.isExpanded .viewerHead{display:grid}
@media(max-width:1200px){
  .viewerHead{grid-template-columns:minmax(300px,1fr) auto;gap:12px;align-items:end}
  .viewerHead>.viewerSeriesLegend{grid-column:1/-1;grid-row:2;justify-content:flex-start;justify-self:start}
  .viewerHead dl{grid-column:2;grid-row:1}
}
@media(max-width:720px){
  .viewerHead{display:grid;grid-template-columns:1fr}
  .viewerHead>div:first-child,.viewerSeriesLegend,.viewerHead dl{grid-column:1;grid-row:auto}
  .viewerHead>.viewerSeriesLegend{justify-content:flex-start;flex-wrap:nowrap;margin-top:4px}
  .viewerHead dl{margin-top:2px}
  .diViewer.isExpanded .viewerHead{display:grid}
}

/* Outdoor Comfort core — mobile layout containment, 2026-09-06 */
@media(max-width:820px){
  html,body{
    max-width:100%;
    overflow-x:hidden;
  }
  main,
  main.pelPageSurface{
    width:calc(100% - 24px) !important;
    max-width:calc(100% - 24px) !important;
    overflow-x:hidden;
  }
  main *,
  .hero *,
  .viewerSection *,
  .methodSection *{
    min-width:0;
  }
  .hero,
  .dateModeGrid,
  .singleDateControls,
  .rangeDateInputs,
  .viewerHead,
  .diGrid.layoutOne,
  .diGrid.layoutFew,
  .diGrid.layoutMedium,
  .diGrid.layoutDense,
  .methodArticle .bandBlock{
    grid-template-columns:1fr !important;
    width:100%;
    max-width:100%;
  }
  .singleDateControls button,
  .rangeDateInputs button{
    width:100% !important;
  }
  .rangeArrow{
    display:none !important;
  }
  .viewerSection,
  .diViewer,
  .diCard,
  .methodSection,
  .methodArticle{
    width:100%;
    max-width:100%;
  }
  .diCanvas,
  .diCanvas canvas{
    max-width:100% !important;
  }
  .hero h1,
  .hero h2,
  .hero p,
  .methodArticle,
  .methodArticle p,
  .methodArticle li{
    overflow-wrap:anywhere;
  }
}


/* PlantEnvLab Work02 v10 — all-graphs mobile final pass, 2026-09-07.
   Mobile-only legend wrapping and graph containment. */
@media(max-width:820px){
  html,body{
    width:100%;
    max-width:100%;
    overflow-x:clip !important;
  }
  body{
    overscroll-behavior-x:none;
  }
  main.pelPageSurface{
    margin-left:auto !important;
    margin-right:auto !important;
    overflow-x:clip !important;
  }
  .viewerSection,
  .diViewer,
  .viewerHead,
  .viewerSeriesLegend,
  .diGrid,
  .diCard,
  .diCardHead,
  .seriesLegend,
  .diCanvas{
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  .viewerSection,
  .diViewer,
  .diGrid,
  .diCard,
  .diCanvas{
    overflow-x:clip !important;
  }
  .viewerHead>.viewerSeriesLegend{
    display:flex !important;
    flex-wrap:wrap !important;
    white-space:normal !important;
    justify-content:flex-start !important;
    justify-self:stretch !important;
    gap:7px 12px !important;
  }
  .viewerSeriesLegend span,
  .diCardHead .seriesLegend span{
    min-width:0 !important;
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    font-size:15px !important;
    line-height:1.35 !important;
  }
  .viewerSeriesLegend i,
  .seriesLegend i{
    flex:0 0 auto !important;
  }
  .viewerHead h3,
  .diCardHead h4,
  .diCardHead .missingStatus{
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }
  .viewerHead dl{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    width:100% !important;
    max-width:100% !important;
    gap:8px !important;
  }
  .viewerHead dl div{
    grid-template-columns:minmax(0,1fr) auto !important;
    min-width:0 !important;
  }
  .viewerHead dt,
  .viewerHead dd{
    min-width:0 !important;
    overflow-wrap:anywhere !important;
  }
  .diCardHead .seriesLegend{
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
    gap:7px 12px !important;
  }
  .diCanvas canvas{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
  }
}
@media(max-width:430px){
  .viewerHead dl{
    grid-template-columns:1fr !important;
  }
}

/* PlantEnvLab Work02 v19 — responsive expanded Outdoor Comfort charts, 2026-09-07.
   Remove legacy fixed 1120/1740/2400px enlargement geometry.
   Enlargement now uses the viewport width and vertical scrolling only. */
.diViewer.isExpanded{
  inset:10px !important;
  width:auto !important;
  max-width:none !important;
  padding:18px 18px 42px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
}

.diViewer.isExpanded .diGrid,
.diViewer.isExpanded .diGrid.layoutOne,
.diViewer.isExpanded .diGrid.layoutFew,
.diViewer.isExpanded .diGrid.layoutMedium,
.diViewer.isExpanded .diGrid.layoutDense{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

.diViewer.isExpanded .diGrid.layoutOne{
  grid-template-columns:minmax(0,1fr) !important;
}

.diViewer.isExpanded .diGrid.layoutFew{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

.diViewer.isExpanded .diGrid.layoutMedium,
.diViewer.isExpanded .diGrid.layoutDense{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.diViewer.isExpanded .diCard{
  min-width:0 !important;
  max-width:100% !important;
}

.diViewer.isExpanded .diCanvas{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:400px !important;
}

.diViewer.isExpanded .diGrid.layoutOne .diCanvas{
  height:min(62vh,600px) !important;
}

.diViewer.isExpanded .diCanvas canvas{
  width:100% !important;
  max-width:100% !important;
}

@media(max-width:1280px){
  .diViewer.isExpanded .diGrid.layoutMedium,
  .diViewer.isExpanded .diGrid.layoutDense{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:820px){
  .diViewer.isExpanded{
    inset:4px !important;
    padding:10px 10px 34px !important;
  }

  .diViewer.isExpanded .diGrid.layoutOne,
  .diViewer.isExpanded .diGrid.layoutFew,
  .diViewer.isExpanded .diGrid.layoutMedium,
  .diViewer.isExpanded .diGrid.layoutDense{
    grid-template-columns:minmax(0,1fr) !important;
  }

  .diViewer.isExpanded .diCanvas,
  .diViewer.isExpanded .diGrid.layoutOne .diCanvas{
    height:360px !important;
  }
}
