/* Mitbewerber-Pool (Michael 27.10.2026, app/modules/competitors, ?p=competitors). Finales Design (docs/design-final.md):
   Befund-Satz oben, Kennzahlen als Schrift, Panels in Tonstufe, Tabelle mit Linien nur zwischen Zeilen; am Handy jede Unterkunft als Karte.
   Orange nur für „nicht mehr im Booking-Vergleich", Blau für „eigenes Inserat", Grau für „ausgeblendet". */
.d2 .cmp-page .pr-tools{margin:0 0 12px}
/* Preise-Reiterleiste: mit dem Reiter „Mitbewerber" breiter als die Seitenspalte → umbrechen statt die Seite waagrecht zu verbreitern */
.d2 .pr-tools>.pr-views{max-width:100%;flex-wrap:wrap}
.d2 .cmp-apts{margin:0 0 4px}
html.d2 a.d2-chip{text-decoration:none;display:inline-flex;align-items:center}
html.d2 .cmp-apts a.d2-chip[aria-current=page]{background:var(--navy-bg);color:var(--on-navy)}
html.d2.dk .cmp-apts a.d2-chip[aria-current=page]{background:var(--primary);color:#fff}
.d2 .cmp-scroll{overflow-x:auto;padding:8px 12px}
.d2 .cmp-list th a{color:inherit;text-decoration:none;white-space:nowrap}
.d2 .cmp-list th a:hover{text-decoration:underline;text-underline-offset:3px}
.d2 .cmp-list th[aria-sort] a{color:var(--ink)}
.d2 .cmp-n{min-width:220px;max-width:360px}
.d2 .cmp-n>a{font-weight:700;overflow-wrap:anywhere}
.d2 .cmp-marks{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.d2 .cmp-adr{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.d2 .cmp-am{display:flex;flex-wrap:wrap;gap:4px}
.d2 .cmp-am span{font-size:12px;font-weight:600;padding:1px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink);white-space:nowrap}
.d2 .cmp-list tr.is-hidden td{opacity:.62}
.d2 .cmp-list tr.is-hidden td.cmp-act{opacity:1}
.d2 .cmp-act{white-space:nowrap}
.d2 .cmp-act form{margin:0}
.d2 .cmp-hide>summary{list-style:none;cursor:pointer}
.d2 .cmp-hide>summary::-webkit-details-marker{display:none}
.d2 .cmp-hide[open] form{display:flex;flex-direction:column;gap:6px;margin-top:8px;min-width:200px}
.d2 .cmp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.d2 .cmp-filter{margin:0 0 12px}
.d2 .cmp-fgrid{display:grid;gap:10px 14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr))}
.d2 .cmp-fgrid label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:650;margin:0}
.d2 .cmp-fgrid .cmp-wide{grid-column:1/-1}
.d2 .cmp-fgrid :is(input,select){min-height:44px;width:100%}
.d2 .cmp-fchecks{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:12px}
.d2 .cmp-check{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;margin:0}
.d2 .cmp-check input{width:20px;height:20px}
.d2 .cmp-hint{font-size:12.5px;margin:10px 0 0;max-width:var(--measure)}
.d2 .cmp-add .btnrow{margin-top:12px}
@media(max-width:699.98px){
 .d2 .cmp-scroll{padding:4px 12px;overflow:visible}
 .d2 :is(.cmp-list,.cmp-ov) thead{display:none}
 .d2 :is(.cmp-list,.cmp-ov),.d2 :is(.cmp-list,.cmp-ov) tbody{display:block;width:100%}
 .d2 :is(.cmp-list,.cmp-ov) tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:12px 0;border-bottom:1px solid var(--line)}
 .d2 :is(.cmp-list,.cmp-ov) tr:last-child{border-bottom:0}
 .d2 :is(.cmp-list,.cmp-ov) td{display:block;border:0;padding:0;text-align:left!important;min-width:0}
 .d2 :is(.cmp-list,.cmp-ov) td[data-l]::before{content:attr(data-l);display:block;font-size:11.5px;font-weight:650;color:var(--muted)}
 .d2 .cmp-list td.cmp-n,.d2 .cmp-list td.cmp-act,.d2 .cmp-ov td:first-child{grid-column:1/-1;max-width:none;min-width:0}
 .d2 .cmp-list td.cmp-n::before,.d2 .cmp-ov td:first-child::before{display:none}
 .d2 .cmp-n>a{font-size:15px}
 .d2 .cmp-act .btn{min-height:44px}
}
