.drug-guide { overflow-wrap: anywhere; }
.drug-crumb { display:flex; flex-wrap:wrap; gap:.55rem; margin:0 0 1rem; font-size:.9rem; }
.drug-hero,.drug-card { padding:clamp(1.1rem,3vw,2.4rem); }
.drug-hero { margin-bottom:1.25rem; }
.drug-guide .drug-hero h1 { margin:.2em 0 .4em; font-size:clamp(1.25rem,2.25vw,2rem); line-height:1.28; }
.drug-guide :is(.drug-card h2,.drug-detail h2) { margin:0 0 .55rem; font-size:clamp(1.02rem,1.35vw,1.3rem); line-height:1.35; }
.drug-grid,.drug-fields,.drug-detail { display:grid; gap:1rem; }
.drug-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr)); margin:1rem 0; }
.drug-fields { grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr)); align-items:end; margin-top:.9rem; }
.drug-fields label,.drug-search > label { display:grid; gap:.25rem; }
.drug-fields .drug-check { display:flex; align-items:center; gap:.5rem; }
.drug-fields input:not([type=checkbox]),.drug-fields select,.drug-fields textarea,.drug-query input { width:100%; min-width:0; }
.drug-query { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.6rem; margin-top:.35rem; }
.drug-query input,.drug-query button { min-height:44px; }
.drug-search ul { padding:.8rem 1.6rem; margin:0; }
.drug-search li a { display:block; padding:.4rem 0; }
.drug-guide .drug-product { position:static; display:grid; grid-template-columns:auto minmax(0,1fr); gap:clamp(.85rem,2vw,1.5rem); align-items:start; padding:clamp(1rem,2vw,1.6rem); }
.drug-product-media { width:6.25rem; margin:0; text-align:center; }
.drug-product-media img,.drug-placeholder { display:grid; place-items:center; width:100%; height:auto; aspect-ratio:1; object-fit:contain; border-radius:.85rem; }
.drug-placeholder { border:1px solid color-mix(in srgb,currentColor 28%,transparent); background:color-mix(in srgb,currentColor 6%,transparent); }
.drug-product-media figcaption { margin-top:.35rem; font-size:.75rem; line-height:1.3; }
.drug-product-copy > p { margin:.45rem 0; }
@media (max-width:560px) {
    .drug-guide .drug-product { grid-template-columns:minmax(0,1fr); }
    .drug-product-media { width:4.75rem; }
}
.drug-detail { grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr)); }
.drug-detail section,.drug-document,.drug-price-list > div { padding:.9rem; border:1px solid color-mix(in srgb,currentColor 25%,transparent); border-radius:.85rem; }
.drug-price-list,.drug-nav { display:grid; gap:.5rem; }
.drug-nav { display:flex; flex-wrap:wrap; margin-bottom:1rem; }
.drug-table { display:grid; gap:.5rem; }
.drug-table > article { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:.5rem; padding:.65rem; border-bottom:1px solid color-mix(in srgb,currentColor 20%,transparent); }
.drug-upload { position:relative; padding:1rem; border:2px dashed color-mix(in srgb,currentColor 35%,transparent); border-radius:1rem; min-height:5rem; }
.drug-upload strong { font-size:1.45rem; }
.drug-upload:focus-within { outline:2px solid currentColor; outline-offset:2px; }
.drug-list-count { margin:1rem 0 .6rem; font-size:.95rem; }
.drug-pagination { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:.38rem; margin:1.25rem 0; }
.drug-pagination > :is(a,span) { display:grid; place-items:center; min-width:2.6rem; min-height:2.75rem; padding:.25rem .5rem; border:1px solid color-mix(in srgb,currentColor 28%,transparent); border-radius:.55rem; text-decoration:none; }
.drug-pagination [aria-current="page"] { background:color-mix(in srgb,currentColor 14%,transparent); border-color:currentColor; font-weight:700; }
.drug-pagination a:hover { border-color:currentColor; }
.drug-pagination a:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.drug-pagination > :is(.drug-page-gap,.drug-page-disabled) { border-color:transparent; min-width:1.5rem; }
.drug-page-disabled { opacity:.45; }
.drug-sale-notice {
    color:#751b26;
    background:#fff2f2;
    border:2px solid #c34149;
    border-radius:.8rem;
    padding:.8rem 1rem;
    margin:0 0 1.25rem;
    line-height:1.5;
}
.drug-sale-notice strong { display:block; font-size:1.05rem; }
.drug-sale-notice p { margin:.25rem 0 0; }
@media (prefers-reduced-motion: no-preference) {
    .drug-sale-notice { animation:drug-notice-pulse 2s ease-in-out 4; }
}
@keyframes drug-notice-pulse {
    0%,100% { box-shadow:0 0 0 0 transparent; }
    50% { box-shadow:0 0 0 4px #c3414970; }
}
.drug-update-panel { margin-bottom:1.6rem; padding:1.15rem; border:1px solid color-mix(in srgb,currentColor 20%,transparent); border-radius:1rem; }
.drug-update-panel h2,.drug-update-panel p { margin:.25rem 0 .75rem; }
.drug-update-jobs { display:grid; gap:.7rem; }
.drug-update-jobs article { padding:.8rem 1rem; border:1px solid color-mix(in srgb,currentColor 20%,transparent); border-radius:.75rem; }
.drug-update-jobs article p { margin:.25rem 0; line-height:1.55; }
.drug-update-jobs .drug-fields,.drug-update-panel .drug-fields { display:flex; flex-wrap:wrap; margin:.55rem 0; }
