/* Reference direction: warm ivory / charcoal, narrow navigation, gold accent,
   fine rules, compact controls, restrained monospace labels. No remote assets. */
/* Portal-only readability; public clinic catalog branding remains unchanged. */
html:has(.shell),html:has(.login){--text:#30342f;--muted:#62665e}
html[data-theme=dark]:has(.shell),html[data-theme=dark]:has(.login){--bg:#252525;--surface:#30302e;--sidebar:#201f1d;--text:#f0efea;--muted:#b7b5ad;--line:#41413c;--soft:#393a34}
.shell{font-size:14px;line-height:1.5}
.shell .nav button{font-size:12px;min-height:38px}
.shell button,.shell input,.shell textarea{font-size:13px}
.shell td,.shell .review-summary td{font-size:13px;line-height:1.5}
.shell .help,.shell .checks label,.shell td small{font-size:12px;line-height:1.55}
.shell h1{letter-spacing:-.5px}.shell h2{letter-spacing:-.2px}
.shell .compact-details > summary{font-size:14px;font-weight:600}
.shell .portal-select-trigger,.shell .pill{font-size:11px}
.portal-select{position:relative;display:inline-block;min-width:140px;max-width:100%;vertical-align:middle}
.portal-native-select{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;opacity:0!important;clip-path:inset(50%)!important;pointer-events:none!important}
.portal-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:38px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:2px;color:var(--text);font:11px var(--mono);padding:9px 12px}
.portal-select-trigger>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.portal-select-trigger:hover,.portal-select-trigger[aria-expanded=true]{background:var(--soft);border-color:var(--muted)}
.portal-select-trigger:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.select-chevron{color:var(--muted)}
.field .portal-select{display:block;width:100%;margin-top:7px}
.portal-select-menu{position:fixed;inset:auto;margin:0;padding:3px 0;border:1px solid var(--line);border-radius:2px;background:var(--surface);color:var(--text);box-shadow:0 8px 24px #0003;overflow:auto;overscroll-behavior:contain;font:11px/1.6 var(--mono)}
.portal-select-menu::backdrop{background:transparent}
.portal-select-option{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:7px 10px;cursor:pointer;overflow-wrap:anywhere}
.portal-select-option[hidden]{display:none}
.portal-select-option[aria-selected=true]{background:var(--sidebar);font-weight:600}
.portal-select-option.focused{background:var(--soft);box-shadow:inset 2px 0 var(--green)}
.portal-select-option[aria-disabled=true]{opacity:.45;cursor:not-allowed}
.select-check{width:14px;flex-shrink:0}
/* The complete disclosure header, including its padding, is the native hit target. */
details.compact-details > summary{box-sizing:border-box;list-style-position:inside;margin:-16px;padding:16px;min-height:50px;cursor:pointer}
details.compact-details[open] > summary{margin-bottom:20px}
details.compact-details > summary:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
details.compact-details > summary{transition:background-color .15s ease,box-shadow .15s ease;color:var(--text)}
details.compact-details > summary:hover,details.compact-details > summary:focus-visible{background:var(--soft);box-shadow:inset 2px 0 var(--green)}
.compact-details > summary .nav-icon,.section-title h2 .nav-icon{vertical-align:-3px;margin-right:9px}
@media(prefers-reduced-motion:reduce){details.compact-details > summary{transition:none}}
:root{color-scheme:light;--bg:#faf9f5;--surface:#fdfcf9;--sidebar:#f4f3ed;--text:#41443b;--muted:#72746a;--line:#dedfd6;--soft:#efeee7;--green:#58604e;--deep:#434d3d;--gold:#a47a3f;--paper:var(--bg);--red:#a23c36;--shadow:none;--row-hover:#f1f0e9;--table-head:#535d4a;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
:root[data-theme=dark]{color-scheme:dark;--bg:#252622;--surface:#282924;--sidebar:#20211e;--text:#deded4;--muted:#aaa99e;--line:#3b3d35;--soft:#30322b;--green:#b2884c;--deep:#96703a;--gold:#bc955b;--red:#ef9d90;--row-hover:#30322b;--table-head:#353e32}
body{background:var(--bg);color:var(--text);font-size:13px}button,input,select,textarea{border-radius:3px;background:var(--surface);color:var(--text);border-color:var(--line);font-size:12px}button{font-weight:500}button:hover{background:var(--soft);border-color:var(--muted)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button:disabled{opacity:.45}.primary{background:var(--green);border-color:var(--green);color:#fff}.primary:hover{background:var(--deep);border-color:var(--deep);color:#fff}a{color:var(--gold)}.subtle{background:transparent;border-color:transparent}.danger{color:var(--red)}input[type=checkbox]{accent-color:var(--green)}
h1{font-size:26px;font-weight:550;letter-spacing:-.7px}h2{font-size:17px;font-weight:550}h3{font-weight:550}.eyebrow{font-family:var(--mono);font-size:9px;letter-spacing:1.4px;font-weight:500}.brand{display:flex;align-items:center;gap:10px;font-size:15px!important;letter-spacing:-.3px}.brand em{font:inherit}.brand-mark{font-size:29px;color:var(--gold);font-family:Georgia,serif;line-height:1}.brand small{display:block;font:9px var(--mono);letter-spacing:2px;color:var(--muted);margin-top:5px}.shell{grid-template-columns:218px minmax(0,1fr)}.sidebar{padding:18px 8px;background:var(--sidebar);color:var(--text);border-right:1px solid var(--line)}.sidebar .brand{margin:0 7px 34px}.nav-label{padding:0 12px 9px;color:var(--muted);font:9px var(--mono);letter-spacing:2px}.nav{gap:3px}.nav button{border-radius:1px;padding:10px 12px;color:var(--muted);display:flex;gap:10px;align-items:center;font:11px var(--mono)}.nav button.active,.nav button:hover{background:var(--soft);color:var(--text)}.nav button.active{box-shadow:inset 2px 0 var(--green)}.nav .count{margin-left:auto;background:var(--surface)}.nav-icon{width:15px;height:15px;display:inline-block;flex-shrink:0}.nav-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.sidebar-foot{color:var(--muted);font-size:10px;padding:18px 8px 0}.sidebar-foot strong,.sidebar-foot button{color:var(--text)}.sidebar-foot .account-name{font-size:12px;font-weight:600}.workspace{background:var(--bg)}.topbar{height:49px;padding:0 24px;background:var(--bg)}.topbar .eyebrow{letter-spacing:.5px;font-size:10px}.top-actions{display:flex;align-items:center;gap:8px}.icon-button{width:30px;height:30px;padding:4px;font-size:16px}.avatar{background:var(--soft);color:var(--text)}.local-banner{background:var(--bg);color:var(--muted);border-color:var(--line);padding:8px 24px;font:10px/1.6 var(--mono)}.content{padding:30px 26px;max-width:1900px}.heading{margin-bottom:24px}.card,.metric,.table-wrap,dialog,.login{border-radius:4px;background:var(--surface);box-shadow:none}.card{padding:20px}.metrics{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:28px}.metric{border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;padding:18px 24px}.metric:first-child{padding-left:0}.metric:last-child{border-right:0}.metric strong{font:26px var(--mono);margin-top:10px}.metric .hint{font-size:11px}.greeting{padding:30px 0 32px;border-bottom:1px solid var(--line);margin-bottom:26px}.greeting h2{font:17px var(--mono);margin-bottom:10px}.greeting p,.shell .heading > div > h1 + p{font:12px/1.7 var(--mono);color:var(--muted);margin:0}.table-wrap{border-color:var(--line)}th{background:var(--table-head);border-bottom:2px solid var(--gold);font:10px var(--mono);letter-spacing:.8px;padding:13px 12px}td{border-color:var(--line);padding:11px 12px}tbody tr:hover{background:var(--row-hover)}td.name strong{font-weight:550}.money{font-family:var(--mono);font-size:12px}.table-wrap.products,.table-wrap.review{max-height:66vh;min-height:320px}.table-wrap.review-summary{max-height:400px}.table-wrap.products td,.clinic-main td{height:66px}.price-action{min-height:38px;min-width:78px}.price-input{width:92px;min-height:38px}.tab{background:var(--soft);border-color:var(--line);border-radius:3px;padding:10px 14px;flex:1;min-width:100px}.tab.active{background:var(--table-head);border-color:var(--table-head);color:white}.tab strong{font:22px var(--mono)}.tab span{font:9px var(--mono);line-height:1.5}.notice{background:#f4eee2;border-color:#ded0b3;color:#725928;border-radius:3px}.notice.success{background:#edf1e8;border-color:#ced8c3;color:#465c39}.notice.error{background:#f9e9e4;color:#9e3d33;border-color:#e4c5bc}:root[data-theme=dark] .notice{background:#332f24;color:#dfc48f;border-color:#514632}:root[data-theme=dark] .notice.success{background:#293328;color:#bdd2ac;border-color:#44543d}:root[data-theme=dark] .notice.error{background:#382b28;color:#ecb5a7;border-color:#68473f}.pill{font:10px var(--mono);border-radius:3px}.pill.unmatched{background:#f8ecd5;color:#865e1c}:root[data-theme=dark] .pill{background:#363b31;color:#c4d1b5}:root[data-theme=dark] .pill.pending,:root[data-theme=dark] .pill.review,:root[data-theme=dark] .pill.unmatched,:root[data-theme=dark] .pill.duplicate{background:#453a27;color:#edce95}:root[data-theme=dark] .pill.invalid,:root[data-theme=dark] .pill.changes_requested{background:#482e2a;color:#efb0a3}.toolbar{gap:8px}.search{min-width:150px}.two-col{gap:14px}.pharmacy-card{padding:16px}.pharmacy-card h3{font-size:12px}.checks{gap:10px}.checks label{font-size:11px}.section-title{gap:12px;flex-wrap:wrap}.breadcrumb{font:10px var(--mono)}.upload-zone{background:var(--soft);border-color:var(--line)}dialog{color:var(--text);width:760px;box-shadow:0 20px 80px #0004}dialog::backdrop{background:#10120f88}.modal-head{gap:15px}.field textarea{margin-top:7px}.login{padding:36px}.clinic-header{background:var(--table-head)}.clinic-header .eyebrow{color:#d6decf}.clinic-header .brand{font-size:20px!important}.review-summary .name{min-width:190px}.review-summary td{font-size:12px}.delta-down{color:var(--red)}.details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.details-grid .wide{grid-column:1/-1}.details-grid p{margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere}.details-grid small{font:9px var(--mono);text-transform:uppercase;color:var(--muted)}.version-card{padding:16px 0;border-bottom:1px solid var(--line)}.version-card:last-child{border-bottom:0}.review-totals{display:flex;gap:20px;flex-wrap:wrap;margin:16px 0;font:11px var(--mono)}.review-totals strong{display:block;font-size:20px;margin-bottom:5px}.compact-details{margin-bottom:20px;border:1px solid var(--line);border-radius:3px;padding:16px;background:var(--surface)}.compact-details summary{cursor:pointer;font-size:13px;font-weight:550;list-style-position:outside;margin-left:14px}.compact-details[open] summary{margin-bottom:20px}.compact-details .card{border:0;margin:0;padding:0}.error-list{max-height:160px;overflow:auto}.error-list li{margin:5px 0}.proposal-note{white-space:pre-wrap}.profile-muted{color:var(--muted)}.version-rows{max-height:340px!important;min-height:0!important}.mobile-only{display:none}.footer-note{font:10px/1.7 var(--mono);color:var(--muted)}#toast{background:var(--text);color:var(--bg);border-radius:3px}.shell.nav-collapsed{grid-template-columns:64px minmax(0,1fr)}.nav-collapsed .sidebar .brand-copy,.nav-collapsed .nav-label,.nav-collapsed .nav-text,.nav-collapsed .sidebar-foot,.nav-collapsed .nav .count{display:none}.nav-collapsed .sidebar .brand{margin:0 auto 35px}.nav-collapsed .nav button{justify-content:center;padding:12px}
@media(max-width:1000px){.shell{grid-template-columns:185px minmax(0,1fr)}.content{padding:24px 18px}.topbar{padding:0 18px}.details-grid{grid-template-columns:1fr 1fr}.metrics .metric{padding:16px 10px}}
@media(max-width:650px){.shell,.shell.nav-collapsed{display:block}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:14px}.sidebar .brand{margin-bottom:16px}.nav{gap:2px}.nav button{font-size:10px;padding:8px}.nav-label,.nav-icon,.topbar .account,.topbar [data-action=sidebar]{display:none}.nav-collapsed .nav-text{display:inline}.nav-collapsed .sidebar .brand-copy{display:block}.content{padding:20px 12px}.local-banner{padding:8px 12px}.metrics{grid-template-columns:1fr 1fr}.metric{border-bottom:1px solid var(--line)}.metric:nth-child(2){border-right:0}.card{padding:14px}.details-grid{grid-template-columns:1fr}.greeting{padding:12px 0 22px}.greeting h2{font-size:15px}.heading h1{font-size:23px}.topbar{height:43px}.two-col{gap:0}.tabs{gap:5px}.tab{min-width:90px}.section-title .flex{flex-wrap:wrap}.page-controls{gap:12px;flex-wrap:wrap}.clinic-header{padding:22px}.clinic-main{padding:18px 12px}.heading .flex{gap:6px}.heading button{padding:9px}.table-wrap.products,.table-wrap.review{max-height:65vh}}
.public-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px}.catalog-filters{border-right:1px solid var(--line);padding-right:18px}.catalog-filters h3{font:10px var(--mono);text-transform:uppercase;letter-spacing:1px;margin-top:22px}.catalog-filters h3:first-child{margin-top:0}.catalog-filters label{display:flex;align-items:flex-start;gap:6px;margin:12px 0;color:var(--muted);font-size:12px}.catalog-filters button{margin-top:16px}.catalog-results{min-width:0}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.product-card{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:4px}.product-card label{font:10px var(--mono);color:var(--muted)}.product-card h3{margin:20px 0 12px;line-height:1.5}.product-card p{font-size:12px}.product-card strong{font-size:16px}button[aria-pressed=true]{background:var(--soft);border-color:var(--green)}
@media(max-width:650px){.public-layout{grid-template-columns:1fr;gap:16px}.catalog-filters{border-right:0;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;padding:0 0 12px}.catalog-filters h3{width:100%;margin:8px 0 0}.catalog-filters label{margin:3px}.catalog-filters button{margin:0}}
/* Transparent supplied brand: original gold/green in light mode, gold/ivory in dark. */
.sidebar .brand.portal-brand{display:block;margin:0 7px 28px}
.login{width:calc(100% - 40px);max-width:460px;margin:clamp(48px,12vh,120px) auto;padding:44px 32px 38px;text-align:center;border:1px solid var(--line);border-radius:12px}
#app:has(> .login){display:grid;place-items:center;min-height:100svh;padding:24px;box-sizing:border-box}
.login.login{position:relative;isolation:isolate;margin:0;width:min(100%,460px)}
@property --login-orbit{syntax:"<angle>";initial-value:0deg;inherits:false}
.login::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;background:conic-gradient(from var(--login-orbit),transparent 0deg 280deg,var(--gold) 320deg,#fff 345deg,transparent 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:login-border-orbit 7s linear infinite;opacity:.8}
@keyframes login-border-orbit{to{--login-orbit:360deg}}
@media(prefers-reduced-motion:reduce){.login::before{animation:none;--login-orbit:135deg}}
.login .login-sign-in{font-size:18px;margin:28px 0 0;font-weight:550}
.login .brand{justify-content:center;margin:0}
.login .login-logo{width:100%;max-width:300px;background:transparent}
.login .login-title{margin:28px 0 0;font-size:22px;font-weight:500;line-height:1.35;letter-spacing:-.4px}
.sidebar .brand.portal-brand .brand-copy{font:10px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.2px}
.login .google-login{display:flex;align-items:center;justify-content:center;gap:10px;width:245px;max-width:100%;height:48px;margin:24px auto 0;padding:0 20px;background:#fff;border:1px solid #dce3ee;border-radius:14px;color:#36445d;text-decoration:none;font:600 14px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box}
.login .google-login:hover{background:#f8faff;border-color:#b7c9e3}
.google-login-icon{width:20px;height:20px;flex:none}
.compact-brand-mark{display:none;width:32px;height:32px;object-fit:contain}
.nav-collapsed .portal-logo{display:none!important}
.nav-collapsed .compact-brand-mark{display:block}
.portal-logo{display:block;position:relative;width:100%;aspect-ratio:7;overflow:hidden}
.portal-logo-art{position:absolute;width:100%;max-width:none;height:auto;left:0;top:50%;transform:translateY(-50%)}
.portal-logo-dark{display:none;filter:brightness(0) invert(1);clip-path:inset(0 0 0 16%);opacity:.9}
:root[data-theme=dark] .portal-logo-dark{display:block}
.portal-brand small{font-size:8px;letter-spacing:1.5px;margin-top:10px}
.nav-collapsed .sidebar .brand.portal-brand{margin:0 auto 28px;width:32px}
.nav-collapsed .portal-logo{width:32px;height:32px;aspect-ratio:auto}
.nav-collapsed .portal-logo-art{width:214px}
@media(max-width:650px){.sidebar .brand.portal-brand,.nav-collapsed .sidebar .brand.portal-brand{width:190px;margin:0 0 16px}.nav-collapsed .portal-logo{width:100%;height:auto;aspect-ratio:7}.nav-collapsed .portal-logo-art{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.role-menu{position:relative}.role-menu summary{cursor:pointer;list-style:none;padding:8px 12px;border:1px solid var(--line);border-radius:6px}.role-options{position:absolute;right:0;top:100%;z-index:100;width:340px;max-width:85vw;padding:12px;background:var(--surface);border:1px solid var(--line);box-shadow:0 8px 30px #0003;border-radius:6px}.role-options small{display:block;margin-bottom:8px}.role-options button{display:block;width:100%;text-align:left;margin:4px 0}.role-options button[aria-pressed="true"]{border-color:#a77b40;font-weight:700}.demo-banner{padding:10px 24px;background:#a77b4026;border-bottom:1px solid #a77b40;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.demo-banner button{margin-left:auto}
.catalog-row{cursor:pointer}.catalog-row:hover td,.catalog-row:focus-visible td{background:var(--row-hover)}.catalog-row:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.decision-cell{min-width:168px}.decision-stack{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.decision-stack small{max-width:220px;overflow-wrap:anywhere}.decision-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%}.decision-actions button{min-height:34px;margin:0}
.inline-price{display:flex;align-items:flex-end;gap:6px;width:100%}.inline-price label{font-size:12px;display:block;flex:1;min-width:0}.inline-price input{display:block;width:100%;min-width:80px;margin-top:4px}.inline-price button{min-height:36px}.review-complete{margin:12px 0}.management-review>.section-title{margin-top:0}
.catalog-builder .pharmacy-card{margin-bottom:20px}.catalog-builder>.pharmacy-card+.tabs{margin-top:20px}
.builder-import-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin:8px 0 18px}.builder-import-actions button,.tier-template-button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:8px 12px;border-radius:3px;font:700 10px var(--mono);letter-spacing:1px;text-transform:uppercase}.builder-import-actions svg,.tier-template-button svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.builder-template{background:var(--surface);color:var(--text);border:1px solid var(--line)}.builder-import-actions .builder-add-excel{background:#304638;color:#fff;border:1px solid #304638}
.catalog-link-action{display:inline-flex;align-items:center;gap:7px}.catalog-link-action svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.catalog-history>section+section{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}

/* Shared paired chevrons and bottom account menu. */
.paired-chevron, details.compact-details > summary::before {
 display:inline-block;flex:none;width:14px;height:18px;vertical-align:middle;
 background:currentColor;opacity:.65;
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 20'%3E%3Cpath d='m4 7 4-4 4 4M4 13l4 4 4-4' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 20'%3E%3Cpath d='m4 7 4-4 4 4M4 13l4 4 4-4' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
details.compact-details > summary, .role-menu > summary, .account-menu > summary {list-style:none}
details.compact-details > summary::-webkit-details-marker,.role-menu > summary::-webkit-details-marker,.account-menu > summary::-webkit-details-marker{display:none}
details.compact-details > summary::before{content:"";margin-right:10px}
.sidebar-foot .account-menu{position:relative}
.account-menu > summary{display:flex;align-items:center;gap:10px;padding:10px 8px;cursor:pointer;border-radius:4px;background:var(--soft)}
.account-menu > summary:hover,.account-menu > summary:focus-visible{box-shadow:inset 2px 0 #a77838;outline:1px solid var(--line)}
.account-avatar{display:grid;place-items:center;width:34px;height:34px;flex:none;border:1px solid var(--line);border-radius:50%;font-size:11px}
.account-identity{min-width:0;flex:1}.account-identity strong,.account-popover strong{display:block;font-size:14px;font-weight:600}
.account-identity small,.account-popover small{display:block;font-size:10px;overflow:hidden;text-overflow:ellipsis}
.account-popover{position:absolute;bottom:calc(100% + 6px);left:0;right:0;z-index:50;padding:14px;background:var(--soft);border:1px solid var(--line);border-radius:4px;box-shadow:0 8px 28px #0003}
.account-roles{margin:12px 0;padding:10px 0;border-block:1px solid var(--line);font-size:11px}
.account-logout{color:#c95043!important;width:100%;text-align:left}
.inline-price{animation:replacement-price-in 160ms ease-out}
@keyframes replacement-price-in{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.inline-price{animation:none}}

/* Dashboard-only sales catalog cards; public catalog styling stays unchanged. */
.tier-one-catalogs{max-width:1180px}
.tier-one-catalogs>h2{margin:0 0 18px}
.sales-catalog-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:14px;padding:24px;border:1px solid var(--line)}
.sales-catalog-heading{display:flex;align-items:center;gap:16px;min-width:0}
.sales-catalog-heading h3{margin:0;font-size:16px;line-height:1.5}
.sales-catalog-symbol{display:flex;align-items:center;justify-content:center;gap:10px;width:76px;height:46px;flex-shrink:0;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--gold)}
.sales-catalog-symbol .nav-icon{display:block;width:23px;height:23px}
.sales-catalog-actions{display:grid;grid-template-columns:repeat(3,170px);gap:8px;flex-shrink:0}
.sales-catalog-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 12px}
.sales-catalog-actions .nav-icon{display:block}
@media(max-width:1200px){.sales-catalog-card{align-items:flex-start;flex-direction:column;gap:18px}}
@media(max-width:650px){.sales-catalog-card{padding:18px}.sales-catalog-heading h3{font-size:15px}.sales-catalog-actions{width:100%}.sales-catalog-actions{grid-template-columns:1fr}.sales-catalog-actions button{width:100%;min-height:44px}.sales-catalog-card .nav-icon{display:block}}

.draft-save-status{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;margin-right:auto}
.draft-save-status>span:first-child{width:7px;height:7px;border-radius:50%;background:#579562}
.draft-save-status[data-save-state="Saving"]>span:first-child{background:var(--gold)}
.draft-save-status[data-save-state="Not Saved"]>span:first-child{background:var(--red)}

.pharmacy-availability-options{margin:16px 0 20px;gap:12px 18px}

/* Keep save feedback visible in the disclosure header for every builder role. */
.catalog-builder>summary .draft-save-status{margin-left:12px;margin-right:0;font-weight:400;letter-spacing:normal;white-space:nowrap}
.catalog-builder[open]>summary{margin-bottom:10px}
.catalog-builder>.builder-import-actions{float:right;margin:0 0 12px 16px}
.catalog-builder>.pharmacy-card{margin-bottom:12px;min-height:34px}
.catalog-builder>.pharmacy-card h3{margin:0 0 10px}
.catalog-builder>.pharmacy-card+.tabs{clear:both;margin-top:12px}
@media(max-width:650px){.catalog-builder>.builder-import-actions{float:none;margin:0 0 12px;justify-content:flex-start}.catalog-builder>summary .draft-save-status{margin-left:8px}}

.inline-price{display:grid;grid-template-columns:minmax(85px,1fr) minmax(85px,1fr) auto;gap:8px;align-items:end}.inline-price .replacement-hint{grid-column:1/-1;font-size:11px;line-height:1.4;color:var(--muted)}

.pill.billing-entered{background:#e3f2e7;color:#206037}.pill.billing-not-entered{background:#fbe5e5;color:#a32626}
[data-theme="dark"] .pill.billing-entered{background:#253e2e;color:#a7dfb6}[data-theme="dark"] .pill.billing-not-entered{background:#4a2929;color:#ffb2b2}

.nav [data-nav="ready-inbox"] .count,.nav [data-nav="approvals"] .count,.nav [data-nav="billing"] .count{background:#c93636;color:#fff;border-radius:999px;min-width:18px;padding:2px 5px;text-align:center;font-weight:700}

/* Fixed brand color in either portal theme. */
button.rxr-brown,button[data-action="submit"]{background:#956834;border-color:#956834;color:#fff}
button.rxr-brown:hover,button[data-action="submit"]:hover{background:#7b542a;border-color:#7b542a;color:#fff}

.sales-catalog-symbol .catalog-icon-slash{stroke:var(--gold);stroke-width:2.3;stroke-linecap:round}

/* Consistent card/search feedback without changing click targets or layout. */
.shell .sales-catalog-card,.shell input.search{
 transition:background-color 140ms ease,border-color 140ms ease,box-shadow 140ms ease;
}
.shell .sales-catalog-card:hover,.shell .sales-catalog-card:focus-within{
 background:var(--soft);border-color:var(--gold);box-shadow:inset 3px 0 var(--gold);
}
.shell input.search:hover:not(:disabled){
 background:var(--soft);border-color:var(--gold);
}
.shell input.search:focus{
 background:var(--surface);border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 22%,transparent);
}
@media(prefers-reduced-motion:reduce){
 .shell .sales-catalog-card,.shell input.search{transition:none}
}

/* Tier toolbar uses the same type treatment as Create tier. */
.tier-template-button{font-family:inherit;font-size:12px;font-weight:500;line-height:normal;letter-spacing:normal;text-transform:none}

.shell button:is([data-set-price],[data-reset-price],[data-product-decision],[data-set-replacement],[data-review="approve"],[data-review="reset"]){
 display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;min-width:38px;height:38px;min-height:38px;padding:8px;
}
.shell button:is([data-set-price],[data-reset-price],[data-product-decision],[data-set-replacement],[data-review="approve"],[data-review="reset"]) svg{
 display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;
}
.shell .decision-actions{display:flex;gap:8px;width:auto}
@media(pointer:coarse),(max-width:650px){
 .shell button:is([data-set-price],[data-reset-price],[data-product-decision],[data-set-replacement],[data-review="approve"],[data-review="reset"]){width:44px;min-width:44px;height:44px;min-height:44px;flex-basis:44px}
}

.shell .theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;min-width:42px;padding:9px;background:var(--soft);border:1px solid var(--muted);color:var(--text)}
.shell .theme-toggle svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
html[data-theme=dark] .shell .theme-toggle{color:#ffdc91;background:#3c3529;border-color:#bb9557}
html[data-theme=dark] .shell .theme-toggle:hover{color:#fff1cf;background:#51432c;border-color:#ffdc91}
@media(pointer:coarse){.shell .theme-toggle{width:44px;height:44px;min-width:44px}}
