/* Botão Front-end */
.sredir-button {
    color: #fff;
    padding: 12px 24px;
    border: none;
    cursor: pointer;
    font-size: 16px;
    border-radius: 4px;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    text-align: center;
    display: inline-block;
    text-decoration: none;
}

.sredir-button:hover {
    opacity: 0.9;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.sredir-button:active {
    transform: translateY(0);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

/* Admin Dashboard */
.sredir-admin {
    max-width: 1200px;
}

/* Dashboard Cards */
.sredir-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 20px;
}

.sredir-card {
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    overflow: hidden;
    width: calc(33.333% - 20px);
    box-sizing: border-box;
}

.sredir-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.sredir-card-header {
    padding: 16px 24px;
    background-color: #f9f9f9;
    border-bottom: 1px solid #eee;
}

.sredir-card-header h2 {
    margin: 0;
    color: #23282d;
    font-size: 18px;
}

.sredir-card-content {
    padding: 24px;
}

.sredir-info-box {
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sredir-info-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.sredir-info-item .dashicons {
    color: #666;
    font-size: 20px;
    padding-top: 2px;
}

.sredir-info-item label {
    display: block;
    margin-bottom: 4px;
    color: #666;
    font-size: 12px;
}

.sredir-info-item code {
    padding: 4px 8px;
    background: #f5f5f5;
    border-radius: 3px;
}

.sredir-action-buttons {
    display: flex;
    gap: 10px;
    margin: 20px 0;
}

.sredir-card h3 {
    color: #23282d;
    font-size: 16px;
    margin-top: 20px;
    margin-bottom: 10px;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 8px;
}

.sredir-table-container {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid #eee;
    border-radius: 4px;
}

.sredir-card table {
    width: 100%;
    border-collapse: collapse;
}

.sredir-card table th,
.sredir-card table td {
    padding: 8px 12px;
    text-align: left;
    border-bottom: 1px solid #f0f0f0;
}

.sredir-card table td a {
    word-break: break-all;
}

.sredir-card table th {
    font-weight: 600;
    background-color: #f9f9f9;
    position: sticky;
    top: 0;
    z-index: 1;
}

/* Form Elements */
.sredir-form-card {
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    padding: 20px;
    margin-bottom: 20px;
}

.sredir-form-card h2 {
    margin-top: 0;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-size: 18px;
}

.sredir-color-picker {
    width: 80px;
    height: 40px;
    padding: 0;
    border: 1px solid #ddd;
}

.button-link {
    background: none;
    border: none;
    color: #0073aa;
    text-decoration: none;
    padding: 0 4px;
    cursor: pointer;
}

.button-link:hover {
    color: #006799;
}

/* Empty State */
.sredir-empty-state {
    text-align: center;
    padding: 60px 0;
    margin-top: 20px;
}

.sredir-empty-state p {
    margin-top: 10px;
    font-size: 16px;
    color: #666;
}

/* Links Únicos */
.sredir-unique-link {
    display: inline-block;
    font-weight: 500;
    color: #0073aa;
    word-break: break-all;
}

.sredir-unique-link:hover {
    color: #0096dd;
}

/* Estilos para dropdown de ações */
.sredir-dropdown-actions {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-top: 15px;
}

.sredir-dropdown-actions .sredir-select {
    width: 100%;
    max-width: 300px;
    padding: 8px;
    border-radius: 4px;
    border: 1px solid #d0d0d0;
    background: #fafbfc;
    font-size: 15px;
}

/* DeepSites Styles */
.sredir-deepsite-page {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    line-height: 1.6;
    color: #333;
    margin: 0;
    padding: 0;
}

.sredir-deepsite-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.sredir-info-notice {
    background-color: #f0f8ff;
    border-left: 4px solid #0073aa;
    padding: 12px 20px;
    margin: 20px 0;
    border-radius: 2px;
}

.sredir-info-notice p {
    margin: 0.5em 0;
}

.sredir-info-notice strong {
    color: #23282d;
}

/* Diagnostic Page Styles */
.sredir-debug-box pre {
    background-color: #f9f9f9;
    border: 1px solid #ccc;
    padding: 15px;
    max-height: 600px;
    overflow-y: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
    font-size: 12px; /* Smaller font for readability */
    line-height: 1.5;
}

/* Tabs de navegação */
.sredir-tabs {
    margin-bottom: 20px;
    border-bottom: 1px solid #ccc;
    display: flex;
    gap: 4px;
}

.sredir-tab {
    padding: 8px 16px;
    background: #f8f8f8;
    border: 1px solid #ccc;
    border-bottom: none;
    border-radius: 4px 4px 0 0;
    text-decoration: none;
    color: #444;
    font-weight: 500;
}

.sredir-tab:hover {
    background: #f0f0f0;
}

.sredir-tab.active {
    background: #fff;
    border-bottom: 1px solid #fff;
    margin-bottom: -1px;
    color: #0073aa;
}

/* Responsividade */
@media screen and (max-width: 1200px) {
    .sredir-card {
        width: calc(50% - 20px);
    }
}

@media screen and (max-width: 782px) {
    .sredir-card {
        width: 100%;
    }
    
    .sredir-action-buttons {
        flex-direction: column;
    }
    
    .sredir-button {
        width: 100%;
        max-width: 100%;
    }
    
    .sredir-tabs {
        flex-direction: column;
        gap: 1px;
        border-bottom: none;
    }
    
    .sredir-tab {
        border-radius: 0;
        border: 1px solid #ccc;
    }
    
    .sredir-tab.active {
        border-bottom: 1px solid #0073aa;
    }
}

/* --- WordPress Admin Table Styles --- */
.sredir-admin .widefat {
    border-spacing: 0;
    width: 100%;
    clear: both;
    margin: 0;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
}

.sredir-admin .widefat thead th {
    background-color: #f9f9f9;
    padding: 10px 12px;
    font-weight: 600;
    text-align: left;
    border-bottom: 1px solid #e0e0e0;
}

.sredir-admin .widefat tbody th,
.sredir-admin .widefat tbody td {
    padding: 10px 12px;
    vertical-align: top;
    border-bottom: 1px solid #f0f0f0; /* Lighter border for rows */
}

.sredir-admin .widefat tbody tr:last-child td,
.sredir-admin .widefat tbody tr:last-child th {
    border-bottom: none;
}

.sredir-admin .widefat tbody tr:nth-child(odd) {
    background-color: #fcfcfc;
}

.sredir-admin .widefat tbody tr:hover {
    background-color: #f5f5f5;
}

/* Actions on Hover (for tables) */
.sredir-admin .widefat tbody tr .row-actions {
    position: relative;
    z-index: 10010 !important;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    padding: 2px 0;
    margin-top: 2px;
    display: flex;
    gap: 8px;
    border-radius: 4px;
}

.sredir-admin .widefat tbody tr:hover .row-actions {
    visibility: visible;
}

.sredir-admin .widefat .row-actions span {
    padding: 0 5px;
    border-right: 1px solid #ddd;
}
.sredir-admin .widefat .row-actions span:last-child {
    border-right: none;
    padding-right: 0;
}
.sredir-admin .widefat .row-actions .delete a {
    color: #a00;
}
.sredir-admin .widefat .row-actions .delete a:hover {
    color: #c00;
}

/* Specific Column Styles */
.sredir-admin .widefat .column-name strong {
    font-weight: 600;
}

.sredir-admin .widefat .column-shortcode code {
     padding: 4px 8px;
    background: #f0f0f0;
    border-radius: 3px;
    font-size: 12px;
}

.sredir-admin .widefat .column-clicks {
    text-align: center;
    font-weight: 600;
}

.sredir-admin .widefat .column-stats button.button-link {
    padding: 0;
    font-size: 13px;
}

/* --- Enhancements for Form Cards --- */
.sredir-form-card h2 {
    font-size: 16px; /* Slightly smaller heading */
    padding-bottom: 10px;
    margin-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.sredir-form-card h2 .dashicons {
    vertical-align: text-bottom;
    margin-right: 5px;
    color: #555;
}

.sredir-form-card .form-table th {
    width: 200px; /* Fixed width for labels */
    padding-right: 20px;
}

.sredir-form-card .form-table td {
    padding-bottom: 15px; /* More spacing between rows */
}

.sredir-form-card p.description {
    color: #666;
    font-size: 13px;
}

/* Remove outdated card styles if they conflict */
.sredir-cards, .sredir-card {
    /* Comment out or remove if using tables instead */
    /* display: flex; */ 
    /* ... other flex/card styles ... */
    /* We'll keep .sredir-form-card for edit pages */
}

/* Dropdowns, Menus e Tooltips - Correção de z-index */
.sredir-admin .dropdown,
.sredir-admin .dropdown-menu,
.sredir-admin .ui-menu,
.sredir-admin .select2-container,
.sredir-admin .select2-dropdown,
.sredir-admin .sredir-tooltip,
.sredir-admin .sredir-popover,
.sredir-admin .autocomplete-suggestions,
.sredir-admin .context-menu {
    position: absolute !important;
    z-index: 999999 !important;
    background: #fff;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    border-radius: 6px;
    border: 1px solid #d0d0d0;
    min-width: 180px;
    padding: 8px 0;
    font-size: 15px;
    color: #222;
    margin-top: 2px;
    overflow: visible !important;
}

.sredir-admin .dropdown.open,
.sredir-admin .dropdown-menu.open,
.sredir-admin .ui-menu.open,
.sredir-admin .select2-container--open,
.sredir-admin .select2-dropdown--above,
.sredir-admin .select2-dropdown--below,
.sredir-admin .autocomplete-suggestions.open,
.sredir-admin .context-menu.open {
    display: block !important;
}

.sredir-admin .dropdown-menu li,
.sredir-admin .ui-menu li,
.sredir-admin .select2-results__option,
.sredir-admin .autocomplete-suggestion {
    padding: 8px 18px;
    cursor: pointer;
    transition: background 0.2s;
    border: none;
    background: none;
}
.sredir-admin .dropdown-menu li:hover,
.sredir-admin .ui-menu li:hover,
.sredir-admin .select2-results__option--highlighted,
.sredir-admin .autocomplete-suggestion:hover {
    background: #f0f8ff;
    color: #0073aa;
}

.sredir-admin .select2-container--default .select2-selection--single {
    border-radius: 4px;
    border: 1px solid #d0d0d0;
    height: 38px;
    padding: 6px 12px;
    font-size: 15px;
    background: #fff;
    box-shadow: none;
}

.sredir-admin .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 36px;
    right: 8px;
}

.sredir-admin .select2-dropdown {
    border-radius: 6px;
    border: 1px solid #d0d0d0;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    z-index: 999999 !important;
}

.sredir-admin .form-table th,
.sredir-admin .form-table td {
    vertical-align: middle;
    padding: 12px 10px;
}

.sredir-admin .form-table input[type="text"],
.sredir-admin .form-table input[type="email"],
.sredir-admin .form-table input[type="url"],
.sredir-admin .form-table input[type="number"],
.sredir-admin .form-table select {
    width: 100%;
    max-width: 350px;
    padding: 8px 10px;
    border-radius: 4px;
    border: 1px solid #d0d0d0;
    font-size: 15px;
    background: #fafbfc;
    box-sizing: border-box;
}

.sredir-admin .form-table input[type="color"] {
    width: 50px;
    height: 32px;
    padding: 0;
    border: 1px solid #d0d0d0;
}

.sredir-admin .form-table textarea {
    width: 100%;
    min-height: 80px;
    border-radius: 4px;
    border: 1px solid #d0d0d0;
    font-size: 15px;
    background: #fafbfc;
    padding: 8px 10px;
    box-sizing: border-box;
}

.sredir-admin .form-table .description {
    color: #666;
    font-size: 13px;
    margin-top: 4px;
}

.sredir-admin .button, .sredir-admin .button-primary {
    border-radius: 4px;
    font-size: 15px;
    padding: 8px 18px;
    margin: 2px 0;
}

.sredir-admin .button-primary {
    background: #0073aa;
    color: #fff;
    border: none;
}
.sredir-admin .button-primary:hover {
    background: #005177;
}

.sredir-admin .sredir-form-card {
    margin-bottom: 28px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    border-radius: 8px;
    border: 1px solid #e0e0e0;
}

.sredir-admin .sredir-form-card h2 {
    font-size: 18px;
    margin-bottom: 18px;
    color: #23282d;
}

.sredir-admin .widefat thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #f9f9f9;
}

.sredir-admin .widefat tbody tr:hover {
    background: #f0f8ff;
}

.sredir-admin .widefat td, .sredir-admin .widefat th {
    vertical-align: middle;
}

.sredir-admin .sredir-empty-state {
    padding: 40px 0;
    color: #888;
    font-size: 16px;
}

/* Corrigir overflow para containers */
.sredir-admin,
.sredir-admin .wrap {
    overflow: visible !important;
}

/* Garantir que .row-actions fique sempre acima dos outros elementos da tabela */
.sredir-admin .widefat .row-actions {
    position: relative;
    z-index: 10010 !important;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    padding: 2px 0;
    margin-top: 2px;
    display: flex;
    gap: 8px;
    border-radius: 4px;
}

.sredir-admin .widefat td.column-name {
    position: relative;
    z-index: 10000;
    background: #fff;
}

.sredir-admin .widefat .row-actions span a {
    color: #0073aa;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.2s;
}
.sredir-admin .widefat .row-actions span a:hover {
    color: #005177;
    text-decoration: underline;
}

/* Modal de estatísticas */
body.sredir-modal-open {
    overflow: hidden;
}

.sredir-modal {
    display: none;
    position: fixed;
    z-index: 100000;
    inset: 0;
    overflow: hidden;
}

.sredir-modal-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.58);
}

.sredir-modal-content {
    box-sizing: border-box;
    position: relative;
    z-index: 100001;
    width: min(920px, calc(100vw - 40px));
    max-height: calc(100vh - 64px);
    margin: 32px auto;
    padding: 24px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #c3c4c7;
    border-radius: 8px;
    box-shadow: 0 16px 45px rgba(0, 0, 0, 0.28);
}

.sredir-modal-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 36px;
    height: 36px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #646970;
    font-size: 28px;
    line-height: 1;
    border: 0;
    border-radius: 4px;
    background: transparent;
    cursor: pointer;
}

.sredir-modal-close:hover,
.sredir-modal-close:focus {
    color: #1d2327;
    background: #f0f0f1;
    outline: 2px solid transparent;
    box-shadow: 0 0 0 1px #2271b1;
}

.sredir-modal-content h2 {
    margin: 0 48px 16px 0;
    padding: 0 0 14px;
    border-bottom: 1px solid #dcdcde;
    font-size: 18px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

#sredir-modal-body {
    max-height: calc(100vh - 155px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 2px;
}

.sredir-stats-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 0 20px;
    padding: 14px 16px;
    background: #f6f7f7;
    border: 1px solid #dcdcde;
    border-radius: 6px;
}

.sredir-stats-summary-label {
    color: #50575e;
    font-weight: 600;
}

.sredir-stats-summary-value {
    min-width: 42px;
    text-align: right;
    color: #1d2327;
    font-size: 20px;
}

.sredir-stats-section-title {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 1.4;
}

.sredir-stats-table-wrap {
    width: 100%;
    overflow-x: auto;
    border: 1px solid #dcdcde;
    border-radius: 6px;
}

.sredir-modal-content table.sredir-stats-table {
    width: 100%;
    min-width: 0;
    margin: 0;
    table-layout: fixed;
    border: 0;
    box-shadow: none;
}

.sredir-stats-table th,
.sredir-stats-table td {
    box-sizing: border-box;
    vertical-align: top;
}

.sredir-stats-table th:first-child,
.sredir-stats-table td:first-child {
    width: auto;
}

.sredir-stats-count-column {
    width: 90px;
    text-align: center !important;
    white-space: nowrap;
}

.sredir-stats-count {
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.sredir-stats-url-cell {
    min-width: 0;
}

.sredir-stats-url {
    display: block;
    max-width: 100%;
    color: #2271b1;
    text-decoration: none;
    overflow-wrap: anywhere;
    word-break: break-word;
    white-space: normal;
    line-height: 1.45;
}

.sredir-stats-url:hover,
.sredir-stats-url:focus {
    color: #135e96;
    text-decoration: underline;
}

.sredir-stats-empty {
    margin: 16px 0 4px;
    color: #646970;
}

@media (max-width: 782px) {
    .sredir-modal-content {
        width: calc(100vw - 24px);
        max-height: calc(100vh - 24px);
        margin: 12px auto;
        padding: 18px;
    }

    #sredir-modal-body {
        max-height: calc(100vh - 112px);
    }

    .sredir-modal-content h2 {
        margin-right: 42px;
        font-size: 16px;
    }

    .sredir-stats-summary {
        padding: 12px;
    }

    .sredir-stats-count-column {
        width: 72px;
    }

    .sredir-stats-table th,
    .sredir-stats-table td {
        padding: 9px 8px;
    }
}


/* ========================================================================== 
   Sredir Dashboard 1.9.9 — WordPress-native redesign
   ========================================================================== */
.sredir-dashboard-page {
    max-width: none;
    margin: 0 20px 0 0;
    padding-top: 18px;
    color: #1d2327;
}

.sredir-dashboard-page * {
    box-sizing: border-box;
}

.sredir-page-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 16px;
}

.sredir-page-heading {
    min-width: 0;
}

.sredir-page-heading .sredir-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    margin-bottom: 6px;
    padding: 3px 9px;
    border-radius: 999px;
    background: #eaf2ff;
    color: #135e96;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.sredir-page-heading h1 {
    margin: 0;
    color: #101828;
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.08;
    letter-spacing: -0.025em;
}

.sredir-page-heading p {
    max-width: 760px;
    margin: 8px 0 0;
    color: #646970;
    font-size: 14px;
}

.sredir-page-tools {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    min-width: min(100%, 460px);
    padding-top: 8px;
}

.sredir-search-box {
    display: flex;
    align-items: center;
    gap: 8px;
    width: min(320px, 100%);
    height: 42px;
    padding: 0 12px;
    border: 1px solid #dcdcde;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16,24,40,.04);
}

.sredir-search-box:focus-within {
    border-color: #2271b1;
    box-shadow: 0 0 0 1px #2271b1;
}

.sredir-search-box .dashicons {
    flex: 0 0 auto;
    color: #646970;
}

.sredir-search-box input[type="search"] {
    width: 100%;
    min-width: 0;
    height: 38px;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    box-shadow: none;
    color: #1d2327;
}

.sredir-create-menu {
    position: relative;
    flex: 0 0 auto;
}

.sredir-create-menu > summary {
    list-style: none;
}

.sredir-create-menu > summary::-webkit-details-marker {
    display: none;
}

.sredir-create-summary.button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 42px;
    padding: 0 15px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
}

.sredir-create-summary .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

.sredir-create-popover {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 100;
    width: 310px;
    padding: 8px;
    border: 1px solid #dcdcde;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(16,24,40,.16);
}

.sredir-create-popover a {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 11px;
    border-radius: 7px;
    color: #1d2327;
    text-decoration: none;
}

.sredir-create-popover a:hover,
.sredir-create-popover a:focus {
    background: #f6f7f7;
    color: #135e96;
    outline: none;
}

.sredir-create-popover a > .dashicons {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    padding: 5px;
    border-radius: 7px;
    background: #f0f6fc;
    color: #2271b1;
}

.sredir-create-popover a span:last-child {
    display: grid;
    gap: 3px;
}

.sredir-create-popover small {
    color: #646970;
    line-height: 1.35;
}

.sredir-dashboard-tabs {
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 0 0 18px;
    padding: 4px;
    overflow-x: auto;
    border: 1px solid #dcdcde;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16,24,40,.03);
}

.sredir-dashboard-tabs a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 0 13px;
    border-radius: 6px;
    color: #50575e;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

.sredir-dashboard-tabs a:hover,
.sredir-dashboard-tabs a:focus {
    background: #f6f7f7;
    color: #135e96;
    outline: none;
}

.sredir-dashboard-tabs a.is-active {
    background: #f0f6fc;
    color: #135e96;
    box-shadow: inset 0 0 0 1px #c5d9ed;
}

.sredir-dashboard-tabs .dashicons {
    width: 17px;
    height: 17px;
    font-size: 17px;
}

.sredir-overview-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.sredir-overview-strip > div,
.sredir-overview-strip > a {
    display: grid;
    grid-template-columns: 36px auto;
    grid-template-rows: auto auto;
    column-gap: 10px;
    align-items: center;
    min-height: 70px;
    padding: 12px 14px;
    border: 1px solid #dcdcde;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16,24,40,.03);
}

.sredir-overview-strip > a {
    color: inherit;
    text-decoration: none;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.sredir-overview-strip > a:hover,
.sredir-overview-strip > a:focus {
    border-color: #9ec5e5;
    box-shadow: 0 3px 10px rgba(34,113,177,.10);
    transform: translateY(-1px);
    outline: none;
}

.sredir-overview-strip .dashicons {
    grid-row: 1 / 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 9px;
    background: #f0f6fc;
    color: #2271b1;
    font-size: 19px;
}

.sredir-overview-strip strong {
    color: #101828;
    font-size: 19px;
    line-height: 1.1;
}

.sredir-overview-strip small {
    color: #646970;
    font-size: 12px;
}

.sredir-dashboard-sections {
    display: grid;
    gap: 16px;
}

.sredir-resource-card {
    scroll-margin-top: 48px;
    overflow: hidden;
    border: 1px solid #dcdcde;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(16,24,40,.045);
}

.sredir-resource-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 17px 18px;
    border-bottom: 1px solid #e8eaed;
    background: linear-gradient(180deg, #fff 0%, #fcfcfd 100%);
}

.sredir-resource-heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 13px;
}

.sredir-resource-heading h2 {
    margin: 0;
    color: #101828;
    font-size: 18px;
    line-height: 1.25;
}

.sredir-resource-heading p {
    margin: 3px 0 0;
    color: #646970;
    font-size: 13px;
}

.sredir-resource-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 11px;
}

.sredir-resource-icon .dashicons {
    width: 22px;
    height: 22px;
    font-size: 22px;
}

.sredir-resource-icon-blue { background: #eaf2ff; color: #1467d9; }
.sredir-resource-icon-purple { background: #f1ecff; color: #6c45d9; }
.sredir-resource-icon-teal { background: #e7f8f4; color: #008f7a; }

.sredir-resource-meta {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 0 0 auto;
}

.sredir-count-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 32px;
    padding: 0 11px;
    border-radius: 999px;
    background: #f6f7f7;
    color: #50575e;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.sredir-count-pill .dashicons {
    width: 15px;
    height: 15px;
    color: #2271b1;
    font-size: 15px;
}

.sredir-primary-action.button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 7px;
    font-weight: 600;
}

.sredir-primary-action .dashicons {
    width: 17px;
    height: 17px;
    font-size: 17px;
}

.sredir-list-scroll {
    max-height: 410px;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    background: #fff;
}

.sredir-list-scroll:focus {
    outline: 2px solid #2271b1;
    outline-offset: -2px;
}

.sredir-list-header,
.sredir-list-row {
    display: grid;
    grid-template-columns: minmax(190px, .9fr) minmax(230px, 1.1fr) minmax(440px, 1.45fr);
    gap: 16px;
    align-items: center;
    min-width: 880px;
}

.sredir-list-header {
    position: sticky;
    top: 0;
    z-index: 6;
    min-height: 38px;
    padding: 0 16px;
    border-bottom: 1px solid #dcdcde;
    background: #f6f7f7;
    color: #646970;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.sredir-list-row {
    min-height: 70px;
    padding: 10px 16px;
    border-bottom: 1px solid #f0f0f1;
    transition: background .15s ease;
}

.sredir-list-row:last-child {
    border-bottom: 0;
}

.sredir-list-row:hover {
    background: #fbfcfd;
}

.sredir-list-row[hidden] {
    display: none !important;
}

.sredir-item-identity,
.sredir-item-detail {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
}

.sredir-item-identity > span:last-child,
.sredir-item-detail {
    min-width: 0;
}

.sredir-item-identity strong {
    display: block;
    overflow: hidden;
    color: #1d2327;
    font-size: 13px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-item-identity small,
.sredir-item-detail small {
    display: block;
    margin-top: 3px;
    overflow: hidden;
    color: #787c82;
    font-size: 11px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-row-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border-radius: 9px;
}

.sredir-row-icon .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

.sredir-row-icon-blue { background: #eef5ff; color: #1467d9; }
.sredir-row-icon-purple { background: #f4f0ff; color: #6c45d9; }
.sredir-row-icon-teal { background: #eaf9f5; color: #008f7a; }

.sredir-item-detail {
    display: block;
}

.sredir-item-detail code {
    display: inline-block;
    max-width: 100%;
    padding: 3px 6px;
    overflow: hidden;
    border-radius: 5px;
    background: #f6f7f7;
    color: #3c434a;
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-public-url {
    display: flex;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    overflow: hidden;
    color: #2271b1;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-public-url .dashicons {
    flex: 0 0 14px;
    width: 14px;
    height: 14px;
    font-size: 14px;
}

.sredir-public-url:hover,
.sredir-public-url:focus {
    color: #135e96;
    text-decoration: underline;
}

.sredir-row-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
    min-width: 0;
}

.sredir-action-button.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 34px;
    padding: 0 10px;
    border-radius: 6px;
    border-color: #c3c4c7;
    background: #fff;
    color: #2c3338;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
}

.sredir-action-button.button:hover,
.sredir-action-button.button:focus {
    border-color: #2271b1;
    background: #f6fbff;
    color: #135e96;
}

.sredir-action-button .dashicons {
    width: 15px;
    height: 15px;
    font-size: 15px;
}

.sredir-stats-action.button {
    border-color: #d9ccff;
    background: #f8f5ff;
    color: #5b32b5;
}

.sredir-stats-action.button:hover,
.sredir-stats-action.button:focus {
    border-color: #8c6ee6;
    background: #f3efff;
    color: #4d269f;
}

.sredir-delete-action.button {
    border-color: #f0c4c7;
    background: #fff7f7;
    color: #b32d2e;
}

.sredir-delete-action.button:hover,
.sredir-delete-action.button:focus {
    border-color: #d63638;
    background: #fff0f0;
    color: #8a2424;
}

.sredir-copy-action.is-copied {
    border-color: #68b984;
    background: #f0fff4;
    color: #1d7044;
}

.sredir-card-empty {
    display: grid;
    justify-items: center;
    gap: 5px;
    padding: 34px 20px;
    color: #646970;
    text-align: center;
}

.sredir-card-empty > .dashicons {
    width: 34px;
    height: 34px;
    margin-bottom: 3px;
    color: #8c8f94;
    font-size: 34px;
}

.sredir-card-empty strong {
    color: #2c3338;
    font-size: 14px;
}

.sredir-card-empty p {
    margin: 0;
}

.sredir-section-no-results .sredir-list-scroll {
    min-height: 74px;
}

.sredir-section-no-results .sredir-list-scroll::after {
    content: "Nenhum item desta seção corresponde à busca.";
    display: block;
    padding: 24px 16px;
    color: #787c82;
    text-align: center;
}

.sredir-search-empty {
    margin-top: 16px;
    padding: 28px;
    border: 1px dashed #c3c4c7;
    border-radius: 10px;
    background: #fff;
    color: #646970;
    text-align: center;
}

.sredir-search-empty[hidden] {
    display: none;
}

.sredir-search-empty .dashicons {
    width: 30px;
    height: 30px;
    color: #8c8f94;
    font-size: 30px;
}

.sredir-search-empty strong {
    display: block;
    margin-top: 6px;
    color: #2c3338;
}

.sredir-search-empty p {
    margin: 4px 0 0;
}

.sredir-stats-empty-state {
    display: grid;
    justify-items: center;
    gap: 5px;
    padding: 30px 16px 14px;
    color: #646970;
    text-align: center;
}

.sredir-stats-empty-state .dashicons {
    width: 32px;
    height: 32px;
    color: #8c8f94;
    font-size: 32px;
}

.sredir-stats-empty-state strong {
    color: #2c3338;
}

.sredir-stats-empty-state p {
    margin: 0;
}

@media (max-width: 1200px) {
    .sredir-page-hero {
        align-items: stretch;
        flex-direction: column;
    }

    .sredir-page-tools {
        width: 100%;
        min-width: 0;
        justify-content: flex-start;
        padding-top: 0;
    }

    .sredir-search-box {
        width: min(420px, 100%);
    }

    .sredir-list-header,
    .sredir-list-row {
        grid-template-columns: minmax(190px, .9fr) minmax(220px, 1fr) minmax(400px, 1.35fr);
        min-width: 840px;
    }
}

@media (max-width: 782px) {
    .sredir-dashboard-page {
        margin-right: 10px;
        padding-top: 12px;
    }

    .sredir-page-tools {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .sredir-search-box {
        width: 100%;
    }

    .sredir-dashboard-tabs {
        margin-right: 0;
    }

    .sredir-overview-strip {
        grid-template-columns: 1fr;
    }

    .sredir-resource-header {
        align-items: flex-start;
        flex-direction: column;
        padding: 15px;
    }

    .sredir-resource-meta {
        width: 100%;
        justify-content: space-between;
    }

    .sredir-list-scroll {
        max-height: 330px;
    }

    .sredir-list-header,
    .sredir-list-row {
        grid-template-columns: 220px 260px 430px;
        min-width: 950px;
    }
}

@media (max-width: 520px) {
    .sredir-page-tools {
        grid-template-columns: 1fr;
    }

    .sredir-create-menu,
    .sredir-create-summary.button {
        width: 100%;
    }

    .sredir-create-summary.button {
        justify-content: center;
    }

    .sredir-create-popover {
        right: auto;
        left: 0;
        width: min(310px, calc(100vw - 32px));
    }

    .sredir-resource-meta {
        align-items: stretch;
        flex-direction: column;
    }

    .sredir-primary-action.button {
        justify-content: center;
    }
}

/* ========================================================================== 
   Sredir 1.9.9.2 — Configurações e Diagnóstico integrados ao dashboard
   ========================================================================== */
.sredir-subpage .sredir-subpage-hero {
    margin-bottom: 16px;
}

.sredir-subpage-tools {
    min-width: 0;
}

.sredir-secondary-action.button,
.sredir-settings-actions .button,
.sredir-repair-form .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 8px;
    font-weight: 600;
}

.sredir-secondary-action .dashicons,
.sredir-settings-actions .dashicons,
.sredir-repair-form .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

.sredir-settings-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(280px, .8fr);
    gap: 16px;
    align-items: start;
}

.sredir-panel-card {
    overflow: hidden;
    border: 1px solid #dcdcde;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(16, 24, 40, .045);
}

.sredir-panel-card-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 17px 18px;
    border-bottom: 1px solid #e8eaed;
    background: linear-gradient(180deg, #fff 0%, #fcfcfd 100%);
}

.sredir-panel-card-header h2 {
    margin: 0;
    color: #101828;
    font-size: 17px;
    line-height: 1.25;
}

.sredir-panel-card-header p {
    margin: 3px 0 0;
    color: #646970;
    font-size: 13px;
}

.sredir-panel-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #f0f6fc;
    color: #2271b1;
}

.sredir-panel-icon .dashicons {
    width: 20px;
    height: 20px;
    font-size: 20px;
}

.sredir-settings-form {
    padding: 0 18px;
}

.sredir-setting-row {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(240px, .8fr);
    gap: 28px;
    align-items: center;
    padding: 22px 0;
    border-bottom: 1px solid #f0f0f1;
}

.sredir-setting-copy label {
    display: block;
    margin-bottom: 5px;
    color: #1d2327;
    font-size: 14px;
}

.sredir-setting-copy p {
    max-width: 620px;
    margin: 0;
    color: #646970;
    line-height: 1.5;
}

.sredir-setting-control {
    display: grid;
    justify-items: start;
    gap: 7px;
}

.sredir-setting-control select {
    width: min(100%, 330px) !important;
    min-height: 40px;
    border-radius: 7px !important;
    background: #fff !important;
}

.sredir-setting-control small {
    max-width: 100%;
    color: #787c82;
    overflow-wrap: anywhere;
}

.sredir-settings-actions {
    display: flex;
    justify-content: flex-end;
    padding: 18px 0;
}

.sredir-toggle {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    cursor: pointer;
    user-select: none;
}

.sredir-toggle input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.sredir-toggle-ui {
    position: relative;
    display: inline-block;
    width: 44px;
    height: 24px;
    border-radius: 999px;
    background: #c3c4c7;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .06);
    transition: background .16s ease;
}

.sredir-toggle-ui::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .25);
    transition: transform .16s ease;
}

.sredir-toggle input:checked + .sredir-toggle-ui {
    background: #2271b1;
}

.sredir-toggle input:checked + .sredir-toggle-ui::after {
    transform: translateX(20px);
}

.sredir-toggle input:focus-visible + .sredir-toggle-ui {
    outline: 2px solid #2271b1;
    outline-offset: 2px;
}

.sredir-toggle-label {
    color: #50575e;
    font-weight: 600;
}

.sredir-info-list {
    margin: 0;
    padding: 6px 18px 14px;
}

.sredir-info-list > div {
    display: grid;
    grid-template-columns: minmax(110px, .8fr) minmax(0, 1.2fr);
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid #f0f0f1;
}

.sredir-info-list > div:last-child {
    border-bottom: 0;
}

.sredir-info-list dt {
    color: #646970;
}

.sredir-info-list dd {
    min-width: 0;
    margin: 0;
    color: #1d2327;
    font-weight: 600;
    text-align: right;
    overflow-wrap: anywhere;
}

.sredir-info-list code {
    white-space: normal;
    overflow-wrap: anywhere;
}

.sredir-settings-help {
    display: flex;
    gap: 9px;
    margin: 0 18px 18px;
    padding: 12px;
    border-radius: 8px;
    background: #f6f7f7;
    color: #50575e;
}

.sredir-settings-help .dashicons {
    flex: 0 0 auto;
    color: #dba617;
}

.sredir-settings-help p {
    margin: 0;
    line-height: 1.45;
}

.sredir-diagnostic-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.sredir-summary-tile {
    display: grid;
    grid-template-columns: 38px auto;
    grid-template-rows: auto auto;
    column-gap: 10px;
    align-items: center;
    min-height: 76px;
    padding: 13px 14px;
    border: 1px solid #dcdcde;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .03);
}

.sredir-summary-tile > .dashicons {
    grid-row: 1 / 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 9px;
    background: #f0f6fc;
    color: #2271b1;
    font-size: 20px;
}

.sredir-summary-tile strong {
    color: #101828;
    font-size: 20px;
    line-height: 1.1;
}

.sredir-summary-tile small {
    color: #646970;
}

.sredir-summary-tile.is-ok > .dashicons {
    background: #edfaef;
    color: #1a7f37;
}

.sredir-summary-tile.has-warning > .dashicons {
    background: #fff8e5;
    color: #996800;
}

.sredir-diagnostic-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.25fr);
    gap: 16px;
    align-items: start;
    margin-bottom: 16px;
}

.sredir-inline-alert {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 16px 18px 10px;
    padding: 12px 13px;
    border: 1px solid transparent;
    border-radius: 8px;
}

.sredir-inline-alert > .dashicons {
    flex: 0 0 auto;
    margin-top: 1px;
}

.sredir-inline-alert strong {
    display: block;
    margin-bottom: 2px;
}

.sredir-inline-alert p {
    margin: 0;
    color: #50575e;
}

.sredir-inline-alert.is-success {
    border-color: #b8e5c4;
    background: #f0f9f2;
    color: #1a7f37;
}

.sredir-inline-alert.is-warning {
    border-color: #f0d98a;
    background: #fff9e8;
    color: #8a6116;
}

.sredir-status-list {
    padding: 4px 18px 14px;
}

.sredir-status-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 14px;
    align-items: center;
    padding: 11px 0;
    border-bottom: 1px solid #f0f0f1;
}

.sredir-status-row:last-child {
    border-bottom: 0;
}

.sredir-status-row > strong {
    min-width: 34px;
    text-align: right;
}

.sredir-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-height: 24px;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

.sredir-status-pill .dashicons {
    width: 14px;
    height: 14px;
    font-size: 14px;
}

.sredir-status-pill.is-ok {
    background: #edfaef;
    color: #1a7f37;
}

.sredir-status-pill.has-warning {
    background: #fff4e5;
    color: #996800;
}

.sredir-warning-details {
    margin: 0 18px 14px;
    border: 1px solid #e2e4e7;
    border-radius: 8px;
    background: #fcfcfd;
}

.sredir-warning-details summary {
    padding: 11px 12px;
    font-weight: 600;
    cursor: pointer;
}

.sredir-warning-details ul {
    max-height: 220px;
    margin: 0;
    padding: 4px 30px 12px 34px;
    overflow-y: auto;
}

.sredir-warning-details li {
    margin-bottom: 7px;
    overflow-wrap: anywhere;
}

.sredir-repair-form {
    display: flex;
    justify-content: flex-end;
    padding: 0 18px 18px;
}

.sredir-environment-card {
    margin-bottom: 24px;
}

.sredir-environment-columns {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(260px, .6fr);
    gap: 24px;
    padding: 18px;
}

.sredir-environment-columns h3 {
    margin: 0 0 10px;
    font-size: 14px;
}

.sredir-plugin-list {
    max-height: 260px;
    overflow-y: auto;
    border: 1px solid #e2e4e7;
    border-radius: 8px;
}

.sredir-plugin-list > div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 11px;
    border-bottom: 1px solid #f0f0f1;
}

.sredir-plugin-list > div:last-child {
    border-bottom: 0;
}

.sredir-plugin-list span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.sredir-plugin-list code {
    flex: 0 0 auto;
}

.sredir-theme-box {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 14px;
    border: 1px solid #e2e4e7;
    border-radius: 8px;
    background: #fcfcfd;
}

.sredir-theme-box > .dashicons {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: #f0f6fc;
    color: #2271b1;
    font-size: 20px;
}

.sredir-theme-box strong,
.sredir-theme-box small {
    display: block;
}

.sredir-theme-box small {
    margin-top: 2px;
    color: #646970;
}

@media (max-width: 1000px) {
    .sredir-settings-layout,
    .sredir-diagnostic-grid,
    .sredir-environment-columns {
        grid-template-columns: 1fr;
    }

    .sredir-diagnostic-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 782px) {
    .sredir-subpage .sredir-page-tools {
        display: flex;
    }

    .sredir-setting-row {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .sredir-settings-actions {
        justify-content: stretch;
    }

    .sredir-settings-actions .button,
    .sredir-repair-form .button,
    .sredir-secondary-action.button {
        width: 100%;
    }

    .sredir-repair-form {
        padding-top: 4px;
    }

    .sredir-status-row {
        grid-template-columns: 1fr auto;
    }

    .sredir-status-row .sredir-status-pill {
        grid-column: 1 / -1;
        justify-self: start;
    }
}

@media (max-width: 520px) {
    .sredir-diagnostic-summary {
        grid-template-columns: 1fr;
    }

    .sredir-info-list > div {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .sredir-info-list dd {
        text-align: left;
    }
}

.sredir-maintenance-card {
    margin-bottom: 16px;
}

.sredir-maintenance-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px;
}

.sredir-maintenance-action strong {
    color: #1d2327;
}

.sredir-maintenance-action p {
    max-width: 720px;
    margin: 4px 0 0;
    color: #646970;
    line-height: 1.45;
}

.sredir-maintenance-action form {
    flex: 0 0 auto;
    margin: 0;
}

.sredir-maintenance-action .button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 0 13px;
    border-radius: 7px;
    font-weight: 600;
}

.sredir-maintenance-action .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

@media (max-width: 782px) {
    .sredir-maintenance-action {
        align-items: stretch;
        flex-direction: column;
    }

    .sredir-maintenance-action .button {
        width: 100%;
        justify-content: center;
    }
}

/* ========================================================================== 
   Sredir 1.9.9.3 — Visão Geral analítica
   ========================================================================== */
.sredir-analytics-dashboard {
    display: grid;
    gap: 16px;
}

.sredir-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.sredir-kpi-card {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    min-width: 0;
    padding: 17px;
    border: 1px solid #dcdcde;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(16,24,40,.045);
}

.sredir-kpi-card.sredir-kpi-primary {
    border-color: #b8d7ee;
    background: linear-gradient(135deg, #f8fbff 0%, #f0f6fc 100%);
}

.sredir-kpi-icon {
    display: inline-flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: #f0f6fc;
    color: #2271b1;
}

.sredir-kpi-icon .dashicons {
    width: 22px;
    height: 22px;
    font-size: 22px;
}

.sredir-kpi-card > div {
    min-width: 0;
}

.sredir-kpi-card small,
.sredir-kpi-card span {
    display: block;
}

.sredir-kpi-card small {
    margin-bottom: 4px;
    color: #646970;
    font-size: 12px;
    font-weight: 600;
}

.sredir-kpi-card strong {
    display: block;
    overflow: hidden;
    margin-bottom: 4px;
    color: #101828;
    font-size: 26px;
    line-height: 1.08;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-kpi-card strong.sredir-kpi-name {
    font-size: 17px;
    line-height: 1.3;
}

.sredir-kpi-card > div > span {
    overflow: hidden;
    color: #72777c;
    font-size: 11px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-analytics-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(330px, .85fr);
    gap: 16px;
}

.sredir-analytics-grid-bottom {
    grid-template-columns: minmax(0, 1.3fr) minmax(320px, .7fr);
}

.sredir-analytics-card {
    overflow: hidden;
    min-width: 0;
    border: 1px solid #dcdcde;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(16,24,40,.045);
}

.sredir-analytics-card > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 17px 18px 13px;
    border-bottom: 1px solid #f0f0f1;
}

.sredir-analytics-card > header h2 {
    margin: 2px 0 4px;
    color: #101828;
    font-size: 17px;
    line-height: 1.25;
}

.sredir-analytics-card > header p {
    margin: 0;
    color: #646970;
    font-size: 12px;
    line-height: 1.45;
}

.sredir-card-kicker {
    color: #2271b1;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.sredir-report-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    border-radius: 999px;
    background: #f0f6fc;
    color: #135e96;
    font-size: 11px;
    font-weight: 700;
}

.sredir-performance-layout {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    padding: 22px 20px;
}

.sredir-donut-wrap {
    display: flex;
    justify-content: center;
}

.sredir-donut {
    display: grid;
    width: 150px;
    height: 150px;
    place-items: center;
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.03);
}

.sredir-donut > div {
    display: grid;
    width: 98px;
    height: 98px;
    place-items: center;
    align-content: center;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 1px 5px rgba(16,24,40,.08);
    text-align: center;
}

.sredir-donut strong {
    color: #101828;
    font-size: 23px;
    line-height: 1.1;
}

.sredir-donut small {
    margin-top: 2px;
    color: #72777c;
    font-size: 11px;
}

.sredir-breakdown-list {
    display: grid;
    gap: 11px;
}

.sredir-breakdown-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 12px;
    padding: 8px 10px;
    border-radius: 9px;
    color: inherit;
    text-decoration: none;
}

.sredir-breakdown-row:hover,
.sredir-breakdown-row:focus {
    background: #f8f9fa;
    outline: none;
}

.sredir-breakdown-label,
.sredir-breakdown-values {
    display: flex;
    align-items: center;
}

.sredir-breakdown-label {
    min-width: 0;
    gap: 8px;
    color: #2c3338;
    font-size: 12px;
    font-weight: 600;
}

.sredir-breakdown-label i {
    flex: 0 0 9px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
}

.sredir-dot-blue { background: #2271b1; }
.sredir-dot-purple { background: #7c3aed; }
.sredir-dot-teal { background: #0f766e; }

.sredir-breakdown-values {
    gap: 8px;
}

.sredir-breakdown-values strong {
    color: #101828;
    font-size: 13px;
}

.sredir-breakdown-values small {
    min-width: 42px;
    color: #72777c;
    text-align: right;
}

.sredir-progress {
    grid-column: 1 / -1;
    overflow: hidden;
    height: 5px;
    border-radius: 999px;
    background: #edf0f2;
}

.sredir-progress i {
    display: block;
    height: 100%;
    min-width: 0;
    border-radius: inherit;
    background: #2271b1;
}

.sredir-breakdown-row:nth-child(2) .sredir-progress i { background: #7c3aed; }
.sredir-breakdown-row:nth-child(3) .sredir-progress i { background: #0f766e; }

.sredir-ranking-list {
    padding: 8px 12px 12px;
}

.sredir-ranking-row {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 10px 6px;
    border-bottom: 1px solid #f0f0f1;
    color: inherit;
    text-decoration: none;
}

.sredir-ranking-row:last-child {
    border-bottom: 0;
}

.sredir-ranking-row:hover,
.sredir-ranking-row:focus {
    background: #fbfbfc;
    outline: none;
}

.sredir-rank-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 27px;
    height: 27px;
    border-radius: 8px;
    background: #f0f6fc;
    color: #2271b1;
    font-size: 11px;
    font-weight: 700;
}

.sredir-rank-main {
    min-width: 0;
}

.sredir-rank-main > strong,
.sredir-rank-main > small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-rank-main > strong {
    color: #2c3338;
    font-size: 12px;
}

.sredir-rank-main > small {
    margin-top: 2px;
    color: #72777c;
    font-size: 10px;
}

.sredir-rank-main > span {
    display: block;
    overflow: hidden;
    height: 4px;
    margin-top: 6px;
    border-radius: 999px;
    background: #edf0f2;
}

.sredir-rank-main > span i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2271b1, #72aee6);
}

.sredir-rank-clicks {
    color: #101828;
    font-size: 13px;
}

.sredir-destination-ranking {
    display: grid;
    padding: 7px 15px 14px;
}

.sredir-destination-row {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    padding: 10px 2px;
    border-bottom: 1px solid #f0f0f1;
}

.sredir-destination-row:last-child {
    border-bottom: 0;
}

.sredir-destination-row .dashicons {
    width: 17px;
    height: 17px;
    color: #8c8f94;
    font-size: 17px;
}

.sredir-destination-row a {
    overflow: hidden;
    min-width: 0;
    color: #2271b1;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-destination-row a:hover,
.sredir-destination-row a:focus {
    color: #135e96;
    text-decoration: underline;
}

.sredir-destination-row strong {
    min-width: 38px;
    color: #101828;
    text-align: right;
}

.sredir-quick-links {
    display: grid;
    padding: 7px 13px 13px;
}

.sredir-quick-links > a {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 18px;
    gap: 10px;
    align-items: center;
    padding: 9px 5px;
    border-bottom: 1px solid #f0f0f1;
    color: inherit;
    text-decoration: none;
}

.sredir-quick-links > a:last-child {
    border-bottom: 0;
}

.sredir-quick-links > a:hover,
.sredir-quick-links > a:focus {
    background: #fbfbfc;
    outline: none;
}

.sredir-quick-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: #f6f7f7;
    color: #50575e;
}

.sredir-quick-icon .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

.sredir-quick-blue { background: #f0f6fc; color: #2271b1; }
.sredir-quick-purple { background: #f6f0ff; color: #7c3aed; }
.sredir-quick-teal { background: #edf9f7; color: #0f766e; }

.sredir-quick-links > a > span:nth-child(2) {
    min-width: 0;
}

.sredir-quick-links strong,
.sredir-quick-links small {
    display: block;
}

.sredir-quick-links strong {
    color: #2c3338;
    font-size: 12px;
}

.sredir-quick-links small {
    margin-top: 2px;
    color: #72777c;
    font-size: 10px;
}

.sredir-quick-links > a > .dashicons:last-child {
    color: #a7aaad;
}

.sredir-report-empty {
    display: grid;
    min-height: 155px;
    place-items: center;
    align-content: center;
    gap: 7px;
    padding: 20px;
    color: #72777c;
    text-align: center;
}

.sredir-report-empty .dashicons {
    width: 28px;
    height: 28px;
    color: #a7aaad;
    font-size: 28px;
}

.sredir-report-empty p {
    margin: 0;
}

.sredir-report-note {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    margin: 0;
    padding: 9px 12px;
    border: 1px solid #dcdcde;
    border-radius: 8px;
    background: #f9f9fa;
    color: #646970;
    font-size: 11px;
    line-height: 1.45;
}

.sredir-report-note .dashicons {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    margin-top: 1px;
    font-size: 16px;
}

@media (max-width: 1180px) {
    .sredir-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sredir-analytics-grid,
    .sredir-analytics-grid-bottom {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 782px) {
    .sredir-kpi-grid {
        grid-template-columns: 1fr;
    }

    .sredir-performance-layout {
        grid-template-columns: 1fr;
        padding: 18px 15px;
    }

    .sredir-donut {
        width: 138px;
        height: 138px;
    }

    .sredir-donut > div {
        width: 90px;
        height: 90px;
    }
}

/* Analytics histórico — 2.0 */
.sredir-analytics-v2,
.sredir-reports-page {
    display: grid;
    gap: 18px;
    margin-top: 18px;
}

.sredir-analytics-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 10px;
    padding: 14px;
    border: 1px solid #dcdcde;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .03);
}

.sredir-analytics-filter label {
    display: grid;
    gap: 5px;
    min-width: 150px;
}

.sredir-analytics-filter label > span {
    color: #50575e;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.sredir-analytics-filter select,
.sredir-analytics-filter input[type="date"] {
    min-height: 36px;
    margin: 0;
}

.sredir-analytics-filter .button {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 36px;
}

.sredir-analytics-filter .button .dashicons {
    width: 16px;
    height: 16px;
    font-size: 16px;
}

.sredir-custom-date-field {
    display: none !important;
}

.sredir-custom-date-field.is-visible {
    display: grid !important;
}

.sredir-report-item-filter {
    flex: 1 1 260px;
    min-width: 220px !important;
}

.sredir-period-label {
    align-self: center;
    margin-left: auto;
    padding: 6px 10px;
    border-radius: 999px;
    background: #f0f6fc;
    color: #135e96;
    font-size: 12px;
    font-weight: 700;
}

.sredir-analytics-migration-note {
    margin: 0 !important;
    border-radius: 10px;
}

.sredir-kpi-grid-five {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.sredir-growth.is-positive { color: #008a20 !important; }
.sredir-growth.is-negative { color: #b32d2e !important; }
.sredir-growth.is-neutral { color: #50575e !important; }

.sredir-kpi-date {
    font-size: 20px !important;
}

.sredir-trend-wrapper {
    min-width: 0;
}

.sredir-trend-card {
    min-width: 0;
    padding: 18px 18px 14px;
}

.sredir-trend-card > h3 {
    margin: 0 0 14px;
}

.sredir-trend-chart {
    display: flex;
    align-items: stretch;
    gap: 5px;
    min-height: 250px;
    padding: 12px 8px 0;
    overflow-x: auto;
    border-top: 1px solid #f0f0f1;
}

.sredir-trend-point {
    display: grid;
    grid-template-rows: 26px 1fr 24px;
    align-items: end;
    justify-items: center;
    flex: 1 0 24px;
    min-width: 24px;
    height: 220px;
}

.sredir-trend-value {
    max-width: 48px;
    overflow: hidden;
    color: #50575e;
    font-size: 10px;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sredir-trend-point i {
    display: block;
    width: min(18px, 72%);
    min-height: 2px;
    border-radius: 5px 5px 2px 2px;
    background: linear-gradient(180deg, #2271b1, #72aee6);
    transition: height .2s ease, opacity .2s ease;
}

.sredir-trend-point:hover i {
    opacity: .78;
}

.sredir-trend-point small {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    color: #787c82;
    font-size: 9px;
    line-height: 1;
}

.sredir-report-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 20px;
    border: 1px solid #dcdcde;
    border-radius: 12px;
    background: #fff;
}

.sredir-report-toolbar h2 {
    margin: 2px 0 4px;
    font-size: 22px;
}

.sredir-report-toolbar p {
    margin: 0;
    color: #646970;
}

.sredir-report-toolbar .button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.sredir-report-kpis {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sredir-report-table-wrap {
    max-height: 390px;
    overflow: auto;
    border-top: 1px solid #f0f0f1;
}

.sredir-report-table {
    table-layout: fixed;
    border: 0;
    box-shadow: none;
}

.sredir-report-table th:first-child,
.sredir-report-table td:first-child {
    width: auto;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.sredir-report-table .sredir-number-column {
    width: 92px;
    text-align: right;
    white-space: nowrap;
}

.sredir-report-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #fff;
}

.sredir-ranking-row:not(a) {
    cursor: default;
}

@media (max-width: 1400px) {
    .sredir-kpi-grid-five {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1180px) {
    .sredir-kpi-grid-five,
    .sredir-report-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 782px) {
    .sredir-analytics-filter,
    .sredir-report-toolbar {
        align-items: stretch;
    }

    .sredir-analytics-filter label,
    .sredir-analytics-filter .button,
    .sredir-report-item-filter,
    .sredir-report-toolbar .button {
        width: 100%;
        max-width: none;
    }

    .sredir-period-label {
        width: 100%;
        margin-left: 0;
        text-align: center;
    }

    .sredir-kpi-grid-five,
    .sredir-report-kpis {
        grid-template-columns: 1fr;
    }

    .sredir-report-toolbar {
        flex-direction: column;
        align-items: flex-start;
    }

    .sredir-trend-point {
        flex-basis: 28px;
        min-width: 28px;
    }
}
.sredir-chart-note {
    margin: 8px 4px 0;
    color: #787c82;
    font-size: 11px;
}
/* Ações extras de gestão */
.sredir-row-actions {
    flex-wrap: wrap;
}

/* Estado dos recursos */
.sredir-item-title-line {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.sredir-item-status {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 1px 8px;
    border-radius: 999px;
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: 18px;
    letter-spacing: .02em;
    text-transform: uppercase;
    border: 1px solid transparent;
}

.sredir-item-status.is-active {
    color: #137333;
    background: #e6f4ea;
    border-color: #b7dfc2;
}

.sredir-item-status.is-paused {
    color: #8a4b00;
    background: #fff4d6;
    border-color: #f1d28c;
}

.sredir-item-status.is-archived {
    color: #50575e;
    background: #f0f0f1;
    border-color: #dcdcde;
}

.sredir-status-action .dashicons,
.sredir-archive-action .dashicons {
    color: #50575e;
}

/* Sredir 2.1 — ciclo de vida, agendamento e UTM */
.sredir-item-status.is-scheduled {
    color: #135e96;
    background: #eaf4ff;
    border-color: #b9d8f2;
}
.sredir-item-status.is-expired {
    color: #8a2424;
    background: #fff0f0;
    border-color: #efc1c1;
}
.sredir-item-status.is-trashed {
    color: #7a2d2d;
    background: #f6f7f7;
    border-color: #dcdcde;
    text-decoration: line-through;
}
.sredir-utm-builder {
    margin-top: 16px;
    padding: 16px;
    border: 1px solid #dcdcde;
    border-radius: 10px;
    background: #f9fbfd;
}
.sredir-utm-builder h3 {
    margin: 0 0 4px;
    display: flex;
    align-items: center;
    gap: 6px;
}
.sredir-utm-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
}
.sredir-utm-grid label {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-weight: 600;
}
.sredir-utm-grid input,
.sredir-utm-grid select {
    width: 100%;
    max-width: none;
}
.sredir-utm-preview {
    margin-top: 12px;
    padding: 10px 12px;
    border-radius: 6px;
    background: #fff;
    border: 1px dashed #c3c4c7;
    overflow-wrap: anywhere;
}
.sredir-utm-preview code {
    white-space: normal;
}
@media (max-width: 782px) {
    .sredir-utm-grid { grid-template-columns: 1fr; }
}
.sredir-breadcrumbs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    margin: 8px 0 10px;
    color: #646970;
    font-size: 12px;
}
.sredir-breadcrumbs a { text-decoration: none; }
.sredir-breadcrumbs strong { color: #1d2327; }

/* Sredir 2.2 — campanhas, ações em massa e novos relatórios */
.sredir-campaign-layout {
    display: grid;
    grid-template-columns: minmax(300px, .8fr) minmax(0, 1.7fr);
    gap: 20px;
    align-items: start;
}
.sredir-campaign-form-card,
.sredir-campaign-list-card { min-width: 0; }
.sredir-campaign-list-card .widefat td,
.sredir-campaign-list-card .widefat th { vertical-align: middle; }
.sredir-bulk-form {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin: 12px 0;
    padding: 10px 12px;
    border: 1px solid #dcdcde;
    border-radius: 8px;
    background: #f6f7f7;
}
.sredir-bulk-form select,
.sredir-bulk-form input[type="text"] { min-height: 32px; }
.sredir-bulk-count {
    color: #646970;
    font-size: 12px;
    margin-left: auto;
}
.sredir-bulk-check { margin: 0 8px 0 0 !important; }
.sredir-slug-status {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    margin-left: 8px;
    font-size: 12px;
    font-weight: 600;
}
.sredir-slug-status.is-ok { color: #137333; }
.sredir-slug-status.has-error { color: #b32d2e; }
.sredir-cta-style-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(120px, 1fr));
    gap: 12px;
}
.sredir-cta-style-grid label { display: flex; flex-direction: column; gap: 5px; font-weight: 600; }
.sredir-cta-preview-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 110px;
    padding: 18px;
    margin-top: 12px;
    border: 1px dashed #c3c4c7;
    border-radius: 10px;
    background: linear-gradient(135deg, #f6f7f7, #fff);
}
.sredir-cta-preview { text-decoration: none; display: inline-block; transition: transform .15s ease, box-shadow .15s ease; }
.sredir-cta-preview:hover { transform: translateY(-1px); box-shadow: 0 4px 14px rgba(0,0,0,.12); }
.sredir-secondary-charts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 16px;
}
.sredir-compact-chart-card {
    min-width: 0;
    padding: 16px;
    border: 1px solid #dcdcde;
    border-radius: 10px;
    background: #fff;
}
.sredir-compact-chart-card h3 { margin: 0 0 12px; }
.sredir-compact-chart {
    display: flex;
    align-items: flex-end;
    gap: 3px;
    height: 120px;
    overflow-x: auto;
    padding: 8px 2px 2px;
}
.sredir-compact-chart > span {
    flex: 1 0 8px;
    min-width: 8px;
    border-radius: 4px 4px 0 0;
    background: #2271b1;
    opacity: .82;
}
.sredir-chart-note { color: #646970; font-size: 12px; margin: 8px 0 0; }
.sredir-compact-mode .sredir-panel-card { padding: 14px; }
.sredir-compact-mode .sredir-resource-row { padding-top: 8px; padding-bottom: 8px; }
.sredir-compact-mode .sredir-admin-header { margin-bottom: 12px; }
@media (max-width: 960px) {
    .sredir-campaign-layout,
    .sredir-secondary-charts { grid-template-columns: 1fr; }
}
@media (max-width: 782px) {
    .sredir-cta-style-grid { grid-template-columns: 1fr; }
    .sredir-bulk-count { width: 100%; margin-left: 0; }
}
.sredir-client-pager{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:10px 0}.sredir-toast{position:relative;box-shadow:0 8px 24px rgba(0,0,0,.08);border-radius:8px}.sredir-is-loading{position:relative;opacity:.75;pointer-events:none}.sredir-loading-indicator{position:fixed;right:24px;bottom:24px;background:#1d2327;color:#fff;padding:10px 14px;border-radius:8px;z-index:99999;box-shadow:0 8px 24px rgba(0,0,0,.25)}.sredir-tour-highlight{outline:3px solid #2271b1!important;outline-offset:4px;box-shadow:0 0 0 8px rgba(34,113,177,.12)!important}

/* Sredir 3.0 — comparação A/B visual */
.sredir-compare-chart{margin-top:16px;padding:14px;border:1px solid #dcdcde;border-radius:10px;background:#fff}
.sredir-compare-chart svg{display:block;width:100%;height:220px;overflow:visible}
.sredir-compare-chart svg line{stroke:#dcdcde;stroke-width:1}
.sredir-compare-chart polyline{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.sredir-compare-chart .series-a{stroke:#2271b1}.sredir-compare-chart .series-b{stroke:#7c3aed}
.sredir-compare-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px;font-size:12px;color:#50575e}
.sredir-compare-legend span:before{content:"";display:inline-block;width:14px;height:3px;margin-right:6px;vertical-align:middle;border-radius:999px}
.sredir-compare-legend .legend-a:before{background:#2271b1}.sredir-compare-legend .legend-b:before{background:#7c3aed}

/* -------------------------------------------------------------------------
 * Sredir 3.0.1 — Admin visual consistency hotfix
 * ---------------------------------------------------------------------- */
.sredir-admin {
    max-width: 1440px;
    width: calc(100% - 24px);
    box-sizing: border-box;
}

.sredir-suite-page .sredir-page-hero {
    margin-bottom: 14px;
}

.sredir-suite-page .sredir-dashboard-tabs {
    margin-bottom: 22px;
}

.sredir-suite-page .sredir-form-card,
.sredir-admin .sredir-form-card.sredir-suite-card {
    border: 1px solid #e2e6ea;
    border-radius: 12px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 8px 24px rgba(16, 24, 40, .04);
    background: #fff;
    padding: 22px;
    overflow-x: auto;
}

.sredir-suite-page .sredir-form-card > h2 {
    font-size: 17px;
    margin: 0 0 18px;
    padding: 0 0 13px;
    border-bottom: 1px solid #edf0f2;
}

.sredir-suite-card-heading {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding-bottom: 16px;
    margin-bottom: 18px;
    border-bottom: 1px solid #edf0f2;
}

.sredir-suite-card-heading > .dashicons {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #edf5ff;
    color: #2271b1;
    font-size: 20px;
}

.sredir-suite-card-heading h2 {
    margin: 2px 0 4px !important;
    padding: 0 !important;
    border: 0 !important;
}

.sredir-suite-card-heading p {
    margin: 0;
    color: #646970;
}

.sredir-suite-grid {
    display: grid;
    gap: 18px;
    margin: 18px 0;
}

.sredir-suite-grid-2 {
    grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
}

.sredir-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.sredir-field-grid label,
.sredir-metadata-row label {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.sredir-field-grid small,
.sredir-metadata-row small {
    color: #646970;
}

.sredir-mini-kpis {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.sredir-mini-kpis > div {
    background: #f6f8fa;
    border: 1px solid #e7eaed;
    border-radius: 10px;
    padding: 18px 12px;
    text-align: center;
}

.sredir-mini-kpis strong {
    display: block;
    font-size: 25px;
    line-height: 1.1;
    color: #1d2327;
}

.sredir-mini-kpis span {
    display: block;
    margin-top: 5px;
    color: #646970;
    font-size: 12px;
}

.sredir-metadata-list {
    display: grid;
    gap: 12px;
}

.sredir-metadata-row {
    display: grid;
    grid-template-columns: minmax(190px, 1.3fr) minmax(140px, .8fr) minmax(140px, .8fr) 80px minmax(260px, 1.4fr) auto;
    gap: 14px;
    align-items: end;
    padding: 16px;
    border: 1px solid #e1e5e9;
    border-radius: 10px;
    background: #fbfcfd;
}

.sredir-metadata-title {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-self: center;
}

.sredir-metadata-title > strong {
    font-size: 14px;
}

.sredir-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 4px;
}

.sredir-favorite-field {
    align-items: center;
    justify-content: center;
}

.sredir-favorite-field input {
    width: 18px;
    height: 18px;
}

.sredir-metadata-row select,
.sredir-metadata-row textarea {
    width: 100%;
    max-width: 100%;
}

.sredir-admin .form-table th {
    width: 210px;
    padding: 18px 16px 18px 0;
}

.sredir-admin .form-table td {
    padding: 14px 0;
}

.sredir-admin .form-table input[type="text"],
.sredir-admin .form-table input[type="url"],
.sredir-admin .form-table input[type="email"],
.sredir-admin .form-table input[type="number"],
.sredir-admin .form-table input[type="datetime-local"],
.sredir-admin .form-table select,
.sredir-admin .form-table textarea {
    max-width: 100%;
}

.sredir-suite-page .widefat {
    border-color: #e1e5e9;
}

.sredir-suite-page .widefat th {
    background: #f6f7f8;
    color: #3c434a;
}

.sredir-suite-page .widefat td,
.sredir-suite-page .widefat th {
    vertical-align: middle;
}

.sredir-suite-page code {
    white-space: normal;
    overflow-wrap: anywhere;
}

.sredir-data-pipeline-notice {
    margin: 14px 0 0 !important;
    border-radius: 8px;
}

.sredir-cumulative-card {
    margin-top: 18px;
}

.sredir-analytics-dashboard .sredir-kpi-grid,
.sredir-reports-page .sredir-kpi-grid {
    align-items: stretch;
}

.sredir-analytics-dashboard .sredir-kpi-card,
.sredir-reports-page .sredir-kpi-card {
    min-width: 0;
}

.sredir-analytics-dashboard .sredir-kpi-card strong,
.sredir-reports-page .sredir-kpi-card strong {
    overflow-wrap: anywhere;
}

@media (max-width: 1180px) {
    .sredir-suite-grid-2 { grid-template-columns: 1fr; }
    .sredir-metadata-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
    }
    .sredir-metadata-title,
    .sredir-schedule-field { grid-column: 1 / -1; }
    .sredir-favorite-field { align-items: flex-start; justify-content: flex-start; }
}

@media (max-width: 782px) {
    .sredir-admin { width: calc(100% - 10px); }
    .sredir-field-grid,
    .sredir-mini-kpis,
    .sredir-metadata-row { grid-template-columns: 1fr; }
    .sredir-metadata-title,
    .sredir-schedule-field { grid-column: auto; }
    .sredir-suite-page .sredir-form-card { padding: 16px; }
    .sredir-admin .form-table th,
    .sredir-admin .form-table td { display: block; width: 100%; padding: 8px 0; }
}

.sredir-subsection-title{margin:22px 0 10px;font-size:14px;color:#3c434a;}

/* ========================================================================== 
   Sredir 3.0.2 — Analytics visibility + admin polish
   ========================================================================== */
.sredir-dashboard-page,
.sredir-suite-page {
    --sredir-bg: #f6f8fb;
    --sredir-card: #ffffff;
    --sredir-border: #dfe5ec;
    --sredir-text: #172033;
    --sredir-muted: #667085;
    --sredir-blue: #2271b1;
    --sredir-blue-soft: #edf6ff;
}

.sredir-dashboard-page .sredir-page-hero,
.sredir-suite-page .sredir-page-hero {
    padding: 22px 24px;
    border: 1px solid var(--sredir-border);
    border-radius: 14px;
    background: linear-gradient(135deg, #ffffff 0%, #f7fbff 60%, #f3f7ff 100%);
    box-shadow: 0 8px 24px rgba(16, 24, 40, .055);
}

.sredir-version-chip {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    margin-left: 6px;
    padding: 1px 7px;
    border: 1px solid #cfe2f4;
    border-radius: 999px;
    background: #fff;
    color: #135e96;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
    white-space: nowrap;
}

.sredir-dashboard-page .sredir-dashboard-tabs,
.sredir-suite-page .sredir-dashboard-tabs {
    padding: 6px;
    border-color: var(--sredir-border);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 4px 14px rgba(16, 24, 40, .04);
}

.sredir-dashboard-page .sredir-dashboard-tabs a,
.sredir-suite-page .sredir-dashboard-tabs a {
    min-height: 40px;
    border-radius: 8px;
}

.sredir-dashboard-page .sredir-dashboard-tabs a.is-active,
.sredir-suite-page .sredir-dashboard-tabs a.is-active {
    background: linear-gradient(135deg, #eaf4ff, #f2f7ff);
    box-shadow: inset 0 0 0 1px #bcd7ef, 0 1px 3px rgba(34, 113, 177, .08);
}

.sredir-analytics-v2,
.sredir-reports-page {
    gap: 16px;
}

.sredir-analytics-filter {
    padding: 16px 18px;
    border-color: var(--sredir-border);
    background: linear-gradient(180deg, #fff, #fbfcfe);
    box-shadow: 0 5px 16px rgba(16, 24, 40, .045);
}

.sredir-kpi-grid-five,
.sredir-report-kpis {
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.sredir-kpi-card {
    position: relative;
    min-height: 112px;
    padding: 18px;
    border-color: var(--sredir-border);
    box-shadow: 0 5px 16px rgba(16, 24, 40, .045);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.sredir-kpi-card::before {
    position: absolute;
    top: -1px;
    left: 18px;
    right: 18px;
    height: 3px;
    border-radius: 0 0 4px 4px;
    background: #dceaf7;
    content: "";
}

.sredir-kpi-card:hover {
    transform: translateY(-1px);
    border-color: #c9d8e7;
    box-shadow: 0 9px 24px rgba(16, 24, 40, .075);
}

.sredir-kpi-card.sredir-kpi-primary,
.sredir-kpi-card.sredir-kpi-known-total {
    border-color: #acd1ee;
    background: linear-gradient(135deg, #f4faff 0%, #ffffff 75%);
}

.sredir-kpi-card.sredir-kpi-primary::before,
.sredir-kpi-card.sredir-kpi-known-total::before {
    background: linear-gradient(90deg, #2271b1, #72aee6);
}

.sredir-kpi-card strong {
    font-size: 30px;
    letter-spacing: -.02em;
}

.sredir-kpi-card strong.sredir-kpi-name {
    font-size: 18px;
}

.sredir-analytics-card,
.sredir-report-toolbar {
    border-color: var(--sredir-border);
    box-shadow: 0 6px 20px rgba(16, 24, 40, .045);
}

.sredir-analytics-card > header {
    padding: 18px 20px 15px;
    background: linear-gradient(180deg, #fff 0%, #fcfdff 100%);
}

.sredir-analytics-card > header h2 {
    font-size: 18px;
}

.sredir-report-toolbar {
    padding: 20px 22px;
    background: linear-gradient(135deg, #ffffff 0%, #f7fbff 100%);
}

.sredir-data-source-strip {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 18px;
    padding: 11px 14px;
    border: 1px solid #d9e6f1;
    border-radius: 10px;
    background: #f7fbff;
    color: #475467;
    font-size: 12px;
}

.sredir-data-source-strip strong {
    color: #1d3b53;
}

.sredir-data-source-strip .sredir-version-chip {
    margin-left: auto;
}

.sredir-report-empty-chart {
    min-height: 220px;
    padding: 34px 20px;
    background:
        linear-gradient(to bottom, transparent 24%, #f4f6f8 25%, transparent 26%, transparent 49%, #f4f6f8 50%, transparent 51%, transparent 74%, #f4f6f8 75%, transparent 76%),
        linear-gradient(135deg, #fbfdff, #fff);
}

.sredir-report-empty-chart .dashicons {
    width: 44px;
    height: 44px;
    padding: 10px;
    border-radius: 12px;
    background: var(--sredir-blue-soft);
    color: var(--sredir-blue);
    font-size: 24px;
}

.sredir-report-empty-chart strong {
    color: var(--sredir-text);
    font-size: 15px;
}

.sredir-report-empty-chart p {
    max-width: 520px;
    color: var(--sredir-muted);
    line-height: 1.5;
}

.sredir-cumulative-card {
    border-color: #cfe2f4;
    background: linear-gradient(180deg, #fff, #fbfdff);
}

.sredir-cumulative-card > header {
    border-bottom-color: #e3eef7;
    background: #f7fbff;
}

.sredir-report-table-wrap {
    margin: 0 16px 16px;
    border: 1px solid #e4e8ed;
    border-radius: 10px;
    background: #fff;
}

.sredir-report-table thead th {
    background: #f7f9fb;
}

.sredir-report-table tbody tr:hover td {
    background: #f8fbff;
}

.sredir-ranking-list,
.sredir-destination-ranking,
.sredir-breakdown-list {
    padding-top: 12px;
    padding-bottom: 14px;
}

.sredir-data-pipeline-notice {
    padding-top: 2px;
    padding-bottom: 2px;
    box-shadow: 0 3px 12px rgba(16, 24, 40, .035);
}

@media (max-width: 782px) {
    .sredir-dashboard-page .sredir-page-hero,
    .sredir-suite-page .sredir-page-hero {
        padding: 18px;
    }
    .sredir-data-source-strip {
        align-items: flex-start;
        flex-direction: column;
    }
    .sredir-data-source-strip .sredir-version-chip {
        margin-left: 0;
    }
    .sredir-kpi-grid-five,
    .sredir-report-kpis {
        grid-template-columns: 1fr;
    }
}
