/* Global rules of the dealer-portal design (design/dealer-portal). The design
   keeps nearly all styling inline; only what inline styles cannot express
   (hover, media queries, pseudo-elements) lives here. */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:'IBM Plex Sans',system-ui,sans-serif;color:#323232;background:#f4f4f5;-webkit-font-smoothing:antialiased}
a{color:#9B0000;text-decoration:none}
a:hover{color:#FE0000}
input,button,select,textarea{font-family:inherit}
input:focus,textarea:focus,select:focus{outline:none;border-color:#FE0000 !important;box-shadow:0 0 0 3px rgba(254,0,0,.12)}
.tnum{font-variant-numeric:tabular-nums}
.mono{font-family:'IBM Plex Mono',ui-monospace,monospace}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-thumb{background:#d3d3d6;border-radius:6px;border:3px solid #f4f4f5}
@keyframes toastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:1080px){ [data-hide-tablet]{display:none !important} }
@media (max-width:920px){ [data-hide-mobile]{display:none !important} [data-col2]{grid-template-columns:1fr !important} [data-stack]{flex-direction:column !important} [data-stack] [data-sticky]{position:static !important;width:auto !important} }
@media (max-width:720px){ [data-grid3]{grid-template-columns:1fr 1fr !important} [data-hnav]{display:none !important} }
/* nav buttons + tooltips */
.nvb{position:relative;display:inline-flex;align-items:center;justify-content:center;width:46px;height:100%;border:none;background:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.nvb:hover{background:#f6f6f7}
.nvb.on{border-bottom-color:#FE0000}
.nvb svg{stroke:#8a8d91}
.nvb.on svg{stroke:#323232}
.nvb .tip{position:absolute;top:44px;left:50%;transform:translateX(-50%) translateY(-3px);background:#1c1c1e;color:#fff;font-size:11.5px;font-weight:600;padding:5px 9px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:60}
.nvb:hover .tip{opacity:1;transform:translateX(-50%) translateY(0)}
.nvb .tip::before{content:"";position:absolute;top:-4px;left:50%;transform:translateX(-50%) rotate(45deg);width:8px;height:8px;background:#1c1c1e}
/* hover states the design expresses as style-hover */
.btn-red:hover{background:#9B0000 !important}
.row-hover:hover{background:#fcfcfc}
.card-hover:hover{border-color:#FE0000 !important}
.link-hover:hover{color:#9B0000 !important}
.x-hover:hover{color:#FE0000 !important}
.taxon{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:8px 10px;border:none;border-radius:8px;font-size:13.5px;font-weight:500;color:#575A5E;background:transparent;cursor:pointer;margin-bottom:1px}
.taxon.on{font-weight:600;color:#9B0000;background:#fff0f0}
.prose p{margin:0 0 10px}
.prose ul{margin:0 0 10px;padding-left:20px}
