/* Lab report reader and medical terms. base.css loads first. */

/* ------------------------------------------------------------ shared */
.bp-rr-priv{display:inline-flex;gap:10px;align-items:flex-start;margin-top:20px!important;padding:10px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:16px;line-height:1.45}
.bp-rr-priv .bp-ico{color:var(--ok)}
.bp-rr-note,.bp-gl-note{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.5;color:var(--ink2)}
.bp-rr-note .bp-ico,.bp-gl-note .bp-ico{margin-top:2px}
.bp-rr-hint{margin-top:6px!important;font-size:15px;line-height:1.45;color:var(--ink2)}
.bp .bp-rr-emg{color:var(--pulse);font-weight:700;white-space:nowrap}

/* ------------------------------------------------------------ reader layout */
.bp-rr{--rr-cols:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px 48px;align-items:start}
.bp-rr-form{display:grid;gap:24px;min-width:0}
.bp-rr-who{display:flex;flex-wrap:wrap;gap:16px 40px;align-items:flex-start}
.bp .bp-rr-sex legend{display:block;margin-bottom:8px;padding:0;font-weight:700;font-size:15px}
.bp-rr-seg{display:inline-flex;border:1.5px solid #C5C8E2;border-radius:12px;background:#fff;overflow:hidden}
.bp-rr-seg label{position:relative;display:flex}
.bp-rr-seg label+label{border-left:1.5px solid #C5C8E2}
.bp-rr-seg input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.bp-rr-seg span{display:flex;align-items:center;justify-content:center;min-width:104px;min-height:48px;padding:0 18px;font-weight:700;font-size:16px}
.bp-rr-seg label:hover span{background:var(--mist)}
.bp .bp-rr-seg input:checked+span{background:var(--seal);color:#fff}
.bp-rr-seg input:focus-visible+span{outline:3px solid #E7A600;outline-offset:-3px;border-radius:9px}
.bp-rr-age{width:200px}
.bp-rr .bp-input{height:48px;padding:0 6px 0 14px}
.bp .bp-rr .bp-input :focus-visible{outline:0}
.bp-rr .bp-input:has(:focus-visible){outline:3px solid #E7A600;outline-offset:2px}
.bp-rr-unit{flex:none;padding-right:8px;font-size:15px;color:var(--ink2);white-space:nowrap}
.bp-rr-intro{max-width:64ch;font-size:16px;line-height:1.55;color:var(--ink2)}

/* panels */
.bp-rr-panels{display:grid;gap:12px}
.bp-rr-panel{border:1px solid var(--line);border-radius:16px;background:#fff}
.bp-rr-panel[open]{border-color:#C5C8E2}
.bp-rr-panel>summary{display:flex;align-items:center;gap:8px 16px;min-height:64px;padding:10px 20px;list-style:none;cursor:pointer;border-radius:16px}
.bp-rr-panel>summary::-webkit-details-marker{display:none}
.bp-rr-panel>summary:hover{background:var(--mist)}
.bp-rr-panel[open]>summary{border-radius:16px 16px 0 0}
.bp-rr-ptitle{flex:1;font-weight:700;font-size:18px;line-height:1.3}
.bp-rr-pcount{font-size:15px;line-height:1.3;color:var(--ink2);text-align:right}
.bp-rr-pcount.has-out{color:#8E141B;font-weight:700}
.bp-rr-panel[open] .bp-caret{transform:rotate(180deg)}
.bp-rr-body{padding:0 20px 8px}
.bp-rr-cols,.bp-rr-row{display:grid;grid-template-columns:var(--rr-cols);gap:8px 16px}
.bp-rr-cols{padding:10px 0;border-top:1px solid var(--line);font-size:14px;font-weight:700;color:var(--ink2)}
.bp-rr-row{padding:16px 0;border-top:1px solid var(--line);align-items:start}
.bp .bp-rr-name label{display:block;margin:0;font-weight:700;font-size:17px;line-height:1.35}
.bp-rr-aka{display:block;margin-top:2px;font-size:14px;line-height:1.4;color:var(--ink2)}
.bp-rr-usual{margin-top:6px!important;font-size:14px;line-height:1.4;color:var(--ink)}
.bp-rr-name .bp-rr-hint{font-size:14px;line-height:1.4}
.bp-rr-val,.bp-rr-lab{min-width:0}
.bp-rr-in input{font-size:17px}
.bp-rr-unit--sel{position:relative;display:flex;align-self:stretch;margin-right:-6px;padding:0;border-left:1px solid var(--line)}
.bp .bp-rr-unit--sel select{width:auto;height:auto;min-height:44px;padding:0 32px 0 12px;border-radius:0 10px 10px 0;font-size:15px;color:var(--ink)}
.bp-rr-unit--sel select:hover,.bp-rr-unit--sel select:focus-visible{background:var(--mist)}
.bp .bp-rr-unit--sel .bp-ico{position:absolute;top:50%;right:10px;margin-top:-8px;pointer-events:none}
.bp-rr-chip{display:inline-flex;margin-top:8px;padding:4px 12px;border-radius:999px;font-size:14px;font-weight:700;line-height:1.35}
.bp-rr-conv{margin-top:6px!important;font-size:14px;line-height:1.4;color:var(--ink2)}
.bp-rr-labcap{display:none;margin-bottom:6px;font-size:14px;font-weight:700;color:var(--ink2)}
.bp-rr-pair{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--ink2)}
.bp .bp-rr-lr{flex:1 1 0;width:100%;min-width:0;height:48px;padding:0 10px;border:1.5px solid #C5C8E2;border-radius:12px;background:#fff;font:inherit;font-size:16px;color:var(--ink)}
.bp-rr-lr:focus{border-color:var(--seal)}
.bp-rr-lr::placeholder{color:#6B6F92}
.bp-rr-jump{padding:12px 0 8px;border-top:1px solid var(--line)}
.bp-rr-acts{display:flex;flex-wrap:wrap;gap:12px}

/* states: chips, tags, result items */
.is-ok.bp-rr-chip,.is-ok.bp-rr-tag{background:#E5F3EC;color:var(--ok)}
.is-watch.bp-rr-chip,.is-watch.bp-rr-tag{background:#FFF4DB;color:#8A5A00}
.is-flag.bp-rr-chip,.is-flag.bp-rr-tag{background:#FDECEC;color:#8E141B}
.is-urgent.bp-rr-chip,.is-urgent.bp-rr-tag{background:var(--pulse);color:#fff}
.is-check.bp-rr-chip,.is-check.bp-rr-tag,.is-bad.bp-rr-chip,.is-bad.bp-rr-tag{background:var(--mist2);color:var(--ink)}

/* result panel: the page's one raised object */
.bp-rr-out{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto;padding:32px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 30px 60px -38px rgba(28,31,74,.45)}
.bp .bp-rr-out h2{font-size:clamp(26px,2.4vw,32px);line-height:1.15}
.bp-rr-sumrow{display:flex;gap:14px;align-items:center;margin-top:14px}
.bp-rr-sumico{width:52px;height:52px;padding:13px;border-radius:50%;background:var(--mist);color:var(--seal)}
.bp-rr-out:not(.is-empty) .bp-rr-sumico{display:none}
.bp-rr-sum{font-size:17px;line-height:1.5;color:var(--ink2)}
.bp-rr-out:not(.is-empty) .bp-rr-sum{font-size:19px;font-weight:700;color:var(--ink)}
.bp-rr-alerts{display:grid;gap:10px;margin-top:16px}
.bp-rr-alert{padding:12px 16px;border-radius:12px;background:var(--mist);font-size:16px;line-height:1.45}
.bp-rr-alert.is-urgent{background:var(--pulse);color:#fff;font-weight:700}
.bp .bp-rr-alert.is-urgent .bp-rr-emg{color:#fff;text-decoration:underline}
.bp-rr-list{margin-top:16px!important;border-top:1px solid var(--line)}
.bp-rr-item{padding:18px 0;border-bottom:1px solid var(--line)}
.bp-rr-item__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px}
.bp .bp-rr-item h3{font-size:20px;line-height:1.3}
.bp-rr-tag{padding:3px 10px;border-radius:999px;font-size:14px;font-weight:700;line-height:1.35;white-space:nowrap}
.bp-rr-item__val{margin-top:4px!important;font-size:16px;line-height:1.45}
.bp-rr-item__val span{display:block;font-size:15px;color:var(--ink2)}
.bp-rr-item__msg{max-width:70ch;margin-top:8px!important;font-size:16px;line-height:1.55}
.bp-rr-item__note{margin-top:6px!important;font-size:15px;line-height:1.45;color:var(--ink2)}
.bp-rr-item__dept{margin-top:8px!important;font-size:15px;line-height:1.45;color:var(--ink2)}
.bp-rr-item__dept a{font-weight:700}
.bp-rr-next{margin-top:24px}
.bp .bp-rr-next h3{font-size:22px}
.bp-rr-next>p{margin:4px 0 10px!important;font-size:15px;line-height:1.45;color:var(--ink2)}
.bp-rr-depts{border-top:1px solid var(--line)}
.bp-rr-depts li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 16px;padding:4px 0;border-bottom:1px solid var(--line)}
.bp-rr-dept,.bp-gl-dept{font-weight:700}
.bp-rr-jump a,.bp-rr-depts a,.bp-gl-depts a,.bp-gl-back a{display:inline-flex;align-items:center;min-height:44px}
.bp-rr-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.bp-rr-btns .bp-btn{flex:1 1 auto}
.bp-rr-out .bp-rr-note{margin-top:20px!important}
.bp-rr-noscript{margin-top:10px!important;font-size:15px;color:var(--ink2)}

/* ------------------------------------------------------------ medical terms */
.bp-gl-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-bottom:24px}
.bp-gl-find{flex:1 1 320px;max-width:460px}
.bp-gl-find .bp-filter{width:100%}
.bp .bp-gl-find .bp-filter :focus-visible{outline:0}
.bp-gl-find .bp-filter:has(:focus-visible){outline:3px solid #E7A600;outline-offset:2px}
.bp-gl-count{font-size:16px;color:var(--ink2)}
.bp-az ul{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:40px}
.bp-az a,.bp-az li>span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;border-radius:12px;font-weight:700;font-size:17px}
.bp-az a{background:var(--mist);color:var(--seal);text-decoration:none}
.bp-az a:hover{background:var(--mist2);color:var(--seal6)}
.bp-az li>span{color:#9A9DBA}
.bp-gl-none{margin-bottom:32px!important;font-size:18px}
.bp-gl-none a{font-weight:700}
.bp-gl-index{column-gap:56px}
.bp .bp-gl-group{break-inside:auto;padding-bottom:28px}
.bp .bp-gl-group h2{break-after:avoid;margin-bottom:4px;padding-bottom:8px;border-bottom:1px solid var(--line);font-size:28px;line-height:1.2}
.bp-gl-group li{break-inside:avoid}
.bp .bp-gl-group a{display:block;padding:10px 0;line-height:1.4}
.bp .bp-gl-group a span{display:inline;margin-left:8px;font-size:15px;white-space:normal}
.bp-gl-index+.bp-gl-note{margin-top:16px!important}

/* term page */
.bp-gl-emg{display:inline-flex;gap:10px;align-items:flex-start;margin-top:20px!important;padding:12px 16px;border-radius:12px;background:#FDECEC;color:#8E141B;font-size:16px;line-height:1.45;font-weight:700}
.bp .bp-gl-emg a{color:#8E141B;white-space:nowrap}
.bp-gl-term{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 64px;align-items:start;margin-bottom:48px}
.bp .bp-gl-block h2{margin-bottom:16px;font-size:clamp(24px,2.2vw,28px);line-height:1.2}
.bp .bp-gl-block .bp-chip,.bp .bp-gl-depts .bp-btn{min-height:44px;padding:0 16px;font-size:16px}
.bp-gl-depts{border-top:1px solid var(--line)}
.bp-gl-depts li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:10px 0;border-bottom:1px solid var(--line)}
.bp-gl-dept{font-size:18px}
.bp-gl-foot{display:grid;gap:16px;justify-items:start}
.bp-gl-foot .bp-gl-rr{justify-self:stretch}
.bp-gl-rr{display:flex;gap:12px;align-items:center;padding:16px 20px;border-radius:16px;background:var(--mist);font-size:17px;line-height:1.45}
.bp-gl-rr .bp-ico{color:var(--seal)}
.bp-gl-rr a{font-weight:700}
.bp-gl-foot .bp-gl-note{margin-top:4px!important}

@media (max-width:1180px){
  .bp-rr{grid-template-columns:minmax(0,1fr)}
  .bp-rr-out{position:static;max-height:none;overflow:visible}
}
@media (max-width:760px){
  html{scroll-padding:16px 0 96px} /* keep focused fields clear of the fixed phone bar */
  .bp-rr-who{display:grid;grid-template-columns:minmax(0,1fr)}
  .bp-rr-seg{display:flex}
  .bp-rr-seg label{flex:1}
  .bp-rr-seg span{width:100%;min-width:0}
  .bp-rr-age{width:auto}
  .bp-rr-panel>summary{padding:10px 16px;flex-wrap:wrap}
  .bp-rr-ptitle{flex-basis:calc(100% - 40px)}
  .bp-rr-pcount{order:3;flex-basis:100%;text-align:left}
  .bp-rr-panel .bp-caret{order:2}
  .bp-rr-body{padding:0 16px 8px}
  .bp-rr-cols{display:none}
  .bp-rr-row{grid-template-columns:minmax(0,1fr);gap:12px}
  .bp-rr-lab{display:flex;align-items:center;gap:12px}
  .bp-rr-labcap{display:block;flex:none;max-width:5.5em;margin:0;line-height:1.3}
  .bp-rr-pair{flex:1}
  .bp-rr-acts .bp-btn,.bp-rr-btns .bp-btn{flex:1 1 100%}
  .bp-rr-out{padding:24px 18px}
  .bp-gl-term{grid-template-columns:minmax(0,1fr);gap:32px;margin-bottom:32px}
  .bp-az ul{margin-bottom:32px}
}
@media print{
  .bp-rr-form,.bp-rr-btns{display:none!important}
  .bp-rr{display:block}
  .bp-rr-out{position:static;max-height:none;overflow:visible;box-shadow:none;border:0;padding:0}
}
