/* Plik: nieruchomosci-wyszukiwarka-pro/assets/css/nwp-style.css */

/* --- Ogólne style nowego kontenera wyszukiwarki --- */
.nwp-stylish-search-container { background-color: #fff; padding: 30px; border-radius: 8px; font-family: 'Outfit', sans-serif; margin-bottom: 30px; }
.nwp-search-form-stylish { display: flex; flex-direction: column; }
.nwp-fields-row { display: flex; gap: 25px; align-items: flex-end; margin-bottom: 20px; }
.nwp-field-group { display: flex; flex-direction: column; flex-grow: 1; }
.nwp-field-label { font-family: 'Outfit', sans-serif; font-size: 16px; color: #022436; margin-bottom: 8px; font-weight: 500; }
.nwp-select-wrapper { position: relative; display: flex; align-items: center; }
.nwp-search-form-stylish select { width: 100%; padding: 6px 15px; padding-right: 35px; font-family: 'Outfit', sans-serif; font-size: 18px; color: rgba(3, 37, 65, 0.5); border: none; border-bottom: 1px solid #dddddd; background-color: transparent; border-radius: 0; appearance: none; -webkit-appearance: none; -moz-appearance: none; background-image: url("data:image/svg+xml;charset=UTF8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23777777' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 10px center; background-size: 18px; cursor: pointer; max-width: 285px; }
.nwp-search-form-stylish select:focus { outline: none; border-bottom-color: #FD6F13; }
.nwp-search-form-stylish select option[value=""] { color: rgba(3, 37, 65, 0.5); }
.nwp-search-form-stylish select option:not([value=""]) { color: #222222; }
.nwp-search-button-wrapper { flex-shrink: 0; }
.nwp-search-button { background-color: #FD6F13; color: #FFFFFF !important; border: none; font-family: 'Outfit', sans-serif; font-size: 16px; font-weight: 600; border-radius: 5px; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px; transition: background-color 0.3s ease; height: 50.5px; box-sizing: border-box; padding: 15px 25px 15px 30px; min-width: 190px; }
.nwp-search-button svg { width: 1em; height: 1em; margin-right: 8px; }
.nwp-search-button:hover:not(:disabled) { background-color: #e05a00; }
.nwp-search-button:disabled { cursor: not-allowed; }
.nwp-clear-button-row { text-align: right; }
.nwp-clear-button { background: none; border: none; color: #777777; text-decoration: underline; cursor: pointer; font-family: 'Outfit', sans-serif; font-size: 14px; padding: 5px; }
.nwp-clear-button:hover { color: #FD6F13; }
.nwp-loading-spinner { display: inline-block; width: 16px; height: 16px; border: 2px solid rgba(0,0,0,.1); border-radius: 50%; border-top-color: #FD6F13; animation: nwp-spin 0.8s linear infinite; margin-left: 8px; flex-shrink: 0; }
@keyframes nwp-spin { to { transform: rotate(360deg); } }

/* --- NOWE STYLE DLA WYNIKÓW (ZASTĘPUJĄ STYLE TABELI) --- */
.nwp-results-container h3 { font-size: 1.5em; font-weight: bold; color: #4CAF50; /* Zielony kolor z obrazka */ margin-bottom: 1em; }
.nwp-results-list {
    display: table;
    width: 100%;
    border-collapse: collapse;
    margin-top: 15px;
    border: 1px solid #ddd;
    font-size: 0.95em;
}
.nwp-opiekun-card {
    display: table-row;
}
.nwp-opiekun-card:nth-child(even) {
    background-color: #f9f9f9;
}
.nwp-opiekun-name, .nwp-opiekun-stanowisko, .nwp-opiekun-phone, .nwp-opiekun-email {
    display: table-cell;
    padding: 12px 10px;
    border-bottom: 1px solid #ddd;
    vertical-align: middle;
}
.nwp-opiekun-name { width: 25%; font-weight: bold; }
.nwp-opiekun-phone { width: 20%; }
.nwp-opiekun-email { width: 30%; }
.nwp-opiekun-stanowisko { width: 25%; }
.nwp-opiekun-email a { color: #0073aa; text-decoration: none; }
.nwp-opiekun-email a:hover { text-decoration: underline; }
.nwp-no-results-in-list { padding: 15px; }

/* Układ mobilny dla wyników */
@media (max-width: 768px) {
    .nwp-results-list {
        display: block;
        border: none;
    }
    .nwp-opiekun-card {
        display: block;
        border: 1px solid #e0e0e0;
        border-radius: 4px;
        padding: 15px;
        margin-bottom: 15px;
        background-color: #fff;
    }
    .nwp-opiekun-name, .nwp-opiekun-stanowisko, .nwp-opiekun-phone, .nwp-opiekun-email {
        display: block;
        width: 100%;
        padding: 4px 0;
        border: none;
    }
    .nwp-opiekun-name { font-size: 1.2em; font-weight: bold; color: #333; margin-bottom: 5px; }
    .nwp-opiekun-stanowisko { font-style: italic; color: #555; margin-bottom: 8px; }
    .nwp-opiekun-phone { color: #444; }
}

/* Style komunikatów i Zgłoś Awarię */
.nwp-additional-info-section, .nwp-zglos-awarie-section { margin-top: 25px; padding-top: 20px; border-top: 1px solid #eee; }
.nwp-komunikaty-wrapper { margin-bottom: 25px; }
.nwp-toggle-komunikaty { display: inline-block; padding: 8px 12px; background-color: #f0f0f0; border: 1px solid #ccc; border-radius: 4px; text-decoration: none; color: #333; font-weight: bold; cursor: pointer; margin-bottom: 10px; transition: background-color 0.2s ease; }
.nwp-toggle-komunikaty:hover { background-color: #e0e0e0; }
.nwp-toggle-komunikaty .dashicons { margin-right: 5px; vertical-align: middle; transition: transform 0.3s ease; }
.nwp-toggle-komunikaty[aria-expanded="true"] .dashicons { transform: rotate(180deg); }
.nwp-komunikaty-list { margin-top: 10px; padding-left: 20px; border-left: 3px solid #0073aa; }
.nwp-komunikat-item { padding: 15px; margin-bottom: 15px; border: 1px solid #e9e9e9; border-radius: 4px; background-color: #fdfdfd; }
.nwp-komunikat-item:last-child { margin-bottom: 0; }
.nwp-komunikat-icon { margin-right: 8px; font-size: 20px; vertical-align: middle; }
.nwp-komunikat-icon.dashicons-info-outline { color: #0073aa; }
.nwp-komunikat-icon.dashicons-warning { color: #ffb900; }
.nwp-komunikat-icon.dashicons-megaphone { color: #46b450; }
.nwp-komunikat-icon.dashicons-hammer { color: #dc3232; }
.nwp-komunikat-icon.dashicons-dismiss { color: #777; }
.nwp-komunikat-tytul { font-size: 1.1em; font-weight: bold; margin-top: 0; margin-bottom: 8px; display: inline; }
.nwp-komunikat-tresc { font-size: 0.95em; line-height: 1.6; }
.nwp-komunikat-tresc p:last-child { margin-bottom: 0; }
.nwp-zglos-awarie-section { text-align: left; }
.nwp-zglos-awarie-tytul { font-size: 1.3em; color: #333; margin-top: 0; margin-bottom: 15px; }
.nwp-iok-button.button { background-color: #FD6F13; border-color: #FD6F13; color: #fff !important; padding: 12px 25px; font-size: 1em; font-weight: bold; text-decoration: none; border-radius: 5px; transition: background-color 0.3s ease; }
.nwp-iok-button.button:hover { background-color: #e05a00; border-color: #e05a00; color: #fff !important; }

/* Responsywność formularza */
@media (max-width: 991px) {
    .nwp-fields-row { flex-direction: column; align-items: stretch; gap: 15px; }
    .nwp-field-group { min-width: 100%; }
    .nwp-search-form-stylish select { max-width: none; }
    .nwp-search-button-wrapper { width: 100%; }
    .nwp-search-button { width: 100%; justify-content: center; }
    .nwp-clear-button-row { text-align: center; margin-top: 10px; }
}

/* Spinner-nakładka dla wyników */
.nwp-results-container.loading-results > *:not(.nwp-spinner-overlay) { opacity: 0.3; transition: opacity 0.3s ease-in-out; }
.nwp-results-container .nwp-spinner-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(255,255,255,0.7); z-index: 10; display: flex; align-items: center; justify-content: center; }
.nwp-results-container .nwp-spinner-overlay::before { content: ""; display: block; width: 40px; height: 40px; border: 5px solid rgba(0,0,0,.1); border-radius: 50%; border-top-color: #FD6F13; animation: nwp-spin 1s linear infinite; }