/* PHASE_IEC_PORTAL_UX_2026_09_22: scoped presentation, no tariff or program rules. */
.imm{max-width:960px;font-family:Arial,Helvetica,sans-serif;font-size:18px;--muted:#555b60;--ink:#202528;--soft:#fff5f3}
.imm :where(p,label,button,input,select,textarea,span,h1,h2,h3){font-family:Arial,Helvetica,sans-serif;letter-spacing:0}
.imm [hidden]{display:none!important}
.imm a:focus-visible,.imm button:focus-visible,.imm [role=button]:focus-visible{outline:3px solid #187694;outline-offset:4px}
.imm :where(.q,.step,#result,#result-tools,#documents,#about-checker,#immForm){scroll-margin-top:100px}
.imm .imm-hero{border:0;border-radius:0;padding:12px 0 28px;box-shadow:none;margin-bottom:0;background:#fff}
.imm .imm-hero::before,.imm .imm-hero::after{display:none}
.imm .imm-hero .kicker{font-size:14px;letter-spacing:0;margin-bottom:18px;color:#9f281c}
.imm .imm-hero .coverage-banner{grid-template-columns:76px minmax(0,1fr);gap:20px;border:0;background:none;border-radius:0;padding:0;box-shadow:none;margin-bottom:16px}
.imm .imm-hero .coverage-number{width:76px;height:76px;border-radius:8px;font-size:38px;box-shadow:none;background:#bd2319}
.imm .imm-hero .coverage-banner h1{font-size:36px;line-height:1.15;max-width:30ch}
.imm .imm-hero .coverage-banner p{display:none}
.imm .imm-hero .lead{font-size:18px;line-height:1.55;max-width:60ch;color:#41494e}
.imm .intro-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:20px}
.imm .intro-actions>a:not(.btn){font-size:16px;color:#475058;text-decoration:underline}
.imm .btn{font:700 17px/1.4 Arial,Helvetica,sans-serif;border-radius:6px;padding:13px 22px;min-height:48px;white-space:normal}
.imm .btn i{margin-left:8px;font-size:15px}
.imm .btn:disabled{opacity:.65;cursor:wait}
.imm .portal-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border:0;border-radius:8px;padding:6px;background:#eef1f2;margin:0 0 32px}
.imm .portal-link{display:flex;align-items:center;justify-content:center;min-width:0;min-height:52px;padding:12px;text-decoration:none;text-align:center;color:#4b565d;border:0;border-radius:5px}
.imm .portal-link strong{font-size:17px;line-height:1.3;color:inherit}
.imm .portal-link span{display:none}
.imm .portal-link.active{background:#fff;color:#202528;box-shadow:0 1px 3px #20252820}
.imm .portal-link:hover{background:#e1e7e9}
.imm .portal-link.active:hover{background:#fff}
.imm .save-row{padding:0 0 14px;border:0;border-radius:0;background:none;font-size:14px;margin-bottom:16px}
.imm .stepnum{display:block;color:#55616a;font-size:15px;font-weight:600;line-height:1.4;margin:0 0 8px;letter-spacing:0;text-transform:none}
.imm .coverage-catalog{width:100%;table-layout:fixed}
.imm .coverage-catalog caption{text-align:left;font-size:20px;font-weight:700;color:#202528;padding:8px 0 16px}
.imm .coverage-catalog th:first-child{width:66%}
.imm .coverage-catalog td,.imm .coverage-catalog th{overflow-wrap:break-word}
.imm h2{font-size:28px;margin-bottom:24px}
.imm .q{padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid #e8ecee}
.imm .q>.qt,.imm .q>label{font-size:19px;line-height:1.4;margin-bottom:12px}
.imm .hint{font-size:16px;line-height:1.5;max-width:60ch}
.imm .hint a{color:#08667c;text-decoration:underline;font-weight:600}
.imm .tile{display:flex;min-width:0;margin:0}
.imm .tile span{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;font-size:16px;font-weight:600;line-height:1.4;padding:12px;border-radius:6px;min-height:52px;overflow-wrap:break-word}
.imm .tile input:checked+span{font-weight:600}
.imm .tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.imm .tiles,.imm .yn{grid-auto-rows:1fr;align-items:stretch}
.imm .tiles.wide .tile span{justify-content:flex-start}
.imm input[type=number]{font:400 19px/1.4 Arial,Helvetica,sans-serif;border-radius:6px;padding:12px 14px}
.imm .nav{justify-content:space-between;gap:14px;padding-top:8px}
.imm .nav #nextBtn{margin-left:auto}
.imm .nav+.save-row{margin-top:22px;padding-top:16px;border-top:1px solid #e8ecee}
.imm .scope{font-size:15px;line-height:1.55;border-left:3px solid #ba8b22;padding:12px 16px}
.imm .summary{font-size:18px;line-height:1.6;max-width:64ch;margin-bottom:18px}
.imm .result-actions{margin:16px 0;align-items:stretch}
.imm .result-actions .btn{display:flex;align-items:center;justify-content:center}
.imm .result-actions a:not(.btn),.imm .result-actions #pdfStatus{align-self:center}
.imm .result-actions .btn{font-size:16px;padding:11px 17px}
.imm .result-actions a{font-size:16px;color:#08667c;font-weight:600;text-decoration:underline}
.imm .result-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border-block:1px solid #d9dfe2;margin:20px 0;padding:18px 0}
.imm .result-counts div{min-width:0;display:flex;flex-direction:column}
.imm .result-counts dt{font-size:14px;color:#58636b;font-weight:400;order:1}
.imm .result-counts dd{font-size:28px;line-height:1.25;font-weight:700;margin:0 0 5px;color:#26333b;order:0}
.imm .result-counts .meets dd{color:#286444}
.imm .result-counts .confirm dd{color:#815a09}
.imm .result-filter{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:20px 0 12px}
.imm .result-filter label{display:block;font-size:14px;font-weight:700;margin:0 0 7px}
.imm .result-filter input,.imm .result-filter select{width:100%;min-width:0;min-height:46px;border:1px solid #8c989f;border-radius:6px;background:#fff;padding:10px;font:400 16px/1.4 Arial,Helvetica,sans-serif;color:#202528}
.imm .filter-status{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:18px;font-size:14px;color:#55616a}
.imm .filter-status p{margin:0;font-size:14px}
.imm .filter-empty{padding:24px 0;margin:0;color:#55616a}
.imm .prog,.imm .pgrp{border-radius:8px}
.imm .prog-head h3{font-size:18px;min-width:0;overflow-wrap:break-word}
.imm .prog-head small{font-size:15px;line-height:1.4}
.imm .pgrp-head h3{font-size:21px;min-width:0}
.imm .pgrp-head .gsum{white-space:normal;font-size:14px;max-width:30ch}
.imm .prog-head{flex-wrap:wrap;gap:12px}
.imm .prog-head h3{flex-basis:100%}
.imm .pill{white-space:normal;font-size:14px;padding:5px 10px}
.imm .crit{padding:6px 16px 10px}
.imm .crit b{font-size:17px}
.imm .crit .rule,.imm .crit .you{font-size:16px;line-height:1.55}
.imm .docs,.imm .result-tools,.imm .trust{border:0;border-top:1px solid #d9dfe2;border-radius:0;padding:24px 0;background:#fff;margin-top:28px}
.imm .docs h3,.imm .result-tools h3,.imm .trust h3{font-size:23px}
.imm .docs p,.imm .docs li,.imm .trust p{font-size:17px;line-height:1.6;max-width:62ch}
.imm .assistant{border:0;padding-top:12px}
.imm .assistant textarea,.imm .assistant-answer{font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;font-weight:400;border-radius:6px}
.imm .trust-grid span{font-size:16px}
.imm .acc{border-radius:8px}
.imm .acc .acc-body p{font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65;max-width:60ch}
.imm .foot{font-size:15px;max-width:68ch}
.imm details.scope summary{cursor:pointer;font-size:15px;font-weight:600}
.imm details.scope p{font-size:15px;line-height:1.6;margin:12px 0 0}
@media(max-width:767px){
  .imm{padding:18px 16px 48px}
  .imm .imm-hero{padding-top:0;padding-bottom:22px}
  .imm .imm-hero .kicker{font-size:12px;margin-bottom:12px}
  .imm .imm-hero .coverage-banner{grid-template-columns:54px minmax(0,1fr);gap:12px}
  .imm .imm-hero .coverage-number{width:54px;height:54px;font-size:28px}
  .imm .imm-hero .coverage-banner h1{font-size:26px;line-height:1.2}
  .imm .imm-hero .lead{font-size:16px}
  .imm .intro-actions{gap:12px;margin-top:16px}
  .imm .intro-actions .btn{width:auto;flex:0 0 auto;font-size:16px;padding:12px 14px}
  .imm .intro-actions>a:not(.btn){font-size:14px}
  .imm .portal-link{padding:10px 5px}
  .imm .portal-link strong{font-size:14px}
  .imm .save-row{gap:4px}
  .imm .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .imm .tiles.wide{grid-template-columns:1fr}
  .imm .q>.qt,.imm .q>label{font-size:18px}
  .imm .nav{flex-wrap:nowrap}
  .imm .nav .btn{width:auto;flex:1;min-width:0}
  .imm .result-actions{display:flex;flex-wrap:wrap;gap:12px}
  .imm .result-actions .btn{width:auto;flex:1}
  .imm .result-actions a{font-size:15px}
  .imm .result-filter{grid-template-columns:1fr 1fr}
  .imm .result-filter>div:first-child{grid-column:1/-1}
  .imm .result-counts{gap:12px}
  .imm .result-counts dt{font-size:12px}
  .imm .result-counts dd{font-size:25px}
  .imm .pgrp-head h3{font-size:19px}
  .imm .pgrp-head .gsum{font-size:14px;max-width:none}
}
@media(max-width:359px){.imm .imm-hero .coverage-banner{grid-template-columns:1fr}.imm .imm-hero .coverage-number{display:none}}
@media(prefers-reduced-motion:reduce){.imm *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
