/* Główny plik CSS importujący wszystkie komponenty */
/* v2026-02-11l: light mode = DARK hero on ALL subpages (matching main page) */

/* ALL @import MUST come before any CSS rules per CSS spec! */

/* Zmienne i Resetowanie */
@import url('variables.css');
@import url('reset.css');

/* Komponenty */
@import url('top-bar.css');
@import url('notification-bar.css');
@import url('header.css');
@import url('buttons.css');
@import url('hero.css');
@import url('hero-v2.css?v=20260223a');
@import url('header-transparent.css?v=20260211m');
@import url('pricing.css');
@import url('sections.css?v=20260223a');
@import url('footer.css?v=20260223e');
@import url('modals.css');
@import url('migration.css?v=20260223c');
@import url('domains.css');
@import url('about-us.css');
@import url('history.css');
@import url('achievements.css');
@import url('partnerships.css');
@import url('contact.css');
@import url('legal-documents.css');
@import url('legal-document.css');
@import url('trust-badges.css');
@import url('tech-tiles-fix.css?v=20260211a');
@import url('testimonials-v2.css?v=20260211a');

/* Animacje i Responsywność */
@import url('animations.css');
@import url('responsive.css');
@import url('scroll-top.css');
@import url('mobile-menu-bento.css?v=20260216a');

/* Baza Wiedzy */
@import url('knowledge-base.css');
@import url('wordpress-category.css');
@import url('article-style.css');
@import url('simple-toc.css');
@import url('improved-toc.css');
@import url('article-tags.css');
@import url('article-buttons-fix.css');
@import url('tag-styles-fix.css');

/* Alerty i komunikaty */
@import url('alerts.css');

/* DomainOS v6 Panel */
@import url('domain-panel.css');

/* Transparency Engine — Bento Grid */
@import url('transparency-engine.css');

/* ============================================
   INLINE STYLES — must come AFTER all @import
   ============================================ */

/* Google Verified Pill — inline for cache reliability */
.google-verified-pill {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 22px;
    background: linear-gradient(135deg, #0b1e3d 0%, #152d54 100%);
    border: 1.5px solid #34A853;
    border-radius: 50px;
    color: #fff;
    font-weight: 600;
    font-size: 0.9rem;
    box-shadow: 0 4px 15px rgba(11, 30, 61, 0.3), 0 0 0 1px rgba(52, 168, 83, 0.1);
    margin-top: 12px;
}
.google-verified-pill .google-g-icon { flex-shrink: 0; }
.google-verified-pill span { white-space: nowrap; }
body.dark-mode .google-verified-pill {
    background: linear-gradient(135deg, #060d1a 0%, #0c1a30 100%);
    border-color: rgba(52, 168, 83, 0.6);
    box-shadow: 0 4px 15px rgba(0,0,0,0.4), 0 0 0 1px rgba(52, 168, 83, 0.15);
}

/* Poprawki dla trybu dark mode */
body.dark-mode .cta-section {
    background-color: #121212 !important;
}

body.dark-mode .cta-section::before {
    background: #121212 !important;
    background-image: none !important;
}

body.dark-mode .section-header h2 {
    color: #ffffff;
}

/* Style dla wyników WHOIS w modalu - Wersja Poprawiona Estetyka */
.tool-output.active {
    display: block;
    margin-top: 1rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-medium);
    max-height: 450px;
    overflow-y: auto;
    background-color: var(--background-light-secondary);
}

.whois-results {
    padding: 1.25rem;
    font-size: 0.9rem;
    line-height: 1.6;
}

.whois-results h4 {
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--primary-color);
    margin-top: 1.5rem;
    margin-bottom: 0.8rem;
    padding-bottom: 0.6rem;
    border-bottom: 2px solid var(--primary-light);
}
.whois-results h4:first-of-type {
    margin-top: 0;
}

.whois-results dl {
    margin-bottom: 1.25rem;
    display: grid;
    grid-template-columns: minmax(150px, auto) 1fr;
    gap: 0.6rem 1.2rem;
    align-items: baseline;
}

.whois-results dt {
    font-weight: 500;
    color: var(--text-secondary);
    grid-column: 1;
    text-align: right;
    padding-right: 1rem;
    position: relative;
}

.whois-results dd {
    margin-left: 0;
    color: var(--text-primary);
    grid-column: 2;
    word-break: break-word;
    background-color: var(--background-code);
    padding: 0.3rem 0.6rem;
    border-radius: var(--border-radius-small);
    font-family: var(--font-mono);
}

.whois-results dd:not(:last-of-type) {
   margin-bottom: 0.3rem;
}

.whois-results pre.raw-whois-info {
    background-color: var(--background-code);
    padding: 1rem;
    border-radius: var(--border-radius-small);
    border: 1px dashed var(--border-color);
    font-family: var(--font-mono);
    font-size: 0.85rem;
    white-space: pre-wrap;
    word-wrap: break-word;
    color: var(--text-code);
    margin-top: 1rem;
    max-height: 250px;
    overflow-y: auto;
}

#whois-modal .modal-container {
    max-width: 800px;
}

#whois-modal .modal-content {
    max-height: 70vh;
    overflow-y: auto;
    padding: 1rem 1.5rem;
}


/* Style dla modala propagacji DNS */
#dns-modal .modal-container {
    max-width: 900px;
}

.dns-propagation-results-modal {
}

.dns-propagation-summary {
    padding: 0.8rem 1rem;
    background-color: var(--background-light-tertiary, #f1f3f5);
    border-bottom: 1px solid var(--border-color, #e1e4e8);
    margin: -1.5rem -1.5rem 1.5rem -1.5rem;
    border-top-left-radius: var(--border-radius-lg);
    border-top-right-radius: var(--border-radius-lg);
}

.dns-propagation-summary .summary-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: 0.9rem;
    color: var(--text-secondary, #6c757d);
}
.dns-propagation-summary .summary-stats span {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}
.dns-propagation-summary .summary-stats i {
    font-size: 1rem;
}
.dns-propagation-summary .summary-stats .success {
    color: var(--success-color, #28a745);
}
.dns-propagation-summary .summary-stats .warning {
    color: var(--warning-color, #ffc107);
}
.dns-propagation-summary .summary-stats .error {
    color: var(--danger-color, #dc3545);
}
.dns-propagation-summary .summary-stats .info {
    color: var(--info-color, #17a2b8);
}


/* Style tabeli propagacji DNS w modalu */
.dns-propagation-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
    margin-bottom: 1.5rem;
}

.dns-propagation-table thead {
    background-color: var(--background-table-header, #f8f9fa);
    position: sticky;
    top: -1.5rem;
    z-index: 1;
}

.dns-propagation-table th, 
.dns-propagation-table td {
    padding: 0.6rem 0.8rem;
    border-bottom: 1px solid var(--border-color-light, #dee2e6);
    text-align: left;
    vertical-align: middle;
}

.dns-propagation-table th {
    font-weight: 600;
    color: var(--text-secondary, #6c757d);
}
.dns-propagation-table th i {
    margin-right: 0.4em;
    color: var(--text-tertiary, #adb5bd);
}

.dns-propagation-table tbody tr:hover {
    background-color: var(--background-hover, #f1f3f5);
}

.dns-propagation-table td.result-cell {
    font-family: var(--font-mono);
    word-break: break-all;
}
.dns-propagation-table td.result-cell code {
    display: inline-block;
    margin-bottom: 0.2em;
    background-color: var(--background-code-light, #e9ecef);
    padding: 0.1em 0.4em;
    border-radius: var(--border-radius-sm);
}
.dns-propagation-table td.result-cell pre.txt-record {
    white-space: pre-wrap;
    word-break: break-all;
    margin: 0;
    padding: 0.3em 0.5em;
    background-color: var(--background-code-light, #e9ecef);
    border-radius: var(--border-radius-small);
    font-size: 0.9em;
    max-width: 400px;
}


.dns-propagation-table .dns-success td:nth-child(3) {
    color: var(--success-color-dark, #198754);
}
.dns-propagation-table .dns-not-found td:nth-child(3) {
    color: var(--warning-color-dark, #ff9a00);
    font-style: italic;
}
.dns-propagation-table .dns-error td:nth-child(3) {
    color: var(--danger-color-dark, #b02a37);
    font-style: italic;
}

/* Podsumowanie grupowania */
.dns-grouping-summary {
    margin-top: 1.5rem;
    padding: 1rem;
    background-color: var(--background-light-tertiary, #f1f3f5);
    border: 1px solid var(--border-color-light, #dee2e6);
    border-radius: var(--border-radius-medium);
    font-size: 0.9rem;
}
.dns-grouping-summary h5 {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.8rem;
}
.dns-grouping-summary ul {
    list-style: none;
    padding: 0;
    margin: 0 0 1rem 0;
}
.dns-grouping-summary li {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.4rem 0;
    border-bottom: 1px dashed var(--border-color-lighter, #e9ecef);
}
.dns-grouping-summary li:last-child {
    border-bottom: none;
}
.dns-grouping-summary li code {
    font-family: var(--font-mono);
    word-break: break-all;
    background-color: var(--background-code-light, #e9ecef);
    padding: 0.1em 0.4em;
    border-radius: var(--border-radius-sm);
}
.dns-grouping-summary p {
    margin: 0;
    color: var(--text-secondary, #6c757d);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.dns-grouping-summary p i {
     font-size: 1.1em;
}
.dns-grouping-summary p i.success { color: var(--success-color, #28a745); }
.dns-grouping-summary p i.warning { color: var(--warning-color, #ffc107); }
.dns-grouping-summary p i.info { color: var(--info-color, #17a2b8); }

/* Poprawki dark mode dla tabeli DNS */
body.dark-mode .dns-propagation-summary {
    background-color: var(--dm-background-light-tertiary, #3e444a);
    border-color: var(--dm-border-color, #495057);
}
body.dark-mode .dns-propagation-summary .summary-stats {
    color: var(--dm-text-secondary, #adb5bd);
}
body.dark-mode .dns-propagation-summary .summary-stats .success { color: var(--dm-success-color, #40c057); }
body.dark-mode .dns-propagation-summary .summary-stats .warning { color: var(--dm-warning-color, #fcc419); }
body.dark-mode .dns-propagation-summary .summary-stats .error { color: var(--dm-danger-color, #fa5252); }
body.dark-mode .dns-propagation-summary .summary-stats .info { color: var(--dm-info-color, #3bc9db); }

body.dark-mode .dns-propagation-table thead {
    background-color: var(--dm-background-table-header, #343a40);
}
body.dark-mode .dns-propagation-table th, 
body.dark-mode .dns-propagation-table td {
    border-color: var(--dm-border-color-light, #495057);
}
body.dark-mode .dns-propagation-table th {
    color: var(--dm-text-secondary, #adb5bd);
}
body.dark-mode .dns-propagation-table th i {
    color: var(--dm-text-tertiary, #868e96);
}
body.dark-mode .dns-propagation-table tbody tr:hover {
    background-color: var(--dm-background-hover, #3e444a);
}
body.dark-mode .dns-propagation-table td.result-cell code,
body.dark-mode .dns-grouping-summary li code {
    background-color: var(--dm-background-code-light, #495057);
}
body.dark-mode .dns-propagation-table td.result-cell pre.txt-record {
    background-color: var(--dm-background-code-light, #495057);
}

body.dark-mode .dns-propagation-table .dns-success td:nth-child(3) { color: var(--dm-success-color, #40c057); }
body.dark-mode .dns-propagation-table .dns-not-found td:nth-child(3) { color: var(--dm-warning-color, #fcc419); }
body.dark-mode .dns-propagation-table .dns-error td:nth-child(3) { color: var(--dm-danger-color, #fa5252); }

body.dark-mode .dns-grouping-summary {
    background-color: var(--dm-background-light-tertiary, #3e444a);
    border-color: var(--dm-border-color-light, #495057);
}
body.dark-mode .dns-grouping-summary h5 { color: var(--dm-text-primary, #dee2e6); }
body.dark-mode .dns-grouping-summary li { border-color: var(--dm-border-color-lighter, #5c636a); }
body.dark-mode .dns-grouping-summary p { color: var(--dm-text-secondary, #adb5bd); }
body.dark-mode .dns-grouping-summary p i.success { color: var(--dm-success-color, #40c057); }
body.dark-mode .dns-grouping-summary p i.warning { color: var(--dm-warning-color, #fcc419); }
body.dark-mode .dns-grouping-summary p i.info { color: var(--dm-info-color, #3bc9db); }

/* Koniec stylów dla modala DNS */

#whois-modal .error-message {
    color: var(--danger-color);
    font-weight: 500;
    padding: 1rem;
    text-align: center;
}

#whois-modal .loading-indicator.modal-loading {
    padding: 2rem;
    text-align: center;
    font-size: 1.1rem;
    color: var(--text-secondary);
}

.modal-close-button {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: var(--text-secondary);
    cursor: pointer;
    padding: 0;
    line-height: 1;
}

.modal-close-button:hover {
    color: var(--text-primary);
}

body.dark-mode .modal-close-button {
    color: var(--dm-text-secondary);
}

body.dark-mode .modal-close-button:hover {
    color: var(--dm-text-primary);
}

/* Prevent horizontal overflow */
html, body {
    overflow-x: clip;
    max-width: 100vw;
}

@media (max-width: 768px) {
    html, body {
        overflow-x: clip !important;
    }
    
    .container {
        max-width: 100%;
        overflow-x: clip;
    }
}
