/* Native B1.3 all-services layout, using the frozen compact-card composition. */
#patient-catalogue {
 max-width:var(--analiza-content-max,1240px);margin:auto;padding:32px 0;color:var(--analiza-color-ink,#333);font-family:var(--analiza-font-interface,AnalizaArimo,Arial,sans-serif);letter-spacing:0;
}
#patient-catalogue * {box-sizing:border-box;letter-spacing:0}
#patient-catalogue [hidden] {display:none!important}
#patient-catalogue :is(button,input,a):focus-visible,.az-category-dialog :is(button,input):focus-visible {outline:2px solid var(--analiza-color-brand,#ba0c2f);outline-offset:3px}
#patient-catalogue button {font-family:inherit;text-align:left;cursor:pointer}
#patient-catalogue a {color:inherit;text-decoration:none}
#patient-catalogue .pp-heading {margin-bottom:24px}
#patient-catalogue .pp-heading :is(h1,h2) {margin:0;font-size:var(--analiza-type-page-compact-size,20px);line-height:var(--analiza-type-page-compact-leading,1.4);font-weight:var(--analiza-weight-bold,700)}
#patient-catalogue .pp-heading p {display:none}
#patient-catalogue .pp-field {display:block;min-width:0}
#patient-catalogue .pp-field>span {display:block;font-size:11px;font-weight:var(--analiza-weight-bold,700);margin-bottom:8px}
#patient-catalogue input[type=search] {font-family:inherit;width:100%;min-height:45px;border:1px solid #d9cbd0;border-radius:6px;background:var(--analiza-color-white,#fff);color:var(--analiza-color-ink,#333);padding:10px 12px;font-size:14px}
#patient-catalogue .sc-filter-controls {min-width:0;margin:24px 0 0;padding:0;border:0}
#patient-catalogue .sc-filter-controls legend {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#patient-catalogue .sc-filter-shortcuts {display:flex;align-items:stretch;gap:28px;padding:2px 0 0}
#patient-catalogue .sc-filter-trigger {flex:0 0 104px;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0;border:0;background:transparent;border-radius:0;color:#666;font-size:14px;font-weight:var(--analiza-weight-regular,400);line-height:1.3;text-align:center}
#patient-catalogue .sc-filter-photo {display:block;width:96px;height:96px;flex:0 0 96px;border-radius:50%;overflow:hidden}
#patient-catalogue .sc-filter-photo img {display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
#patient-catalogue .sc-filter-label {position:relative;display:block;flex:1 0 auto;max-width:104px;white-space:normal;min-height:48px;padding-bottom:8px;line-height:1.35}
#patient-catalogue .sc-filter-trigger:is(:hover,[aria-pressed=true],[aria-expanded=true]) .sc-filter-label {color:var(--analiza-color-ink,#333)}
#patient-catalogue .sc-filter-trigger:is([aria-pressed=true],[aria-expanded=true]) .sc-filter-label:after {content:'';position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:24px;height:2px;border-radius:2px;background:var(--analiza-color-brand,#ba0c2f)}
#patient-catalogue .sc-filter-trigger:focus-visible {outline-offset:4px;border-radius:5px}
#patient-catalogue .pp-chips {display:flex;gap:7px;flex-wrap:wrap}
#patient-catalogue .pp-chips:not(:empty) {margin-top:12px}
#patient-catalogue .pp-chips button {display:flex;align-items:center;gap:20px;border:1px solid #ecc6cf;border-radius:5px;background:#fbf1f3;color:#960824;min-height:35px;font-size:11px;padding:7px 10px}
#patient-catalogue .pp-chips button span {font-size:17px;font-weight:var(--analiza-weight-regular,400)}
#patient-catalogue .pp-toolbar {display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 8px;min-height:44px}
#patient-catalogue #pp-count {margin:0;font-size:12px;line-height:1.5;color:#71676b}
#patient-catalogue #pp-results {display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
#patient-catalogue .pp-product {position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 16px;min-width:0;margin:0;padding:16px 18px;border:1px solid var(--analiza-border-card,#e3dfe1);border-radius:10px;background:var(--analiza-color-white,#fff)}
#patient-catalogue .pp-result-main {grid-column:1;grid-row:1;min-width:0}
#patient-catalogue .pp-result-main h2 {margin:0 0 7px;font-size:var(--analiza-type-result-size,18px);font-weight:var(--analiza-weight-bold,700);line-height:var(--analiza-type-result-leading,1.35);overflow-wrap:anywhere}
#patient-catalogue .pp-result-name {font:inherit;line-height:inherit;color:var(--analiza-color-ink,#333);text-align:left}
#patient-catalogue a.pp-result-name:after {content:'';position:absolute;inset:0;border-radius:10px}
#patient-catalogue a.pp-result-name:focus-visible:after {outline:2px solid var(--analiza-color-brand,#ba0c2f);outline-offset:3px}
#patient-catalogue .pp-result-price {grid-column:2;grid-row:1;justify-self:end;padding:0;font-size:18px;line-height:1.35;white-space:nowrap;color:#0f0f12;font-weight:var(--analiza-weight-bold,700);font-variant-numeric:tabular-nums}
#patient-catalogue .pp-result-meta {display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:5px;font-size:13px;line-height:1.4;color:#69727d}
#patient-catalogue .pp-result-tag {display:inline-block;padding:4px 7px;border-radius:6px;background:#f1f2f4;color:#4b5260;font-size:11px;font-weight:var(--analiza-weight-bold,700);line-height:1;letter-spacing:.04em;text-transform:uppercase}
#patient-catalogue .is-panel .pp-result-tag {background:#f7e1e7;color:var(--analiza-color-brand,#ba0c2f)}
#patient-catalogue .pp-result-tag--genetics {background:#e5f2ef;color:#246459}
#patient-catalogue .pp-result-description {margin:8px 0 0;font-size:var(--analiza-type-result-copy-size,14px);line-height:var(--analiza-type-body-leading,1.5);max-width:85ch;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;color:#69727d}
#patient-catalogue .pp-result-description strong {font-weight:600;color:#444}
#patient-catalogue .catalogue-card-actions {position:relative;z-index:2;grid-column:1/-1;grid-row:2;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
#patient-catalogue .catalogue-card-actions :is(button,a) {display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:7px 12px;border:1px solid #ddd9dc;border-radius:5px;font:var(--analiza-weight-regular,400) 14px/1.4 var(--analiza-font-interface,AnalizaArimo,Arial,sans-serif);cursor:pointer}
#patient-catalogue .catalogue-card-actions .selection-details {padding-inline:0;background:transparent;border:0;color:#960824}
#patient-catalogue .selection-add {margin-left:auto!important;width:44px;height:44px;min-width:44px;flex:0 0 44px;padding:0!important;background:#f1f1f1;color:var(--analiza-color-ink,#333);font-size:26px!important;line-height:1!important}
#patient-catalogue .selection-add[aria-pressed=true] {background:var(--analiza-color-white,#fff);color:#69727d}
#patient-catalogue .catalogue-card-saved {display:none}
#patient-catalogue .pp-product:has(.selection-add[aria-pressed=true]) {border-color:#b7b3b5}
#patient-catalogue .pp-product:has(.selection-add[aria-pressed=true]) .catalogue-card-saved {display:inline;font-size:12px;font-weight:var(--analiza-weight-bold,700);color:#555}
#patient-catalogue .pp-empty {grid-column:1/-1;text-align:center;padding:45px 20px;background:#fff6f8;border-radius:6px}
#patient-catalogue .pp-empty h2 {font-size:23px;margin:0 0 12px}
#patient-catalogue .pp-empty p {font-size:14px;line-height:1.5}
#patient-catalogue .pp-empty button {padding:12px 18px;background:var(--analiza-color-brand,#ba0c2f);color:var(--analiza-color-white,#fff);border:0;border-radius:6px;min-height:44px;font-size:13px}
#patient-catalogue .pp-pagination {display:flex;flex-direction:column;align-items:center;gap:20px;margin:32px 0 0;text-align:center}
#patient-catalogue .pp-pagination p {margin:0;color:var(--analiza-color-ink,#333);font-size:13px;line-height:1.5}
#patient-catalogue progress {appearance:none;width:224px;max-width:100%;height:4px;border:0;background:#e7e3e5;color:var(--analiza-color-brand,#ba0c2f)}
#patient-catalogue progress::-webkit-progress-bar {background:#e7e3e5}
#patient-catalogue progress::-webkit-progress-value {background:var(--analiza-color-brand,#ba0c2f)}
#patient-catalogue progress::-moz-progress-bar {background:var(--analiza-color-brand,#ba0c2f)}
#patient-catalogue [data-show-more] {display:inline-flex;align-items:center;justify-content:center;min-width:160px;min-height:48px;margin-top:4px;padding:12px 28px;border:1px solid var(--analiza-color-ink,#333);border-radius:999px;background:var(--analiza-color-white,#fff);color:var(--analiza-color-ink,#333);font-size:15px;font-weight:var(--analiza-weight-regular,400);line-height:1.4;text-align:center}
.az-category-dialog {box-sizing:border-box;position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:var(--analiza-color-white,#fff);color:var(--analiza-color-ink,#333);font-family:var(--analiza-font-interface,AnalizaArimo,Arial,sans-serif);overflow:hidden;overscroll-behavior:contain}
.az-category-dialog:not([open]) {display:none}
.az-category-dialog * {box-sizing:border-box;letter-spacing:0}
.az-category-dialog::backdrop {background:var(--analiza-color-white,#fff)}
.az-category-shell {display:flex;flex-direction:column;height:100%;max-width:880px;margin:auto;padding:0 32px}
.az-category-head {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0 22px;border-bottom:1px solid #f2dce2;flex:none}
.az-category-head>div {min-width:0;flex:1}
.az-category-eyebrow {font-size:11px;font-weight:var(--analiza-weight-bold,700);text-transform:uppercase;color:var(--analiza-color-brand,#ba0c2f)}
.az-category-dialog h2 {margin:8px 0 0;font-size:30px;line-height:1.2;font-weight:var(--analiza-weight-bold,700)}
.az-category-dialog button {font-family:inherit;cursor:pointer}
.az-category-head>[data-category-close] {flex:0 0 44px;align-self:flex-start;display:grid;place-items:center;width:44px;height:44px;min-height:44px;margin:0;padding:10px;border:0;border-radius:0;background:transparent;color:var(--analiza-color-ink,#333);line-height:1}
.az-category-head>[data-category-close] svg{width:24px;height:24px}
.az-category-head>[data-category-close]:is(:hover,:focus){background:transparent;color:var(--analiza-color-ink,#333)}
.az-category-options {flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:8px 0 28px}
.az-category-option {display:flex;align-items:center;gap:14px;min-height:58px;padding:15px 12px;border-bottom:1px solid #eee9eb;font-size:16px;line-height:1.4;cursor:pointer}
.az-category-option:has(input:checked) {background:#fbf1f3;color:#960824;font-weight:var(--analiza-weight-bold,700)}
.az-category-option input {accent-color:var(--analiza-color-brand,#ba0c2f);width:18px;height:18px;flex:none;margin:0}
.az-category-option>span {flex:1;min-width:0}
.az-category-option small {color:#69727d;font-size:13px;font-weight:var(--analiza-weight-regular,400);flex:none}
@media(min-width:768px) {
 .az-category-dialog {width:min(480px,calc(100vw - 48px));height:min(680px,calc(100dvh - 64px));margin:auto;border:1px solid #eadfe2;border-radius:12px;box-shadow:0 16px 64px #33202726}
 .az-category-dialog::backdrop {background:#1b20252e}
 .az-category-shell {padding:0 24px}
 .az-category-head {padding:20px 0 18px;gap:12px}
 .az-category-dialog h2 {font-size:24px}
 .az-category-option {font-size:15px;min-height:54px;padding:14px 8px}
}
@media(min-width:768px) and (max-width:1300px) {#patient-catalogue {margin-inline:28px}}
@media(max-width:767px) {
 #patient-catalogue {margin-inline:20px;padding-top:24px}
 #patient-catalogue .pp-heading :is(h1,h2) {font-size:var(--analiza-type-page-compact-size,29px);line-height:var(--analiza-type-page-compact-leading,1.2);margin-bottom:10px}
 #patient-catalogue .pp-heading p {display:block;margin:0;font-size:var(--analiza-type-body-size,14px);line-height:1.65;color:#71676b}
 #patient-catalogue input[type=search] {font-size:16px}
 #patient-catalogue .sc-filter-controls {margin-top:20px}
 #patient-catalogue #pp-results {gap:10px}
 #patient-catalogue .pp-product {padding:14px;gap:6px 12px}
 #patient-catalogue .pp-result-main h2 {font-size:var(--analiza-type-result-size,17px);margin-bottom:6px}
 #patient-catalogue .pp-result-price {font-size:17px}
 #patient-catalogue .pp-result-description {font-size:var(--analiza-type-result-copy-size,13px)}
 #patient-catalogue .catalogue-card-actions :is(button,a) {font-size:13px;padding:7px 10px}
 #patient-catalogue .catalogue-card-actions .selection-details {padding:7px 0}
 .az-category-shell {padding:0 20px}
 .az-category-head {padding:20px 0 18px;gap:12px}
 .az-category-dialog h2 {font-size:24px}
 .az-category-option {font-size:15px;min-height:57px;padding:15px 8px}
}
@media(max-width:600px) {#patient-catalogue .sc-filter-shortcuts {gap:20px}}
@media(max-width:389px) {
 #patient-catalogue .sc-filter-shortcuts {justify-content:space-between;gap:8px}
 #patient-catalogue .sc-filter-trigger {flex:1 1 0;min-width:0;gap:10px}
 #patient-catalogue .sc-filter-photo {width:80px;height:80px;flex-basis:80px}
}
@media(max-width:359px) {
 #patient-catalogue {margin-inline:16px}
 #patient-catalogue .sc-filter-photo {width:64px;height:64px;flex-basis:64px}
 .az-category-shell {padding-inline:16px}
 .az-category-dialog h2 {font-size:21px}
}
#patient-catalogue .az-grid-reset {min-height:44px;padding:7px 0;border:0;background:transparent;color:#960824;font-size:13px;text-decoration:underline}

/* Mouse/touch focus does not draw the keyboard navigation ring. */
html[data-az-catalogue-input=pointer] #patient-catalogue :is(button,input,a):focus,
html[data-az-catalogue-input=pointer] .az-category-dialog :is(button,input):focus {
 outline:none;box-shadow:none;
}
html[data-az-catalogue-input=pointer] #patient-catalogue a.pp-result-name:focus:after {outline:none}

/* Panel mode uses the same compact cards, category picker and design values. */
#patient-catalogue .pp-audience {display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 0}
#patient-catalogue .pp-audience button {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;border:1px solid var(--analiza-border-card,#ddd9dc);border-radius:999px;background:var(--analiza-color-white,#fff);color:var(--analiza-color-ink,#555);font:400 14px/1.4 var(--analiza-font-interface,AnalizaArimo,Arial,sans-serif)}
#patient-catalogue .pp-audience button[aria-pressed=true] {background:#fbf1f3;border-color:#d68a9e;color:#960824}
@media(max-width:767px) {#patient-catalogue .pp-audience button {padding:9px 12px;font-size:13px}}


#patient-catalogue[data-mode=panels] .pp-heading p {display:block;margin:10px 0 0;font:var(--analiza-weight-regular,400) var(--analiza-type-small-size,14px)/1.65 var(--analiza-font-interface,AnalizaArimo,Arial,sans-serif);color:#666}
#patient-catalogue[data-mode=panels] .pp-toolbar {margin:22px 0 20px}
#patient-catalogue .pp-panel-title {margin:0 0 10px;font:var(--analiza-weight-bold,700) var(--analiza-type-entry-size,20px)/var(--analiza-type-card-leading,1.25) var(--analiza-font-interface,AnalizaArimo,Arial,sans-serif);color:var(--analiza-color-ink,#333)}
#patient-catalogue[data-mode=panels] #pp-count {font:var(--analiza-weight-regular,400) 12px/var(--analiza-type-body-leading,1.5) var(--analiza-font-interface,AnalizaArimo,Arial,sans-serif)}
@media(max-width:767px) {#patient-catalogue[data-mode=panels] {margin-inline:16px}}

.elementor .elementor-element.analiza-panel-catalogue-s6:has(#patient-catalogue) {background-color:var(--analiza-color-white,#fff)}

.az-category-dialog [data-category-close]:is(:focus,:focus-visible){outline:none;box-shadow:none}
