/* Etappe A: vorhandene Preispositionen, ausschließlich Recherche. */
#priceDatabase{min-width:0;--pd-border:var(--line);margin-bottom:24px}
#priceDatabase .pd-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
#priceDatabase h1{margin:0;font-size:clamp(24px,2vw,32px);line-height:1.2}
#priceDatabase .pd-sub{color:var(--muted);max-width:80ch;margin:6px 0 0}
#priceDatabase .pd-count{border:1px solid var(--line);border-radius:12px;padding:10px 16px;font-variant-numeric:tabular-nums;background:var(--panel)}
#priceDatabase .pd-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}
#priceDatabase .pd-search{flex:1 1 360px;min-width:0;display:grid;gap:5px;font-size:12px;color:var(--muted)}
#priceDatabase input,#priceDatabase select{color:var(--text);background:var(--panel);border:1px solid var(--line);padding:10px;border-radius:8px;min-width:0;max-width:100%;font:inherit}
#priceDatabase .pd-search input{width:100%;min-height:44px;font-size:16px}
#priceDatabase .pd-filters{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:16px;margin:12px 0}
#priceDatabase .pd-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px}
#priceDatabase label{display:grid;gap:6px;font-size:12px;min-width:0}
#priceDatabase .pd-range{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
#priceDatabase .pd-picker{border:1px solid var(--line);border-radius:8px;padding:10px;min-width:0}
#priceDatabase summary{cursor:pointer;overflow-wrap:anywhere}
#priceDatabase .pd-options{max-height:250px;overflow:auto;overscroll-behavior:contain;margin:10px 0}
#priceDatabase .pd-options label{display:flex;align-items:flex-start;gap:8px;padding:8px 0;min-height:44px;overflow-wrap:anywhere}
#priceDatabase .pd-options input{margin-top:3px;flex-shrink:0}
#priceDatabase .pd-picker input[type=search]{width:100%;margin-top:8px}
#priceDatabase .pd-chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}
#priceDatabase .pd-chip{font-size:12px;border:1px solid var(--line);border-radius:20px;padding:6px 12px;background:var(--panel);color:var(--text);min-height:34px}
#priceDatabase .pd-table-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;min-width:0}
#priceDatabase table{table-layout:auto;min-width:2850px;width:100%;white-space:normal}
#priceDatabase th{background:var(--panel2);font-size:12px;letter-spacing:0;text-transform:none;vertical-align:top}
#priceDatabase th button{border:0;background:transparent;color:var(--text);font:inherit;text-align:left;white-space:nowrap;overflow-wrap:normal;padding:0;min-height:36px;display:flex;align-items:center;gap:6px}
#priceDatabase td{vertical-align:top;font-size:13px;overflow-wrap:anywhere}
#priceDatabase td.pd-description{min-width:320px;max-width:420px;white-space:pre-wrap}
#priceDatabase td.pd-number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
#priceDatabase tbody tr:nth-child(even){background:var(--panel2)}
#priceDatabase tbody tr:hover{background:var(--selected-bg,var(--panel2))}
#priceDatabase small{display:block;color:var(--muted);margin-top:5px}
#priceDatabase mark{background:color-mix(in srgb,var(--gold) 24%,var(--panel));color:var(--text);border-radius:2px}
#priceDatabase .pd-footer{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px 0}
#priceDatabase .pd-pages{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#priceDatabase .pd-pages input{width:90px}
#priceDatabase .pd-status{min-height:24px;color:var(--muted);overflow-wrap:anywhere}
#priceDatabase [role=alert]:not(:empty){padding:12px;border:1px solid var(--red);border-radius:8px;color:var(--red);margin:10px 0}
#legacyPriceComparison{border-top:1px solid var(--line);padding-top:16px;margin-top:24px}
#legacyPriceComparison>summary{cursor:pointer;padding:12px 0;color:var(--muted)}
@media(max-width:760px){#priceDatabase .pd-heading{gap:10px}#priceDatabase .pd-toolbar>.btn{flex:1 1 130px}#priceDatabase .pd-filters{padding:12px}#priceDatabase .pd-filter-grid{grid-template-columns:minmax(0,1fr)}#priceDatabase .pd-pages{width:100%}#priceDatabase .pd-pages .btn{flex:1}#priceDatabase .pd-range{grid-template-columns:minmax(0,1fr)}#priceDatabase :is(button,.pd-chip,select){min-height:44px}#priceDatabase th button{min-height:44px}}
/* Ausreichende Spaltenbreiten statt vertikal zerfallender Wörter. */
#priceDatabase th,#priceDatabase td{min-width:125px}
#priceDatabase th{white-space:nowrap}
#priceDatabase :is(th,td):nth-child(2){min-width:190px}
#priceDatabase :is(th,td):nth-child(3){min-width:320px;max-width:420px}
#priceDatabase :is(th,td):nth-child(7){min-width:190px}
#priceDatabase :is(th,td):nth-child(9),#priceDatabase :is(th,td):nth-child(11){min-width:210px}
#priceDatabase :is(th,td):nth-child(12){min-width:240px}
#priceDatabase .pd-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;white-space:normal;line-height:1.5}
#priceDatabase [data-scroll]{max-height:max(280px,calc(var(--visible-height,100vh) - 360px))}
#priceDatabase thead th{position:sticky;top:0;z-index:2}
