/* PAW Ajax Live Suche – Frontend CSS
   Alle Werte kommen aus CSS-Custom-Properties, die der Outputfilter aus den
   Backend-Einstellungen erzeugt (--paw-als-*). Die Fallbacks hier entsprechen
   den Defaults, damit die Datei auch ohne injiziertes <style> korrekt aussieht. */

.paw-als-dropdown{
    position:absolute;
    z-index: 1000000;
    background: var(--paw-als-bg, #fff);
    color: var(--paw-als-fg, #111827);
    border: var(--paw-als-border-width, 1px) solid var(--paw-als-border-color, #e0e0e0);
    border-radius: var(--paw-als-radius, 16px);
    box-shadow: var(--paw-als-shadow, 0 18px 42px rgba(0,0,0,.18));
    overflow:hidden;

    /* Höhe */
    max-height: var(--paw-als-max-height, 560px);
}

.paw-als-scroll{
    max-height: var(--paw-als-max-height, 560px);
    overflow:auto;
}

/* -------------------------------------------------------
   Vollflächiges Overlay (Layout "Aussehen Such-Popup")
   Panel: volle Breite, Höhe konfigurierbar, fixed über dem Content.
   Backdrop dimmt die Seite dahinter (Farbe + Deckkraft einstellbar).
-------------------------------------------------------- */
.paw-als-backdrop{
    position: fixed;
    inset: 0;
    background: var(--paw-als-backdrop, rgba(0,0,0,.75));
    z-index: 999998;
    display: none;
}

.paw-als-dropdown--overlay{
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: var(--paw-als-overlay-height, 60vh);
    max-height: none;
    border-radius: 0 0 var(--paw-als-radius, 16px) var(--paw-als-radius, 16px);
    border-left: none;
    border-right: none;
    flex-direction: column; /* display:flex setzt das JS beim Öffnen */
}

/* Eigenes Suchfeld im Overlay (das Original liegt unter dem Panel) */
.paw-als-overlay-head{
    flex: 0 0 auto;
    padding: 14px 16px;
    border-bottom: 1px solid var(--paw-als-border-color, #e0e0e0);
    background: var(--paw-als-bg, #fff);
}

.paw-als-overlay-input{
    width: 100%;
    box-sizing: border-box;
    font-size: 18px;
    padding: 12px 16px;
    border-radius: var(--paw-als-btn-radius, 12px);
    border: 1px solid var(--paw-als-border-color, #e0e0e0);
    background: var(--paw-als-bg, #fff);
    color: var(--paw-als-fg, #111827);
    outline: none;
}

.paw-als-overlay-input:focus{
    border-color: var(--paw-als-accent, #2563eb);
    box-shadow: 0 0 0 3px var(--paw-als-accent, #2563eb);
}

.paw-als-overlay-content{
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}

.paw-als-overlay-content .paw-als-scroll{
    max-height: 100%;
    height: 100%;
}

/* -------------------------------------------------------
   Mega-Menü (Layout "Aussehen Such-Popup")
   Zentriertes Panel, zwei Spalten: links Highlights (bleiben
   beim Tippen sichtbar), rechts die Suchergebnisse.
-------------------------------------------------------- */
.paw-als-dropdown--megamenu{
    position: fixed;
    left: 50%;
    top: 28px;
    transform: translateX(-50%);
    width: min(var(--paw-als-mega-width, 1100px), calc(100vw - 32px));
    max-height: 80vh;
    border-radius: var(--paw-als-radius, 16px);
    flex-direction: column; /* display:flex setzt das JS beim Öffnen */
}

.paw-als-mega-body{
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
}

.paw-als-mega-highlights{
    flex: 0 0 var(--paw-als-mega-split, 42%);
    max-width: var(--paw-als-mega-split, 42%);
    min-height: 0;
    overflow: auto;
    border-right: 1px solid var(--paw-als-border-color, #e0e0e0);
    background: var(--paw-als-hover-bg, rgba(0,0,0,.015));
}

.paw-als-mega-results{
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.paw-als-mega-results .paw-als-scroll{
    max-height: 100%;
    height: 100%;
}

@media (max-width: 767px){
    /* Mobil: Highlights-Spalte ausblenden, Ergebnisse volle Breite */
    .paw-als-mega-highlights{ display: none !important; }
}

/* nicer scrollbar */
.paw-als-scroll::-webkit-scrollbar{ width: 10px; height: 10px; }
.paw-als-scroll::-webkit-scrollbar-thumb{ background: rgba(0,0,0,.18); border-radius: 10px; }
.paw-als-scroll::-webkit-scrollbar-track{ background: rgba(0,0,0,.04); }

.paw-als-loading,
.paw-als-empty{
    padding: 16px 16px;
    color: var(--paw-als-muted, #6b7280);
    font-size:14px;
}

/* Fehlertoleranz-Hinweis ("Ergebnisse für ...") */
.paw-als-corrected{
    padding: 10px 16px;
    font-size: 13px;
    color: var(--paw-als-muted, #6b7280);
    background: var(--paw-als-hover-bg, rgba(0,0,0,.03));
    border-bottom: 1px solid var(--paw-als-border-color, #e0e0e0);
}
.paw-als-corrected strong{
    color: var(--paw-als-fg, #111827);
}

/* -------------------------------------------------------
   Banner – full width, kompletter Banner = Link
   JS Klassen: paw-als-bannerfull-wrap/link/inner/img/label
-------------------------------------------------------- */
.paw-als-bannerfull-wrap{
    padding: 14px 14px 10px 14px;
}

.paw-als-bannerfull-link{
    display:block;
    text-decoration:none !important;
    color: inherit;
}

.paw-als-bannerfull-inner{
    width: 100%;
    border-radius: var(--paw-als-btn-radius, 16px);
    border: 1px solid var(--paw-als-border-color, #e0e0e0);
    background: var(--paw-als-bg, #fff);
    overflow: hidden;
    box-shadow: var(--paw-als-shadow, 0 10px 24px rgba(0,0,0,.10));
}

.paw-als-bannerfull-img{
    width: 100%;
    height: auto;
    display:block;
}

.paw-als-bannerfull-label{
    padding: 12px 14px;
    font-size: 16px;
    font-weight: 900;
    color: var(--paw-als-fg, #111827);
    border-top: 1px solid var(--paw-als-border-color, #e0e0e0);
    line-height: 1.2;
}

/* -------------------------------------------------------
   Sections
-------------------------------------------------------- */
.paw-als-section-title{
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 12px 16px;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .04em;
    color: var(--paw-als-muted, #6b7280);
    text-transform: uppercase;
    background: var(--paw-als-section-bg, #fff);
    border-bottom: 1px solid var(--paw-als-border-color, #e0e0e0);
}

.paw-als-section-body{
    padding: 6px 0;
}

.paw-als-item{
    display:flex;
    align-items:center;
    gap: 14px;
    padding: var(--paw-als-item-pad, 14px) 16px;
    border-radius: var(--paw-als-item-radius, 0);
    text-decoration:none !important;
    color: var(--paw-als-fg, #111827);
}

.paw-als-item:hover{
    background: var(--paw-als-hover-bg, rgba(0,0,0,.03));
    color: var(--paw-als-fg, #111827);
}

.paw-als-thumb{
    width: var(--paw-als-thumb-size, 62px);
    height: var(--paw-als-thumb-size, 62px);
    border-radius: var(--paw-als-thumb-radius, 14px);
    overflow:hidden;
    border: 1px solid var(--paw-als-border-color, #e0e0e0);
    background: var(--paw-als-hover-bg, rgba(0,0,0,.02));
    flex: 0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
}

/* Bildgröße 0 blendet die Bilder aus – das entscheidet das JS,
   damit kein leerer Rahmen stehen bleibt. */

.paw-als-thumb-img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.paw-als-thumb-ph{
    width: 26px;
    height: 26px;
    border-radius: 9px;
    background: rgba(0,0,0,.10);
}

.paw-als-text{
    min-width:0;
    display:block;
}

.paw-als-title{
    display:block;
    font-size: var(--paw-als-title-size, 16px);
    font-weight: 750;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.paw-als-item--noimg{
    padding-left: 18px; /* optisch wie mit thumb ausrichten */
}

.paw-als-item--noimg .paw-als-title{
    font-weight: 750;
}

/* -------------------------------------------------------
   Pagination "Mehr Artikel anzeigen"
-------------------------------------------------------- */
.paw-als-more-wrap{
    padding: 4px 16px 12px 16px;
}

.paw-als-more{
    display:block;
    width:100%;
    padding: 10px 14px;
    border-radius: var(--paw-als-btn-radius, 12px);
    border: 1px solid var(--paw-als-border-color, #e0e0e0);
    background: var(--paw-als-btn-bg, #fff);
    font-size: 14px;
    font-weight: 700;
    color: var(--paw-als-btn-fg, #111827);
    cursor: pointer;
}

.paw-als-more:hover{
    background: var(--paw-als-hover-bg, rgba(0,0,0,.03));
}

.paw-als-more:disabled{
    opacity: .6;
    cursor: default;
}

/* -------------------------------------------------------
   Footer "Alle Ergebnisse"
-------------------------------------------------------- */
.paw-als-footer{
    padding: 12px 14px 14px 14px;
    border-top: 1px solid var(--paw-als-border-color, #e0e0e0);
    background: var(--paw-als-bg, #fff);
}

.paw-als-all{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 14px;
    border-radius: var(--paw-als-btn-radius, 14px);
    border: 1px solid var(--paw-als-border-color, #e0e0e0);
    background: var(--paw-als-btn-bg, #fff);
    text-decoration:none !important;
    font-weight: 900;
    font-size: 15px;
    color: var(--paw-als-btn-fg, #111827);
    box-shadow: var(--paw-als-shadow, 0 10px 22px rgba(0,0,0,.08));
}

.paw-als-all:hover{
    transform: translateY(-1px);
    color: var(--paw-als-btn-fg, #111827);
}

.paw-als-all-arrow{
    font-weight: 950;
    opacity: .85;
}
