.stock-bell { position:relative; font-size:20px; }
.stock-bell[hidden],#stockBellCount[hidden] { display:none; }
#stockBellCount { position:absolute; top:-5px; right:-5px; border-radius:20px; padding:2px 6px; font-size:11px; background:var(--teal); color:var(--paper); border:2px solid var(--paper); }
.stock-alerts { width:min(680px,calc(100vw - 32px)); max-height:80vh; padding:24px; border:1px solid var(--line); border-radius:20px; background:var(--paper); color:var(--ink); box-shadow:0 20px 60px #0005; }
.stock-alerts::backdrop { background:#0007; }
.stock-alerts header,.stock-alert-tools,.stock-alert-item { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.stock-alerts h2 { margin:0; font-size:22px; }
.stock-alerts header p,.stock-alert-item p { color:var(--muted); margin:8px 0; overflow-wrap:anywhere; }
.stock-alert-tools { margin:20px 0; font-size:13px; }
.stock-alert-item { padding:0; border-top:1px solid var(--line); }
.stock-alert-row { flex:1; display:grid; gap:7px; min-width:0; width:100%; padding:18px 12px; border:0; border-radius:10px; background:transparent; color:var(--ink); text-align:left; cursor:pointer; }
.stock-alert-row:hover,.stock-alert-row:focus-visible { background:var(--line); outline:2px solid var(--teal); outline-offset:2px; }
.stock-alert-row strong { font-size:16px; overflow-wrap:anywhere; }
.stock-alert-row > span:last-child { color:var(--muted); font-size:13px; overflow-wrap:anywhere; }
.stock-duplicate-toast { position:fixed; z-index:10000; inset:auto; top:24px; left:50%; margin:0; transform:translateX(-50%); width:max-content; max-width:calc(100vw - 40px); padding:16px 22px; border:1px solid var(--teal); border-radius:12px; background:var(--paper); color:var(--ink); box-shadow:0 8px 32px #0004; overflow-wrap:anywhere; }
.stock-duplicate-toast[hidden] { display:none; }
.stock-alert-item h3 { font-size:16px; margin:6px 0; }
.stock-alert-kind { font-size:12px; color:var(--teal); font-weight:700; }
.stock-alert-item.is-read .stock-alert-kind { color:var(--muted); }
.stock-alert-actions { display:flex; flex-direction:column; gap:8px; flex-shrink:0; }
.stock-alert-empty { padding:30px 0; text-align:center; color:var(--muted); }
@media(max-width:520px) { .stock-alert-item { align-items:start; flex-direction:column; } .stock-alert-actions { flex-direction:row; } .stock-alerts { padding:16px; } }
#stockBellCount:not([hidden]) { display:inline-block; }

.manual-pdf-form { display:grid; gap:12px; padding:16px; border:1px solid var(--line); border-radius:12px; background:var(--paper); }
.manual-pdf-form label { display:grid; gap:6px; color:var(--muted); }
.manual-pdf-form input,.manual-pdf-form select { width:100%; box-sizing:border-box; padding:10px; border:1px solid var(--line); border-radius:8px; background:var(--paper); color:var(--ink); }
.manual-pdf-form p { margin:0; color:var(--muted); }
.manual-pdf-form button { justify-self:start; }
.dealer-integrations { width:min(1000px,calc(100vw - 32px)); }
.dealer-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:16px; margin:20px 0; }
.dealer-cards h3 { margin:0; }
.dealer-cards input[type=checkbox] { width:auto; justify-self:start; }
.dealer-history { overflow:auto; max-height:320px; }
.dealer-history td small { display:block; }
@media(max-width:650px) { .dealer-cards { grid-template-columns:1fr; } }

#stockAlertsSummary { display: flex; flex-wrap: wrap; gap: 8px; }
.stock-alert-filter[aria-pressed="true"] { outline: 2px solid currentColor; outline-offset: 1px; font-weight: 700; }

[data-stock-suggestions] { display:grid; gap:10px; margin:16px 0; }
.stock-document-requirement { width:100%; text-align:left; white-space:normal; padding:12px 16px; cursor:pointer; font:inherit; }
#stockSuggestionDialog header { align-items:flex-start; margin-bottom:18px; }
#stockSuggestionDialog header > div { min-width:0; }
#stockSuggestionDialog header > button { flex-shrink:0; }
#stockSuggestionDialog > p { overflow-wrap:anywhere; line-height:1.5; }
#stockSuggestionDialog iframe { border-radius:10px; }
