/* Spec sheets (tools/spec-pages.js). The datasheet follows the InAir Spec Library layout and is scoped to .ds-sheet,not .ia-theme,so the PDF export (which copies the sheet out of the page) keeps it. Colours and type come from the theme's variables on :root. */

/* ---------- datasheet ---------- */
.ds-sheet{--ds-ink:#242424;--ds-muted:rgba(36,36,36,.66);--ds-dim:rgba(36,36,36,.5);--ds-bg2:#F4F7F8;--ds-bg3:#EBF0F2;--ds-line:rgba(0,0,0,.1);
  max-width:900px;margin:0 auto;background:#fff;color:var(--ds-ink);border:1px solid var(--border);border-radius:4px;box-shadow:0 18px 50px rgba(6,36,66,.08);
  font-family:var(--ffi);font-size:13px;line-height:1.45;overflow:hidden}
.ds-sheet img{max-width:100%;height:auto}
.ds-sheet .ds{width:100%;padding:30px 32px 26px;position:relative}
.ds-sheet .ds-hd{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}
.ds-sheet .ds-logo,.ds-sheet .ds-energy{flex-shrink:0}           /* keep the logo and diagram in proportion */
.ds-sheet .ds-cat{display:flex;align-items:center;gap:8px;font-family:var(--ffm);font-size:max(var(--fs-min,0px),10px);letter-spacing:.16em;text-transform:uppercase;color:var(--blue);padding-top:4px}
.ds-sheet .ds-cat::before{content:'';width:3px;height:13px;background:var(--blue-bright);display:inline-block;flex-shrink:0}
.ds-sheet .ds-logo img{height:30px;width:auto}
.ds-sheet .ds-title-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-bottom:8px}
.ds-sheet .ds-ptitle{font-family:var(--ff);font-weight:800;font-size:27px;letter-spacing:-.03em;line-height:1.04}
.ds-sheet .ds-psub{font-family:var(--ffm);font-size:max(var(--fs-min,0px),10.5px);color:var(--ds-muted);margin-top:6px}
.ds-sheet .ds-new{background:#6FA86A;color:#fff;font-family:var(--ff);font-weight:600;font-size:15px;padding:11px 22px;display:block;border-radius:1px}
.ds-sheet .ds-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:8px}
.ds-sheet .ds-spec{width:100%;border-collapse:collapse}
.ds-sheet .ds-spec tr{border-bottom:1px solid var(--ds-line)}
.ds-sheet .ds-spec tr:first-child{border-top:1px solid var(--ds-line)}
.ds-sheet .ds-spec td{padding:4.5px 2px;font-size:11.5px;vertical-align:top;line-height:1.3}
.ds-sheet .ds-spec td.k small{display:block;color:var(--ds-muted);font-size:max(var(--fs-min,0px),10.5px)}
.ds-sheet .ds-spec td.v{text-align:right;font-family:var(--ffm);font-weight:500;padding-left:10px}
.ds-sheet .ds-photo{background:var(--ds-bg3);border-radius:2px;padding:14px;display:flex;align-items:center;justify-content:center;min-height:170px}
.ds-sheet .ds-photo img{mix-blend-mode:multiply}
/* the RHP photo is a full scene, not a cut-out on white: it fills its box instead of floating in it */
.ds-sheet .ds-photo:has(img[src*="rimg-rhp-photo"]){padding:0;overflow:hidden}
.ds-sheet .ds-photo img[src*="rimg-rhp-photo"],
.ds-sheet:not(.ds-pdf) .ds-main .ds-photo img[src*="rimg-rhp-photo"]{width:100%;height:100%;object-fit:cover;mix-blend-mode:normal}
.ds-sheet .ds-rl{display:flex;gap:13px;margin-top:13px;align-items:flex-start}
.ds-sheet .ds-energy img{width:135px;border:1px solid var(--ds-line);border-radius:2px}
.ds-sheet .ds-note{font-size:max(var(--fs-min,0px),10.5px);color:var(--ds-muted);line-height:1.55;flex:1}
.ds-sheet .ds-note strong{color:var(--ds-ink)}
.ds-sheet .ds-sec{font-family:var(--ff);font-weight:700;font-size:14px;letter-spacing:-.02em;margin:0 0 3px}
.ds-sheet .ds-cap{font-size:max(var(--fs-min,0px),9.5px);color:var(--ds-muted);margin-bottom:8px}
.ds-sheet .ds-lower{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;margin-top:18px}
.ds-sheet .ds-perf img{width:96%}
.ds-sheet .ds-dims,.ds-sheet .ds-block{margin-top:16px}
.ds-sheet .ds-dimimg{width:100%;max-width:600px;display:block}
.ds-sheet .te{width:100%;border-collapse:collapse;margin-top:2px}
.ds-sheet .te th{font-family:var(--ff);font-weight:700;font-size:max(var(--fs-min,0px),10px);text-align:center;padding:3px}
.ds-sheet .te th.s{border-bottom:1px solid var(--ds-line);padding-bottom:2px}
.ds-sheet .te td{font-family:var(--ffm);font-size:max(var(--fs-min,0px),9px);text-align:center;padding:4px 2px;border-bottom:1px solid var(--ds-line)}
.ds-sheet .te td.l{text-align:left;font-family:var(--ffi);font-size:max(var(--fs-min,0px),10px);white-space:nowrap}
.ds-sheet .te-note{font-size:max(var(--fs-min,0px),9px);color:var(--ds-muted);margin-top:6px;line-height:1.5}
.ds-sheet .ds-tblwrap{overflow-x:auto;margin-top:6px}
.ds-sheet .ds-dimtbl{width:100%;border-collapse:collapse}
.ds-sheet .ds-dimtbl th,.ds-sheet .ds-dimtbl td{font-family:var(--ffm);font-size:max(var(--fs-min,0px),9px);text-align:center;padding:3px 2px;border:1px solid var(--ds-line)}
.ds-sheet .ds-dimtbl th{background:var(--ds-bg3);font-weight:700}
.ds-sheet .ds-dims-cap{font-family:var(--ffm);font-size:max(var(--fs-min,0px),8.5px);color:var(--ds-dim);letter-spacing:.06em;margin-top:6px}
.ds-sheet .ds-page2{border-top:8px solid var(--ds-bg2)}
.ds-sheet .ds-fullimg{width:100%;display:block;margin:8px 0}
.ds-sheet .ds-dimwrap{background:#fff;border:1px solid var(--ds-line);border-radius:6px;padding:18px;margin-top:6px}
.ds-sheet .page-break{break-before:page;page-break-before:always}
.ds-sheet .ds-foot{margin-top:22px;padding-top:8px;border-top:1px solid var(--ds-line);font-size:max(var(--fs-min,0px),8.5px);color:var(--ds-dim);line-height:1.6;display:flex;justify-content:space-between;gap:20px}
.ds-sheet .ds-foot strong{color:var(--ds-ink)}
.ds-sheet .ds-foot .c{font-family:var(--ffm);color:var(--ds-muted);white-space:nowrap;text-align:right}
/* Screen only (the PDF and print keep the library layout): each two-column row of the sheet is as
   tall as its text column, and the picture beside it scales to fit, instead of the taller picture
   leaving an empty block under the spec table or the temperature table. */
@media screen and (min-width:701px){
  .ds-sheet:not(.ds-pdf) .ds-main > :last-child,.ds-sheet:not(.ds-pdf) .ds-lower > .ds-perf{contain:size;display:flex;flex-direction:column}
  .ds-sheet:not(.ds-pdf) .ds-main > :last-child{min-height:290px}
  .ds-sheet:not(.ds-pdf) .ds-main .ds-photo{flex:1 1 0;min-height:0}
  .ds-sheet:not(.ds-pdf) .ds-main .ds-photo img{width:100%;height:100%;object-fit:contain}
  .ds-sheet:not(.ds-pdf) .ds-main .ds-rl{flex-shrink:0}
  .ds-sheet:not(.ds-pdf) .ds-lower > .ds-perf{min-height:230px}
  .ds-sheet:not(.ds-pdf) .ds-perf > img,.ds-sheet:not(.ds-pdf) .ds-perf > svg{flex:1 1 0;min-height:0;width:100%;height:100%;object-fit:contain;object-position:left center}
}
/* PDF export renders at A4 width (794px at 96dpi) whatever the screen */
.ds-sheet.ds-pdf{--fs-min:0px;width:794px;max-width:none;border:0;border-radius:0;box-shadow:none}
.ds-sheet.ds-pdf .ds-page2{border-top:0}
/* the theme script wraps every table in a 560px-minimum scroll box; datasheet tables fit their column */
.ia-theme .ds-sheet .tbl-scroll{overflow:visible;border:0;border-radius:0}
.ia-theme .ds-sheet .tbl-scroll table{min-width:0}
@media(max-width:700px){
  .ds-sheet:not(.ds-pdf) .ds{padding:22px 18px}
  .ds-sheet:not(.ds-pdf) .ds-title-row,.ds-sheet:not(.ds-pdf) .ds-main,.ds-sheet:not(.ds-pdf) .ds-lower{grid-template-columns:minmax(0,1fr)}
  .ds-sheet:not(.ds-pdf) .ds-title-row{gap:10px}
  .ds-sheet:not(.ds-pdf) .ds-new{display:inline-block}
  .ds-sheet:not(.ds-pdf) .ds-rl{flex-direction:column}
  .ds-sheet:not(.ds-pdf) .ds-foot{flex-direction:column;gap:8px}
  .ds-sheet:not(.ds-pdf) .ds-foot .c{text-align:left}
  .ds-sheet:not(.ds-pdf) .te{display:block;overflow-x:auto}
}
@media print{
  body *{visibility:hidden}
  #sheet,#sheet *{visibility:visible}
  #sheet{position:absolute;left:0;top:0;width:100%;max-width:none;border:0;box-shadow:none}
  .ds-sheet .ds{padding:9mm 8mm}
  .ds-sheet .ds-page2{border-top:0}
}

/* ---------- page parts: the library's flow (home ->family ->model) ---------- */ .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ia-theme [hidden]{display:none!important}.ia-theme .spec-hero{padding:var(--sp-hero-t) 0 var(--sp-sec);background:var(--black)}.ia-theme .spec-hero-home{padding-bottom:var(--sp-hero-b);background:var(--near-black);border-bottom:1px solid var(--border)}.ia-theme .spec-hero-home .h1{font-size:clamp(34px,4.6vw,60px);margin-bottom:16px}.ia-theme .spec-lead{max-width:600px;margin-bottom:4px}.ia-theme .spec-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,460px);gap:48px;align-items:center}.ia-theme .spec-hero-grid .h1 .blue{white-space:nowrap}/* "One tap away." stays one line beside the picture */ .ia-theme .hero-img-frame.spec-hero-art{max-width:none;padding:0;aspect-ratio:auto;overflow:visible;background:none!important;border:0;border-radius:0;box-shadow:none}.ia-theme .spec-hero-art::before{display:none}.ia-theme .spec-hero-art img{width:100%;height:auto;max-height:none;object-fit:contain}@media(max-width:991.98px){.ia-theme .spec-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,38%);gap:24px}}@media(max-width:575.98px){.ia-theme .spec-hero-grid{grid-template-columns:minmax(0,1fr);position:relative}.ia-theme .spec-hero-grid>div:first-child{position:relative;z-index:1}.ia-theme .hero-img-frame.spec-hero-art{position:absolute;top:0;right:-12px;width:52%;opacity:.3;pointer-events:none;z-index:0}}.ia-theme .spec-pick{background:var(--black);padding-top:var(--sp-band)}.ia-theme .spec-stats{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 26px}.ia-theme .spec-stats>div{background:var(--paper);border:1px solid var(--border);border-radius:4px;padding:12px 16px;min-width:140px}.ia-theme .spec-stats strong{display:block;font-family:var(--ff);font-size:24px;font-weight:800;color:var(--blue);letter-spacing:-.02em;line-height:1.1}.ia-theme .spec-stats strong em{font-style:normal;font-size:13px;font-weight:600;margin-left:3px}.ia-theme .spec-stats small{font-family:var(--ffm);font-size:max(var(--fs-min,0px),10px);letter-spacing:.06em;text-transform:uppercase;color:rgba(var(--ink-rgb),.74)}.ia-theme .spec-actions{display:flex;flex-wrap:wrap;gap:10px}.ia-theme .spec-actions .btn{padding:13px 24px;cursor:pointer}.ia-theme .spec-actions .btn[disabled]{opacity:.6;cursor:progress}.ia-theme .home-sec{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;margin-bottom:20px}.ia-theme .home-sec .h3{margin:0}.ia-theme .home-sec .hint{font-family:var(--ffm);font-size:max(var(--fs-min,0px),10px);letter-spacing:.08em;text-transform:uppercase;color:rgba(var(--ink-rgb),.6)}.ia-theme .fam-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ia-theme .fam-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--border);border-radius:6px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}.ia-theme .fam-card:hover{transform:translateY(-4px);border-color:rgba(var(--acc-rgb),.4);box-shadow:0 14px 34px rgba(0,0,0,.08)}.ia-theme .fam-img{aspect-ratio:16/10;background:#fff;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border)}.ia-theme .fam-img img{width:100%;height:100%;object-fit:contain;padding:18px}.ia-theme .fam-body{display:flex;flex-direction:column;gap:6px;padding:20px 22px 22px;flex:1}.ia-theme .fam-tag,.ia-theme .fh-tag{font-family:var(--ffm);font-size:max(var(--fs-min,0px),9.5px);letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}.ia-theme .fam-name{font-family:var(--ff);font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.1;margin:0;color:var(--white)}.ia-theme .fam-range{font-family:var(--ffm);font-size:12px;color:rgba(var(--ink-rgb),.74)}.ia-theme .fam-desc{font-size:14px;color:rgba(var(--ink-rgb),.82);margin-bottom:10px}.ia-theme .fam-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid var(--border)}.ia-theme .fam-count{font-family:var(--ffm);font-size:max(var(--fs-min,0px),10px);letter-spacing:.08em;text-transform:uppercase;color:rgba(var(--ink-rgb),.6)}.ia-theme .fam-go{font-family:var(--ff);font-size:14px;font-weight:700;color:var(--blue)}.ia-theme .fam-head{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:28px;align-items:center;background:var(--paper);border:1px solid var(--border);border-radius:6px;padding:22px;margin-bottom:24px}.ia-theme .fh-img{background:#fff;border-radius:4px;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}.ia-theme .fh-img img{width:100%;height:100%;object-fit:contain;padding:10px}.ia-theme .fam-img:has(img[src*="art-revita"]),.ia-theme .fh-img:has(img[src*="art-revita"]){background:#edf1f4}.ia-theme .fam-img img[src*="art-revita"],.ia-theme .fh-img img[src*="art-revita"]{padding:0}.ia-theme .fam-img:has(img[src*="art-rhp"]),.ia-theme .fh-img:has(img[src*="art-rhp"]){overflow:hidden}.ia-theme .fam-img img[src*="art-rhp"],.ia-theme .fh-img img[src*="art-rhp"]{padding:0;object-fit:cover}.ia-theme .fam-head .h1{font-size:clamp(32px,3.6vw,48px);margin:6px 0 10px}.ia-theme .fam-head .body{max-width:68ch;margin:0}.ia-theme .mdl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.ia-theme .mdl-card{display:flex;flex-direction:column;gap:4px;background:var(--paper);border:1px solid var(--border);border-radius:6px;padding:20px;transition:border-color .3s,box-shadow .3s}.ia-theme .mdl-card:hover{border-color:rgba(var(--acc-rgb),.4);box-shadow:0 10px 26px rgba(0,0,0,.06)}.ia-theme .mdl-code{font-family:var(--ff);font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--white)}.ia-theme .mdl-flow{font-family:var(--ffm);font-size:12px;color:var(--blue)}.ia-theme .mdl-best{font-size:12.5px;color:rgba(var(--ink-rgb),.74);margin:4px 0 6px}.ia-theme .mdl-specs{display:flex;flex-wrap:wrap;gap:6px 18px;padding:12px 0;margin-bottom:6px;border-top:1px solid var(--border)}.ia-theme .mdl-specs b{display:block;font-family:var(--ff);font-size:15px;font-weight:800;color:var(--white)}.ia-theme .mdl-specs span{font-family:var(--ffm);font-size:max(var(--fs-min,0px),9.5px);letter-spacing:.08em;text-transform:uppercase;color:rgba(var(--ink-rgb),.6)}.ia-theme .mdl-open{margin-top:auto;width:100%;justify-content:center;text-align:center;padding:12px 18px}.ia-theme .detail-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin-bottom:24px}.ia-theme .detail-code{font-size:clamp(30px,3.4vw,44px);margin:0 0 6px}.ia-theme .detail-sub{font-family:var(--ffm);font-size:13px;color:rgba(var(--ink-rgb),.74)}@media(max-width:900px){.ia-theme .fam-grid{grid-template-columns:minmax(0,1fr)}.ia-theme .fam-head{grid-template-columns:minmax(0,1fr);gap:16px}.ia-theme .fh-img{max-width:320px}}.ia-theme .spec-search{max-width:640px;margin-bottom:22px}.ia-theme .spec-search input{display:block;width:100%;margin-top:8px;padding:14px 16px;border:1px solid var(--border-md);border-radius:4px;background:var(--paper);font:inherit;font-size:15px;color:var(--white)}.ia-theme .spec-search input:focus{outline:2px solid var(--blue-bright);outline-offset:1px}.ia-theme .spec-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}.ia-theme .spec-chips button{background:rgba(var(--acc-rgb),.1);border:1px solid var(--blue-border);border-radius:2px;padding:6px 12px;font-family:var(--ffm);font-size:max(var(--fs-min,0px),10px);letter-spacing:.06em;text-transform:uppercase;color:var(--blue);cursor:pointer}.ia-theme .spec-chips button:hover{background:rgba(var(--acc-rgb),.2)}
