/*
 * frontend-upgrade.css
 *
 * jQuery UI 1.13.2 gebruikt standaard het Sunny-thema. De oude site gebruikte
 * een aangepaste Sunny-variant met grijze panelen/buttons en witte tabs.
 * Deze override herstelt die vertrouwde kleuren, zodat de update van de
 * techniek niet zorgt voor een andere uitstraling.
 */

/* Panelen (filterbalk, dialogs, boom) */
.ui-widget-content {
    border: 1px solid #dddddd;
    background: #eeeeee url(frontend-upgrade/ui-bg_highlight-soft_100_eeeeee_1x100.png) 50% top repeat-x;
    color: #333333;
}

.ui-widget-content a {
    color: #333333;
}

/* Kopregels, waaronder de titelbalk van dialogs */
.ui-widget-header {
    border: 1px solid #e78f08;
    background: #f6a828 url(frontend-upgrade/ui-bg_gloss-wave_35_f6a828_500x100.png) 50% 50% repeat-x;
    color: #ffffff;
    font-weight: bold;
}

.ui-widget-header a {
    color: #ffffff;
}

/* Standaardwidgets: tabs, buttons */
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button {
    border: 1px solid #cccccc;
    background: #f6f6f6 url(frontend-upgrade/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x;
    font-weight: bold;
    color: #1c94c4;
}

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button {
    color: #1c94c4;
    text-decoration: none;
}

/* Hover/focus */
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
    border: 1px solid #fbcb09;
    background: #fdf5ce url(frontend-upgrade/ui-bg_glass_100_fdf5ce_1x400.png) 50% 50% repeat-x;
    font-weight: bold;
    color: #c77405;
}

.ui-state-hover a,
.ui-state-hover a:hover {
    color: #c77405;
    text-decoration: none;
}

/* Actieve tab / ingedrukte button */
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
.ui-button:active,
.ui-button.ui-state-active:hover {
    border: 1px solid #fbd850;
    background: #ffffff url(frontend-upgrade/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;
    font-weight: bold;
    color: #eb8f00;
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
    color: #eb8f00;
    text-decoration: none;
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    border: 1px solid #fed22f;
    background: #ffe45c url(frontend-upgrade/ui-bg_highlight-soft_75_ffe45c_1x100.png) 50% top repeat-x;
    color: #363636;
}

/* Icoontjes op knoppen hadden vroeger de oranje Sunny-kleur. */
.ui-button .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon,
.ui-button:active .ui-icon {
    background-image: url(frontend-upgrade/ui-icons_ef8c08_256x240.png);
}

/* Sluitknop van dialogs: transparant met een wit kruis, zoals voorheen. */
.ui-dialog .ui-dialog-titlebar-close {
    background: transparent;
    border: 0;
    box-shadow: none;
}

.ui-dialog .ui-dialog-titlebar-close .ui-icon {
    background-image: url(frontend-upgrade/ui-icons_ffffff_256x240.png);
}

/* De boom had vroeger een witte achtergrond en compacte regels. */
#treeBB {
    background: #ffffff;
}

#treeBB .jstree-anchor {
    height: auto;
    min-height: 18px;
    line-height: 1.3;
}

#treeBB .jstree-node {
    min-height: 20px;
    line-height: 1.3;
    margin-left: 20px;
    min-width: 20px;
}

#treeBB .jstree-icon:empty {
    width: 20px;
    height: 20px;
    line-height: 20px;
}

#treeBB .jstree-hovered {
    background: #FCE6C1;
    border-radius: 0;
    box-shadow: none;
}

#treeBB .jstree-clicked {
    background: #F8C26D;
    border-radius: 0;
    box-shadow: none;
}

/* ---- UX-verbeteringen ---- */

/* Visueel verborgen tekst voor schermlezers (bijv. label van het zoekveld). */
.verborgen {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

/* Kopjes boven de filters, buiten de panelen zodat de layout gelijk blijft. */
#filterBouwsoort,
#filterGebruiksfunctie {
    position: relative;
}

.filter-titel {
    position: absolute;
    top: -12px;
    left: 3px;
    font-size: 10px;
    line-height: 11px;
    color: #6b5f55;
    white-space: nowrap;
    cursor: help;
}

.filter-titel.actief {
    color: #b36b00;
    font-weight: bold;
}

#btnReset.filter-actief {
    border-color: #e78f08;
}

/* Melding bij het bekijken van niet-actuele regelgeving. */
.versie-melding {
    margin: 0 0 12px 0;
    padding: 8px 12px;
    background: #fff4d6;
    border: 1px solid #f0c36d;
    border-left: 4px solid #e78f08;
    color: #4c3000;
    font-size: 12px;
}

.versie-melding a {
    color: #005388;
    font-weight: bold;
}

/* Melding wanneer het filter alle artikelen wegfiltert. */
.geen-resultaten {
    margin: 12px 10px;
    padding: 10px 14px;
    background: #f4f8fb;
    border: 1px solid #b9d3e6;
    border-left: 4px solid #005388;
    color: #333;
    font-size: 13px;
}

.geen-resultaten a {
    color: #005388;
    font-weight: bold;
}

/* Status onder het zoekveld: aantal resultaten of hint. */
#zoekMelding {
    min-height: 16px;
    margin-top: 6px;
    font-size: 11px;
    color: #6b5f55;
}

/*
 * Smalle schermen: de layout is opgebouwd voor een vaste breedte van ca. 1210px.
 * Voorheen stond overflow op "hidden", waardoor de rechterkant (menu, filters,
 * "Herstel filter") op kleinere schermen onbereikbaar was. Nu kan er horizontaal
 * gescrolld worden; op ruime schermen verandert er niets.
 */
html {
    overflow-x: auto;
    overflow-y: hidden;
}

body {
    overflow-x: visible;
    overflow-y: hidden;
}

/* ---- Middelgrote UX-verbeteringen ---- */

/* Leesbaarheid: de opsomming van gebruiksfuncties en bouwsoort was te licht (contrast ~3:1). */
.lid_gf,
.afd_bs {
    color: #5f5c58;
    font-size: 0.85em;
}

/* Kruimelpad boven de inhoud: waar staat dit onderdeel in de regelgeving? */
.kruimelpad {
    margin: 0 0 10px 0;
    padding: 5px 8px;
    background: #f7f7f7;
    border: 1px solid #e3e3e3;
    font-size: 11px;
    line-height: 1.6;
    color: #444;
}

.kruimelpad-link {
    color: #005388;
    text-decoration: none;
}

.kruimelpad-link:hover {
    text-decoration: underline;
}

.kruimelpad-scheiding {
    color: #8a8782;
}

.kruimelpad-huidig {
    font-weight: bold;
    color: #333;
}

.kruimelpad-acties {
    float: right;
    margin-left: 12px;
}

.kruimelpad-actie {
    margin-left: 12px;
    color: #005388;
    white-space: nowrap;
}

.kruimelpad-status {
    margin-left: 8px;
    color: #2b7a2b;
}

/* Toon/verberg-knoppen: icoon met zichtbare tekst. */
#cntBB .toggleLink {
    font-size: 11px;
    font-weight: normal;
    text-decoration: none;
    color: #005388;
    white-space: nowrap;
}

#cntBB .toggleLink:hover .toggleTekst {
    text-decoration: underline;
}

/* Zoekresultaten met context. */
.zoekresult {
    cursor: pointer;
}

.zoekresult:hover {
    background-color: #FCE6C1;
}

.zoek-titel {
    display: block;
}

.zoek-fragment {
    display: block;
    margin-top: 3px;
    font-size: 11px;
    line-height: 1.4;
    color: #555;
}

mark.treffer {
    background: #ffe66b;
    color: inherit;
    padding: 0 1px;
}

/* Melding bij een laadfout. */
.laadfout {
    margin: 12px 10px;
    padding: 10px 14px;
    background: #fdf0ee;
    border: 1px solid #e3b4ad;
    border-left: 4px solid #b3261e;
    color: #333;
    font-size: 13px;
}

.laadfout a {
    color: #005388;
    font-weight: bold;
}

/* Zichtbare focus voor toetsenbordgebruikers (zonder de muisweergave te veranderen). */
a:focus-visible,
button:focus-visible,
select:focus-visible,
input:focus-visible,
.zoekresult:focus-visible,
#treeBB .jstree-anchor:focus-visible {
    outline: 2px solid #005388;
    outline-offset: 1px;
}

#treeBB .jstree-anchor:focus-visible {
    outline-offset: -2px;
}
