:root {
    --brand: #72be44;
    --brand-dark: #5aa132;
    --brand-deep: #285527;
    --brand-ink: #173a1a;
    --brand-soft: #eef8e8;
    --brand-softer: #f6fbf2;
    --brand-border: #d4e9c8;

    --bg: #f4f7f2;
    --panel: #ffffff;
    --ink: #18221a;
    --muted: #697369;
    --line: #e3e9df;

    --nav: #17351c;
    --nav2: #214829;
    --nav-muted: #b6c8b8;

    --green: #347c38;
    --greenbg: #eaf7eb;
    --yellow: #986100;
    --yellowbg: #fff6dc;
    --red: #b42318;
    --redbg: #feeeec;
    --graybg: #edf1ed;

    --radius: 14px;
    --shadow-sm: 0 2px 8px rgba(24, 50, 28, .05);
    --shadow: 0 10px 30px rgba(24, 50, 28, .08);
}

* { box-sizing: border-box; }

html { background: var(--bg); }

body {
    margin: 0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: var(--bg);
    color: var(--ink);
    font-size: 14px;
    line-height: 1.45;
    -webkit-font-smoothing: antialiased;
}

a { color: var(--brand-dark); text-decoration: none; }
a:hover { color: var(--brand-deep); text-decoration: none; }

/* Application shell */
.shell {
    display: grid;
    grid-template-columns: 264px minmax(0, 1fr);
    min-height: 100vh;
}

.sidebar {
    background: linear-gradient(180deg, #17351c 0%, #102b16 100%);
    color: #fff;
    padding: 24px 18px;
    display: flex;
    flex-direction: column;
    position: sticky;
    top: 0;
    height: 100vh;
    box-shadow: 8px 0 30px rgba(17, 47, 23, .07);
}

.brand {
    display: block;
    color: #fff !important;
    text-decoration: none !important;
    margin: 0 2px 28px;
}

.brand-logo-card {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 13px;
    padding: 11px 13px;
    width: 100%;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .10);
}

.brand-logo {
    display: block;
    width: 100%;
    max-width: 190px;
    height: auto;
}

.brand-copy {
    display: block;
    padding: 11px 8px 0;
}

.brand-copy strong,
.brand-copy small { display: block; }
.brand-copy strong { font-size: 13px; letter-spacing: .01em; }
.brand-copy small { color: var(--nav-muted); margin-top: 2px; font-size: 11px; }

.sidebar nav {
    display: grid;
    gap: 5px;
}

.sidebar nav a {
    position: relative;
    color: #d5e1d6;
    padding: 11px 13px;
    border-radius: 10px;
    font-weight: 650;
    text-decoration: none;
    transition: background .15s ease, color .15s ease, transform .15s ease;
}

.sidebar nav a:hover {
    background: rgba(255, 255, 255, .07);
    color: #fff;
    transform: translateX(1px);
}

.sidebar nav a.active {
    background: var(--nav2);
    color: #fff;
    box-shadow: inset 4px 0 0 var(--brand);
}

.sidebar-user {
    margin-top: auto;
    border-top: 1px solid rgba(255,255,255,.11);
    padding: 17px 10px 0;
    color: #f6fbf6;
}

.sidebar-user small {
    display: block;
    color: #9fb5a2;
    font-size: 11px;
    margin: 3px 0 10px;
    overflow-wrap: anywhere;
}

.link-button {
    background: none;
    border: 0;
    color: #d8e8da;
    padding: 0;
    cursor: pointer;
    font: inherit;
}

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

.main {
    padding: 34px 40px 64px;
    min-width: 0;
    max-width: 1720px;
    width: 100%;
}

.topbar {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: center;
    margin-bottom: 26px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
}

.topbar h1 {
    font-size: clamp(25px, 2vw, 31px);
    line-height: 1.15;
    letter-spacing: -.025em;
    margin: 0 0 6px;
    color: #152018;
}

.topbar p {
    color: var(--muted);
    margin: 0;
    font-size: 14px;
}

.top-actions {
    display: flex;
    gap: 9px;
    align-items: center;
    flex-wrap: wrap;
}

.inline { display: inline; }

/* Buttons */
.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 39px;
    border: 1px solid #ccd6c8;
    border-radius: 9px;
    background: #fff;
    color: #263228;
    padding: 8px 14px;
    font-weight: 700;
    cursor: pointer;
    font-size: 13px;
    text-decoration: none !important;
    box-shadow: 0 1px 2px rgba(20, 42, 22, .04);
    transition: all .15s ease;
}

.button:hover {
    background: #f7faf5;
    border-color: #b8c8b3;
    color: var(--brand-deep);
    transform: translateY(-1px);
}

.button.primary,
a.button.primary,
button.button.primary {
    background: var(--brand) !important;
    border-color: var(--brand) !important;
    color: #fff !important;
    box-shadow: 0 5px 14px rgba(114, 190, 68, .24);
}

.button.primary:hover,
a.button.primary:hover,
button.button.primary:hover {
    background: var(--brand-dark) !important;
    border-color: var(--brand-dark) !important;
    color: #fff !important;
    box-shadow: 0 7px 18px rgba(90, 161, 50, .27);
}

.button.subtle { background: transparent; box-shadow: none; }
.button.full { width: 100%; padding: 11px 14px; min-height: 44px; }

/* Alerts */
.flash {
    border-radius: 11px;
    padding: 13px 15px;
    margin: 0 0 20px;
    border: 1px solid;
    box-shadow: var(--shadow-sm);
}
.flash.success { background: var(--greenbg); border-color: #c2e4c5; color: #245f28; }
.flash.danger { background: var(--redbg); border-color: #f6c6c0; color: #8e1c13; }
.flash.warn { background: var(--yellowbg); border-color: #efd596; color: #7a4700; }
.flash ul { margin: 6px 0 0 18px; }

/* Dashboard stat cards */
.stats-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(120px, 1fr));
    gap: 14px;
    margin-bottom: 24px;
}

.stats-grid.compact { grid-template-columns: repeat(5, minmax(125px, 1fr)); }

.stat {
    position: relative;
    overflow: hidden;
    background: linear-gradient(145deg, #fff 0%, var(--brand-softer) 100%);
    border: 1px solid var(--brand-border);
    border-radius: var(--radius);
    padding: 18px 18px 17px;
    min-height: 102px;
    box-shadow: var(--shadow-sm);
    transition: transform .15s ease, box-shadow .15s ease;
}

.stat::after {
    content: "";
    position: absolute;
    right: -28px;
    bottom: -38px;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    background: rgba(114, 190, 68, .09);
}

.stat:hover { transform: translateY(-2px); box-shadow: var(--shadow); }

.stat span {
    display: block;
    color: #5d6d5c;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .065em;
}

.stat strong {
    position: relative;
    z-index: 1;
    display: block;
    font-size: 30px;
    line-height: 1;
    margin-top: 10px;
    letter-spacing: -.03em;
    color: var(--brand-ink);
}

.stat.total { border-top: 4px solid var(--brand); }
.stat.pass { border-top: 4px solid #4ba84f; }
.stat.warn { border-top: 4px solid #e3a008; background: linear-gradient(145deg,#fff 0%,#fffbef 100%); }
.stat.fail { border-top: 4px solid var(--red); background: linear-gradient(145deg,#fff 0%,#fff6f5 100%); }
.stat.hold { border-top: 4px solid #7fa26e; }
.stat.unchecked { border-top: 4px solid #aeb8ac; background: linear-gradient(145deg,#fff 0%,#f7f9f6 100%); }
.stat .small-value { font-size: 16px; margin-top: 10px; }

/* Cards / tables */
.two-col {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}

.card {
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    overflow: hidden;
    margin-bottom: 20px;
    box-shadow: var(--shadow-sm);
}

.card.narrow { max-width: 780px; padding: 24px; }

.card-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    padding: 17px 19px;
    border-bottom: 1px solid var(--line);
    background: linear-gradient(180deg, #fff 0%, #fbfdf9 100%);
}

.card-head h2 {
    margin: 0;
    font-size: 16px;
    letter-spacing: -.01em;
    color: #1c2c1f;
}

.card-head span { color: var(--muted); font-size: 12px; }
.card-head a { font-weight: 700; font-size: 12px; }

table { width: 100%; border-collapse: collapse; }

th {
    background: #f7faf5;
    color: #697667;
    font-size: 10.5px;
    text-transform: uppercase;
    letter-spacing: .055em;
    text-align: left;
    padding: 11px 15px;
    border-bottom: 1px solid var(--line);
    white-space: nowrap;
}

td {
    padding: 12px 15px;
    border-bottom: 1px solid #edf1eb;
    vertical-align: top;
}

tbody tr { transition: background .12s ease; }
tbody tr:hover { background: #fbfdf9; }
tbody tr:last-child td { border-bottom: 0; }
td a { font-weight: 650; }
td small { display: block; color: var(--muted); font-size: 11px; margin-top: 3px; }
.right { text-align: right; }
.empty { color: var(--muted); text-align: center; padding: 32px 24px; }

.badge {
    display: inline-block;
    border-radius: 999px;
    padding: 4px 9px;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .045em;
    background: var(--graybg);
    color: #596579;
}
.badge.pass { background: var(--greenbg); color: var(--green); }
.badge.warn { background: var(--yellowbg); color: var(--yellow); }
.badge.fail { background: var(--redbg); color: var(--red); }
.badge.complete { background: var(--greenbg); color: var(--green); }
.badge.open, .badge.pending { background: var(--brand-soft); color: var(--brand-deep); }

/* Forms */
.form-stack { display: grid; gap: 17px; }
.form-stack label { font-weight: 700; color: #334035; font-size: 13px; }

.form-stack input,
.form-stack select,
.form-stack textarea,
.filters input,
.filters select,
.exception-form input,
.exception-form select {
    width: 100%;
    display: block;
    margin-top: 6px;
    border: 1px solid #cbd6c8;
    border-radius: 9px;
    padding: 10px 11px;
    background: #fff;
    color: var(--ink);
    font: inherit;
    outline: none;
    transition: border .15s ease, box-shadow .15s ease;
}

.form-stack input:focus,
.form-stack select:focus,
.form-stack textarea:focus,
.filters input:focus,
.filters select:focus,
.exception-form input:focus,
.exception-form select:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114, 190, 68, .14);
}

.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.checkbox { display: flex !important; align-items: center; gap: 8px; font-weight: 500 !important; }
.checkbox input { width: auto !important; margin: 0 !important; accent-color: var(--brand); }
.form-actions { display: flex; gap: 9px; padding-top: 6px; }
.filter-card { padding: 14px 16px; }
.filters { display: grid; grid-template-columns: 2fr 1.2fr 1fr 1fr auto auto auto; gap: 9px; align-items: end; }
.filters input, .filters select { margin: 0; }

.details { display: grid; grid-template-columns: 140px 1fr; gap: 11px 18px; padding: 20px; margin: 0; }
.details dt { color: var(--muted); font-weight: 700; }
.details dd { margin: 0; overflow-wrap: anywhere; }
.issues { margin: 0 18px 18px; padding: 13px 13px 13px 31px; background: #fff8e8; border-radius: 9px; color: #774800; }
.pagination { padding: 14px 18px; border-top: 1px solid var(--line); }
.pagination svg { width: 18px; }

.exception-wrap { padding: 0 0 14px; }
.exception-form { display: grid; grid-template-columns: 140px 180px 1fr auto; gap: 9px; padding: 14px 18px; border-top: 1px solid var(--line); }
.danger-link { color: var(--red); }

/* Login */
.login-body {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 28px 16px;
    background:
        radial-gradient(circle at 15% 20%, rgba(114,190,68,.18), transparent 28%),
        radial-gradient(circle at 85% 85%, rgba(114,190,68,.11), transparent 30%),
        linear-gradient(135deg, #f6faf3 0%, #eaf4e4 100%);
}

.login-card {
    width: min(450px, calc(100% - 24px));
    background: #fff;
    border: 1px solid var(--brand-border);
    box-shadow: 0 22px 60px rgba(31, 67, 35, .14);
    border-radius: 18px;
    padding: 36px 38px 38px;
}

.login-branding {
    display: flex;
    justify-content: center;
    margin: 0 0 30px;
}

.login-logo {
    display: block;
    width: min(100%, 320px);
    height: auto;
}

.login-card h1 {
    margin: 0 0 7px;
    font-size: 27px;
    line-height: 1.15;
    letter-spacing: -.025em;
    color: #172119;
}

.login-card > p {
    margin: 0 0 25px;
    color: var(--muted);
    font-size: 14px;
}

/* Responsive */
@media (max-width: 1120px) {
    .stats-grid { grid-template-columns: repeat(3, 1fr); }
    .filters { grid-template-columns: 1fr 1fr; }
    .two-col { grid-template-columns: 1fr; }
}

@media (max-width: 780px) {
    .shell { display: block; }
    .sidebar { height: auto; position: static; padding: 17px 14px; }
    .brand-logo-card { max-width: 220px; }
    .brand-copy { display: none; }
    .sidebar nav { grid-template-columns: repeat(2, 1fr); }
    .sidebar-user { display: none; }
    .main { padding: 24px 15px 44px; }
    .topbar { display: block; }
    .top-actions { margin-top: 15px; }
    .stats-grid, .stats-grid.compact { grid-template-columns: 1fr 1fr; }
    .form-grid { grid-template-columns: 1fr; }
    .card { overflow-x: auto; }
}

@media (max-width: 520px) {
    .login-card { padding: 28px 22px 30px; }
    .stats-grid, .stats-grid.compact { grid-template-columns: 1fr; }
    .sidebar nav { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
    .exception-form { grid-template-columns: 1fr; }
}

/* v3.4 contextual help / tooltips */
.help-tip {
    position: relative;
    display: inline-grid !important;
    place-items: center;
    width: 18px;
    height: 18px;
    margin-left: 5px;
    padding: 0;
    border: 1px solid #b9cbb5;
    border-radius: 50%;
    background: #f5faf1;
    color: var(--brand-deep) !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 850 !important;
    font-style: normal;
    text-transform: none !important;
    letter-spacing: 0 !important;
    vertical-align: 1px;
    cursor: help;
    outline: none;
    z-index: 20;
}

.help-tip:hover,
.help-tip:focus {
    background: var(--brand);
    border-color: var(--brand);
    color: #fff !important;
    box-shadow: 0 0 0 3px rgba(114,190,68,.14);
}

.help-tip::after,
.has-tooltip::after {
    content: attr(data-tooltip);
    position: absolute;
    left: 50%;
    bottom: calc(100% + 10px);
    transform: translateX(-50%) translateY(4px);
    width: max-content;
    max-width: min(320px, 80vw);
    padding: 9px 11px;
    border-radius: 8px;
    background: #17351c;
    color: #fff;
    font-size: 12px;
    font-weight: 550;
    line-height: 1.4;
    letter-spacing: 0;
    text-align: left;
    text-transform: none;
    white-space: normal;
    box-shadow: 0 8px 24px rgba(15,45,21,.22);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .12s ease, transform .12s ease, visibility .12s ease;
    z-index: 1000;
}

.help-tip::before,
.has-tooltip::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: calc(100% + 4px);
    transform: translateX(-50%);
    border: 6px solid transparent;
    border-top-color: #17351c;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 1001;
}

.help-tip:hover::after,
.help-tip:focus::after,
.help-tip:hover::before,
.help-tip:focus::before,
.has-tooltip:hover::after,
.has-tooltip:focus-visible::after,
.has-tooltip:hover::before,
.has-tooltip:focus-visible::before {
    opacity: 1;
    visibility: visible;
}

.help-tip:hover::after,
.help-tip:focus::after,
.has-tooltip:hover::after,
.has-tooltip:focus-visible::after {
    transform: translateX(-50%) translateY(0);
}

.has-tooltip {
    position: relative;
}

.has-tooltip.tooltip-below::after {
    top: calc(100% + 10px);
    bottom: auto;
}
.has-tooltip.tooltip-below::before {
    top: calc(100% + 4px);
    bottom: auto;
    border-top-color: transparent;
    border-bottom-color: #17351c;
}

.field-title,
.section-title-with-help,
.stat-label {
    display: inline-flex !important;
    align-items: center;
    gap: 2px;
}

.field-help {
    display: block;
    margin: 6px 0 0;
    color: var(--muted);
    font-size: 12px;
    font-weight: 450;
    line-height: 1.45;
}

.help-callout {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin: 0 0 20px;
    padding: 12px 14px;
    border: 1px solid var(--brand-border);
    border-radius: 11px;
    background: var(--brand-softer);
    color: #415141;
    font-size: 12px;
    line-height: 1.45;
}
.help-callout strong { color: var(--brand-ink); }

.card-head .section-title-with-help {
    font-size: 16px;
    font-weight: 750;
    color: #1c2c1f;
}

/* Keep tooltip bubbles visible even when cards are otherwise clipped. */
.card.allow-tooltips { overflow: visible; }

@media (max-width: 780px) {
    .help-tip::after { max-width: 250px; }
    .top-actions .has-tooltip::after {
        left: 0;
        transform: translateX(0) translateY(4px);
    }
    .top-actions .has-tooltip:hover::after,
    .top-actions .has-tooltip:focus-visible::after {
        transform: translateX(0) translateY(0);
    }
}

/* v3.4.1 - viewport-level tooltips
 * Tooltips are rendered by JS directly under <body> so they cannot be clipped
 * by cards, the sidebar, tables, or other overflow/stacking contexts.
 */
.help-tip::before,
.help-tip::after,
.has-tooltip::before,
.has-tooltip::after {
    display: none !important;
    content: none !important;
}

.wpmaint-tooltip {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2147483647;
    width: max-content;
    max-width: min(340px, calc(100vw - 20px));
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 9px;
    background: #17351c;
    color: #fff;
    box-shadow: 0 10px 30px rgba(10,35,16,.28);
    font-size: 12px;
    font-weight: 550;
    line-height: 1.45;
    letter-spacing: 0;
    text-align: left;
    text-transform: none;
    white-space: normal;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: translateY(3px);
    transition: opacity .12s ease, transform .12s ease, visibility .12s ease;
}

.wpmaint-tooltip.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

@media (max-width: 780px) {
    .wpmaint-tooltip {
        max-width: min(290px, calc(100vw - 20px));
    }
}

/* v4 account-first inventory */
.filters.account-filters{grid-template-columns:2fr 1.2fr 1.1fr 1fr 1fr auto auto auto}
@media(max-width:1050px){.filters.account-filters{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.filters.account-filters{grid-template-columns:1fr}}

/* v4.2 management, SSO and bulk-update UI */
.credential-panel{border:1px solid var(--line);background:#f8fbf5;border-radius:12px;padding:16px 18px;display:grid;gap:12px}.credential-panel h3{margin:0;font-size:15px}.credential-panel .field-help{margin:0}.sensitive-panel{border-left:4px solid var(--brand)}
.simple-filter{display:flex;gap:8px;align-items:center}.simple-filter select{min-width:220px;border:1px solid #cbd3df;border-radius:7px;padding:9px 10px;background:#fff}
.bulk-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--line);background:#fbfdf9}.bulk-toolbar label{font-weight:650}.bulk-toolbar select{border:1px solid #cbd3df;border-radius:8px;padding:9px 11px;background:#fff}.row-muted{opacity:.62}.update-mini{white-space:nowrap;font-size:12px;font-weight:700;color:#526257}
.quick-actions{display:flex;align-items:center;gap:9px;white-space:nowrap}.quick-actions form{display:inline}.text-action{border:0;background:none;padding:0;color:var(--brand-dark);font:inherit;font-weight:650;cursor:pointer}.text-action:hover{text-decoration:underline}
.update-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px}.update-summary>div{background:var(--brand-soft);border:1px solid #d6eac9;border-radius:10px;padding:14px;text-align:center}.update-summary strong{display:block;font-size:28px;color:#244626}.update-summary span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:4px}.inventory-list{padding:0 18px 18px;display:flex;gap:6px;flex-wrap:wrap}.inventory-list strong{width:100%;margin-bottom:4px}.inventory-list span{font-size:11px;background:#f0f4ed;border:1px solid var(--line);border-radius:999px;padding:4px 8px}
.help-copy{padding:18px;max-width:900px;color:#465249;line-height:1.65}.help-copy p:first-child{margin-top:0}.help-copy p:last-child{margin-bottom:0}
.danger-button{border-color:#e3b2ad;color:var(--red)}
@media(max-width:760px){.simple-filter{align-items:stretch;flex-direction:column}.bulk-toolbar{align-items:stretch;flex-direction:column}.quick-actions{display:grid}.update-summary{grid-template-columns:1fr}}

.backup-confirm{display:inline-flex;align-items:center;gap:7px;font-weight:700;color:#3c4c3f;white-space:nowrap}.backup-confirm input{margin:0}.bulk-toolbar .backup-confirm{margin-left:auto}@media(max-width:900px){.bulk-toolbar .backup-confirm{margin-left:0}}

/* v4.3 profile, 2FA, and exception inventory */
.sidebar-account-actions{display:flex;align-items:center;gap:7px;font-size:12px}.sidebar-account-actions a,.sidebar-account-actions .link-button{color:#d8e8da}.sidebar-account-actions a:hover,.sidebar-account-actions .link-button:hover{color:#fff}.sidebar-account-actions form{display:inline}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.profile-card-body{padding:20px}.security-status{display:flex;flex-direction:column;gap:4px;padding:13px 15px;margin-bottom:18px;border:1px solid var(--line);border-radius:10px;background:#f8faf7}.security-status.enabled{background:var(--greenbg);border-color:#cbe6cd}.security-status.pending{background:var(--yellowbg);border-color:#ecd99f}.security-status span{font-size:12px;color:var(--muted)}
.two-factor-start,.confirm-2fa{max-width:520px}.two-factor-secret{display:grid;gap:8px;max-width:680px;margin:0 0 18px;padding:16px;border:1px solid var(--brand-border);border-radius:11px;background:var(--brand-softer)}.two-factor-secret span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:750}.two-factor-secret code{font-size:17px;letter-spacing:.12em;overflow-wrap:anywhere;color:var(--brand-ink)}.two-factor-secret a{font-size:12px;font-weight:700}.recovery-panel{margin:0 0 18px;padding:16px;border:1px solid var(--yellow);border-radius:11px;background:var(--yellowbg)}.recovery-panel p{margin:5px 0 12px;color:#70551a}.recovery-codes{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px}.recovery-codes code{background:#fff;border:1px solid #e7d9aa;border-radius:7px;padding:8px;text-align:center;font-weight:750}.security-actions{margin:0}.user-security-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.user-security-row form{margin-left:auto}
.exception-form-v43{grid-template-columns:170px minmax(220px,1.2fr) minmax(280px,2fr) auto;align-items:end}.exception-form-v43 label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:750}.exception-form-v43 input,.exception-form-v43 select{width:100%;margin-top:6px;text-transform:none;letter-spacing:0;color:var(--ink);font-weight:500}.exception-form-v43 button{align-self:end}.exception-reason{max-width:620px;white-space:normal}.exception-help{padding:0 18px 16px}.inventory-detailed span.needs-update{background:var(--yellowbg);border-color:#ead69b;color:#6f4c00}.inventory-detailed span em{font-style:normal;font-size:9px;text-transform:uppercase;font-weight:800;margin-left:3px}.cancel-setup{display:block;margin-top:14px}.cancel-setup input{border:1px solid #cbd3df;border-radius:7px;padding:8px 10px;margin-right:7px}
@media(max-width:1000px){.profile-grid{grid-template-columns:1fr}.exception-form-v43{grid-template-columns:1fr 1fr}.recovery-codes{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.exception-form-v43{grid-template-columns:1fr}.recovery-codes{grid-template-columns:1fr}.user-security-row form{margin-left:0;width:100%}}

/* v4.4 operations monitoring, security status, settings and admin 2FA */
.monitor-scan-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.monitor-scan-form select{border:1px solid #cbd3df;border-radius:8px;padding:9px 11px;background:#fff;min-width:190px}.inline-check{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);font-weight:650}.monitor-filters{grid-template-columns:2fr 1.25fr 1fr 1fr auto auto}.security-filters{grid-template-columns:2fr 1.25fr 1fr auto auto}.badge.unknown{background:var(--graybg);color:#596579}.badge.fail{background:var(--redbg);color:var(--red)}.badge.warn{background:var(--yellowbg);color:var(--yellow)}.command-box{background:#15261a;color:#eff8ed;border-radius:9px;padding:12px 14px;overflow:auto;white-space:pre-wrap;font-size:12px;line-height:1.5}.settings-test-form{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.user-actions-cell{white-space:normal;min-width:280px}.user-actions-cell form,.user-actions-cell>a{margin-left:9px}.user-actions-cell>a:first-child{margin-left:0}.sidebar nav{gap:3px}.sidebar nav a{padding-top:9px;padding-bottom:9px}
@media(max-width:1050px){.monitor-filters,.security-filters{grid-template-columns:1fr 1fr}}@media(max-width:760px){.monitor-filters,.security-filters{grid-template-columns:1fr}.monitor-scan-form{width:100%}.monitor-scan-form select{width:100%}}
.operations-summary{margin-top:4px}.ops-summary-body{padding:18px;display:flex;align-items:baseline;gap:12px}.ops-number{font-size:34px;color:var(--brand-dark)}.danger-text{color:var(--red)!important}.compact-alert-list{list-style:none;margin:0;padding:0 18px 16px}.compact-alert-list li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--line);font-size:12px}.compact-alert-list li span{color:var(--muted);text-align:right}

/* v4.4.1: compact icon actions + WordPress multisite labels */
.wp-type-note{display:block;margin-top:5px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.065em;line-height:1.15}.wp-type-note.card-note{margin-top:7px;font-size:10px}.icon-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}.icon-actions.justify-end{justify-content:flex-end}.icon-actions form{display:inline-flex;margin:0}.icon-action{width:34px;height:34px;padding:0;border:1px solid #cdd9c8;border-radius:9px;background:#fff;color:var(--brand-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none!important;transition:transform .12s ease,background .12s ease,border-color .12s ease,box-shadow .12s ease}.icon-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-action:hover,.icon-action:focus-visible{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(48,86,37,.12);outline:none}.icon-action.primary-icon{background:var(--brand);border-color:var(--brand);color:#fff}.icon-action.primary-icon:hover,.icon-action.primary-icon:focus-visible{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff}.icon-action.danger-icon{color:var(--red);border-color:#efc5bf}.icon-action.danger-icon:hover,.icon-action.danger-icon:focus-visible{background:var(--redbg);border-color:#dc978e;color:var(--red)}.user-actions-cell{min-width:172px}
@media(max-width:760px){.icon-actions{display:flex}.user-actions-cell{min-width:0}}

/* v4.5 provider-independent updates + uptime history charts */
.monitor-overview{overflow:visible}.monitor-chart-head{gap:16px;align-items:center}.monitor-chart-head>div:first-child span{display:block;margin-top:3px;color:var(--muted);font-size:12px}.range-tabs{display:flex;gap:6px;flex-wrap:wrap}.range-tab{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#526257;font-size:11px;font-weight:750;text-decoration:none!important}.range-tab:hover{border-color:var(--brand);background:var(--brand-soft)}.range-tab.active{background:var(--brand);border-color:var(--brand);color:#fff}
.server-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;padding:16px 18px 0}.server-metric-card{border:1px solid var(--line);border-top:3px solid var(--server-color);border-radius:11px;background:#fff;padding:13px 14px}.server-metric-card strong{display:block;margin-top:5px;font-size:24px;color:#213224}.server-metric-card small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.server-metric-name{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.045em;color:#58675b}.server-color-dot,.server-table-label i{width:9px;height:9px;border-radius:999px;display:inline-block;flex:0 0 auto}.monitor-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px 18px}.monitor-chart-card{border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#fff 0%,#fbfdf9 100%);padding:14px 14px 8px;min-width:0}.monitor-chart-title{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:4px}.monitor-chart-title strong{font-size:14px;color:#26362a}.monitor-chart-title span{font-size:10px;color:var(--muted)}.monitor-canvas{display:block;width:100%;height:260px}.monitor-legend{display:flex;gap:14px;flex-wrap:wrap;padding:0 18px 18px;color:#59675c;font-size:11px;font-weight:700}.monitor-legend span,.server-table-label{display:inline-flex;align-items:center;gap:6px}.monitor-legend i{width:18px;height:3px;border-radius:999px;display:inline-block}.monitor-empty-chart{padding:34px}.server-table-label{font-weight:650}
@media(max-width:1050px){.monitor-chart-grid{grid-template-columns:1fr}}@media(max-width:760px){.monitor-chart-head{align-items:flex-start;flex-direction:column}.range-tabs{width:100%}.range-tab{flex:1}.server-metric-grid{grid-template-columns:1fr 1fr}.monitor-chart-grid{padding:12px}.monitor-canvas{min-width:520px}.monitor-chart-card{overflow-x:auto}}@media(max-width:520px){.server-metric-grid{grid-template-columns:1fr}}

/* v4.6 documentation, cron health, incident diagnostics, CMS labels, notes and portal help */
.sidebar-nav-label{margin:12px 11px 3px;color:#8eaa92;font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.sidebar-help-link{font-size:12px!important;padding-top:7px!important;padding-bottom:7px!important;color:#d5e7d6!important}.sidebar-help-link:hover{color:#fff!important}
.sidebar-account-actions{gap:10px}.sidebar-profile-link{display:inline-flex;align-items:center;gap:5px}.sidebar-profile-link svg,.sidebar-icon-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar-icon-button{width:28px;height:28px;border:1px solid rgba(255,255,255,.18);border-radius:7px;background:transparent;color:#d8e8da;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sidebar-icon-button:hover{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.35)}

.documentation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.doc-card{display:flex;gap:15px;padding:18px;min-height:170px}.doc-card-icon,.doc-page-icon{width:44px;height:44px;flex:0 0 auto;border-radius:11px;background:var(--brand-soft);color:var(--brand-dark);display:flex;align-items:center;justify-content:center}.doc-card-icon svg,.doc-page-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.doc-card-copy{min-width:0;display:flex;flex-direction:column;flex:1}.doc-card-copy h2{font-size:17px;margin:4px 0 7px}.doc-card-copy p{color:var(--muted);line-height:1.55;margin:0 0 14px}.doc-card-meta{display:flex;gap:6px;flex-wrap:wrap}.doc-card-meta span{font-size:9px;font-weight:850;letter-spacing:.07em;background:#eef3ec;border-radius:999px;padding:3px 7px;color:#657267}.doc-card-actions{display:flex;align-items:center;gap:7px;margin-top:auto}.doc-card-actions form{margin:0}.documentation-page{padding:22px;display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start}.documentation-body{white-space:normal;line-height:1.72;color:#334438;overflow-wrap:anywhere}.documentation-body code{white-space:pre-wrap}.doc-toggle-grid{align-items:center}

.cron-health-card{overflow:visible}.cron-job-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px}.cron-job{border:1px solid var(--line);border-left:4px solid #98a39a;border-radius:11px;padding:15px;background:#fff}.cron-job.pass{border-left-color:var(--brand)}.cron-job.warn,.cron-job.running{border-left-color:#e1ad24}.cron-job.fail{border-left-color:var(--red)}.cron-job-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.cron-job-top strong{display:block;font-size:15px}.cron-job-top code{display:block;margin-top:4px;color:var(--muted);font-size:10px}.mini-details{display:grid;grid-template-columns:100px 1fr;gap:6px 10px;margin:14px 0;font-size:11px}.mini-details dt{color:var(--muted);font-weight:750}.mini-details dd{margin:0;color:#3f4d42}.cron-job .command-box{font-size:10px;margin:0}.cron-note{margin:0 18px 18px;padding:12px 14px;background:var(--brand-softer);border:1px solid var(--brand-border);border-radius:9px;font-size:12px;line-height:1.55;color:#465548}

.incident-link{font-weight:750;display:block;max-width:280px}.incident-table-note,.cms-detected{display:block;margin-top:4px;color:var(--muted);font-size:9px}.cms-label{font-weight:700}.muted{color:var(--muted)}.recent-incidents-card table td{vertical-align:top}.incident-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;border-radius:13px;padding:20px 22px;margin-bottom:18px;border:1px solid var(--line);background:#fff}.incident-hero.fail{border-left:5px solid var(--red);background:var(--redbg)}.incident-hero.pass{border-left:5px solid var(--brand);background:var(--greenbg)}.incident-hero>div:first-child{display:flex;flex-direction:column;gap:4px}.incident-hero span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:800}.incident-hero strong{font-size:20px;color:#243228}.incident-hero small{color:#5d695f}.incident-status-block{text-align:right;min-width:150px}.incident-status-block strong,.incident-status-block small{display:block;margin-top:6px}.diagnosis-copy{padding:20px;line-height:1.65;color:#405043}.diagnosis-copy>p:first-child{font-size:18px;color:#26352a;margin-top:0}

.settings-test-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}.settings-test-row form{margin:0}.settings-mail-note{padding:0 20px 18px}.site-notes-card textarea{min-height:140px}

.maintenance-howto{margin:0 0 18px;overflow:visible}.maintenance-howto summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;font-weight:800;color:#2f4132}.maintenance-howto summary::-webkit-details-marker{display:none}.maintenance-howto summary:after{content:'+';font-size:22px;color:var(--brand-dark);line-height:1}.maintenance-howto[open] summary:after{content:'–'}.maintenance-howto summary small{margin-left:auto;color:var(--muted);font-weight:600;font-size:10px}.maintenance-howto-body{border-top:1px solid var(--line);padding:16px 22px 20px}.maintenance-howto-body ol{margin:0;padding-left:21px;display:grid;gap:9px;color:#435246;line-height:1.5}.maintenance-howto-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:12px;font-weight:750}

@media(max-width:1000px){.cron-job-grid{grid-template-columns:1fr}.documentation-grid{grid-template-columns:1fr}.incident-hero{align-items:flex-start}.documentation-page{grid-template-columns:1fr}.doc-page-icon{margin-bottom:2px}}
@media(max-width:700px){.incident-hero{flex-direction:column}.incident-status-block{text-align:left}.cron-job-top{flex-direction:column}.doc-card{flex-direction:column}.maintenance-howto summary small{display:none}}

/* v4.7 Cloudflare Control Center */
.action-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.action-row form{margin:0}
.cloudflare-permission-box{border:1px solid var(--brand-border);border-left:4px solid var(--brand);background:var(--brand-softer);border-radius:10px;padding:13px 15px;color:#344c36;font-size:13px;line-height:1.55}
.section-divider{border:0;border-top:1px solid var(--line);margin:24px 0}
.code-textarea,.cf-expression{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.5}
.cf-expression{display:block;max-width:620px;white-space:normal;overflow-wrap:anywhere;color:#425243}
.cf-summary{padding:13px 18px;background:#f8fbf6;border-bottom:1px solid var(--line);color:#4f604f;font-size:13px}
.cf-extra{display:flex;justify-content:space-between;gap:15px;padding:16px 18px 9px;border-top:1px solid var(--line);color:#5b685a}
.cf-extra strong{color:#26392a}
.cf-action-panel{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 18px;border-top:1px solid var(--line);background:#fbfdf9}
.cf-action-panel form{margin:0}
.cf-dns-form{display:grid;grid-template-columns:110px minmax(160px,1fr) minmax(260px,2fr) 110px 120px auto auto;gap:10px;align-items:end}
.cf-dns-form label{font-size:12px;font-weight:750;color:#405043}
.cf-dns-form input,.cf-dns-form select{width:100%;margin-top:5px;border:1px solid #cbd6c8;border-radius:8px;padding:9px;background:#fff;font:inherit}
.cf-dns-form .checkbox{align-self:center;margin-top:20px}
.cf-dns-table input,.cf-dns-table select,.cf-dns-table textarea{width:100%;min-width:80px;border:1px solid #d2dbd0;border-radius:7px;padding:7px 8px;background:#fff;font:inherit;font-size:12px}
.cf-dns-table textarea{min-width:260px;resize:vertical}
.cf-dns-table td{vertical-align:middle}
.profile-card-body{padding:18px 20px}
.profile-card-body>p:first-child{margin-top:0}
@media(max-width:1250px){.cf-dns-form{grid-template-columns:1fr 1fr 2fr 1fr}.cf-dns-form .button{align-self:end}}
@media(max-width:780px){.cf-dns-form{grid-template-columns:1fr}.cf-dns-table{display:block;overflow-x:auto}}

/* v4.8 Security Reports */
.security-report-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 18px}.security-report-tabs a{display:inline-flex;align-items:center;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--brand-dark);font-size:12px;font-weight:800;text-decoration:none}.security-report-tabs a:hover,.security-report-tabs a.active{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-dark)}
.security-two-column{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.security-pattern-layout{align-items:start}.source-count-list{display:grid;gap:9px}.source-count-list>div{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fbfcfa}.source-count-list span{font-size:12px;font-weight:800;color:var(--muted)}.source-count-list strong{font-size:20px;color:var(--brand-dark)}
.security-path,.pattern-hit,.posture-recommendation{display:block;margin-top:5px}.security-path{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;word-break:break-all;color:var(--muted)}.pattern-hit{font-size:10px;font-weight:800;color:var(--red)}.posture-recommendation{font-size:11px;color:#7d4f00;font-weight:700}.wrap-code{white-space:normal;word-break:break-all;font-size:10px}.security-event-filters{grid-template-columns:1.2fr 1fr 1fr 1fr auto auto}.code-copy{margin-top:9px;padding:10px 12px;border-radius:8px;background:#132618;color:#eff8ed;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;word-break:break-all;user-select:all}.status-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.badge.neutral{background:var(--graybg);color:#596579}.button.danger{background:var(--redbg);border-color:#efc5bf;color:var(--red)}
@media(max-width:1100px){.security-two-column{grid-template-columns:1fr}.security-event-filters{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:720px){.security-event-filters{grid-template-columns:1fr}.security-report-tabs a{flex:1 1 auto;justify-content:center}}

/* v4.9 Agencies, branding, and capability-based role editor */
.agency-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-bottom:20px}.agency-grid .card{margin:0}.agency-color-dot{width:12px;height:12px;border-radius:50%;display:inline-block;margin-right:8px;vertical-align:-1px;border:1px solid rgba(0,0,0,.12)}.agency-logo-preview{border:1px solid var(--line);border-radius:10px;background:#fff;padding:14px;display:flex;align-items:center;justify-content:center;min-height:90px}.agency-logo-preview img{max-width:260px;max-height:90px;width:auto;height:auto}.color-input-row{display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:center}.color-input-row input[type=color]{width:58px;height:42px;padding:3px}.assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.assignment-option{border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;align-items:flex-start;gap:9px;background:#fff;cursor:pointer}.assignment-option:hover{border-color:var(--brand)}.assignment-option input{margin-top:3px}.assignment-option span,.assignment-option small{display:block}.assignment-option small{color:var(--muted);margin-top:2px}.agency-site-list{max-height:520px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafcf9}.agency-site-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:18px}.agency-site-group h3{grid-column:1/-1;margin:3px 0 2px;font-size:13px;color:var(--brand-deep)}.section-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.compact-search{width:260px;max-width:100%}.sticky-actions{position:sticky;bottom:12px;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);padding:12px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);z-index:5}.danger-zone{border-color:#efc5bf}.role-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.role-meta-grid .span-2{grid-column:1/-1}.role-editor-toolbar{display:flex;gap:8px;margin:20px 0 12px}.capability-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.capability-group{border:1px solid var(--line);border-radius:12px;padding:13px;background:#fafcf9;min-width:0}.capability-group legend{font-weight:800;padding:0 6px;color:var(--brand-ink)}.capability-option{display:flex;align-items:flex-start;gap:9px;padding:7px 4px;cursor:pointer}.capability-option input{margin-top:3px}.capability-option span{font-size:13px}.sidebar-account-actions{display:flex;align-items:center;gap:8px}.sidebar-account-actions form{margin:0}.sidebar-user .sidebar-icon-button{text-decoration:none!important}.muted{color:var(--muted)}
@media(max-width:1100px){.assignment-grid,.agency-site-group,.capability-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.agency-grid{grid-template-columns:1fr}}
@media(max-width:700px){.assignment-grid,.agency-site-group,.capability-groups,.role-meta-grid{grid-template-columns:1fr}.role-meta-grid .span-2{grid-column:auto}.section-title-row{display:block}.compact-search{width:100%;margin-top:10px}}
.capability-option.reserved{opacity:.55;cursor:not-allowed}.capability-option small{display:block;color:var(--muted);font-size:10px;margin-top:2px}

/* v5.0 New Site Provisioning */
.provisioning-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.provisioning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start;margin-bottom:18px}
.provisioning-grid>.card{margin:0;min-width:0}
.provisioning-template-summary{border:1px solid var(--brand-border);border-left:4px solid var(--brand);border-radius:10px;background:var(--brand-softer);padding:12px 14px;color:#405043;font-size:12px;line-height:1.55}
.provisioning-template-summary strong{color:var(--brand-deep)}
.form-inline-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.provisioning-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}
.provisioning-review-grid>.card{margin:0;min-width:0}
.provisioning-safety{border-left:4px solid var(--yellow);background:var(--yellowbg);padding:15px 17px;border-radius:10px;margin:0 0 18px;color:#675119;line-height:1.55}
.provisioning-safety ul{margin:8px 0 0;padding-left:20px}
.confirmation-box{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--brand-border);background:var(--brand-softer);border-radius:11px;padding:14px 16px;font-weight:750;color:#334a35}
.confirmation-box input{margin-top:3px}
.provisioning-run-hero{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(170px,1fr));gap:16px;align-items:center;border:1px solid var(--line);border-left:5px solid var(--brand);background:#fff;border-radius:13px;padding:18px 20px;margin-bottom:18px}
.provisioning-run-hero.partial{border-left-color:var(--yellow);background:var(--yellowbg)}
.provisioning-run-hero.failed{border-left-color:var(--red);background:var(--redbg)}
.provisioning-run-hero.complete{border-left-color:var(--brand);background:var(--greenbg)}
.provisioning-run-hero>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.provisioning-run-hero span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}
.provisioning-run-hero strong{font-size:17px;color:#263b2a;overflow-wrap:anywhere}
.provisioning-run-hero small{color:#5d6b60;line-height:1.4}
.provisioning-step-list{display:grid}
.provisioning-step{display:grid;grid-template-columns:105px minmax(0,1fr);gap:14px;padding:15px 18px;border-top:1px solid var(--line);align-items:start}
.provisioning-step:first-child{border-top:0}
.provisioning-step-status{padding-top:1px}
.provisioning-step strong{color:#283c2c}
.provisioning-step p{margin:4px 0 0;color:#526056;line-height:1.5}
.provisioning-step-details{display:flex;gap:7px 14px;flex-wrap:wrap;margin-top:8px;font-size:11px;color:#5d695f}
.provisioning-step-details span{background:#f7faf5;border:1px solid var(--line);border-radius:7px;padding:5px 7px;overflow-wrap:anywhere}
.nameserver-list{display:grid;gap:8px;margin-top:12px}.nameserver-list code{display:block;border:1px solid var(--line);border-radius:8px;background:#f7faf5;padding:10px 12px;font-size:13px;user-select:all;overflow-wrap:anywhere}
.detail-list{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.5fr);gap:0;margin:0 0 18px}.detail-list dt,.detail-list dd{margin:0;padding:9px 0;border-bottom:1px solid var(--line)}.detail-list dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:800}.detail-list dd{font-weight:650;color:#334438;overflow-wrap:anywhere}
@media(max-width:1180px){.provisioning-grid{grid-template-columns:1fr 1fr}.provisioning-grid>section:last-child{grid-column:1/-1}.provisioning-run-hero{grid-template-columns:1fr 1fr}.provisioning-run-hero>div:first-child{grid-column:1/-1}}
@media(max-width:760px){.provisioning-grid,.provisioning-review-grid,.provisioning-stats,.form-inline-two,.provisioning-run-hero{grid-template-columns:1fr}.provisioning-grid>section:last-child,.provisioning-run-hero>div:first-child{grid-column:auto}.provisioning-step{grid-template-columns:1fr}.detail-list{grid-template-columns:1fr}.detail-list dt{padding-bottom:2px;border-bottom:0}.detail-list dd{padding-top:0}}

/* v5.1 Abuse analytics, cache control, and WordPress policy */
.abuse-filters{grid-template-columns:1.2fr 1fr .8fr auto auto}.abuse-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.abuse-score{display:inline-flex;min-width:38px;justify-content:center;border-radius:999px;padding:5px 8px;font-weight:850;font-size:12px}.score-low{background:var(--greenbg);color:#246129}.score-medium{background:var(--yellowbg);color:#7a5200}.score-high{background:var(--redbg);color:var(--red)}.abuse-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.abuse-actions form{display:flex;align-items:center;gap:5px;margin:0}.abuse-actions select{max-width:180px;padding:6px 7px;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:11px}.icon-action{width:32px;height:32px;display:inline-grid;place-items:center;border:1px solid var(--brand-border);border-radius:8px;background:var(--brand-softer);cursor:pointer}.icon-action.danger{border-color:#efc5bf;background:var(--redbg)}.button.tiny{padding:6px 9px;font-size:10px}.cache-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px 20px}.policy-options{display:flex;gap:16px;flex-wrap:wrap;margin:14px 0 18px}.policy-options label{display:flex;gap:8px;align-items:flex-start;font-weight:700;font-size:12px}.mini-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mini-actions form{margin:0}.table-wrap{overflow-x:auto}.form-grid textarea{width:100%;border:1px solid #cbd6c9;border-radius:9px;padding:10px;background:#fff;font:inherit}.form-grid label>span{display:block;font-weight:800;margin-bottom:6px}.form-grid label>small{display:block;color:var(--muted);margin-top:5px}.flash.warn{background:var(--yellowbg);border-color:#efd596;color:#7a4700}
@media(max-width:1050px){.cache-choice-grid,.abuse-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.abuse-filters{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.cache-choice-grid,.abuse-stats,.abuse-filters{grid-template-columns:1fr}}

/* v5.1.1 UI and regression fixes */
.padded-card {
    padding: 20px;
}
.padded-card > h2:first-child,
.padded-card > h3:first-child,
.padded-card > p:first-child {
    margin-top: 0;
}
.padded-card > h2 {
    margin-bottom: 14px;
    font-size: 17px;
    color: #1c2c1f;
}

/* Newer forms use checkbox-row instead of the original checkbox class. */
.checkbox-row {
    display: flex !important;
    align-items: flex-start;
    gap: 9px;
    font-weight: 700 !important;
    line-height: 1.4;
}
.form-stack .checkbox-row input[type="checkbox"],
.checkbox-row input[type="checkbox"] {
    width: auto !important;
    min-width: 14px;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    accent-color: var(--brand);
    box-shadow: none !important;
}

/* Provisioning */
.provisioning-stats .stat small {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: 7px;
    color: var(--muted);
    font-size: 11px;
}
.empty-state {
    padding: 30px 20px;
    color: var(--muted);
}
.empty-state strong {
    display: block;
    color: var(--brand-ink);
    font-size: 15px;
}
.empty-state p {
    margin: 5px 0 0;
}
.provisioning-grid .padded-card.form-stack > h2 {
    margin: 0 0 2px;
    font-size: 17px;
}
.provisioning-review-grid .padded-card .detail-list {
    margin-bottom: 0;
}

/* Agency editor */
.agency-form .padded-card > h2 {
    margin: 0 0 14px;
}
.agency-form .padded-card > .muted {
    margin-top: -4px;
}
.agency-form .compact-search {
    display: block;
    border: 1px solid #cbd6c8;
    border-radius: 9px;
    padding: 10px 11px;
    background: #fff;
    color: var(--ink);
    font: inherit;
    outline: none;
}
.agency-form .compact-search:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114, 190, 68, .14);
}

/* Role editor metadata fields were outside form-stack and were therefore
   falling back to browser-native inputs. */
.role-editor-card form {
    display: block;
}
.role-meta-grid label {
    display: block;
    color: #334035;
    font-size: 13px;
    font-weight: 700;
}
.role-meta-grid input {
    width: 100%;
    display: block;
    margin-top: 6px;
    border: 1px solid #cbd6c8;
    border-radius: 9px;
    padding: 10px 11px;
    background: #fff;
    color: var(--ink);
    font: inherit;
    outline: none;
    transition: border .15s ease, box-shadow .15s ease;
}
.role-meta-grid input:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114, 190, 68, .14);
}
.role-meta-grid input:disabled {
    background: #f1f4ef;
    color: #687267;
    cursor: not-allowed;
}
.role-meta-grid small {
    display: block;
    margin-top: 5px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 500;
}

/* Security definition form body padding. */
.security-pattern-form {
    padding: 17px 20px 20px;
}

/* Cloudflare zone search/filter. */
.filters.cloudflare-zone-filters {
    grid-template-columns: minmax(280px, 2fr) minmax(220px, 1fr) auto auto;
    align-items: center;
}
.filters.cloudflare-zone-filters .button {
    min-width: 82px;
}

@media (max-width: 850px) {
    .filters.cloudflare-zone-filters {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 620px) {
    .filters.cloudflare-zone-filters {
        grid-template-columns: 1fr;
    }
    .padded-card {
        padding: 16px;
    }
}


/* v5.1.2 sidebar overflow / full-height fix */
@media (min-width: 781px) {
    .sidebar {
        min-height: 100vh;
        max-height: 100vh;
        overflow: hidden;
        z-index: 30;
    }

    .sidebar .brand {
        flex: 0 0 auto;
        margin-bottom: 18px;
    }

    .sidebar nav {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        scrollbar-gutter: stable;
        padding-right: 4px;
    }

    .sidebar-user {
        flex: 0 0 auto;
        margin-top: 12px;
        padding: 14px 10px 8px;
        background: linear-gradient(180deg, rgba(16,43,22,.05), rgba(16,43,22,.94) 18%);
    }

    .sidebar nav::-webkit-scrollbar {
        width: 9px;
    }

    .sidebar nav::-webkit-scrollbar-track {
        background: rgba(255,255,255,.035);
    }

    .sidebar nav::-webkit-scrollbar-thumb {
        background: rgba(114,190,68,.46);
        border-radius: 999px;
        border: 2px solid transparent;
        background-clip: padding-box;
    }

    .sidebar nav::-webkit-scrollbar-thumb:hover {
        background: rgba(114,190,68,.72);
        border: 2px solid transparent;
        background-clip: padding-box;
    }

    .sidebar nav {
        scrollbar-width: thin;
        scrollbar-color: rgba(114,190,68,.55) rgba(255,255,255,.035);
    }
}


/* v5.1.4 cache detection / skipped-state UI */
.cache-choice-option {
    position: relative;
}
.cache-choice-option.cache-choice-unavailable {
    background: #f7f8f6;
    border-style: dashed;
    opacity: .82;
}
.cache-choice-option.cache-choice-unknown {
    background: #fffdf5;
    border-color: #e5d59b;
}
.cache-choice-reason {
    margin-top: 3px;
    color: #657064;
}
.cache-detection-cell {
    min-width: 270px;
}
.cache-pill {
    display: inline-flex;
    align-items: center;
    margin: 2px 4px 2px 0;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 10px;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: .02em;
    white-space: nowrap;
}
.cache-pill.available {
    color: #275d24;
    background: #e8f5e4;
    border: 1px solid #cce8c5;
}
.cache-pill.unknown {
    color: #725b12;
    background: #fff5cf;
    border: 1px solid #eadb9a;
}
@media (max-width: 900px) {
    .cache-detection-cell { min-width: 220px; }
}


/* v5.2.0 selective per-site WordPress plugin/theme updates */
.selective-update-form {
    width: 100%;
}
.inventory-selectable {
    align-items: center;
}
.inventory-selectable > strong small {
    font-size: 10px;
    font-weight: 600;
    color: var(--muted);
}
.inventory-update-option {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin: 0;
    cursor: pointer;
}
.inventory-update-option input {
    width: 15px;
    height: 15px;
    margin: 0;
    flex: 0 0 auto;
    accent-color: var(--brand);
}
.inventory-update-option > span {
    display: inline-flex;
    align-items: center;
    gap: 2px;
}
.inventory-detailed span small {
    margin-left: 3px;
    font-size: 9px;
    font-weight: 700;
    opacity: .78;
}
.selected-update-toolbar {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid var(--line);
}
.selected-update-toolbar .select-all-updates,
.selected-update-toolbar .backup-confirm {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    font-size: 12px;
    font-weight: 700;
    color: #3c4c3f;
    cursor: pointer;
}
.selected-update-toolbar .backup-confirm {
    margin-left: auto;
}
.selected-update-toolbar input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--brand);
}
.selected-update-toolbar .button[disabled] {
    opacity: .48;
    cursor: not-allowed;
}
@media (max-width: 700px) {
    .selected-update-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .selected-update-toolbar .backup-confirm {
        margin-left: 0;
    }
}


/* v5.2.2 tabbed WordPress inventory + multisite-aware update UI */
.wordpress-inventory-card .card-head > div:first-child {
    min-width: 0;
}
.wordpress-inventory-card .card-head > div:first-child > span {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 11px;
}
.inventory-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding: 18px;
    border-bottom: 1px solid var(--line);
    background: #fbfdf9;
}
.inventory-tab {
    appearance: none;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
    padding: 12px 14px;
    text-align: left;
    cursor: pointer;
    color: var(--ink);
    transition: border-color .12s ease, background .12s ease, box-shadow .12s ease, transform .12s ease;
}
.inventory-tab:hover {
    border-color: var(--brand);
    background: var(--brand-softer);
    transform: translateY(-1px);
}
.inventory-tab.active {
    border-color: var(--brand);
    background: var(--brand-soft);
    box-shadow: inset 0 0 0 1px rgba(76, 154, 51, .12);
}
.inventory-tab strong,
.inventory-tab span,
.inventory-tab small {
    display: block;
}
.inventory-tab strong {
    font-size: 25px;
    line-height: 1;
    color: var(--brand-deep);
}
.inventory-tab span {
    margin-top: 5px;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .055em;
}
.inventory-tab small {
    margin-top: 3px;
    color: var(--muted);
    font-size: 10px;
}
.inventory-tab-panel[hidden] {
    display: none !important;
}
.inventory-tab-panel {
    min-width: 0;
}
.inventory-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px 10px;
}
.inventory-panel-heading > div > strong,
.inventory-panel-heading > div > span {
    display: block;
}
.inventory-panel-heading > div > strong {
    color: #26372a;
    font-size: 13px;
}
.inventory-panel-heading > div > span {
    margin-top: 2px;
    color: var(--muted);
    font-size: 10px;
}
.inventory-network-badge {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--brand-border);
    border-radius: 999px;
    background: var(--brand-softer);
    color: var(--brand-deep);
    padding: 5px 8px;
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .04em;
    white-space: nowrap;
}
.inventory-scroll {
    overflow: auto;
    padding: 4px 18px 14px;
    scrollbar-gutter: stable;
}
.inventory-scroll-plugins {
    max-height: 440px;
}
.inventory-scroll-themes {
    max-height: 360px;
}
.inventory-item-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.inventory-item-card {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr) auto;
    gap: 9px;
    align-items: center;
    min-width: 0;
    margin: 0;
    padding: 10px 11px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    cursor: default;
}
.inventory-item-card.is-selectable {
    cursor: pointer;
}
.inventory-item-card.is-selectable:hover {
    border-color: var(--brand);
    background: #fbfef9;
}
.inventory-item-card.has-update {
    border-color: #ead69b;
    background: #fffaf0;
}
.inventory-item-card.is-assigned-theme {
    box-shadow: inset 3px 0 0 var(--brand);
}
.inventory-item-card.is-parent-theme {
    box-shadow: inset 3px 0 0 #8aa0aa;
}
.inventory-item-card input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--brand);
}
.inventory-item-spacer {
    width: 16px;
    height: 16px;
}
.inventory-item-copy {
    min-width: 0;
}
.inventory-item-copy > strong {
    display: block;
    overflow: hidden;
    color: #2c3b2f;
    font-size: 12px;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.inventory-item-meta {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    margin-top: 4px;
}
.inventory-item-meta > span {
    display: inline-flex;
    align-items: center;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
    color: var(--muted);
    font-size: 9px;
    font-weight: 650;
}
.inventory-item-meta > span + span::before {
    content: "•";
    margin-right: 5px;
    opacity: .45;
}
.inventory-item-meta > .inventory-theme-role-badge {
    border: 1px solid #d8e4d3;
    border-radius: 999px;
    padding: 1px 5px;
    font-size: 8px;
    font-weight: 850;
    letter-spacing: .025em;
    text-transform: uppercase;
}
.inventory-item-meta > .inventory-theme-role-badge.assigned {
    border-color: #bcd8ad;
    background: #f1f8ed;
    color: #355c2d;
}
.inventory-item-meta > .inventory-theme-role-badge.parent {
    border-color: #d5dde1;
    background: #f4f7f8;
    color: #53656d;
}
.inventory-update-badge,
.inventory-current-badge {
    justify-self: end;
    border-radius: 999px;
    padding: 4px 7px;
    font-size: 8px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .035em;
    white-space: nowrap;
}
.inventory-update-badge {
    border: 1px solid #e5c978;
    background: var(--yellowbg);
    color: #795100;
}
.inventory-current-badge {
    border: 1px solid #d7e5d3;
    background: #f1f7ee;
    color: #466246;
}
.wordpress-inventory-card .selected-update-toolbar {
    margin: 0;
    padding: 12px 18px 16px;
    border-top: 1px solid var(--line);
    background: #fbfdf9;
}
.inventory-core-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr);
    gap: 14px;
    padding: 18px;
}
.inventory-core-status {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 120px;
    border: 1px solid var(--line);
    border-left: 4px solid var(--brand);
    border-radius: 11px;
    background: #fff;
    padding: 16px 18px;
}
.inventory-core-status.has-update {
    border-left-color: var(--yellow);
    background: var(--yellowbg);
}
.inventory-core-status > strong {
    margin-top: 4px;
    font-size: 24px;
    color: #27372b;
}
.inventory-eyebrow {
    color: var(--muted);
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.inventory-version-jump,
.inventory-current-label {
    margin-top: 6px;
    font-size: 11px;
    font-weight: 750;
}
.inventory-version-jump {
    color: #785100;
}
.inventory-current-label {
    color: #356437;
}
.inventory-core-meta {
    display: grid;
    grid-template-columns: 1fr;
    border: 1px solid var(--line);
    border-radius: 11px;
    overflow: hidden;
    background: #fff;
}
.inventory-core-meta > div {
    display: grid;
    grid-template-columns: 130px minmax(0, 1fr);
    gap: 12px;
    padding: 10px 12px;
    border-top: 1px solid var(--line);
}
.inventory-core-meta > div:first-child {
    border-top: 0;
}
.inventory-core-meta span {
    color: var(--muted);
    font-size: 10px;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: .035em;
}
.inventory-core-meta strong {
    color: #334438;
    font-size: 11px;
    text-align: right;
}
.inventory-network-note {
    margin: 0 18px 14px;
    border: 1px solid var(--brand-border);
    border-radius: 9px;
    background: var(--brand-softer);
    padding: 9px 11px;
    color: #3f5b42;
    font-size: 10px;
    line-height: 1.45;
}
.core-update-form {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 18px 18px;
}
.core-update-form .backup-confirm {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    color: #3c4c3f;
    font-size: 12px;
    font-weight: 700;
}
.core-update-form input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--brand);
}
.inventory-empty-state {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    margin: 16px 18px 18px;
    border: 1px dashed var(--line);
    border-radius: 10px;
    background: #fafcf9;
    padding: 18px;
}
.inventory-empty-state strong {
    color: #36483a;
}
.inventory-empty-state span {
    color: var(--muted);
    font-size: 11px;
}
.inventory-refresh-help {
    margin: 0 18px 18px;
}
@media (max-width: 980px) {
    .inventory-item-grid {
        grid-template-columns: 1fr;
    }
    .inventory-core-grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 700px) {
    .inventory-tabs {
        grid-template-columns: 1fr;
        padding: 12px;
    }
    .inventory-tab {
        display: grid;
        grid-template-columns: 46px 1fr auto;
        align-items: center;
        gap: 9px;
    }
    .inventory-tab strong,
    .inventory-tab span,
    .inventory-tab small {
        margin: 0;
    }
    .inventory-scroll {
        padding-left: 12px;
        padding-right: 12px;
    }
    .inventory-item-card {
        grid-template-columns: 18px minmax(0, 1fr);
    }
    .inventory-update-badge,
    .inventory-current-badge {
        grid-column: 2;
        justify-self: start;
    }
    .inventory-panel-heading {
        align-items: flex-start;
    }
    .inventory-core-grid {
        padding: 12px;
    }
    .inventory-core-meta > div {
        grid-template-columns: 1fr;
        gap: 3px;
    }
    .inventory-core-meta strong {
        text-align: left;
    }
    .core-update-form {
        align-items: stretch;
        flex-direction: column;
        padding: 0 12px 14px;
    }
    .inventory-network-note,
    .inventory-empty-state,
    .inventory-refresh-help {
        margin-left: 12px;
        margin-right: 12px;
    }
}


/* Operations polish */
.site-row-suspended > td { background:#fff0f0 !important; }
.site-row-suspended:hover > td { background:#ffe5e5 !important; }
.site-row-ignored > td { background:#f6f4ed !important; }
.security-issue-row > td { background:#fffafa; }
.badge.security-issue-badge, .security-issue-badge { background:#b42318 !important; color:#fff !important; border-color:#b42318 !important; }
.scanner-arrival-card .profile-card-body { padding:18px 20px 20px; }
.scanner-arrival-card .profile-card-body > :first-child { margin-top:0; }
.policy-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.policy-detail-grid > div { border:1px solid #dfe8d9; border-radius:12px; padding:14px; background:#fbfdf9; }
.policy-detail-grid p { margin:6px 0 0; color:#5f6f63; }
.server-monitoring-card { margin-top:18px; }
@media (max-width:900px){ .policy-detail-grid { grid-template-columns:1fr; } }
@media print { .sidebar,.topbar,.no-print,.button,.action-row,.filters { display:none !important; } .app-shell,.main-content { display:block !important; margin:0 !important; padding:0 !important; } .card { box-shadow:none !important; break-inside:auto; } }


/* v5.6.1 — expandable recent portal bug reports */
.bug-report-list {
    padding: 12px 18px 18px;
    display: grid;
    gap: 10px;
}
.bug-report-item {
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
}
.bug-report-item summary {
    cursor: pointer;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 13px 14px;
}
.bug-report-item summary::-webkit-details-marker {
    display: none;
}
.bug-report-item summary:after {
    content: '+';
    font-size: 20px;
    line-height: 1;
    color: var(--brand-dark);
    font-weight: 800;
}
.bug-report-item[open] summary:after {
    content: '–';
}
.bug-report-item[open] summary {
    border-bottom: 1px solid var(--line);
    background: #f8fbf6;
}
.bug-report-title {
    display: grid;
    gap: 3px;
    min-width: 0;
    flex: 1;
}
.bug-report-title strong {
    overflow-wrap: anywhere;
}
.bug-report-title small {
    color: var(--muted);
}
.bug-report-detail {
    padding: 15px;
    display: grid;
    gap: 14px;
}
.bug-report-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.bug-report-meta > div {
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 9px 10px;
    background: #fafcf9;
}
.bug-report-meta span {
    display: block;
    color: var(--muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: 3px;
}
.bug-report-message strong,
.bug-report-page strong {
    display: block;
    margin-bottom: 6px;
}
.bug-report-message pre {
    margin: 0;
    max-height: 340px;
    overflow: auto;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    font: inherit;
    line-height: 1.5;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 12px;
    background: #f7f9f6;
}
.bug-report-page a {
    overflow-wrap: anywhere;
}
@media(max-width:700px) {
    .bug-report-meta {
        grid-template-columns: 1fr;
    }
}


/* v5.6.2 — compact branded pagination */
.compact-pager {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 7px;
    padding: 13px 16px;
}
.pager-box {
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--brand-border);
    border-radius: 9px;
    background: #fff;
    color: var(--brand-dark);
    font-weight: 800;
    text-decoration: none;
    line-height: 1;
}
a.pager-box:hover {
    background: var(--brand-soft);
    border-color: var(--brand);
    color: var(--brand-dark);
}
.pager-box.active {
    background: var(--brand);
    border-color: var(--brand);
    color: #fff;
    box-shadow: 0 2px 5px rgba(52, 101, 42, .18);
}
.pager-ellipsis {
    color: var(--muted);
    font-weight: 800;
    padding: 0 2px;
}

/* Server hosting account search */
.server-account-toolbar {
    padding: 13px 16px 5px;
    border-top: 1px solid var(--line);
}
.server-account-search {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
}
.server-account-search input[type="search"] {
    width: min(480px, 100%);
    min-width: 240px;
    margin: 0;
}

/* Recent Reports: make the entire report heading an obvious target. */
.bug-report-list {
    padding: 14px 16px 18px !important;
}
.bug-report-item {
    border: 1px solid var(--line) !important;
    border-radius: 12px !important;
    background: #fff !important;
    overflow: hidden;
}
.bug-report-item > summary {
    cursor: pointer;
    list-style: none !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    width: 100%;
    padding: 14px 15px !important;
    background: #fff;
    border: 0;
    user-select: none;
}
.bug-report-item > summary::-webkit-details-marker {
    display: none !important;
}
.bug-report-item > summary::marker {
    content: "";
    display: none;
}
.bug-report-item > summary:after {
    content: none !important;
    display: none !important;
}
.bug-report-item > summary:hover {
    background: #f8fbf6;
}
.bug-report-item[open] > summary {
    background: var(--brand-soft) !important;
    border-bottom: 1px solid var(--brand-border) !important;
}
.bug-report-summary-actions {
    display: flex;
    align-items: center;
    gap: 9px;
    flex: 0 0 auto;
}
.bug-report-toggle {
    min-width: 58px;
    padding: 7px 10px;
    border-radius: 8px;
    background: var(--brand);
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.bug-report-close-label {
    display: none;
}
.bug-report-item[open] .bug-report-open-label {
    display: none;
}
.bug-report-item[open] .bug-report-close-label {
    display: inline;
}
.bug-report-detail {
    margin: 0 !important;
    padding: 16px !important;
    display: grid;
    gap: 14px;
    background: #fff;
}
.bug-report-message,
.bug-report-page {
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 13px;
    background: #fafcf9;
}
.bug-report-message pre {
    border: 0 !important;
    background: transparent !important;
    padding: 4px 0 0 !important;
}
@media(max-width:700px) {
    .bug-report-item > summary {
        align-items: flex-start;
    }
    .bug-report-summary-actions {
        flex-direction: column;
        align-items: flex-end;
    }
    .server-account-search {
        align-items: stretch;
    }
    .server-account-search input[type="search"] {
        min-width: 0;
        width: 100%;
    }
}


/* v5.6.3 — UI polish hotfix */

/* Make special row backgrounds carry evenly across all cells, including the
   Quick Access / Actions end of the row. */
tr.site-row-suspended > td,
tr.site-row-ignored > td {
    background-clip: padding-box;
}

tr.site-row-suspended > td:last-child,
tr.site-row-ignored > td:last-child {
    background-image: none;
}

/* Recent report action chip */
.bug-report-toggle {
    min-width: 64px;
}

.bug-report-open-label,
.bug-report-close-label {
    display: inline-block;
    min-width: 34px;
}

/* Keep the last action column visually even on tables with row highlight
   backgrounds and inline action buttons. */
td.actions,
td.quick-actions,
td:last-child {
    background-clip: padding-box;
}


/* v5.6.4 — suspended-row Quick Access + bug toggle fix */

/*
 * Keep the Quick Access TD as an actual table cell.
 * v5.6.3 inherited .quick-actions/.icon-actions display:flex directly on the
 * TD, which caused the highlighted suspended-row background to stop short.
 */
.quick-actions-cell {
    display: table-cell !important;
    vertical-align: middle;
    white-space: nowrap;
}

.quick-actions-cell > .quick-actions.icon-actions {
    display: flex;
    align-items: center;
    gap: 7px;
    white-space: nowrap;
}

/* Let the suspended/ignored row color cover every real table cell uniformly. */
tr.site-row-suspended > td {
    background: #fff0f0 !important;
}
tr.site-row-suspended:hover > td {
    background: #ffe5e5 !important;
}
tr.site-row-ignored > td {
    background: #f6f4ed !important;
}

/*
 * Bug report action must show one word only:
 * collapsed = VIEW
 * expanded  = CLOSE
 */
.bug-report-toggle .bug-report-open-label {
    display: inline-block !important;
}
.bug-report-toggle .bug-report-close-label {
    display: none !important;
}
.bug-report-item[open] .bug-report-toggle .bug-report-open-label {
    display: none !important;
}
.bug-report-item[open] .bug-report-toggle .bug-report-close-label {
    display: inline-block !important;
}


/* v5.6.5 — server search input + bug ticket status controls */

/* Match the server Hosting Accounts search field to standard portal inputs. */
.server-account-search input[type="search"] {
    width: min(480px, 100%);
    min-width: 240px;
    margin: 0;
    display: block;
    border: 1px solid #cbd6c8;
    border-radius: 9px;
    padding: 10px 11px;
    background: #fff;
    color: var(--ink);
    font: inherit;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    transition: border .15s ease, box-shadow .15s ease;
}

.server-account-search input[type="search"]:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114, 190, 68, .14);
}

.server-account-search input[type="search"]::placeholder {
    color: #7c897e;
    opacity: 1;
}

.bug-report-ticket-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    padding-top: 2px;
}

.bug-report-ticket-actions form {
    margin: 0;
}

.bug-report-ticket-actions .button {
    min-height: 36px;
}

@media(max-width:700px) {
    .bug-report-ticket-actions {
        align-items: stretch;
    }

    .bug-report-ticket-actions form,
    .bug-report-ticket-actions .button {
        width: 100%;
    }
}


/* v5.7.0 — Sentinel V2 provisioning polish */
.provisioning-create-grid,
.provisioning-template-grid {
    align-items: stretch;
    gap: 20px;
}

.provisioning-card {
    padding: 22px !important;
    overflow: visible;
    height: 100%;
    background: #fff;
}

.provisioning-card > h2:first-child {
    margin: 0 0 4px;
    font-size: 19px;
    line-height: 1.25;
    color: var(--brand-ink);
}

.provisioning-card.form-stack { gap: 16px; }
.provisioning-card label { min-width: 0; }

/* v5.9.80za — Provision New Site stays three main columns on desktop.
 * Only the WordPress-vs-blank choice inside the middle column is a two-card grid. */
.provisioning-create-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
}
.provisioning-create-grid > #provisioning-account,
.provisioning-create-grid > #provisioning-install-mode,
.provisioning-create-grid > #provisioning-cloudflare {
    grid-column: auto;
    min-width: 0;
}
.prov-mode-choices {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 2px 0 4px;
}
.prov-mode-choice {
    display: flex !important;
    flex-direction: column;
    gap: 7px;
    min-height: 118px;
    margin: 0 !important;
    padding: 12px !important;
    border: 2px solid #d3ddd0;
    border-radius: 11px;
    background: #fff;
    cursor: pointer;
    box-sizing: border-box;
    transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.prov-mode-choice:hover { border-color: var(--brand); background: var(--brand-softer); }
.prov-mode-choice.is-selected,
.prov-mode-choice:has(input[type="radio"]:checked) {
    border-color: var(--brand);
    background: var(--brand-softer);
    box-shadow: 0 3px 12px rgba(60, 140, 35, .12);
}
.prov-mode-choice .prov-mode-title {
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 9px !important;
    width: 100%;
}
.prov-mode-choice .prov-mode-title input[type="radio"] {
    position: static !important;
    appearance: auto !important;
    width: 18px !important;
    min-width: 18px !important;
    height: 18px !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    accent-color: var(--brand);
}
.prov-mode-choice .prov-mode-title strong {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1.3;
}
.prov-mode-choice > small {
    display: block;
    margin: 0 !important;
    color: var(--muted);
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
}
.prov-mode-selected {
    display: inline-flex;
    align-self: flex-start;
    margin-top: auto;
    padding: 3px 7px;
    border-radius: 999px;
    background: var(--brand);
    color: #fff;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.prov-mode-selected[hidden] { display: none !important; }
.provisioning-dev-list-options { display:grid; gap:8px; margin-top:10px; }
.form-stack .softaculous-set-option input[type="radio"],
.softaculous-set-option input[type="radio"] {
    appearance:auto !important;
    -webkit-appearance:radio !important;
    position:static !important;
    float:none !important;
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:18px !important;
    min-width:18px !important;
    height:18px !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    border:initial !important;
    box-shadow:none !important;
    accent-color:var(--brand);
}
@media(max-width:1180px){
    .provisioning-create-grid{grid-template-columns:1fr 1fr}
    .provisioning-create-grid>#provisioning-cloudflare{grid-column:1/-1}
}
@media(max-width:760px){
    .provisioning-create-grid{grid-template-columns:1fr}
    .provisioning-create-grid>#provisioning-cloudflare{grid-column:auto}
    .prov-mode-choices{grid-template-columns:1fr}
}
.provisioning-card label > small,
.provisioning-card .field-help {
    display: block;
    margin-top: 5px;
    color: var(--muted);
    font-size: 11px;
    line-height: 1.45;
    font-weight: 600;
}

.provisioning-template-summary {
    min-height: 46px;
    padding: 12px 14px;
    border: 1px solid var(--brand-border);
    border-left: 4px solid var(--brand);
    border-radius: 10px;
    background: var(--brand-softer);
    color: #405143;
    line-height: 1.45;
}

.provisioning-actions {
    width: fit-content;
    max-width: 100%;
    margin: 18px 0 20px;
    padding: 10px !important;
}

.provisioning-danger-zone {
    max-width: 760px;
    padding: 18px 20px;
    overflow: visible;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    background: #fff9f8;
    border-color: #efc5bf !important;
}

.provisioning-danger-zone h2 {
    margin: 0 0 5px;
    font-size: 17px;
    color: var(--red);
}
.provisioning-danger-zone p {
    margin: 0;
    color: #76524e;
    font-size: 12px;
    line-height: 1.45;
}
.provisioning-danger-zone form { margin: 0; flex: 0 0 auto; }

@media(max-width:760px) {
    .provisioning-card { padding: 18px !important; }
    .provisioning-actions { width: 100%; position: static; }
    .provisioning-actions .button { flex: 1 1 auto; }
    .provisioning-danger-zone { max-width: none; flex-direction: column; align-items: stretch; }
    .provisioning-danger-zone .button { width: 100%; }
}


/* v5.7.1 — WooCommerce site markers */
.badge.woo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 7px;
    padding: 4px 7px;
    border: 1px solid #7f54b3;
    border-radius: 999px;
    background: #7f54b3;
    color: #fff;
    font-size: 9px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .04em;
    vertical-align: middle;
}
.badge.woo.inactive {
    background: #f4eef9;
    color: #67418f;
    border-color: #cdb9df;
}
.woo-stat {
    border-color: #cdb9df !important;
}
.woo-stat > span {
    color: #67418f;
}


/* v5.8.0 — sparse-role sidebar, uptime controls, dev-domain labels */
@media (min-width: 781px) {
    .sidebar nav {
        align-content: start;
        grid-auto-rows: max-content;
    }
}
.site-dev-domain {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 10px;
    font-weight: 650;
}
.uptime-ignore-action {
    min-width: 155px;
    white-space: nowrap;
}
.uptime-ignore-action form {
    margin: 0;
}
.badge.stopped {
    background: #eceff1;
    color: #4d5962;
}


/* v5.8.7 — Provisioning compact layout + Softaculous set list */
.provisioning-card.form-stack {
    align-content: start;
    grid-auto-rows: max-content;
}

.provisioning-cloudflare-card.form-stack {
    gap: 11px !important;
    align-content: start !important;
    grid-auto-rows: max-content !important;
}

.provisioning-cloudflare-card .checkbox-row,
.provisioning-cloudflare-card > label,
.provisioning-cloudflare-card .development-cloudflare-note,
.provisioning-cloudflare-card .production-dns-safety,
.provisioning-cloudflare-card .cloudflare-permission-box {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.provisioning-cloudflare-card .production-dns-safety {
    padding-top: 2px;
}

.softaculous-set-wrap {
    max-height: 320px;
    overflow-y: auto;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 8px;
    background: #fafcf9;
}

.softaculous-set-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    width: 100%;
}

.softaculous-set-option {
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    cursor: pointer;
    box-sizing: border-box;
}

.softaculous-set-option:hover {
    border-color: var(--brand);
    background: var(--brand-softer);
}

.form-stack .softaculous-set-option input[type="checkbox"],
.softaculous-set-option input[type="checkbox"] {
    appearance: auto !important;
    -webkit-appearance: checkbox !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 16px !important;
    min-width: 16px !important;
    height: 16px !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    border: initial !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    accent-color: var(--brand);
}

.softaculous-set-copy {
    display: block;
    min-width: 0;
    line-height: 1.3;
}

.softaculous-set-copy strong,
.softaculous-set-copy small {
    display: block;
}

.softaculous-set-copy small {
    margin-top: 2px !important;
    color: var(--muted);
    font-weight: 600;
    line-height: 1.35;
}

.provisioning-review-grid > .provisioning-review-card {
    padding: 20px !important;
}

.provisioning-review-grid > .provisioning-review-card > h2 {
    margin: 0 0 12px !important;
}

.provisioning-review-grid .detail-list {
    margin-top: 0 !important;
}

.provisioning-safety.padded-card {
    padding: 20px !important;
}

/* v5.8.8 — explicit WordPress vs migration provisioning mode */
.provisioning-mode-options {
    display: grid;
    gap: 7px;
    padding: 10px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fafcf9;
}

.provisioning-mode-options > strong {
    margin-bottom: 1px;
}

.provisioning-mode-option {
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) !important;
    gap: 9px !important;
    align-items: start !important;
    margin: 0 !important;
    padding: 8px 9px !important;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    cursor: pointer;
}

.provisioning-mode-option:has(input:checked) {
    border-color: var(--brand);
    background: var(--brand-softer);
}

.provisioning-mode-option input[type="radio"] {
    appearance: auto !important;
    -webkit-appearance: radio !important;
    width: 16px !important;
    height: 16px !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    accent-color: var(--brand);
}

.provisioning-mode-option span,
.provisioning-mode-option b,
.provisioning-mode-option small {
    display: block;
}

.provisioning-mode-option small {
    margin-top: 2px !important;
    color: var(--muted);
    line-height: 1.35;
}

#prov-wordpress-options[hidden] {
    display: none !important;
}

/* v5.9.0 — operations cleanup, scheduled jobs, and per-zone Cloudflare rules */
.select-col { width: 36px; text-align: center; }
.select-col input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--brand); }
.bulk-record-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    border-top: 1px solid var(--line);
    background: #fafcf9;
}
.bulk-record-actions span { color: var(--muted); font-size: 12px; font-weight: 650; }
.cleanup-stats .stat strong { font-size: clamp(19px, 2vw, 28px); }
.form-inline-three {
    display: grid;
    grid-template-columns: minmax(180px, .7fr) minmax(240px, 1fr) auto;
    gap: 14px;
    align-items: end;
}
.form-action-bottom { display: flex; align-items: end; padding-bottom: 1px; }
.cleanup-safety-note { margin-top: 12px; }
.cleanup-filters { grid-template-columns: minmax(260px, 1fr) minmax(160px, .45fr) minmax(150px, .35fr) auto auto !important; }
.cleanup-path { min-width: 320px; max-width: 720px; }
.cleanup-path code,
.rule-expression,
.cleanup-finding-list code {
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}
.legacy-scan-result {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--line);
}
.legacy-scan-result h3,
.legacy-scan-result h4 { margin: 0 0 10px; }
.legacy-scan-result h4 { margin-top: 18px; }
.compact-detail-list { margin-bottom: 12px; }
.cleanup-finding-list { display: grid; gap: 8px; margin-bottom: 14px; }
.cleanup-finding-list > div {
    display: grid;
    gap: 5px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fafcf9;
}
.cleanup-finding-list .badge { justify-self: start; }
.cleanup-finding-list small { color: var(--muted); }
.scheduled-optional-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; margin: 16px 0; }
.scheduled-optional-grid .cron-job {
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fafcf9;
}
.scheduled-optional-grid .cron-job strong,
.scheduled-optional-grid .cron-job code { display: block; margin-bottom: 8px; }
.zone-rule-list { display: grid; gap: 12px; padding: 16px; }
.zone-rule-card {
    display: grid;
    gap: 10px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
}
.zone-rule-card.standard { background: #f7fbf4; }
.zone-rule-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.zone-rule-head strong,
.zone-rule-head small { display: block; }
.zone-rule-head small { margin-top: 3px; color: var(--muted); }
.rule-expression {
    display: block;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #f7f9f7;
    line-height: 1.45;
}
.zone-rule-editor { border-top: 1px solid var(--line); padding-top: 10px; }
.zone-rule-editor summary { cursor: pointer; font-weight: 800; }
.zone-rule-editor form { margin-top: 12px; }
@media(max-width: 900px) {
    .form-inline-three,
    .cleanup-filters,
    .scheduled-optional-grid { grid-template-columns: 1fr !important; }
    .cleanup-path { min-width: 220px; }
}

/* v5.9.1 — normalize form controls across operational screens */
.main input[type="text"],
.main input[type="email"],
.main input[type="number"],
.main input[type="search"],
.main input[type="url"],
.main input[type="password"],
.main input[type="tel"],
.main select,
.main textarea {
    border: 1px solid #cbd6c8;
    border-radius: 9px;
    padding: 9px 11px;
    min-height: 40px;
    background: #fff;
    color: var(--ink);
    font: inherit;
    line-height: 1.35;
    outline: none;
    box-shadow: 0 1px 2px rgba(24, 50, 28, .03);
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.main textarea { min-height: 92px; resize: vertical; }
.main input[type="text"]:focus,
.main input[type="email"]:focus,
.main input[type="number"]:focus,
.main input[type="search"]:focus,
.main input[type="url"]:focus,
.main input[type="password"]:focus,
.main input[type="tel"]:focus,
.main select:focus,
.main textarea:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114, 190, 68, .14);
}
.main input:disabled,
.main select:disabled,
.main textarea:disabled {
    background: #f2f5f1;
    color: var(--muted);
    cursor: not-allowed;
}
.main input[type="checkbox"],
.main input[type="radio"] { accent-color: var(--brand); }
.posture-details { margin-top: 8px; }
.posture-details summary { cursor: pointer; color: var(--brand-dark); font-size: 11px; font-weight: 800; }
.posture-details pre {
    max-width: 760px;
    max-height: 340px;
    overflow: auto;
    margin: 8px 0 0;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #f7f9f7;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    font-size: 10px;
    line-height: 1.45;
}

/* v5.9.2 — WordPress Security Features / Plugin Policy alignment */
.wp-policy-filter-card { padding: 14px 16px; }
.wp-policy-filters {
    grid-template-columns: minmax(260px, 1.7fr) minmax(220px, 1fr) minmax(130px, .75fr) minmax(110px, .75fr);
    align-items: center;
}
.wp-policy-filters > * { min-width: 0; }
.wp-policy-filters .button { width: 100%; min-height: 40px; justify-content: center; }

.wp-policy-bulk-toolbar {
    border: 1px solid var(--line);
    border-radius: 12px 12px 0 0;
    margin: 0;
    background: #fbfdf9;
}
.wp-policy-bulk-toolbar + .wp-policy-sites-card {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.wp-policy-bulk-toolbar label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.wp-policy-bulk-toolbar input[type="checkbox"] { margin: 0; }
.wp-policy-bulk-toolbar select { min-width: 245px; }

.wp-policy-table-wrap { width: 100%; overflow-x: auto; }
.wp-policy-table { min-width: 1180px; table-layout: fixed; }
.wp-policy-table th,
.wp-policy-table td { vertical-align: middle; }
.wp-policy-table th { padding-top: 12px; padding-bottom: 12px; }
.wp-policy-table td { padding-top: 13px; padding-bottom: 13px; }
.wp-policy-table .wp-policy-select-col,
.wp-policy-table .wp-policy-select-cell { width: 42px; text-align: center; padding-left: 12px; padding-right: 8px; }
.wp-policy-table .wp-policy-site-col { width: 250px; }
.wp-policy-table .wp-policy-server-col { width: 180px; }
.wp-policy-table .wp-policy-security-col { width: 180px; }
.wp-policy-table .wp-policy-legacy-col { width: 285px; }
.wp-policy-table .wp-policy-date-col { width: 145px; }
.wp-policy-table .wp-policy-actions-col { width: 145px; }
.wp-policy-site-cell strong,
.wp-policy-server-cell strong { display: block; }
.wp-policy-server-cell small,
.wp-policy-security-cell small,
.wp-policy-site-cell small { margin-top: 4px; }
.wp-policy-legacy-cell { min-width: 0; }
.wp-policy-path {
    display: block;
    max-width: 255px;
    margin-top: 5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 10px;
}
.wp-policy-date-cell { white-space: nowrap; }
.wp-policy-actions-cell .mini-actions { flex-wrap: nowrap; }
.wp-policy-actions-cell .button { min-width: 54px; justify-content: center; }

@media (max-width: 900px) {
    .wp-policy-filters { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
    .wp-policy-filters { grid-template-columns: 1fr; }
    .wp-policy-bulk-toolbar { border-radius: 12px; margin-bottom: 12px; }
    .wp-policy-bulk-toolbar + .wp-policy-sites-card { border-radius: var(--radius); }
}

/* v5.9.4 — fleet operations, ignore list, and softer suspended-row treatment */
tr.site-row-suspended-soft > td {
    background: #fff8f3 !important;
}
tr.site-row-suspended-soft:hover > td {
    background: #fff3eb !important;
}
tr.site-row-ignored > td {
    background: #f7f8f6 !important;
}
tr.site-row-ignored:hover > td {
    background: #f1f3ef !important;
}

.fleet-wordpress-tools .card-head { margin-bottom: 0; }
.fleet-tool-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    padding: 16px;
}
.fleet-tool-card {
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 16px;
    background: #fbfdf9;
}
.fleet-tool-card strong { display: block; margin-bottom: 6px; }
.fleet-tool-card p { margin: 0 0 12px; color: var(--muted); line-height: 1.5; }
.fleet-tool-card small { display: block; margin-top: 9px; color: var(--muted); }
.fleet-tool-card form { margin: 0; }

.monitor-filters { grid-template-columns: minmax(190px,1.3fr) minmax(170px,1fr) minmax(155px,.9fr) minmax(155px,.9fr) minmax(160px,.9fr) auto auto auto; }
.monitor-filters > * { min-width: 0; }

.provisioning-test-cleanup-card code { white-space: nowrap; }

@media (max-width: 1100px) {
    .monitor-filters { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 760px) {
    .fleet-tool-grid { grid-template-columns: 1fr; }
    .monitor-filters { grid-template-columns: 1fr; }
}

/* v5.9.5 — WordPress Updates fleet tools polish + reliable cache refresh */
.fleet-wordpress-tools {
    overflow: hidden;
}
.fleet-wordpress-tools .card-head {
    padding: 18px 20px;
    margin: 0;
}
.fleet-wordpress-tools .card-head > div {
    display: grid;
    gap: 3px;
}
.fleet-wordpress-tools .card-head h2 {
    margin: 0;
}
.fleet-wordpress-tools .card-head span {
    display: block;
    line-height: 1.4;
}
.fleet-wordpress-tools .fleet-tool-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    padding: 18px 20px 20px;
    background: #fff;
}
.fleet-wordpress-tools .fleet-tool-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 190px;
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fbfdf9;
}
.fleet-wordpress-tools .fleet-tool-copy {
    margin-bottom: 14px;
}
.fleet-wordpress-tools .fleet-tool-copy strong {
    display: block;
    margin: 0 0 7px;
    color: #1e3021;
    font-size: 14px;
}
.fleet-wordpress-tools .fleet-tool-copy p {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}
.fleet-wordpress-tools .fleet-tool-card form {
    margin: auto 0 0;
}
.fleet-wordpress-tools .fleet-tool-card .button {
    min-width: 220px;
}
.fleet-wordpress-tools .fleet-tool-card small {
    display: block;
    margin-top: 10px;
    color: var(--muted);
    line-height: 1.4;
}

/* Keep the Updates filter and batch toolbar aligned with the rest of Sentinel. */
.filter-card {
    padding: 14px 16px;
}
.filter-card .simple-filter {
    flex-wrap: wrap;
}
.filter-card .simple-filter select {
    min-width: 220px;
}
.bulk-toolbar > label:first-child {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.bulk-toolbar input[type="checkbox"] {
    margin: 0;
}

@media (max-width: 900px) {
    .fleet-wordpress-tools .fleet-tool-grid {
        grid-template-columns: 1fr;
    }
    .fleet-wordpress-tools .fleet-tool-card {
        min-height: 0;
    }
}
@media (max-width: 640px) {
    .fleet-wordpress-tools .fleet-tool-grid {
        padding: 14px;
    }
    .fleet-wordpress-tools .fleet-tool-card .button {
        width: 100%;
        min-width: 0;
    }
}

/* v5.9.6 — live fleet-operation status cards */
.fleet-operation-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 16px 0;
}
.fleet-operation-status {
    overflow: hidden;
}
.fleet-operation-status-head {
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
}
.fleet-operation-status-head > div:first-child {
    display: grid;
    gap: 3px;
    min-width: 0;
}
.fleet-operation-status-head h2 {
    margin: 0;
}
.fleet-operation-status-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}
.fleet-operation-status-body {
    padding: 16px 18px 18px;
    border-top: 1px solid var(--line);
}
.fleet-operation-message {
    margin-bottom: 10px;
    font-weight: 600;
    line-height: 1.45;
}
.fleet-progress-track {
    height: 9px;
    overflow: hidden;
    margin-bottom: 14px;
    border: 1px solid #dbe6d7;
    border-radius: 999px;
    background: #f2f6ef;
}
.fleet-progress-track > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--accent, #72be44);
    transition: width .25s ease;
}
.fleet-operation-status.is-running .fleet-progress-track > span {
    min-width: 8px;
}
.fleet-operation-metrics {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 10px;
}
.fleet-operation-metric {
    min-width: 0;
    padding: 9px 10px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fbfdf9;
}
.fleet-operation-metric span {
    display: block;
    margin-bottom: 3px;
    color: var(--muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .035em;
}
.fleet-operation-metric strong {
    display: block;
    overflow: hidden;
    color: #17301d;
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.fleet-operation-current,
.fleet-operation-times {
    min-height: 18px;
    line-height: 1.45;
}
.fleet-operation-times {
    margin-top: 3px;
    font-size: 11px;
}
.fleet-operation-errors {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid var(--line);
}
.fleet-operation-errors summary {
    cursor: pointer;
    font-weight: 700;
}
.fleet-operation-errors ul {
    margin: 9px 0 0 18px;
    padding: 0;
}
.fleet-operation-errors li {
    margin: 4px 0;
    overflow-wrap: anywhere;
}
@media (max-width: 1100px) {
    .fleet-operation-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
    .fleet-operation-dashboard-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
    .fleet-operation-status-head { align-items: flex-start; }
    .fleet-operation-status-actions { justify-content: flex-start; }
    .fleet-operation-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* v5.9.8 — DEV markers, Cloudflare ignores, site transfers, large-file scan polish */
.badge.dev-site-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 6px;
    padding: 4px 7px;
    border: 1px solid #7b93aa;
    border-radius: 999px;
    background: #edf3f8;
    color: #37556f;
    font-size: 9px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .05em;
    vertical-align: middle;
}

.large-file-scan-form {
    display: grid;
    grid-template-columns: minmax(210px, 280px) minmax(260px, 420px) auto;
    align-items: end;
    justify-content: start;
    gap: 18px;
    padding: 4px 0 2px;
}
.large-file-scan-field {
    display: grid;
    gap: 6px;
    min-width: 0;
}
.large-file-scan-field > label {
    margin: 0;
    color: var(--ink);
    font-size: 12px;
    font-weight: 750;
}
.large-file-scan-field input,
.large-file-scan-field select {
    width: 100%;
    min-height: 42px;
    margin: 0;
}
.large-file-scan-field small {
    min-height: 16px;
    color: var(--muted);
    font-size: 10px;
    line-height: 1.35;
}
.input-with-suffix {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
}
.input-with-suffix:focus-within {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114,190,68,.12);
}
.input-with-suffix input {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.input-with-suffix > span {
    padding: 0 12px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 800;
}
.large-file-scan-action {
    display: flex;
    align-items: center;
    min-height: 64px;
}
.large-file-scan-action .button {
    min-height: 42px;
    white-space: nowrap;
}
.cleanup-safety-note {
    margin: 14px 0 0;
}

.cloudflare-ignore-card .card-head {
    align-items: flex-start;
}
.cloudflare-ignore-form {
    display: grid;
    grid-template-columns: minmax(240px, 420px) minmax(240px, 1fr) auto;
    gap: 10px;
    align-items: end;
    padding: 0 18px 16px;
}
.cloudflare-ignore-form label {
    display: grid;
    gap: 5px;
    margin: 0;
}
.cloudflare-ignore-form input {
    width: 100%;
}

.site-transfer-form {
    max-width: 900px;
}
.site-transfer-form .button.primary {
    justify-self: start;
}
.site-transfer-status .detail-list {
    margin: 0 0 14px;
}

@media (max-width: 900px) {
    .large-file-scan-form,
    .cloudflare-ignore-form {
        grid-template-columns: 1fr 1fr;
    }
    .large-file-scan-action,
    .cloudflare-ignore-form > .button {
        grid-column: 1 / -1;
        min-height: 0;
        justify-self: start;
    }
}
@media (max-width: 640px) {
    .large-file-scan-form,
    .cloudflare-ignore-form {
        grid-template-columns: 1fr;
    }
    .large-file-scan-action,
    .cloudflare-ignore-form > .button {
        grid-column: auto;
    }
}

/* v5.9.9 — large-file ignore management, provisioning spacing, and readable issue panels */
.provisioning-release-hostname-card > h2 { margin-bottom: 8px; }
.provisioning-release-hostname-form { margin-top: 16px; }
.provisioning-release-hostname-form .form-inline-two {
    grid-template-columns: minmax(240px, 320px) minmax(360px, 1fr);
    gap: 24px;
    align-items: start;
}
.provisioning-release-hostname-form .form-inline-two > label {
    display: grid;
    gap: 7px;
    min-width: 0;
    margin: 0;
}
.provisioning-release-hostname-form .form-inline-two > label > span {
    display: block;
    margin: 0;
    color: #334035;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.3;
}
.provisioning-release-hostname-form .form-inline-two > label > input,
.provisioning-release-hostname-form .form-inline-two > label > select {
    width: 100%;
    margin: 0;
}
.provisioning-release-hostname-form .form-inline-two > label > small {
    display: block;
    margin: 1px 0 0;
    color: var(--muted);
    font-size: 10px;
    line-height: 1.45;
}

.large-file-ignore-card .card-head {
    align-items: flex-start;
    padding: 0 0 14px;
    margin-bottom: 14px;
}
.large-file-ignore-card .card-head h2 { margin: 0 0 4px; }
.large-file-ignore-card .card-head p { margin: 0; color: var(--muted); }
.large-file-ignore-card .help-callout { margin: 0 0 16px; }
.large-file-ignore-add-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 16px;
}
.large-file-ignore-add-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    align-content: start;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: #fbfdf9;
}
.large-file-ignore-add-card h3 { margin: 0; font-size: 14px; color: var(--brand-ink); }
.large-file-ignore-add-card label { display: grid; gap: 5px; margin: 0; }
.large-file-ignore-add-card label > span { font-size: 11px; font-weight: 800; color: #334035; }
.large-file-ignore-add-card label > span small { color: var(--muted); font-weight: 650; }
.large-file-ignore-add-card input,
.large-file-ignore-add-card select { width: 100%; margin: 0; }
.large-file-ignore-add-card .button { justify-self: start; }
.large-file-ignore-sections {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 16px;
}
.large-file-ignore-section,
.large-file-ignored-files {
    border: 1px solid var(--line);
    border-radius: 11px;
    background: #fff;
    overflow: hidden;
}
.large-file-ignore-section { padding: 13px 14px; }
.large-file-ignored-files { padding: 13px 14px; }
.mini-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 9px;
}
.mini-section-head h3 { margin: 0; font-size: 13px; }
.mini-section-head > span {
    display: inline-flex;
    min-width: 28px;
    justify-content: center;
    padding: 3px 7px;
    border-radius: 999px;
    background: var(--graybg);
    color: #596579;
    font-size: 10px;
    font-weight: 850;
}
.large-file-ignore-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 0;
    border-top: 1px solid var(--line);
}
.large-file-ignore-item:first-of-type { border-top: 0; }
.large-file-ignore-item > div { min-width: 0; }
.large-file-ignore-item strong,
.large-file-ignore-item small { display: block; overflow-wrap: anywhere; }
.large-file-ignore-item small { margin-top: 2px; color: var(--muted); }
.cleanup-row-actions { display: flex; justify-content: flex-end; gap: 7px; flex-wrap: wrap; }
.cleanup-row-actions form { margin: 0; }
.large-file-ignored-files .table-wrap { margin: 0 -14px -13px; }
.large-file-ignored-files table { margin-top: 8px; }

.status-issue-row > td { background: #fffdf8; }
.status-issue-row:hover > td { background: #fff9ec; }
.status-cell-stack { display: grid; gap: 6px; align-items: start; min-width: 0; }
.status-cell-stack > .badge { justify-self: start; }
.status-detail {
    max-width: 520px;
    padding: 8px 10px;
    border: 1px solid #dfe6dc;
    border-left: 3px solid #b8c7b4;
    border-radius: 8px;
    background: #f8faf7;
    color: #425046;
    font-size: 11px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}
.status-detail.is-warn {
    border-color: #ead9a4;
    border-left-color: #c68a13;
    background: #fffbef;
    color: #6d5015;
}
.status-detail.is-fail {
    border-color: #efc7c2;
    border-left-color: var(--red);
    background: #fff6f4;
    color: #7d2d26;
}
.status-detail-subtext {
    display: block;
    margin-top: 4px;
    max-width: 520px;
    color: var(--muted);
    font-size: 10px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}
.issue-summary {
    display: grid;
    gap: 3px;
    min-width: 190px;
    max-width: 480px;
    padding-left: 10px;
    border-left: 3px solid #cbd5c8;
}
.issue-summary strong { color: #2f4133; line-height: 1.35; }
.issue-summary span { color: var(--muted); font-size: 10px; line-height: 1.4; overflow-wrap: anywhere; }
.issue-summary.is-fail { border-left-color: var(--red); }
.issue-summary.is-fail strong { color: #8c2f28; }
.issue-summary.is-warn { border-left-color: #c68a13; }
.issue-summary.is-warn strong { color: #765313; }
.issue-summary.is-pass { border-left-color: var(--green); }
.issue-summary.is-pass strong { color: var(--green); }
.issue-chip-list { display: flex; flex-wrap: wrap; gap: 5px; min-width: 220px; max-width: 440px; }
.issue-chip {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 7px;
    border: 1px solid #d9e0d7;
    border-radius: 7px;
    background: #f6f8f5;
    color: #536057;
    font-size: 10px;
    font-weight: 750;
    line-height: 1.25;
}
.issue-chip.fail { border-color: #efc7c2; background: var(--redbg); color: var(--red); }
.issue-chip.warn { border-color: #ead9a4; background: var(--yellowbg); color: var(--yellow); }
.issue-chip.neutral { background: var(--graybg); color: #596579; }
.issue-clear { display: inline-flex; align-items: center; gap: 5px; color: var(--green); font-size: 11px; font-weight: 750; }
.issue-clear > span { display: inline-grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: var(--greenbg); }

.fleet-operation-errors {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--line);
}
.fleet-operation-errors summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    cursor: pointer;
    list-style: none;
    padding: 8px 10px;
    border: 1px solid #edd7a3;
    border-radius: 9px;
    background: #fffaf0;
    color: #6f5014;
    font-weight: 800;
}
.fleet-operation-errors summary::-webkit-details-marker { display: none; }
.fleet-operation-error-count {
    display: inline-flex;
    min-width: 24px;
    justify-content: center;
    padding: 3px 7px;
    border-radius: 999px;
    background: #f5e5b8;
    font-size: 10px;
}
.fleet-operation-error-list { display: grid; gap: 7px; margin-top: 8px; }
.fleet-operation-error-item {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 9px;
    align-items: start;
    padding: 9px 10px;
    border: 1px solid #ead9d6;
    border-left: 3px solid var(--red);
    border-radius: 9px;
    background: #fff9f8;
}
.fleet-operation-error-index {
    display: inline-grid;
    place-items: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--redbg);
    color: var(--red);
    font-size: 10px;
    font-weight: 850;
}
.fleet-operation-error-item strong,
.fleet-operation-error-item span { display: block; overflow-wrap: anywhere; }
.fleet-operation-error-item strong { margin-bottom: 2px; color: #6e2c27; font-size: 11px; }
.fleet-operation-error-item div > span { color: #63504e; font-size: 10px; line-height: 1.45; }

.uptime-status-table td:nth-child(4),
.uptime-status-table td:nth-child(5),
.cloudflare-zone-table td:nth-child(6),
.security-status-table td:nth-child(7) { min-width: 220px; }
.security-status-filters { grid-template-columns: 2fr 1.25fr 1fr auto auto; }

@media (max-width: 900px) {
    .provisioning-release-hostname-form .form-inline-two,
    .large-file-ignore-add-grid,
    .large-file-ignore-sections { grid-template-columns: 1fr; }
    .issue-summary,
    .status-detail { max-width: none; }
}


/* v5.9.18 — Maintenance layout cleanup + suspended Cache Control rows */
.maintenance-checks-card {
    overflow: hidden;
}
.maintenance-checks-head {
    align-items: flex-start;
}
.maintenance-checks-head > div {
    min-width: 0;
}
.maintenance-checks-head p {
    margin: 6px 0 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.5;
    max-width: 1050px;
}
.maintenance-checks-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 16px 18px 18px;
    background: #fff;
}
.maintenance-check-item {
    min-width: 0;
    padding: 14px 15px;
    border: 1px solid var(--brand-border);
    border-radius: 11px;
    background: var(--brand-softer);
}
.maintenance-check-item h3 {
    margin: 0 0 6px;
    color: var(--brand-ink);
    font-size: 12px;
    line-height: 1.3;
}
.maintenance-check-item p {
    margin: 0;
    color: #415141;
    font-size: 12px;
    line-height: 1.5;
}
.maintenance-check-item strong {
    color: var(--brand-ink);
}

tr.cache-row-suspended > td {
    background: #fff4f1 !important;
    border-bottom-color: #f2c9c1 !important;
}
tr.cache-row-suspended:hover > td {
    background: #ffece7 !important;
}
tr.cache-row-suspended td:first-child {
    box-shadow: inset 4px 0 0 #c94a38;
}
.cache-suspended-badge {
    margin-left: 7px;
    vertical-align: middle;
}
tr.cache-row-suspended .cache-site-check {
    cursor: not-allowed;
}
tr.cache-row-suspended small {
    color: #8b4c43;
}

@media (max-width: 900px) {
    .maintenance-checks-grid {
        grid-template-columns: 1fr;
    }
}

/* v5.9.19 — file cleanup toggle/actions + compact Cloudflare zone actions */
.large-file-ignore-details > summary::marker {
    content: '';
    font-size: 0;
}
.large-file-ignore-summary {
    padding: 0;
}
.large-file-ignore-summary-actions {
    margin-left: auto;
}
.large-file-ignore-toggle {
    min-width: 64px;
    justify-content: flex-end;
    gap: 5px;
}
.large-file-ignore-toggle-label::before {
    content: 'Show';
}
.large-file-ignore-details[open] .large-file-ignore-toggle-label::before {
    content: 'Hide';
}
.large-file-ignore-toggle svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform .15s ease;
}
.large-file-ignore-details[open] .large-file-ignore-toggle svg {
    transform: rotate(180deg);
}
.cleanup-row-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
}
.cleanup-row-actions form { margin: 0; }
.cleanup-row-actions .icon-action { width: 34px; height: 34px; }
.cf-zone-actions { flex-wrap: nowrap; }
.cf-zone-actions .icon-action { width: 34px; height: 34px; }
.cloudflare-zone-table th:last-child,
.cloudflare-zone-table td:last-child { min-width: 210px; }

@media (max-width: 760px) {
    .large-file-ignore-details > summary {
        display: grid;
        grid-template-columns: minmax(0,1fr) auto;
        align-items: start;
    }
    .large-file-ignore-summary-actions {
        flex-direction: row;
        align-items: center;
    }
}


/* v5.9.24 — WordPress current URL visibility */
.wp-current-url-note {
    display: block;
    margin-top: 4px;
    max-width: 520px;
    overflow-wrap: anywhere;
    color: var(--muted, #667085);
}
.wp-current-url-note strong { color: var(--text, #16251a); }
.wp-current-url-inline {
    display: block;
    margin-top: 2px;
    overflow-wrap: anywhere;
    color: #8a5a00;
    font-size: 0.92em;
}

/* v5.9.25 — WordPress multisite network inventory */
.multisite-network-card .card-head { align-items:flex-start; gap:18px; }
.multisite-sync-note { font-size:12px; color:var(--muted, #647067); white-space:nowrap; }
.multisite-table-wrap { overflow-x:auto; }
.multisite-sites-table { min-width:980px; }
.multisite-sites-table th { white-space:nowrap; }
.multisite-sites-table td { vertical-align:middle; }
.multisite-sites-table code { font-size:12px; white-space:nowrap; }
.multisite-url-cell { max-width:360px; }
.multisite-url-cell a { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.multisite-row-disabled { opacity:.66; background:#fff8f5; }
.multisite-actions { flex-wrap:nowrap; }
.multisite-empty-state { margin:14px; }
@media (max-width: 900px) {
    .multisite-network-card .card-head { flex-direction:column; }
    .multisite-sync-note { white-space:normal; }
}

/* v5.9.26 — Email DNS table containment + confirmation controls */
.email-dns-results-table { width: 100%; }
.email-dns-results-table .email-dns-problems-col,
.email-dns-results-table .email-dns-result-cell { width: 38%; }
.email-dns-results-table .email-dns-action-col,
.email-dns-results-table .email-dns-action-cell { width: 92px; min-width: 92px; white-space: nowrap; }
.email-dns-result-cell { min-width: 0; overflow: hidden; }
.email-dns-result-cell small { display: block; max-width: 100%; overflow-wrap: anywhere; word-break: break-word; }
.email-dns-result-cell details { max-width: 100%; }
.email-dns-result-cell .email-dns-compare-block { min-width: 0; max-width: 100%; }
.email-dns-result-cell .email-dns-compare-block code {
    display: block;
    max-width: 100%;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    word-break: break-word;
}
.confirm-change-check {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    margin: .75rem 0;
    font-weight: 700;
    line-height: 1.3;
}
.confirm-change-check input { margin-top: .15rem; flex: 0 0 auto; }
.server-load-value { display: block; white-space: nowrap; }

@media (max-width: 1100px) {
    .email-dns-results-table .email-dns-problems-col,
    .email-dns-results-table .email-dns-result-cell { width: 34%; }
}


/* v5.9.27 — prominent DEV -> LIVE action + login quote */
.push-live-action{background:#0b5ed7!important;border-color:#0b5ed7!important;color:#fff!important;font-weight:800!important;box-shadow:0 5px 16px rgba(11,94,215,.22);transform:translateY(0);}
.push-live-action:hover{background:#094db1!important;border-color:#094db1!important;color:#fff!important;transform:translateY(-1px);}
.push-live-action span{margin-right:.35rem;}
.login-quote{margin:16px 0 18px;padding:14px 16px;border:1px solid #d8e8cf;border-radius:12px;background:#f7fbf4;text-align:left;}
.login-quote span{display:block;margin-bottom:5px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#66745f;}
.login-quote strong{display:block;font-size:15px;line-height:1.45;color:#173510;}
.provisioning-help-box{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid #d8e8cf;border-radius:10px;background:#f7fbf4;font-size:13px;line-height:1.45;}
.provisioning-help-box strong{white-space:nowrap;color:#173510;}

/* v5.9.30 cPanel account discovery */
.account-discovery-card{margin-top:18px}
.account-discovery-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted,#617067);font-size:12px}
.account-discovery-summary{display:flex;gap:8px;flex-wrap:wrap;padding:0 18px 14px}
.account-discovery-subhead{font-size:14px;margin:4px 18px 10px}
.account-discovery-table-wrap{overflow-x:auto;padding:0 18px 18px}
.account-discovery-table{width:100%;border-collapse:collapse;table-layout:auto}
.account-discovery-table th,.account-discovery-table td{padding:10px 12px;border-bottom:1px solid var(--border,#dde5dc);vertical-align:top;text-align:left}
.account-discovery-table code{white-space:normal;overflow-wrap:anywhere}
.account-extra-wp-row{background:#fffaf0}
@media(max-width:800px){.account-discovery-head-actions{align-items:flex-start}.account-discovery-table{min-width:720px}}


/* Sentinel v5.9.31 — site service profiles + shared site-list filters */
.global-site-filter-card { margin-bottom: 16px; }
.global-site-filters { align-items: end; gap: 10px; flex-wrap: wrap; }
.global-site-filters select { min-width: 150px; }
.site-priority { font-weight: 800; letter-spacing: .035em; }
.priority-low { background: #edf2f7; color: #394b59; }
.priority-medium { background: #fff4cc; color: #725400; }
.priority-high { background: #ffe2bf; color: #8a4300; }
.priority-urgent { background: #ffe0e0; color: #a31515; border-color: #efb7b7; }
.agreement-type-badge { background: #eef7ff; color: #245a7a; border-color: #cce4f4; max-width: 220px; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; }
.hours-mini { white-space: nowrap; font-size: .86rem; color: #52606d; }
.site-service-profile-card .card-head > div { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.site-service-profile-form { grid-template-columns: repeat(4, minmax(150px, 1fr)); align-items:end; }
.site-service-profile-form .form-actions { grid-column: 1 / -1; }
.sidebar-sub-link { padding-left: 28px !important; font-size: .92em; opacity: .95; }
.agreement-settings-grid { display:grid; grid-template-columns:minmax(260px,.75fr) minmax(520px,1.6fr); gap:16px; align-items:start; }
.agreement-type-editor-cell { position:relative; }
.agreement-type-row { display:grid; grid-template-columns:minmax(220px,1fr) 70px 120px 90px auto; gap:10px; align-items:center; }
.agreement-site-count { text-align:center; font-weight:700; }
.agreement-delete-form { position:absolute; right:8px; bottom:8px; }
.inline-checkbox { margin:0; }
@media (max-width: 1100px) {
  .site-service-profile-form { grid-template-columns: repeat(2,minmax(160px,1fr)); }
  .agreement-settings-grid { grid-template-columns:1fr; }
}
@media (max-width: 720px) {
  .site-service-profile-form { grid-template-columns:1fr; }
  .agreement-type-row { grid-template-columns:1fr; }
  .agreement-site-count { text-align:left; }
  .agreement-delete-form { position:static; margin-top:8px; }
}
.agency-site-filter-head { align-items:flex-start; gap:12px; flex-wrap:wrap; }
.agency-site-filter-controls { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.agency-site-filter-controls select { min-width:130px; }
@media(max-width:900px){.agency-site-filter-controls{width:100%;justify-content:flex-start}.agency-site-filter-controls .compact-search,.agency-site-filter-controls select{flex:1 1 180px}}

/* Sentinel v5.9.32 — service profile / agreement UI polish + multiple agreements */
.two-col > .site-service-profile-card {
    align-self: start;
}
.site-service-profile-card {
    overflow: visible;
}
.site-service-profile-head {
    align-items: flex-start;
}
.site-service-profile-head > div:first-child {
    min-width: 0;
}
.service-profile-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}
.site-service-profile-head .icon-action {
    flex: 0 0 auto;
}
.site-service-profile-form-v5932 {
    display: grid;
    grid-template-columns: minmax(150px, .72fr) minmax(180px, 1fr) minmax(220px, 1.2fr);
    gap: 15px 16px;
    padding: 18px;
    align-items: end;
}
.service-profile-field {
    display: grid;
    gap: 7px;
    min-width: 0;
    color: #334035;
    font-size: 12px;
    font-weight: 750;
}
.service-profile-field > span,
.service-agreement-fieldset legend,
.field-label {
    color: #334035;
    font-size: 12px;
    font-weight: 750;
}
.service-profile-field input,
.service-profile-field select,
.agreement-create-form input,
.agreement-types-table input[type="text"],
.agreement-types-table input:not([type]),
.agreement-types-table input[type="number"] {
    width: 100%;
    min-width: 0;
    height: 42px;
    margin: 0;
    border: 1px solid #cbd6c8;
    border-radius: 9px;
    padding: 9px 11px;
    background: #fff;
    color: var(--ink);
    font: inherit;
    outline: none;
    box-sizing: border-box;
    transition: border .15s ease, box-shadow .15s ease;
}
.service-profile-field input:focus,
.service-profile-field select:focus,
.agreement-create-form input:focus,
.agreement-types-table input[type="text"]:focus,
.agreement-types-table input:not([type]):focus,
.agreement-types-table input[type="number"]:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114,190,68,.14);
}
.service-agreement-fieldset {
    grid-column: 1 / -1;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}
.service-agreement-fieldset legend {
    margin: 0 0 8px;
    padding: 0;
}
.service-agreement-options {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.service-agreement-option {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 36px;
    padding: 7px 10px;
    border: 1px solid #cbd6c8;
    border-radius: 9px;
    background: #fff;
    color: #334035;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: border-color .12s ease, background .12s ease, box-shadow .12s ease;
}
.service-agreement-option:hover {
    border-color: var(--brand);
    background: var(--brand-softer);
}
.service-agreement-option:has(input:checked) {
    border-color: var(--brand);
    background: var(--brand-soft);
    box-shadow: inset 0 0 0 1px rgba(114,190,68,.12);
}
.service-agreement-option.is-inactive {
    opacity: .65;
}
.service-agreement-option input {
    width: auto;
    margin: 0;
    accent-color: var(--brand);
}
.service-profile-actions {
    grid-column: 1 / -1;
    display: flex;
    justify-content: flex-end;
    padding-top: 1px;
}
.service-profile-actions .icon-action,
.agreement-create-action .icon-action,
.agreement-row-actions .icon-action {
    width: 38px;
    height: 38px;
}
.service-profile-readonly .agreement-type-badge {
    margin: 0 5px 4px 0;
}

/* Agreement settings page */
.agreement-settings-grid-v5932 {
    grid-template-columns: minmax(330px, .72fr) minmax(620px, 1.55fr);
    gap: 18px;
    align-items: start;
}
.agreement-create-card,
.agreement-list-card {
    overflow: visible;
}
.agreement-create-card .card-head,
.agreement-list-card .card-head {
    align-items: flex-start;
}
.agreement-create-card .card-head h2,
.agreement-list-card .card-head h2 {
    margin-bottom: 4px;
}
.agreement-create-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 92px 42px;
    gap: 12px;
    align-items: end;
    padding: 18px;
}
.agreement-create-form .field-label {
    display: grid;
    gap: 7px;
    min-width: 0;
}
.agreement-create-action {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
.agreement-types-table-wrap {
    overflow-x: auto;
}
.agreement-types-table {
    min-width: 660px;
}
.agreement-types-table th,
.agreement-types-table td {
    vertical-align: middle;
}
.agreement-types-table th:nth-child(2),
.agreement-types-table td:nth-child(2) {
    width: 70px;
    text-align: center;
}
.agreement-types-table th:nth-child(3),
.agreement-types-table td:nth-child(3) {
    width: 120px;
}
.agreement-types-table th:nth-child(4),
.agreement-types-table td:nth-child(4) {
    width: 95px;
}
.agreement-types-table th:nth-child(5),
.agreement-types-table td:nth-child(5) {
    width: 105px;
}
.agreement-row-name {
    min-width: 220px;
}
.agreement-row-order {
    max-width: 82px;
}
.agreement-active-toggle {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    color: #334035;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}
.agreement-active-toggle input[type="checkbox"] {
    width: auto;
    margin: 0;
    accent-color: var(--brand);
}
.agreement-row-actions {
    min-width: 86px;
}
.agreement-site-count {
    display: inline-block;
    min-width: 24px;
    color: var(--brand-ink);
    font-weight: 800;
}

/* Multiple agreement badges and compact hour display */
.agreement-type-badge + .agreement-type-badge {
    margin-left: 4px;
}
.hours-mini {
    display: inline-block;
    color: #52606d;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .025em;
    white-space: nowrap;
}

@media (max-width: 1180px) {
    .agreement-settings-grid-v5932 {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 900px) {
    .site-service-profile-form-v5932 {
        grid-template-columns: 1fr 1fr;
    }
    .service-profile-field:last-of-type {
        grid-column: 1 / -1;
    }
}
@media (max-width: 640px) {
    .site-service-profile-form-v5932,
    .agreement-create-form {
        grid-template-columns: 1fr;
    }
    .service-profile-field:last-of-type {
        grid-column: auto;
    }
    .agreement-create-action,
    .service-profile-actions {
        justify-content: flex-start;
    }
}

/* Sentinel V2 v5.9.33 stabilization */
.copyable-error-text,
.maintenance-result-message,
.fleet-operation-error-item strong,
.fleet-operation-error-item span,
.status-detail,
.copyable-flash li {
    user-select: text;
    -webkit-user-select: text;
}
.copyable-error-row {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    min-width: 0;
}
.copyable-error-row .copyable-error-text {
    min-width: 0;
    flex: 1 1 auto;
    overflow-wrap: anywhere;
}
.copy-error-button {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px;
    flex: 0 0 28px;
}
.copy-error-button svg {
    width: 15px !important;
    height: 15px !important;
}
.copy-error-button.is-copied {
    background: var(--greenbg);
    border-color: var(--brand);
    color: var(--brand-dark);
}
.copyable-flash ul { margin-bottom: 0; }
.copyable-flash li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 4px 0;
}
.copyable-flash li > .copyable-error-text { flex: 1 1 auto; }
.fleet-operation-error-copy {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
    min-width: 0;
}
.fleet-operation-error-copy > div { flex: 1 1 auto; min-width: 0; }

.provisioning-account-only-note {
    margin: -2px 0 4px;
    padding: 10px 12px;
    border: 1px solid #d8e3d4;
    border-radius: 9px;
    background: #f7faf5;
    color: #425047;
    font-size: 11px;
    line-height: 1.45;
}
.provisioning-account-only-note strong { color: var(--brand-ink); }

.cloudflare-ignore-details > summary { list-style: none; }
.cloudflare-ignore-details > summary::-webkit-details-marker { display: none; }
.cloudflare-ignore-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 20px;
    cursor: pointer;
}
.cloudflare-ignore-summary h2 { margin: 0 0 4px; }
.cloudflare-ignore-summary > div:first-child > span { color: var(--muted); font-size: 11px; }
.cloudflare-ignore-summary-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
}
.cloudflare-ignore-toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 800;
}
.cloudflare-ignore-toggle-label::before { content: 'Show'; }
.cloudflare-ignore-details[open] .cloudflare-ignore-toggle-label::before { content: 'Hide'; }
.cloudflare-ignore-toggle svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    transition: transform .15s ease;
}
.cloudflare-ignore-details[open] .cloudflare-ignore-toggle svg { transform: rotate(180deg); }
.cloudflare-ignore-body { border-top: 1px solid var(--line); padding-bottom: 1px; }
.cloudflare-ignore-body .cloudflare-ignore-form { margin-top: 16px; }

.updates-priority-col { white-space: nowrap; }
.compact-callout { margin-top: 10px; }

@media(max-width:760px) {
    .cloudflare-ignore-summary { align-items: flex-start; }
    .cloudflare-ignore-summary-actions { flex-direction: column; align-items: flex-end; }
}

/* v5.9.35 — uptime homepage links, agency site exclusions, large-file bulk actions */
.site-homepage-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:20px;
    height:20px;
    margin-left:5px;
    vertical-align:middle;
    border-radius:5px;
    color:var(--accent,#72be44);
    text-decoration:none;
}
.site-homepage-link:hover{background:rgba(114,190,68,.12)}
.site-homepage-link svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.agency-site-option{gap:10px;align-items:center}
.agency-site-assign-choice{display:flex;align-items:flex-start;gap:9px;min-width:0;flex:1;cursor:pointer}
.agency-site-assign-choice>span{min-width:0;flex:1}
.agency-site-hide-choice{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;padding:5px 8px;border:1px solid #d8dfd5;border-radius:7px;background:#fff;cursor:pointer;font-size:11px;font-weight:700;color:#6d746c}
.agency-site-hide-choice:hover{border-color:#d99b9b;background:#fff7f7;color:#a52f2f}
.agency-site-hide-choice:has(input:checked){border-color:#d96c6c;background:#fff1f1;color:#9e2525}
.agency-site-hide-choice input{margin:0}
@media (max-width:760px){.agency-site-option{align-items:flex-start;flex-wrap:wrap}.agency-site-hide-choice{margin-left:26px}}

.large-file-bulk-toolbar{display:flex;align-items:center;justify-content:flex-end;padding:0 18px 14px}
.large-file-bulk-toolbar form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.large-file-select-col{width:34px;text-align:center!important}
.large-file-select-col input{width:16px;height:16px;cursor:pointer}
#large-file-bulk-delete-button:disabled{opacity:.45;cursor:not-allowed}

/* v5.9.39a — WordPress Hardening Center usability */
.hardening-action-guide-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    padding:16px 20px 20px;
}
.hardening-action-guide-item {
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fff;
}
.hardening-action-guide-item p { margin:4px 0 0; color:var(--muted); line-height:1.45; }
.hardening-guide-icon { flex:0 0 34px; pointer-events:none; }
.hardening-bulk-toolbar { align-items:center; flex-wrap:wrap; }
.hardening-operation-description { flex:1 1 320px; color:var(--muted); line-height:1.35; }
.hardening-actions { margin-top:8px; }
.hardening-suspended-badge { margin-left:7px; vertical-align:middle; }
tr.hardening-row-suspended > td {
    background:#fff7f4 !important;
    border-bottom-color:#f0d1ca !important;
}
tr.hardening-row-suspended:hover > td { background:#fff0ec !important; }
tr.hardening-row-suspended td:first-child { box-shadow:inset 4px 0 0 #c96a59; }
tr.hardening-row-suspended small { color:#8c5a50; }
@media(max-width:900px){
    .hardening-action-guide-grid { grid-template-columns:1fr; }
}

/* v5.9.43 — Cloudflare standard editor + security intelligence */
.cf-standard-scope-banner{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);
  gap:18px;
  align-items:start;
  margin:0 0 20px;
  padding:18px 20px;
  border:1px solid #cfe5c3;
  border-radius:14px;
  background:#f7fbf4;
}
.cf-standard-scope-banner>div{display:grid;gap:6px;min-width:0}
.cf-standard-scope-banner strong{color:#17351e}
.cf-standard-scope-banner span{line-height:1.55;color:#314437}
.cf-standard-scope-safety{padding-left:18px;border-left:1px solid #d9e8d1}
.cf-standard-editor-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);
  gap:20px;
  align-items:start;
}
.cf-standard-form-card,.cf-standard-reference-card{min-width:0;margin:0}
.cf-standard-rule-form{padding:20px}
.cf-rule-membership-box{
  display:grid;
  gap:10px;
  padding:15px 16px;
  border:1px solid var(--border,#d7ded5);
  border-radius:10px;
  background:#f8faf8;
}
.cf-rule-membership-box .checkbox{margin:0}
.cf-rule-membership-box small{display:block;color:#67736b;line-height:1.45;padding-left:26px}
.cf-standard-reference-card{position:sticky;top:18px;overflow:hidden}
.cf-reference-copy,.cf-reference-notes{padding:18px 20px}
.cf-reference-copy p,.cf-reference-notes p{margin:0 0 10px;line-height:1.55}
.cf-reference-copy p:last-child,.cf-reference-notes p:last-child{margin-bottom:0}
.cf-example-code{
  display:block;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  margin:0;
  padding:18px 20px;
  overflow:auto;
  white-space:pre;
  overflow-wrap:normal;
  word-break:normal;
  tab-size:2;
  border:0;
  border-top:1px solid #d9e1d7;
  border-bottom:1px solid #d9e1d7;
  border-radius:0;
  background:#172019;
  color:#eef7eb;
  font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
}
.cf-example-code code{white-space:inherit;overflow-wrap:inherit;word-break:inherit;color:inherit;background:transparent;padding:0}
.cf-standard-overview-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-bottom:18px;
}
.cf-standard-overview-card{
  display:grid;
  gap:4px;
  padding:16px 18px;
  border:1px solid #dce4d9;
  border-radius:12px;
  background:#fff;
}
.cf-standard-overview-card strong{font-size:1.05rem;line-height:1.25}
.cf-standard-overview-card span{font-size:.85rem;color:#667169}
.cf-optional-rules-card{border-style:dashed}
.cf-compliance-help{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:14px 18px;
  align-items:center;
  margin-top:18px;
  padding:16px 18px;
  border:1px solid #cddfd0;
  border-radius:12px;
  background:#f6faf6;
}
.cf-compliance-help span{line-height:1.5;color:#48554c}

.security-intel-details{padding:0!important;overflow:hidden}
.security-intel-summary{
  display:grid;
  grid-template-columns:32px minmax(0,1fr) 24px;
  gap:12px;
  align-items:center;
  padding:17px 20px;
  cursor:pointer;
  list-style:none;
  user-select:none;
}
.security-intel-summary::-webkit-details-marker{display:none}
.security-intel-summary:hover{background:#f8faf8}
.security-intel-summary-icon{display:grid;place-items:center;font-size:1.1rem}
.security-intel-summary>span:nth-child(2){display:grid;gap:2px}
.security-intel-summary small{font-weight:400;color:#6a756d}
.security-intel-chevron{font-size:1.2rem;text-align:center;transition:transform .18s ease}
.security-intel-details[open] .security-intel-chevron{transform:rotate(180deg)}
.security-intel-body{border-top:1px solid #e1e6df;padding:18px 20px 22px}
.security-intel-loading,.security-intel-empty{padding:20px;border:1px dashed #ccd6ca;border-radius:10px;background:#fafcf9;color:#536056}
.security-intel-empty p{margin:8px 0 0}
.security-intel-code{margin:10px 0 0;padding:10px 12px;overflow:auto;white-space:pre;border-radius:8px;background:#172019;color:#eef7eb}
.security-intel-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 14px;margin-bottom:18px;border:1px solid #d9e5d6;border-radius:9px;background:#f6faf5}
.security-intel-section-head{display:flex;justify-content:space-between;gap:14px;align-items:end;margin:4px 0 10px}
.security-intel-section-head h3{margin:0 0 3px;font-size:1rem}
.security-intel-section-head p{margin:0;color:#6b756e;font-size:.86rem}
.latest-vuln-head{margin-top:24px}
.security-vulnerability-table small{display:block;margin-top:3px;color:#68736b}
.security-vulnerability-table .security-copyright{font-size:.72rem;color:#7d8780}
.affected-sites-details{margin-top:4px}
.affected-sites-details summary{cursor:pointer;color:#4f6a54;font-size:.8rem}
.affected-sites-list{display:grid;grid-template-columns:minmax(130px,1fr) auto;gap:4px 10px;min-width:230px;margin-top:6px;padding:8px;border:1px solid #e0e6de;border-radius:7px;background:#fafcf9}
.affected-sites-list a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.affected-sites-list span{font-size:.78rem;color:#68736b}

.security-intel-overview .security-intel-actions{margin-top:16px}
.security-intel-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px 20px}
.security-intel-stat{display:grid;gap:3px;padding:14px 16px;border:1px solid #dce4d9;border-radius:10px;background:#f9fbf8}
.security-intel-stat strong{font-size:1.12rem}
.security-intel-stat span{font-size:.82rem;color:#68736b}
.security-intel-actions{padding:0 20px 18px}
.security-release-list{display:grid;gap:0}
.security-release-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:15px 20px;border-top:1px solid #e5e9e3}
.security-release-item:first-child{border-top:0}
.security-release-item>div{display:grid;gap:4px}
.security-release-item small{color:#707a73}
.security-release-item p{margin:3px 0 0;line-height:1.45;color:#4e5951}

@media (max-width:1050px){
  .cf-standard-editor-grid{grid-template-columns:1fr}
  .cf-standard-reference-card{position:static}
  .cf-standard-scope-banner{grid-template-columns:1fr}
  .cf-standard-scope-safety{padding-left:0;padding-top:14px;border-left:0;border-top:1px solid #d9e8d1}
  .cf-compliance-help{grid-template-columns:1fr;align-items:start}
}
@media (max-width:760px){
  .cf-standard-overview-grid,.security-intel-stat-grid{grid-template-columns:1fr}
  .security-release-item{grid-template-columns:1fr}
  .security-intel-summary{padding:15px}
  .security-intel-body{padding:15px}
}

/* v5.9.48a — Dashboard Action Required quick actions / environment detail */
.dashboard-action-required-card .table-wrap{overflow-x:auto}
.dashboard-action-required-table{min-width:1080px}
.dashboard-action-required-table th:last-child,
.dashboard-action-required-table td:last-child{width:210px}
.dashboard-site-cell{min-width:300px;vertical-align:top}
.dashboard-site-primary{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.dashboard-site-primary>a{min-width:0}
.dashboard-site-primary>a strong{word-break:break-word}
.dashboard-dev-url,.dashboard-site-meta{display:block;margin-top:6px;color:var(--muted);font-size:10px;line-height:1.35}
.dashboard-dev-url strong{color:var(--brand-deep)}
.dashboard-dev-url a{font-weight:750;word-break:break-all}
.dashboard-suspended-badge{background:var(--redbg)!important;color:var(--red)!important;border-color:#efc5bf!important}
.dashboard-quick-actions-cell{min-width:205px}
.dashboard-quick-actions{flex-wrap:wrap;gap:6px}
.dashboard-quick-actions .icon-action{width:32px;height:32px;flex:0 0 32px}
.dashboard-action-required-table tr.site-row-suspended-soft>td{background:#fff0f0!important}
.dashboard-action-required-table tr.site-row-suspended-soft:hover>td{background:#ffe5e5!important}
@media(max-width:760px){
  .dashboard-action-required-card .card-head{align-items:flex-start}
  .dashboard-action-required-table{min-width:940px}
  .dashboard-site-cell{min-width:250px}
}


/* v5.9.49 — live server loads + fleet failure quick actions */
.dashboard-server-head-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}
.dashboard-live-load-status {
    color: var(--muted);
    font-size: 10px;
    font-weight: 750;
    white-space: nowrap;
}
.dashboard-live-load-status.is-live { color: var(--brand-dark); }
.dashboard-live-load-cell [data-live-load-age] { min-height: 1.35em; }

/* The older generic `.fleet-operation-error-item span` rule changed this
   badge back to display:block. Make the counter an explicit grid again. */
.fleet-operation-error-item > .fleet-operation-error-index {
    display: inline-grid;
    place-items: center;
    align-self: start;
    width: 24px;
    height: 24px;
    min-width: 24px;
    min-height: 24px;
    padding: 0;
    margin: 0;
    line-height: 1;
    text-align: center;
    overflow: hidden;
}
.fleet-operation-error-count {
    display: inline-grid;
    place-items: center;
    min-width: 26px;
    min-height: 22px;
    padding: 2px 7px;
    line-height: 1;
    text-align: center;
}
.fleet-operation-error-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-start;
    gap: 5px;
}
.fleet-operation-error-actions .icon-action {
    flex: 0 0 auto;
}
@media (max-width: 760px) {
    .fleet-operation-error-copy { flex-wrap: wrap; }
    .fleet-operation-error-actions { width: 100%; justify-content: flex-end; }
    .dashboard-server-head-actions { gap: 8px; }
}


/* v5.9.49a — keep failure quick-action icons beside the site/domain */
.fleet-operation-error-copy {
    display: block;
    width: 100%;
    min-width: 0;
}
.fleet-operation-error-content {
    min-width: 0;
}
.fleet-operation-error-title-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
    margin-bottom: 3px;
}
.fleet-operation-error-title-row > strong {
    display: inline;
    margin: 0;
    min-width: 0;
    overflow-wrap: anywhere;
}
.fleet-operation-error-title-row .fleet-operation-error-actions {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
    width: auto;
    justify-content: flex-start;
}
.fleet-operation-error-title-row .icon-action {
    width: 28px;
    height: 28px;
    min-width: 28px;
    flex: 0 0 28px;
}
.fleet-operation-error-title-row .icon-action svg {
    width: 14px;
    height: 14px;
}
.fleet-operation-error-content > .copyable-error-text {
    display: block;
}
@media (max-width: 760px) {
    .fleet-operation-error-title-row { align-items: flex-start; }
    .fleet-operation-error-title-row .fleet-operation-error-actions { width: auto; }
}

/* v5.9.49b — restore / normalize Outage Diagnostics & Troubleshooting UI */
.troubleshooting-controls-card,
.troubleshooting-filter-card,
.troubleshooting-library-card,
.troubleshooting-add-card,
.troubleshooting-detail-card,
.danger-zone-card {
    overflow: visible;
}

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

.troubleshooting-settings-form,
.troubleshooting-manual-form {
    display: flex;
    align-items: end;
    gap: 10px;
    flex-wrap: wrap;
    min-width: 0;
    padding: 14px;
    border: 1px solid #e0e8dd;
    border-radius: 11px;
    background: #fbfdf9;
}

.troubleshooting-settings-form label,
.troubleshooting-manual-form label,
.troubleshooting-article-form > label,
.troubleshooting-form-grid > label {
    display: grid;
    gap: 7px;
    flex: 1;
    min-width: 0;
    color: #334035;
    font-size: 13px;
    font-weight: 700;
}

.troubleshooting-settings-form label,
.troubleshooting-manual-form label {
    min-width: 220px;
}

.troubleshooting-settings-form small,
.troubleshooting-manual-form small {
    color: var(--muted);
    font-size: 11px;
    font-weight: 500;
    line-height: 1.45;
}

.troubleshooting-article-form input:not([type="checkbox"]),
.troubleshooting-article-form select,
.troubleshooting-article-form textarea,
.troubleshooting-settings-form input,
.troubleshooting-settings-form select,
.troubleshooting-manual-form input,
.troubleshooting-manual-form select,
.troubleshooting-filter-card .filters input,
.troubleshooting-filter-card .filters select {
    width: 100%;
    min-width: 0;
    display: block;
    margin: 0;
    border: 1px solid #cbd6c8;
    border-radius: 9px;
    padding: 10px 11px;
    background: #fff;
    color: var(--ink);
    font: inherit;
    font-weight: 450;
    outline: none;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.troubleshooting-article-form input:not([type="checkbox"]):focus,
.troubleshooting-article-form select:focus,
.troubleshooting-article-form textarea:focus,
.troubleshooting-settings-form input:focus,
.troubleshooting-settings-form select:focus,
.troubleshooting-manual-form input:focus,
.troubleshooting-manual-form select:focus,
.troubleshooting-filter-card .filters input:focus,
.troubleshooting-filter-card .filters select:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114,190,68,.14);
}

.troubleshooting-filter-card .filters {
    padding: 14px 18px;
    display: grid;
    grid-template-columns: minmax(220px, 1.8fr) minmax(170px, 1fr) minmax(190px, 1fr) auto auto;
    gap: 10px;
    align-items: center;
}

.troubleshooting-diagnostic-table td {
    vertical-align: top;
}

.diagnostic-mini-grid {
    display: grid;
    gap: 3px;
    min-width: 170px;
}

.diagnostic-mini-grid span {
    font-size: 12px;
}

.diagnostic-api-warning {
    display: block;
    margin-top: 6px;
    color: #9b6d18;
}

.diagnostic-api-errors {
    margin-top: 7px;
    font-size: 11px;
}

.diagnostic-api-errors summary {
    cursor: pointer;
    font-weight: 700;
    color: #9b6d18;
}

.diagnostic-api-errors div {
    margin-top: 5px;
    max-width: 420px;
    overflow-wrap: anywhere;
}

.diagnostic-site-list {
    display: grid;
    gap: 2px;
    margin-top: 6px;
}

.diagnostic-site-list a {
    font-size: 11px;
    text-decoration: none;
}

.diagnostic-site-list a:hover {
    text-decoration: underline;
}

.diagnostic-fix-links {
    display: grid;
    gap: 6px;
}

.diagnostic-fix-link {
    font-weight: 700;
    text-decoration: none;
    color: var(--brand-dark);
}

.diagnostic-fix-link:hover {
    text-decoration: underline;
}

.troubleshooting-library-card .card-head {
    align-items: center;
}

.troubleshooting-article-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 14px;
    padding: 18px;
}

.troubleshooting-article-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 176px;
    border: 1px solid #e0e8dd;
    border-radius: 12px;
    padding: 16px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(27, 46, 28, .03);
}

.troubleshooting-article-card:hover {
    border-color: #c9d9c4;
    box-shadow: 0 4px 14px rgba(27, 46, 28, .06);
}

.troubleshooting-article-card.is-inactive {
    opacity: .68;
}

.troubleshooting-article-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
}

.troubleshooting-article-head > div {
    min-width: 0;
}

.troubleshooting-article-head h3 {
    margin: 0 0 8px;
    font-size: 16px;
    line-height: 1.3;
}

.troubleshooting-article-head h3 a {
    color: var(--brand-dark);
    text-decoration: none;
}

.troubleshooting-article-head h3 a:hover {
    text-decoration: underline;
}

.troubleshooting-category-list {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
}

.troubleshooting-category-list .badge {
    margin: 0;
}

.troubleshooting-article-card p {
    margin: 13px 0 15px;
    line-height: 1.55;
    color: #39453a;
}

.troubleshooting-article-card > .diagnostic-fix-link {
    margin-top: auto;
    width: fit-content;
}

.troubleshooting-article-form {
    padding: 20px;
    display: grid;
    gap: 17px;
}

.troubleshooting-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 16px;
}

.troubleshooting-article-form textarea {
    min-height: 92px;
    line-height: 1.5;
    resize: vertical;
}

.troubleshooting-form-actions {
    min-height: 42px;
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: flex-end;
    padding-top: 2px;
}

.troubleshooting-form-actions > label {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 7px;
    margin-right: auto;
    color: #334035;
    font-size: 13px;
    font-weight: 650;
}

.troubleshooting-form-actions input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--brand);
}

.troubleshooting-detail-card h2 {
    font-size: 17px;
    margin: 24px 0 10px;
}

.troubleshooting-detail-summary {
    font-size: 15px;
    line-height: 1.6;
}

.troubleshooting-preformatted {
    white-space: pre-line;
    line-height: 1.65;
    border: 1px solid #e3e9df;
    border-radius: 10px;
    padding: 14px;
    background: #fafcf9;
}

.troubleshooting-steps {
    font-family: inherit;
}

.troubleshooting-caution {
    margin-top: 20px;
}

.danger-zone-card {
    border-color: #ecd6d6;
}

@media (max-width: 1050px) {
    .troubleshooting-filter-card .filters {
        grid-template-columns: 1fr 1fr;
    }
    .troubleshooting-filter-card .filters input:first-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .troubleshooting-control-grid,
    .troubleshooting-form-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .troubleshooting-filter-card .filters {
        grid-template-columns: 1fr;
    }
    .troubleshooting-filter-card .filters input:first-child {
        grid-column: auto;
    }
    .troubleshooting-article-grid {
        grid-template-columns: 1fr;
        padding: 12px;
    }
}


/* v5.9.50 — dynamic troubleshooting matching, HTTP Auth fleet tag, cPanel quick actions */
.badge.http-auth-site-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 6px;
    padding: 4px 7px;
    border: 1px solid #b78a32;
    border-radius: 999px;
    background: #fff5d9;
    color: #78510a;
    font-size: 9px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .05em;
    vertical-align: middle;
}
.dashboard-icon-form {
    display: inline-flex;
    margin: 0;
    padding: 0;
}
.dashboard-icon-form .icon-action {
    margin: 0;
}
.troubleshooting-match-tester {
    display: grid;
    gap: 10px;
    margin: 4px 0 16px;
    padding: 14px;
    border: 1px solid #d8e3d2;
    border-radius: 10px;
    background: #f8fbf6;
}
.troubleshooting-match-tester-copy {
    display: grid;
    gap: 3px;
}
.troubleshooting-match-tester-copy span {
    color: var(--muted, #617067);
    font-size: 12px;
    line-height: 1.45;
}
.troubleshooting-match-test-error {
    width: 100%;
    min-height: 86px;
    resize: vertical;
}
.troubleshooting-match-test-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.troubleshooting-match-test-result {
    font-size: 12px;
    font-weight: 700;
}
.pass-text { color: #397b1d; }
.warn-text { color: #96620a; }
.troubleshooting-match-notice { margin-bottom: 16px; }
.fleet-operation-error-actions form { margin: 0; }

/* v5.9.52 — individual-site Cloudflare / DNS verification */
.site-cloudflare-card {
    margin-top: 14px;
}
.site-cloudflare-card-head {
    align-items: center;
    gap: 16px;
}
.site-cloudflare-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    padding: 14px 16px 4px;
}
.site-cloudflare-summary-item {
    display: grid;
    gap: 5px;
    min-height: 72px;
    padding: 12px 14px;
    border: 1px solid #dce7d7;
    border-radius: 10px;
    background: #fbfdf9;
}
.site-cloudflare-summary-item > span,
.site-cloudflare-label {
    color: var(--muted, #617067);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.site-cloudflare-summary-item > strong {
    font-size: 16px;
    overflow-wrap: anywhere;
}
.site-cloudflare-summary-item.pass {
    border-color: #b9dfaa;
    background: #f3fbef;
}
.site-cloudflare-summary-item.warn {
    border-color: #efd49a;
    background: #fff9ea;
}
.site-cloudflare-details-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px 18px;
    padding: 14px 16px;
    border-top: 1px solid #edf1ea;
}
.site-cloudflare-details-grid > div,
.site-cloudflare-record-block,
.site-cloudflare-origin-targets {
    display: grid;
    gap: 6px;
}
.site-cloudflare-record-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 0 16px 14px;
}
.site-cloudflare-record-block {
    min-width: 0;
    padding: 12px;
    border: 1px solid #e3ebe0;
    border-radius: 9px;
    background: #fbfdf9;
}
.site-cloudflare-record-block code,
.site-cloudflare-origin-targets code {
    display: block;
    max-width: 100%;
    padding: 6px 8px;
    border-radius: 6px;
    background: #f0f4ee;
    white-space: normal;
    overflow-wrap: anywhere;
}
.site-cloudflare-origin-targets {
    margin: 0 16px 14px;
    padding: 12px;
    border: 1px solid #e3ebe0;
    border-radius: 9px;
}
.site-cloudflare-message {
    margin: 0 16px 14px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #f5f7f4;
    line-height: 1.45;
}
.site-cloudflare-message.pass {
    border: 1px solid #b9dfaa;
    background: #f3fbef;
}
.site-cloudflare-message.warn {
    border: 1px solid #efd49a;
    background: #fff9ea;
}
.site-cloudflare-actions,
.site-cloudflare-empty {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding: 0 16px 16px;
}
.site-cloudflare-empty {
    align-items: flex-start;
    flex-direction: column;
    padding-top: 14px;
    color: var(--muted, #617067);
}
.site-cloudflare-empty strong {
    color: var(--text, #142018);
}
@media (max-width: 980px) {
    .site-cloudflare-summary-grid,
    .site-cloudflare-details-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 680px) {
    .site-cloudflare-summary-grid,
    .site-cloudflare-details-grid,
    .site-cloudflare-record-grid {
        grid-template-columns: 1fr;
    }
}

/* v5.9.53 — combined uptime/Cloudflare panel + registrar/external DNS diagnostics */
.site-diagnostic-details {
    padding: 0 !important;
    overflow: hidden;
}
.site-diagnostic-summary {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto 24px;
    gap: 12px;
    align-items: center;
    padding: 16px 18px;
    cursor: pointer;
    list-style: none;
    user-select: none;
}
.site-diagnostic-summary::-webkit-details-marker { display: none; }
.site-diagnostic-summary:hover { background: #f9fbf8; }
.site-diagnostic-summary > div { display: grid; gap: 3px; min-width: 0; }
.site-diagnostic-summary h2 { margin: 0; }
.site-diagnostic-summary > div > span { color: var(--muted,#617067); font-size: 12px; line-height: 1.4; }
.site-diagnostic-summary-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 4px 9px;
    border-radius: 999px;
    background: #eef2ec;
    color: #5f6d62;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
}
.site-diagnostic-summary-status.pass { background: #e8f6e2; color: #2f7c28; }
.site-diagnostic-summary-status.warn { background: #fff2cc; color: #9a6900; }
.site-diagnostic-summary-status.fail { background: #fde6e2; color: #b42318; }
.site-diagnostic-summary-status.unknown { background: #eef2ec; color: #5f6d62; }
.site-diagnostic-chevron { transition: transform .18s ease; text-align: center; font-size: 18px; line-height: 1; }
.site-diagnostic-details:not([open]) .site-diagnostic-chevron { transform: rotate(180deg); }
.site-diagnostic-body { border-top: 1px solid #e7ece4; }
.site-diagnostic-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 14px 16px 0;
}
.site-availability-summary-grid,
.site-domain-summary-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 10px;
    padding: 14px 16px 4px;
}
.site-cloudflare-summary-item.fail {
    border-color: #efb6ae;
    background: #fff3f1;
}
.site-cloudflare-summary-item small {
    color: var(--muted,#617067);
    font-size: 11px;
    line-height: 1.35;
}
.site-uptime-detail-block {
    display: grid;
    gap: 12px;
    margin: 10px 16px 14px;
    padding: 12px 14px;
    border: 1px solid #e3ebe0;
    border-radius: 9px;
    background: #fbfdf9;
}
.site-uptime-detail-block > div { display: grid; gap: 6px; }
.site-domain-diagnostics-card { margin-top: 14px; }
.site-domain-details-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 10px 18px;
    padding: 14px 16px;
    border-top: 1px solid #edf1ea;
}
.site-domain-details-grid > div { display: grid; gap: 6px; }
.site-domain-statuses {
    display: grid;
    gap: 8px;
    padding: 0 16px 14px;
}
.site-domain-badges { display: flex; gap: 6px; flex-wrap: wrap; }
.site-domain-dns-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 0 16px 14px;
}
.site-domain-resolver-note {
    margin: 0 16px 14px;
    padding: 10px 12px;
    border: 1px solid #dfe8dc;
    border-radius: 8px;
    background: #f8fbf6;
    line-height: 1.45;
    color: #4e5a51;
}
.site-domain-history-block {
    margin: 0 16px 14px;
    padding: 12px;
    border: 1px solid #e3ebe0;
    border-radius: 9px;
    background: #fbfdf9;
}
.site-domain-history-head {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-start;
}
.site-domain-history-head > div { display: grid; gap: 5px; }
.site-domain-history-head small { color: var(--muted,#617067); max-width: 620px; line-height: 1.45; }
.site-domain-history-head code { padding: 2px 4px; border-radius: 4px; background: #eef3eb; }
.site-domain-history-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    margin-top: 12px;
}
.site-domain-history-grid > div {
    display: grid;
    gap: 8px;
    align-content: start;
}
.site-domain-history-grid h3 { margin: 0 0 2px; font-size: 13px; }
.site-domain-history-row {
    display: grid;
    gap: 2px;
    padding: 9px 10px;
    border: 1px solid #e2e9df;
    border-radius: 7px;
    background: #fff;
}
.site-domain-history-row.warn { border-color: #efd49a; background: #fff9ea; }
.site-domain-history-row strong { overflow-wrap: anywhere; }
.site-domain-history-row span,
.site-domain-history-row small { color: var(--muted,#617067); font-size: 11px; }
.site-domain-last-checked {
    padding: 0 16px 16px;
    color: var(--muted,#617067);
    font-size: 11px;
}
@media (max-width: 980px) {
    .site-availability-summary-grid,
    .site-domain-summary-grid,
    .site-domain-details-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}
@media (max-width: 680px) {
    .site-diagnostic-summary { grid-template-columns: minmax(0,1fr) 24px; }
    .site-diagnostic-summary-status { grid-column: 1 / -1; justify-self: start; }
    .site-availability-summary-grid,
    .site-domain-summary-grid,
    .site-domain-details-grid,
    .site-domain-dns-grid,
    .site-domain-history-grid {
        grid-template-columns: 1fr;
    }
    .site-domain-history-head { flex-direction: column; }
}


/* Sentinel v5.9.53a — individual-site cPanel Account Discovery spacing */
.inventory-tab-panel > .account-discovery-card {
    width: auto;
    margin: 0 18px 18px;
    box-sizing: border-box;
}
.account-discovery-card .card-head {
    padding: 17px 19px;
}
.account-discovery-card > .help-copy {
    margin: 18px;
}
.account-discovery-card .account-discovery-summary {
    padding: 16px 18px 12px;
}
.account-discovery-card .account-discovery-subhead {
    margin: 10px 18px;
}
.account-discovery-card .account-discovery-table-wrap {
    padding: 0 18px 18px;
}
@media (max-width: 760px) {
    .inventory-tab-panel > .account-discovery-card {
        margin: 0 12px 14px;
    }
    .account-discovery-card .card-head {
        padding: 15px;
        align-items: flex-start;
        flex-direction: column;
    }
    .account-discovery-card .account-discovery-summary {
        padding: 14px 15px 10px;
    }
    .account-discovery-card .account-discovery-subhead {
        margin: 10px 15px;
    }
    .account-discovery-card .account-discovery-table-wrap {
        padding: 0 15px 15px;
    }
    .account-discovery-card > .help-copy {
        margin: 15px;
    }
}

/* v5.9.53b - make Dashboard Action required explain the actual failure */
.dashboard-action-required-table .dashboard-action-reason-cell {
    min-width: 300px;
    max-width: 520px;
    vertical-align: top;
}
.dashboard-action-reason-title {
    display: block;
    font-weight: 800;
    line-height: 1.35;
    color: #8f1d16;
    overflow-wrap: anywhere;
}
.dashboard-action-reason-detail {
    display: block;
    margin-top: 4px;
    line-height: 1.35;
    color: var(--muted, #687268);
    overflow-wrap: anywhere;
}
.dashboard-action-reason-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 7px;
}
.dashboard-reason-chip {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 2px 7px;
    border: 1px solid #d7dfd2;
    border-radius: 999px;
    background: #f3f6f1;
    color: #4f5c4f;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .025em;
    white-space: nowrap;
}
.dashboard-reason-chip.is-fail {
    border-color: #efc2bd;
    background: #fff0ee;
    color: #a92118;
}
@media (max-width: 1100px) {
    .dashboard-action-required-table .dashboard-action-reason-cell {
        min-width: 240px;
    }
}

/* v5.9.54 — Individual site health failure explanation */
.site-health-stat {
    min-height: 102px;
}

.site-health-stat-note {
    display: block;
    margin-top: 7px;
    max-width: 100%;
    color: #5f6b60;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.site-health-explanation {
    margin: 14px 0 18px;
    border: 1px solid #dfe7db;
    border-left-width: 4px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 4px 14px rgba(38, 70, 31, .04);
}

.site-health-explanation.is-fail {
    border-color: #efc7c2;
    border-left-color: #c9231b;
    background: #fffafa;
}

.site-health-explanation.is-warn {
    border-color: #f2d79e;
    border-left-color: #d99100;
    background: #fffdf7;
}

.site-health-explanation-main {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    justify-content: space-between;
    padding: 15px 16px;
}

.site-health-explanation-copy {
    min-width: 0;
    flex: 1 1 auto;
}

.site-health-explanation-label {
    margin-bottom: 5px;
    color: #637063;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.site-health-explanation-summary {
    display: block;
    color: #172217;
    font-size: 14px;
    line-height: 1.4;
}

.site-health-explanation-details {
    margin-top: 6px;
    color: #536053;
    font-size: 12px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.site-health-explanation-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 8px;
    align-items: center;
    margin-top: 10px;
}

.site-health-check-age {
    color: #687568;
    font-size: 11px;
    font-weight: 600;
}

.site-health-explanation-actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 7px;
    justify-content: flex-end;
    max-width: 390px;
}

.site-health-explanation-actions .inline {
    margin: 0;
}

@media (max-width: 900px) {
    .site-health-explanation-main {
        flex-direction: column;
    }

    .site-health-explanation-actions {
        justify-content: flex-start;
        max-width: none;
        width: 100%;
    }
}

/* Sentinel v5.9.55 - individual-site cPanel account control */
.site-account-control-card{margin:18px 0}.site-account-control-head{align-items:center}.site-account-control-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.site-account-control-body{padding:18px 20px}.site-account-control-copy{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.site-account-control-copy>span{color:var(--muted);font-size:12px}.site-account-control-form{margin:0}.site-account-control-reason{display:block;max-width:880px}.site-account-control-reason>span{display:block;font-weight:850;font-size:12px;margin-bottom:7px}.site-account-control-reason textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #cbd6c9;border-radius:9px;padding:10px 12px;background:#fff;color:var(--brand-ink);font:inherit;line-height:1.4;resize:vertical}.site-account-control-reason textarea:focus{outline:2px solid rgba(114,190,68,.18);border-color:var(--brand)}.site-account-control-reason small{display:block;margin-top:6px;color:var(--muted);font-size:10px;line-height:1.4}.site-account-control-actions{display:flex;gap:8px;align-items:center;margin-top:12px}@media(max-width:720px){.site-account-control-body{padding:14px}.site-account-control-actions .button{width:100%}}


/* Sentinel v5.9.55a — individual site layout safety/polish */
.site-security-policy-grid {
    grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
    align-items: stretch;
}
.site-security-policy-grid > .card {
    margin-bottom: 0;
    min-width: 0;
}
.site-account-control-bottom {
    margin-top: 28px;
    margin-bottom: 8px;
    border-color: #e6c6c2;
}
.site-account-control-bottom:not(.danger-zone) .card-head {
    background: linear-gradient(180deg, #fff, #fffafa);
}
@media (max-width: 820px) {
    .site-security-policy-grid { grid-template-columns: 1fr; }
}

/* v5.9.66b Cloudflare filtered bulk UI */
.v5966b-zone-filter-panel {
    display: grid !important;
    grid-template-columns: minmax(260px, 2fr) repeat(4, minmax(150px, 1fr));
    gap: 12px;
    align-items: end;
    padding: 14px 16px;
    margin: 14px 0 10px;
    border: 1px solid var(--line, #dce6d8);
    border-radius: 12px;
    background: #fbfdf9;
}
.v5966b-filter-field { min-width: 0; }
.v5966b-filter-field label {
    display: block;
    margin: 0 0 5px;
    font-size: 12px;
    font-weight: 700;
    color: #52604f;
}
.v5966b-filter-field input,
.v5966b-filter-field select {
    width: 100%;
    min-width: 0;
}
.v5966b-filter-actions {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    padding-top: 2px;
}
.v5966b-filter-actions .checkbox { margin-right: auto; }
.v5966b-filter-summary {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    align-items: center;
    padding-top: 8px;
    border-top: 1px solid #e4ece0;
    font-size: 12px;
    color: #667163;
}
.v5966b-bulk-toolbar {
    margin: 10px 0 14px;
    padding: 11px 14px;
    border: 1px solid #dce6d8;
    border-radius: 12px;
    background: #f8fbf6;
}
.v5966b-bulk-main {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 16px;
    align-items: center;
    justify-content: space-between;
}
.v5966b-bulk-selection {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    align-items: center;
    min-width: 0;
}
.v5966b-bulk-label {
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #5d6959;
}
.v5966b-selected-count {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 9px;
    border-radius: 999px;
    background: #edf5e8;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}
.v5966b-bulk-help {
    margin-top: 8px;
    font-size: 12px;
    color: #6a7467;
}
.cloudflare-zone-table th:first-child,
.cloudflare-zone-table td:first-child {
    width: 48px;
    text-align: center;
}
.cloudflare-zone-table .cf-zone-select {
    width: 16px;
    height: 16px;
    margin: 0;
}
@media (max-width: 1320px) {
    .v5966b-zone-filter-panel {
        grid-template-columns: minmax(260px, 2fr) repeat(2, minmax(170px, 1fr));
    }
}
@media (max-width: 840px) {
    .v5966b-zone-filter-panel { grid-template-columns: 1fr; }
    .v5966b-filter-actions,
    .v5966b-filter-summary { grid-column: 1; }
    .v5966b-filter-actions .checkbox { margin-right: 0; width: 100%; }
    .v5966b-bulk-main { align-items: stretch; }
    .v5966b-bulk-selection { width: 100%; }
    .v5966b-bulk-main > .button { width: 100%; }
}

/* v5.9.67b single-site top action toolbar */
.top-actions .site-top-action-icons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}
.top-actions .site-top-action-icons > form {
    display: inline-flex;
    margin: 0;
}
.top-actions .site-top-action-icons .icon-action {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
}
.top-actions .site-top-action-icons .icon-action svg {
    width: 19px;
    height: 19px;
}
@media (max-width: 780px) {
    .top-actions .site-top-action-icons {
        justify-content: flex-start;
    }
}

/* v5.9.67c — restore v5.9.67 batch/filter/server styles after the v5.9.67b toolbar stylesheet replacement */
.server-availability-card { margin-bottom:18px; overflow:hidden; }
.server-availability-card .card-head { margin-bottom:0; }
.server-availability-body { padding:14px 20px 18px; border-top:1px solid var(--line); }
.server-availability-body p { margin:0; line-height:1.5; }
.server-availability-body .status-detail { margin:0; }

.site-page-action-toolbar {
    max-width: 620px;
    justify-content: flex-end;
    flex-wrap: wrap;
}
.site-page-action-toolbar .icon-action { flex: 0 0 34px; }
.site-list-filter-stack {
    display: grid;
    gap: 8px;
    margin: 0 0 12px;
}
.site-list-filter-stack .global-site-filter-card,
.site-list-filter-stack .filter-card { margin-bottom: 0; }
.updates-local-filter-card .simple-filter,
.wp-policy-filter-card .wp-policy-filters {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.batch-history-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    flex-wrap: wrap;
}
.batch-history-actions form { display:inline-flex; margin:0; }
.batch-jobs-card { overflow: hidden; }
.batch-operation-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    padding: 16px 20px 20px;
}
.batch-operation-card {
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 14px;
    background: #fbfdf9;
    min-width: 0;
}
.batch-operation-title-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
}
.batch-operation-title-row > div { min-width: 0; }
.batch-operation-title-row strong { display: block; font-size: 14px; }
.batch-operation-title-row small,
.batch-operation-meta span {
    display: block;
    color: var(--muted);
    font-size: 11px;
    line-height: 1.4;
}
.batch-operation-title-row small { margin-top: 3px; }
.batch-operation-progress {
    height: 7px;
    margin: 12px 0 10px;
    border-radius: 999px;
    overflow: hidden;
    background: #e7eee4;
}
.batch-operation-progress > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--brand);
}
.batch-operation-card p {
    margin: 0 0 10px;
    color: #485649;
    font-size: 12px;
    line-height: 1.45;
}
.batch-operation-meta {
    display: flex;
    gap: 6px 16px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}
.batch-operation-card form { margin: 0; }
.fleet-refresh-grid .batch-operation-card { display:flex; flex-direction:column; gap:12px; }
.fleet-refresh-grid .batch-operation-card > div > strong { display:block; font-size:14px; color:#26362a; }
.fleet-refresh-grid .batch-operation-card > div > small { display:block; margin-top:4px; color:var(--muted); font-size:11px; line-height:1.45; }
.fleet-refresh-grid .batch-operation-card form { margin-top:auto; }
.batch-jobs-table { min-width: 980px; }
.batch-jobs-table td { vertical-align: top; }
.batch-jobs-table td > small,
.batch-jobs-table td strong + small {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 10px;
}
.queue-count-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    padding: 16px 20px 20px;
}
.queue-count-grid > div {
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 12px;
    background: #fbfdf9;
}
.queue-count-grid strong,
.queue-count-grid span { display: block; }
.queue-count-grid span { margin-top: 4px; color: var(--muted); font-size: 11px; }
.update-run-stats { grid-template-columns: repeat(6, minmax(0, 1fr)); }

@media (max-width: 1050px) {
    .batch-operation-grid { grid-template-columns: 1fr; }
    .update-run-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
    .site-page-action-toolbar { justify-content: flex-start; max-width: none; }
    .updates-local-filter-card .simple-filter,
    .wp-policy-filter-card .wp-policy-filters { align-items: stretch; }
    .updates-local-filter-card .simple-filter > *,
    .wp-policy-filter-card .wp-policy-filters > * { width: 100%; }
    .update-run-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .batch-history-actions { justify-content:flex-start; width:100%; }
    .batch-history-actions .button { width:100%; }
}

/* v5.9.68 Winsale one-off provisioning helper */
.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.check-card{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#fff;cursor:pointer}
.check-card>input{margin-top:3px;flex:0 0 auto}
.check-card>span{display:block;min-width:0}
.check-card strong{font-size:12px}
.check-card small{display:block;color:var(--muted);margin-top:4px;line-height:1.4}
.check-card code{font-size:10px}
.winsale-setup-card h2{margin-top:24px}.winsale-setup-card h2:first-child{margin-top:0}
.winsale-cron-option.phase2-only{background:#fffaf0}
.winsale-cron-option:has(input:disabled){opacity:.55;cursor:not-allowed}
.confirmation-card{background:var(--greenbg)}
@media(max-width:760px){.check-grid{grid-template-columns:1fr}}

/* v5.9.69 — Winsale provisioning workflow */
.winsale-workflow-callout {
    align-items: flex-start;
    gap: 8px;
}
.winsale-workflow-callout > strong { flex: 0 0 auto; }
.winsale-page-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}
.winsale-provision-card,
.winsale-finalize-card,
.winsale-result-card { overflow: hidden; }
.winsale-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--line);
}
.winsale-section-heading h2 {
    margin: 0;
    font-size: 19px;
    line-height: 1.25;
}
.winsale-section-heading p {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.45;
}
.winsale-source-card {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 12px;
    margin-bottom: 18px;
    border: 1px solid var(--brand-border);
    border-radius: 12px;
    background: var(--brand-softer);
}
.winsale-source-card > div,
.winsale-result-card .detail-grid > div {
    min-width: 0;
}
.winsale-source-card span,
.winsale-source-card strong {
    display: block;
}
.winsale-source-card span {
    margin-bottom: 3px;
    color: var(--muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}
.winsale-source-card strong {
    overflow-wrap: anywhere;
    font-size: 12px;
}
.winsale-form-grid {
    gap: 14px 16px;
    margin-bottom: 18px;
}
.winsale-form-grid label { min-width: 0; }
.winsale-form-grid input,
.winsale-form-grid select {
    width: 100%;
    min-width: 0;
}
.winsale-option-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 12px 0 16px;
}
.winsale-option,
.winsale-confirmation,
.winsale-cron-option {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-width: 0;
    border: 1px solid var(--line);
    border-radius: 11px;
    padding: 12px 13px;
    background: #fff;
    cursor: pointer;
}
.winsale-option-wide { grid-column: 1 / -1; }
.winsale-option > input,
.winsale-confirmation > input,
.winsale-cron-option > input {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    margin: 2px 0 0;
}
.winsale-option > span,
.winsale-confirmation > span,
.winsale-cron-option > span {
    display: block;
    min-width: 0;
}
.winsale-option strong,
.winsale-confirmation strong,
.winsale-cron-option strong {
    display: inline;
    font-size: 12px;
    line-height: 1.35;
}
.winsale-option small,
.winsale-confirmation small,
.winsale-cron-option small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 10px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}
.winsale-safety-note {
    margin: 14px 0;
    padding: 12px 14px;
    border: 1px solid #ead69d;
    border-radius: 10px;
    background: #fffaf0;
    color: #64501d;
    font-size: 11px;
    line-height: 1.5;
}
.winsale-cron-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin: 12px 0 16px;
}
.winsale-cron-option.phase2-only { background: #fffaf0; }
.winsale-cron-option:has(input:disabled) { opacity: .52; cursor: not-allowed; }
.winsale-confirmation {
    margin: 16px 0;
    border-color: var(--brand-border);
    background: var(--greenbg);
}
.winsale-result-pills {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
}
.winsale-result-card .help-callout { margin-top: 14px; }
.winsale-result-card code { overflow-wrap: anywhere; }

/* v5.9.69 — WP Policy local site search is one row on desktop. */
.wp-policy-filter-card .wp-policy-filters {
    display: grid !important;
    grid-template-columns: minmax(260px, 1fr) minmax(200px, 300px) auto auto;
    gap: 10px;
    align-items: center;
}
.wp-policy-filter-card .wp-policy-filters > * {
    width: 100%;
    min-width: 0;
    margin: 0;
}
.wp-policy-filter-card .wp-policy-filters .button {
    width: auto;
    white-space: nowrap;
}

/* v5.9.69 — make update-count hover details discoverable. */
.site-update-counts .has-tooltip {
    cursor: help;
    border-bottom: 1px dotted #7c8b79;
}

@media (max-width: 1180px) {
    .winsale-page-grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
    .wp-policy-filter-card .wp-policy-filters {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
    .wp-policy-filter-card .wp-policy-filters .button { width: 100%; }
}
@media (max-width: 700px) {
    .winsale-source-card,
    .winsale-option-grid,
    .winsale-cron-grid { grid-template-columns: 1fr; }
    .winsale-option-wide { grid-column: auto; }
    .winsale-section-heading { flex-direction: column; }
    .wp-policy-filter-card .wp-policy-filters { grid-template-columns: 1fr; }
}

/* v5.9.69 — compact documentation-only library search */
.document-library-filter .filters {
    grid-template-columns: minmax(280px, 1fr) auto auto;
    align-items: center;
}
.document-library-filter .filters .button { white-space: nowrap; }
@media (max-width: 700px) {
    .document-library-filter .filters { grid-template-columns: 1fr; }
    .document-library-filter .filters .button { width: 100%; }
}

/* v5.9.70 — domain status, vertical update tooltips, documentation editor */
.wpmaint-tooltip.is-list {
    width: min(460px, calc(100vw - 20px));
    max-width: min(460px, calc(100vw - 20px));
    white-space: pre-line;
}
.site-update-counts .has-tooltip { cursor: help; }
.domain-status-cell { min-width: 150px; }
.domain-status-cell small { display:block; margin-top:4px; color:var(--muted); white-space:nowrap; }
.domain-registration-badge { white-space: nowrap; }

.filters.account-filters {
    grid-template-columns: minmax(180px,2fr) minmax(135px,1.1fr) minmax(145px,1.15fr) minmax(120px,.9fr) minmax(120px,.9fr) minmax(145px,1fr) minmax(145px,1fr) minmax(160px,1.1fr) auto auto auto;
}

.documentation-editor {
    margin-top: 7px;
    border: 1px solid #cfd9cb;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
}
.documentation-editor:focus-within {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(114,190,68,.12);
}
.documentation-editor-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    padding: 8px;
    border-bottom: 1px solid var(--line);
    background: #f7faf5;
}
.documentation-editor-toolbar button {
    appearance: none;
    border: 1px solid #ccd7c8;
    border-radius: 7px;
    background: #fff;
    color: #223726;
    min-height: 31px;
    padding: 5px 9px;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}
.documentation-editor-toolbar button:hover,
.documentation-editor-toolbar button:focus-visible {
    border-color: var(--brand);
    background: var(--brand-softer);
}
.documentation-editor-body {
    min-height: 330px;
    max-height: 620px;
    overflow: auto;
    padding: 16px 18px;
    outline: none;
    color: #283a2b;
    line-height: 1.65;
    font-weight: 450;
}
.documentation-editor-body h2,
.documentation-rich-body h2 { font-size: 23px; margin: 22px 0 10px; }
.documentation-editor-body h3,
.documentation-rich-body h3 { font-size: 18px; margin: 19px 0 8px; }
.documentation-editor-body h4,
.documentation-rich-body h4 { font-size: 15px; margin: 17px 0 7px; }
.documentation-editor-body p,
.documentation-rich-body p { margin: 0 0 12px; }
.documentation-editor-body ul,
.documentation-editor-body ol,
.documentation-rich-body ul,
.documentation-rich-body ol { margin: 8px 0 14px 24px; padding: 0; }
.documentation-editor-body blockquote,
.documentation-rich-body blockquote { margin: 14px 0; padding: 9px 13px; border-left: 4px solid var(--brand); background: var(--brand-softer); }
.documentation-editor-body pre,
.documentation-rich-body pre { white-space: pre-wrap; overflow-wrap: anywhere; background: #17251a; color: #f3f7f1; padding: 12px 14px; border-radius: 8px; }
.documentation-editor-body code,
.documentation-rich-body code { font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
.documentation-editor-source { display: none !important; }
.documentation-rich-body a { color: var(--brand-dark); text-decoration: underline; }

.cloudflare-account-credential-state {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}
.cloudflare-account-saved-note { margin-bottom: 12px; }

@media(max-width:1200px){
    .filters.account-filters { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media(max-width:760px){
    .filters.account-filters { grid-template-columns: 1fr; }
    .wpmaint-tooltip.is-list { width: min(360px, calc(100vw - 20px)); }
    .documentation-editor-toolbar button { flex: 0 0 auto; }
}

/* Sentinel v5.9.71 — compact two-row site filters */
.sites-two-row-filters { display:grid; gap:10px; }
.sites-filter-row { display:grid; gap:9px; align-items:center; }
.sites-filter-row > * { min-width:0; margin:0; }
.sites-filter-row input[type="search"], .sites-filter-row select { width:100%; min-height:40px; border:1px solid #cbd6c8; border-radius:9px; padding:9px 11px; background:#fff; color:var(--ink); font:inherit; box-shadow:0 1px 2px rgba(24,50,28,.03); }
.sites-filter-row input[type="search"]:focus, .sites-filter-row select:focus { border-color:var(--brand); box-shadow:0 0 0 3px rgba(114,190,68,.14); outline:none; }
.sites-filter-row-primary { grid-template-columns:minmax(240px,1.55fr) minmax(155px,.9fr) minmax(155px,.9fr) minmax(135px,.75fr) minmax(135px,.75fr); }
.sites-filter-row-secondary { grid-template-columns:minmax(155px,.9fr) minmax(155px,.9fr) minmax(155px,.9fr) minmax(155px,.9fr) minmax(155px,.9fr) minmax(150px,.8fr) auto; }
.sites-filter-actions { display:flex; gap:8px; justify-content:flex-end; }
.sites-filter-actions .button { min-width:86px; justify-content:center; }
.sites-hold-filter { white-space:nowrap; }
@media (max-width:1250px) {
  .sites-filter-row-primary { grid-template-columns:2fr 1fr 1fr; }
  .sites-filter-row-secondary { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .sites-filter-row-primary,.sites-filter-row-secondary { grid-template-columns:1fr; }
  .sites-filter-actions { justify-content:stretch; }
  .sites-filter-actions .button { flex:1 1 auto; }
}

/* Sentinel v5.9.71 — Winsale clone cleanup controls */
.winsale-cleanup-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr); gap:12px; margin-bottom:22px; }
.winsale-destructive-option { border-color:#efd596 !important; background:#fffaf0 !important; }
.winsale-admin-keep { display:block; border:1px solid var(--line); border-radius:10px; padding:12px; background:#fff; }
.winsale-admin-keep > span { display:block; font-weight:800; margin-bottom:6px; }
.winsale-admin-keep input { width:100%; }
.winsale-admin-keep small { display:block; color:var(--muted); margin-top:6px; }
@media(max-width:900px){.winsale-cleanup-grid{grid-template-columns:1fr}}

/* Sentinel v5.9.71 — server operations */
.server-operations-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:18px; }
.server-operation-panel { border:1px solid var(--line); border-radius:12px; padding:16px; background:#fff; min-width:0; }
.server-operation-panel h3 { margin:0 0 5px; }
.server-operation-panel > p,.server-operation-panel-head p { margin:0 0 14px; color:var(--muted); font-size:12px; }
.server-operation-panel textarea,.server-operation-panel input,.server-operation-panel select { width:100%; }
.server-operation-history { border-top:1px solid var(--line); margin-top:14px; padding-top:12px; display:grid; gap:7px; font-size:11px; }
.server-operation-history strong { margin-bottom:2px; }
.server-operation-history small { color:var(--muted); }
.server-restart-actions { display:flex; flex-wrap:wrap; gap:9px; }
.server-restart-actions form { margin:0; }
.server-restart-panel { grid-column:1 / -1; }
.server-restore-panel { background:#fffdf8; border-color:#efd596; }
.server-operation-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.server-imunify-panel { grid-column:1 / -1; }
.server-operation-empty { padding:14px 0 2px; }
.server-imunify-table td { vertical-align:top; }
@media(max-width:980px){.server-operations-grid{grid-template-columns:1fr}.server-restart-panel,.server-imunify-panel{grid-column:auto}}

/* Sentinel v5.9.71a — settings history action alignment */
.card-head-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; flex-wrap:wrap; }
.card-head-actions form { margin:0; }
.card-head-actions .button { min-height:32px; padding:7px 10px; }
@media(max-width:700px){.card-head-actions{width:100%;justify-content:flex-start}.card-head{align-items:flex-start;flex-wrap:wrap}}

/* v5.9.72c — site HTTP Basic Auth management */
.site-access-protection-card { scroll-margin-top: 20px; }
.site-access-protection-body { padding: 18px; }
.site-access-protection-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr); gap: 18px; align-items: start; margin-top: 16px; }
.site-access-protection-grid .form-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.site-access-remove { border: 1px solid var(--line); border-radius: 12px; padding: 16px; background: var(--panel-soft, #f8faf7); }
.site-access-remove p { margin: 8px 0 14px; color: var(--muted); line-height: 1.45; }
.site-access-protection-card code { overflow-wrap: anywhere; }
@media (max-width: 1050px) {
    .site-access-protection-grid { grid-template-columns: 1fr; }
    .site-access-protection-grid .form-grid { grid-template-columns: 1fr; }
}

/* v5.9.72e - single-site MultiPHP control */
.site-php-vhost-summary{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--border,#dbe5d7);border-radius:10px;background:var(--panel-soft,#f8fbf6);min-height:76px;justify-content:center}
.site-php-vhost-summary>span{font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.04em;opacity:.68}
.site-php-vhost-summary>strong{overflow-wrap:anywhere}

/* v5.9.72g — required server setup documentation + suspicious definition editing */
.doc-card-required-install {
    border-color: #f59e0b;
    box-shadow: 0 0 0 1px rgba(245, 158, 11, .12), 0 8px 24px rgba(15, 23, 42, .05);
}
.doc-card-required-install .doc-card-icon {
    outline: 2px solid rgba(245, 158, 11, .32);
}
.required-install-label {
    background: #fff3cd;
    border: 1px solid #f2cc60;
    border-radius: 999px;
    color: #7a4b00;
    font-weight: 800;
    letter-spacing: .03em;
    padding: 3px 8px;
}
.required-install-banner {
    align-items: center;
    background: #fff8e1;
    border: 1px solid #efc85e;
    border-left: 5px solid #d99a00;
    border-radius: 12px;
    display: flex;
    gap: 14px;
    margin: 0 0 18px;
    padding: 14px 16px;
}
.required-install-banner strong {
    color: #7a4b00;
    white-space: nowrap;
}
.required-install-banner span {
    color: #53431f;
}
.security-pattern-layout .is-selected-row {
    background: rgba(114, 190, 68, .08);
    box-shadow: inset 3px 0 0 #72be44;
}
.security-pattern-layout .compact-actions {
    flex-wrap: nowrap;
    gap: 6px;
}
@media (max-width: 760px) {
    .required-install-banner {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }
    .required-install-banner strong { white-space: normal; }
}

/* v5.9.72h — abuse performance/UI polish, dashboard uptime, and cleanup alignment */
.large-file-scan-action {
    align-self: start;
    min-height: 0;
    padding-top: 24px;
}
.large-file-scan-action .button {
    margin: 0;
}
.doc-download-icon {
    border-color: rgba(114,190,68,.55);
    background: rgba(114,190,68,.10);
    color: var(--brand-dark, #3c7d21);
}
.dashboard-uptime-note {
    margin-top: -4px;
}
@media (max-width: 900px) {
    .large-file-scan-action { padding-top: 0; }
}
.abuse-cloudflare-dialog {
    width: min(560px, calc(100vw - 32px));
    padding: 0;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--panel, #fff);
    box-shadow: 0 24px 70px rgba(20,35,24,.24);
}
.abuse-cloudflare-dialog::backdrop {
    background: rgba(20,35,24,.34);
}
.abuse-cloudflare-dialog .card-head {
    border-bottom: 1px solid var(--line);
}
.abuse-cloudflare-dialog .profile-card-body {
    padding: 18px;
}

/* v5.9.74 — one-row large-file actions and one-site fleet recheck state */
.cleanup-row-actions {
    flex-wrap: nowrap !important;
    white-space: nowrap;
}
.large-file-actions-cell,
.large-file-report-table th:last-child,
.large-file-report-table td:last-child {
    min-width: 128px;
    white-space: nowrap;
}
.fleet-site-recheck.is-busy,
.fleet-site-recheck:disabled {
    opacity: .65;
    cursor: wait;
}
.fleet-site-recheck.is-busy svg {
    animation: sentinel-recheck-spin 1s linear infinite;
}
@keyframes sentinel-recheck-spin { to { transform: rotate(360deg); } }

/* v5.9.74 — actionable scheduled-job failure explanations */
.cron-failure-explainer{margin:12px 0;border:1px solid #edc9c4;background:#fff8f7;border-radius:10px;padding:12px}
.cron-failure-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.cron-failure-details{margin:0}
.cron-failure-details dd{overflow-wrap:anywhere}
.cron-failure-details code{white-space:normal;overflow-wrap:anywhere}

/* v5.9.74 — email/alert routing */
.settings-email-routing-card{margin-bottom:18px}
.settings-routing-note{margin-bottom:14px}
.settings-routing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}
.settings-routing-item{border:1px solid var(--border,#dfe7db);border-radius:10px;padding:12px;background:#fbfdf9;display:flex;flex-direction:column;gap:10px}
.settings-routing-copy{display:flex;flex-direction:column;gap:3px}
.settings-routing-copy span{font-size:12px;color:var(--muted,#647064)}
.settings-routing-controls{display:flex;flex-wrap:wrap;gap:10px 22px;margin:8px 0 14px}
.settings-test-routing{margin-top:14px;padding-top:14px;border-top:1px solid var(--border,#dfe7db)}
.settings-route-test-buttons{margin-top:8px;flex-wrap:wrap}
.settings-server-local-mail-note{margin-top:14px}
.settings-main-save{margin:0 0 18px}
.hidden-routing-test-form{display:none}
@media(max-width:850px){.settings-routing-grid{grid-template-columns:1fr}}

/* v5.9.74 — intentional Cloudflare fleet-scan exclusions */
.status-skipped-row{opacity:.82;background:#fafbf8}
.cf-skip-note{display:flex;align-items:center;gap:6px;margin-top:5px;white-space:normal;color:var(--muted,#647064)}
.cf-audit-skip-card .profile-card-body{display:flex;flex-direction:column;gap:12px}
.cron-failure-evidence{display:grid;gap:6px}
.cron-failure-evidence code{display:block;padding:7px 9px;border-radius:7px;background:#fff;border:1px solid #ead8d4;color:#5b312c}
.cron-failure-evidence{display:grid;gap:6px}
.cron-failure-evidence code{display:block;padding:7px 9px;border-radius:7px;background:#fff;border:1px solid #ead8d4;color:#5b312c}

/* v5.9.74a: collapsible scheduled-job failure diagnostics */
.cron-failure-explainer>summary{cursor:pointer;list-style:none}
.cron-failure-explainer>summary::-webkit-details-marker{display:none}
.cron-failure-heading>span:first-child{display:flex;align-items:baseline;gap:8px;min-width:0}
.cron-failure-heading small{font-weight:400;color:var(--muted,#647064)}
.cron-failure-explainer:not([open]) .cron-failure-heading{margin-bottom:0}
.cron-failure-explainer[open] .cron-failure-heading{margin-bottom:8px}

/* v5.9.74c — on-demand large-file WordPress usage lookup */
.large-file-usage-trigger {
    display: inline-block;
    max-width: 100%;
    cursor: help;
    border-bottom: 1px dotted #8ca681;
    outline: none;
}
.large-file-usage-trigger:focus-visible {
    border-radius: 4px;
    box-shadow: 0 0 0 2px rgba(114,190,68,.22);
}
.large-file-usage-trigger code { cursor: help; }


/* v5.9.74d — click-to-open large-file usage drawer */
.large-file-path-row{
    display:flex;
    align-items:flex-start;
    gap:8px;
    min-width:0;
}
.large-file-path-row code{
    flex:1 1 auto;
    min-width:0;
    overflow-wrap:anywhere;
}
.large-file-usage-toggle{
    flex:0 0 auto;
    margin-top:-4px;
}
.large-file-usage-toggle[aria-expanded="true"]{
    box-shadow:0 0 0 2px rgba(114,190,68,.18);
}
.large-file-usage-drawer-row>td{
    padding:0 14px 12px!important;
    border-top:0!important;
}
.large-file-usage-drawer{
    border:1px solid #dbe6d6;
    background:#f9fcf7;
    border-radius:10px;
    padding:13px 15px;
    box-shadow:inset 3px 0 0 rgba(114,190,68,.72);
}
.large-file-usage-drawer-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:10px;
}
.large-file-usage-drawer-head>div{min-width:0}
.large-file-usage-drawer-head strong,
.large-file-usage-drawer-head small{display:block}
.large-file-usage-drawer-head small{margin-top:2px;color:var(--muted)}
.large-file-usage-result{display:grid;gap:9px;min-width:0}
.large-file-usage-result .badge{justify-self:start}
.large-file-usage-lines{
    margin:0;
    padding-left:20px;
    display:grid;
    gap:5px;
}
.large-file-usage-lines li{
    overflow-wrap:anywhere;
    line-height:1.4;
}
.large-file-usage-checked{display:block}
@media (max-width:720px){
    .large-file-usage-drawer-head{align-items:stretch;flex-direction:column}
    .large-file-usage-close{align-self:flex-start}
}

/* v5.9.75 — usage wrapping, quick actions, policy note, and Sentinel branding */
.large-file-report-table { width: 100%; }
.large-file-usage-drawer-row > td {
    width: auto;
    max-width: 0;
    overflow: hidden;
}
.large-file-usage-drawer,
.large-file-usage-result,
.large-file-usage-lines,
.large-file-usage-lines li,
.large-file-usage-result code,
.large-file-usage-result pre,
.large-file-usage-result span,
.large-file-usage-result div {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}
.large-file-usage-result pre,
.large-file-usage-result code {
    white-space: pre-wrap;
}

.site-web-admin-actions,
.server-whm-actions,
.server-site-action-icons {
    flex-wrap: nowrap;
}
.server-site-actions-cell { white-space: nowrap; }
.server-site-action-icons { display: flex; align-items: center; gap: 6px; }
.server-site-action-icons > .site-web-admin-actions { display: contents; }
.wp-policy-actions-cell .site-web-admin-actions { display: contents; }
.wp-policy-table .wp-policy-actions-col { width: 220px; }
.hardening-actions + * { margin-top: 0; }

.wp-policy-remove-note {
    margin: 10px 16px 14px;
    padding: 10px 13px;
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    align-items: start;
    gap: 6px 10px;
    border-radius: 10px;
    overflow: hidden;
}
.wp-policy-remove-note > strong { white-space: nowrap; }
.wp-policy-remove-note > span {
    min-width: 0;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.brand-logo-stack {
    display: grid;
    justify-items: center;
    gap: 9px;
    width: 100%;
}
.sentinel-sub-brand {
    display: block;
    width: min(100%, 150px);
    height: auto;
    padding-top: 8px;
    border-top: 1px solid #e4ece0;
}
.sentinel-login-logo { width: min(100%, 370px); }

@media (max-width: 720px) {
    .wp-policy-remove-note { grid-template-columns: 1fr; }
}


/* v5.9.75b — compact hardening actions, Updates search, and shield-only internal branding */
.hardening-actions {
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:nowrap;
    white-space:nowrap;
}
.hardening-actions .site-web-admin-actions { display:contents; }
.hardening-actions form { flex:0 0 auto; }

.global-site-filters.has-site-search {
    grid-template-columns:1fr 1fr .9fr .9fr .9fr minmax(220px,1.5fr) auto auto;
}
.global-site-filters input[type="search"] { min-width:220px; }

.brand { margin-bottom:22px; }
.brand-logo-card { padding:10px 12px; }
.brand-logo-row {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    width:100%;
    min-width:0;
}
.brand-logo-row.has-agency-logo .agency-brand-logo {
    width:auto;
    max-width:155px;
    max-height:62px;
    object-fit:contain;
}
.sentinel-sidebar-shield {
    display:block;
    width:54px;
    height:54px;
    object-fit:contain;
    flex:0 0 54px;
}
.brand-logo-row.has-agency-logo .sentinel-sidebar-shield {
    padding-left:11px;
    border-left:1px solid #e4ece0;
    width:58px;
}
.brand-logo-row.sentinel-only .sentinel-sidebar-shield {
    width:70px;
    height:70px;
    flex-basis:70px;
}
.brand-copy,
.brand-logo-stack,
.sentinel-sub-brand { display:none !important; }

/* Login keeps the full approved wordmark but no redundant introductory copy. */
.login-branding { margin-bottom:24px; }
.login-card .login-branding + .login-quote { margin-top:0; }

@media (max-width:1120px) {
    .global-site-filters input[type="search"] { min-width:0; }
}


/* v5.9.75c — Sentinel shield first, then agency/default brand logo */
.brand-logo-row.has-agency-logo .agency-brand-logo,
.brand-logo-row.has-default-logo .default-agency-logo {
    width:auto;
    max-width:170px;
    max-height:62px;
    object-fit:contain;
    min-width:0;
}
.brand-logo-row .sentinel-sidebar-shield,
.brand-logo-row.has-agency-logo .sentinel-sidebar-shield,
.brand-logo-row.has-default-logo .sentinel-sidebar-shield {
    display:block;
    width:66px;
    height:54px;
    object-fit:contain;
    flex:0 0 66px;
    box-sizing:border-box;
    padding-left:0;
    padding-right:12px;
    border-left:0;
    border-right:1px solid #e4ece0;
}
.brand-logo-row.has-default-logo .default-agency-logo {
    max-width:175px;
}

/* Sentinel v5.9.76 Client Handoff Backups */
.client-backup-card{margin-bottom:18px}
.client-backup-intro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0 14px}
.client-backup-intro>div{display:grid;gap:4px;padding:12px 14px;border:1px solid #e0e8dc;border-radius:10px;background:#fbfdf9;min-width:0}
.client-backup-intro span,.client-backup-message,.client-backup-error{overflow-wrap:anywhere;word-break:break-word}
.client-backup-create{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:12px 0}
.client-backup-create label{display:grid;gap:5px;font-weight:700}
.client-backup-create select{min-width:150px}
.client-backup-history{margin-top:14px}
.client-backup-history table{min-width:900px}
.client-backup-history small{display:block;margin-top:4px;color:#6b756f;max-width:520px;white-space:normal}
.client-backup-history .client-backup-error{color:#a52a20}
.client-backup-actions{display:flex;flex-wrap:nowrap;gap:6px}
@media(max-width:800px){.client-backup-intro{grid-template-columns:1fr}}

/* v5.9.76a — compact server actions */
.server-top-action-icons,
.server-list-actions{flex-wrap:nowrap}
.server-list-actions{min-width:max-content}

/* v5.9.76d — exact-date WHM restore calendar */
.restore-calendar-shell{border:1px solid var(--border,#d9e3d5);border-radius:14px;background:#fbfdf9;padding:14px;max-width:620px}
.restore-calendar-placeholder{padding:18px;color:var(--muted,#657164);text-align:center}
.restore-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px;margin-bottom:10px}
.restore-calendar-head strong{text-align:center;font-size:1rem}
.restore-calendar-head .icon-action{width:38px;height:38px;font-size:24px;line-height:1;padding:0}
.restore-calendar-weekdays,.restore-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(34px,1fr));gap:6px}
.restore-calendar-weekdays{margin-bottom:6px;color:var(--muted,#657164);font-size:.76rem;font-weight:700;text-transform:uppercase;text-align:center}
.restore-calendar-weekdays span{padding:4px 0}
.restore-calendar-day{min-height:42px;border:1px solid #e3e9df;border-radius:9px;background:#f4f6f2;color:#9aa39a;font-weight:700}
.restore-calendar-day.blank{border-color:transparent;background:transparent}
.restore-calendar-day.unavailable{cursor:not-allowed;opacity:.55}
.restore-calendar-day.available{background:#eff9e9;color:#24591a;border-color:#b9dfa9;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(114,190,68,.08)}
.restore-calendar-day.available:hover{border-color:#72be44;background:#e7f7de}
.restore-calendar-day.selected{background:#72be44;color:#fff;border-color:#61a93a;box-shadow:0 0 0 3px rgba(114,190,68,.18)}
.restore-calendar-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px;color:var(--muted,#657164);font-size:.82rem}
.restore-calendar-dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:5px;vertical-align:-1px;border:1px solid #b9dfa9}
.restore-calendar-dot.available{background:#eff9e9}.restore-calendar-dot.selected{background:#72be44;border-color:#61a93a}
@media(max-width:650px){.restore-calendar-shell{padding:10px}.restore-calendar-weekdays,.restore-calendar-grid{gap:4px}.restore-calendar-day{min-height:38px}}

/* Sentinel v5.9.78 — production stabilization */
.two-factor-enrollment{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap;margin:14px 0}.two-factor-qr{display:grid;gap:8px;justify-items:center;padding:14px;border:1px solid #dce7d8;border-radius:12px;background:#fff}.two-factor-qr img{width:260px;max-width:100%;height:auto}.two-factor-qr span{font-size:12px;color:#66736a}.automatic-update-schedule-card{margin-bottom:18px}.automatic-update-schedule-form{padding:14px 16px}.automatic-update-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.automatic-update-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid #dfe7dc;border-radius:10px;background:#fbfdf9}.automatic-update-row>label:last-child{display:flex;align-items:center;gap:8px}.automatic-update-row input[type=time]{width:125px}.scanner-event-actions{display:flex;gap:5px;align-items:center}.abuse-reputation strong,.abuse-reputation small{display:block}.abuse-reputation strong{font-size:14px}.abuse-reputation small{font-size:11px;color:#6b756f;max-width:180px;white-space:normal}.settings-abuseipdb-box{margin-top:14px}.client-backup-card{overflow:hidden}.client-backup-card .card-head{align-items:flex-start}.client-backup-intro{align-items:stretch;margin:0;padding:12px 14px}.client-backup-intro>div{height:auto;min-height:68px}.client-backup-create{padding:0 14px 14px;margin:0;align-items:flex-end}.client-backup-history{margin:0 -1px -1px}.client-backup-history table{width:100%;min-width:760px}.client-backup-history td,.client-backup-history th{vertical-align:top}.client-backup-error{max-width:480px;white-space:normal;overflow-wrap:anywhere}.has-tooltip[data-tooltip]{cursor:help}@media(max-width:900px){.automatic-update-grid{grid-template-columns:1fr}}

/* v5.9.79 operations reliability */
.inline-ip-actions{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.inline-ip-actions .icon-action.tiny{width:24px;height:24px;min-width:24px;padding:4px}.client-backup-head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.client-backup-message,.client-backup-error,[data-client-backup-activity]{display:block;margin-top:4px}

/* Sentinel v5.9.79a — visible Client Handoff download link */
.client-backup-link-box{display:grid;gap:6px;min-width:330px;max-width:520px;padding:9px 10px;border:1px solid #dce7d8;border-radius:9px;background:#fbfdf9}
.client-backup-link-label{font-size:.78rem;color:#344037}
.client-backup-link-row{display:flex;align-items:center;gap:6px;min-width:0}
.client-backup-link-input{width:100%;min-width:240px;height:34px;padding:6px 8px;border:1px solid #d6dfd2;border-radius:7px;background:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:.72rem;color:#344037}
.client-backup-link-expiry{margin-top:0!important;color:#6b756f}
.client-backup-record-actions{margin-top:7px}
@media(max-width:900px){.client-backup-link-box{min-width:280px}.client-backup-link-row{align-items:flex-start}.client-backup-link-input{min-width:190px}}
.client-backup-worker-note{display:block;margin-top:4px;color:#8a5a00;font-weight:600;max-width:520px;white-space:normal}

/* Sentinel v5.9.79d — sortable abuse table */
.table-sort-link{display:inline-flex;align-items:center;gap:4px;color:inherit;text-decoration:none;font:inherit;font-weight:inherit;white-space:nowrap}
.table-sort-link:hover,.table-sort-link:focus{text-decoration:underline}
.table-sort-indicator{font-size:.72em;line-height:1;opacity:.55}
.table-sort-link.active .table-sort-indicator{opacity:1}

/* v5.9.80 — final security/admin UI polish */
.security-ip-action-layout{display:grid;gap:18px}
.security-action-explanation{display:grid;gap:8px}
.security-action-explanation>strong{font-size:13px}
.security-action-explanation p{margin:0;line-height:1.55}
.security-ip-action-form{display:grid;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fbfdf9}
.security-action-form-grid{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(120px,.45fr) minmax(230px,.9fr) minmax(280px,1.35fr);gap:12px;align-items:end}
.security-action-form-grid label{display:grid;gap:6px;min-width:0;font-size:11px;font-weight:800;color:var(--muted)}
.security-action-form-grid input,.security-action-form-grid select{display:block;width:100%;min-width:0;box-sizing:border-box}
.security-ip-targets{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line)}
.security-ip-targets label{display:inline-flex;align-items:center;gap:7px;margin:0;font-size:11px;font-weight:750;color:var(--brand-ink)}
.security-ip-targets input[type=checkbox]{width:auto;margin:0}
.security-ip-targets .icon-action{margin-left:auto;flex:0 0 auto}
.security-ip-submit{margin-left:auto;white-space:nowrap;min-width:128px}
.security-prep-failure{display:block;margin-top:5px;color:#9b3e35;overflow-wrap:anywhere}
.security-prep-help{display:block;margin-top:7px;padding:8px 10px;border:1px solid #ead7a3;border-radius:8px;background:#fff8df;color:#6e561f;line-height:1.45}
.security-prep-help strong{display:block;margin-bottom:2px;color:#76580d}
.scanner-source-card,.scanner-arrival-card{display:flex;flex-direction:column}
.scanner-source-card-body{padding:14px 16px 16px;flex:1}
.scanner-source-card .source-count-list{gap:7px}
.scanner-source-card .source-count-list>div{min-height:36px;padding:7px 10px;border-radius:8px}
.scanner-source-card .source-count-list span{font-size:10px;letter-spacing:.03em}
.scanner-source-card .source-count-list strong{font-size:16px;line-height:1}
.cpanel-account-settings-panel{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.site-account-control-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.site-account-control-section-head h3{margin:0 0 3px;font-size:14px}
.site-account-control-section-head span{color:var(--muted);font-size:11px}
.cpanel-account-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cpanel-account-setting-form{display:flex;flex-direction:column;gap:9px;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fbfdf9;min-width:0}
.cpanel-account-setting-title{display:grid;gap:3px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.cpanel-account-setting-title strong{font-size:12px}
.cpanel-account-setting-title span,.cpanel-account-setting-form>small{font-size:10px;color:var(--muted);line-height:1.4}
.cpanel-account-setting-form label{display:grid;gap:5px;font-size:11px;font-weight:800;color:var(--muted)}
.cpanel-account-setting-form input,.cpanel-account-setting-form select{width:100%;box-sizing:border-box}
.cpanel-account-setting-form .button{margin-top:auto;align-self:flex-start}
.cpanel-account-settings-warning{margin-bottom:12px}
@media(max-width:1100px){.security-action-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cpanel-account-settings-grid{grid-template-columns:1fr}}
@media(max-width:700px){.security-action-form-grid{grid-template-columns:1fr}.security-ip-targets{align-items:flex-start;flex-direction:column}.security-ip-targets .icon-action,.security-ip-submit{margin-left:0}.security-ip-submit{width:100%}.cpanel-account-setting-form .button{width:100%}}

/* Sentinel v5.9.80a — Security Actions field consistency */
.security-action-form-grid input,
.security-action-form-grid select{
    display:block;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    margin:0;
    border:1px solid #cbd6c8;
    border-radius:9px;
    padding:10px 11px;
    min-height:40px;
    background:#fff;
    color:var(--ink);
    font:inherit;
    font-weight:500;
    outline:none;
    transition:border .15s ease,box-shadow .15s ease;
}
.security-action-form-grid input:focus,
.security-action-form-grid select:focus{
    border-color:var(--brand);
    box-shadow:0 0 0 3px rgba(114,190,68,.14);
}


/* Sentinel v5.9.80e — uptime refresh/recheck controls */
.monitor-action-group { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:wrap; }
.monitor-action-group form { margin:0; }
.monitor-action-group .monitor-scan-form { display:flex; align-items:center; gap:8px; }
@media(max-width:820px){
    .monitor-action-group { justify-content:flex-start; width:100%; }
    .monitor-action-group .monitor-scan-form { width:100%; flex-wrap:wrap; }
}

/* Sentinel technology badges — WordPress plugin/theme inventory */
.sentinel-tech-badge { font-size:10px; font-weight:750; letter-spacing:.025em; white-space:nowrap; }
.sentinel-tech-elementor { background:#fce8f2 !important; color:#9c2263 !important; border:1px solid #efb9d3 !important; }
.sentinel-tech-divi { background:#ece9ff !important; color:#5942a5 !important; border:1px solid #c5baf5 !important; }

/* Sentinel security & unified badge rows v5.9.80f */
.sentinel-site-badge-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;margin-bottom:3px;line-height:1.35;max-width:100%}
.sentinel-site-badge-row>.badge{margin:0;flex:0 0 auto}
.sentinel-site-heading{display:block}
.sentinel-concerns-grid{padding:14px;display:grid;gap:9px}
.sentinel-concern-item{border:1px solid var(--line);border-radius:10px;overflow:hidden}
.sentinel-concern-toggle{display:flex;align-items:center;gap:12px;padding:13px 15px;text-decoration:none;color:inherit}
.sentinel-concern-toggle>strong{flex:1}
.sentinel-concern-body{padding:12px 15px;border-top:1px solid var(--line)}
.sentinel-concern-body .field-help{margin-bottom:10px}
@media(max-width:700px){.sentinel-concern-toggle{flex-wrap:wrap}}


/* Sentinel website badge pills v5.9.80g */
.sentinel-site-badge-row :is(.badge,.site-dev-badge,.site-service-badge,small.badge,a.badge){
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;flex:0 0 auto!important;
  margin:0!important;padding: 2px 6px !important;min-height: 19px !important;
  line-height:1.1!important;white-space:nowrap!important;border-radius:999px!important;
  font-size: 8px !important;font-weight:700!important;letter-spacing:.02em;
  text-decoration:none!important;
}
.sentinel-site-badge-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:6px 0 3px;max-width:100%}



/* Sentinel v5.9.80ze — polished internal client roster card */
.client-roster-card{
  margin:0 0 18px;overflow:hidden;border:1px solid var(--brand-border);
  background:linear-gradient(180deg,#fff 0%,#fbfdf9 100%);
}
.client-roster-heading{
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px;
  padding:18px 20px 16px;border-bottom:1px solid var(--line);
  background:linear-gradient(135deg,var(--brand-softer) 0%,#fff 72%);
}
.client-roster-heading-copy{min-width:0}
.client-roster-eyebrow{font-size:9px;line-height:1;font-weight:900;letter-spacing:.09em;color:var(--brand-dark);margin-bottom:6px}
.client-roster-heading h2{margin:0;color:var(--brand-ink);font-size:19px;line-height:1.15}
.client-roster-heading-copy>span{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.client-roster-internal-badge{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  min-height:22px;padding:3px 9px;border-radius:999px;background:var(--brand-soft);
  border:1px solid var(--brand-border);color:var(--brand-deep);font-size:9px;font-weight:900;letter-spacing:.05em
}
.client-roster-error{margin:16px 20px 20px;padding:12px 14px;border:1px solid #edd08a;border-radius:10px;background:#fff7df;color:#784900}
.client-roster-error strong{display:block;font-size:11px;margin-bottom:2px}.client-roster-error span{font-size:11px}
.client-roster-entry{padding:18px 20px 20px}
.client-roster-entry+.client-roster-entry{border-top:1px solid var(--line)}
.client-roster-title-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}
.client-roster-client-title{min-width:0}
.client-roster-client-title h3{margin:0;color:var(--brand-ink);font-size:21px;line-height:1.15}
.client-roster-badges{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:7px}
.client-roster-chip{
  display:inline-flex;align-items:center;min-height:21px;padding:2px 7px;border-radius:999px;
  border:1px solid var(--line);background:#fff;color:#5a665a;font-size:9px;font-weight:800;letter-spacing:.02em
}
.client-roster-domain-chip{border-color:var(--brand-border);background:var(--brand-softer);color:var(--brand-deep)}
.client-roster-referral-chip{border-color:#efd89b;background:#fff7dc;color:#765000}
.client-roster-partner-chip{border-color:#cfe5c2;background:#f3faef;color:#356d24}
.client-roster-service-count{
  display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:8px 11px;border-radius:10px;
  border:1px solid var(--brand-border);background:var(--brand-soft);color:var(--brand-deep)
}
.client-roster-service-count strong{font-size:20px;line-height:1}.client-roster-service-count span{font-size:10px;font-weight:800;max-width:48px;line-height:1.05}
.client-roster-layout{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(360px,1.25fr);gap:14px;align-items:stretch}
.client-roster-left{display:grid;grid-template-columns:1fr;gap:12px;align-content:start}
.client-roster-panel,.client-roster-services-panel{
  border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(23,58,26,.025)
}
.client-roster-panel{padding:13px 14px}
.client-roster-panel-title{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.055em;color:var(--brand-deep)}
.client-roster-info-list{margin:9px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.client-roster-info-list>div{padding:8px 0;border-top:1px solid #edf1eb;min-width:0}
.client-roster-info-list dt{margin:0 0 2px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}
.client-roster-info-list dd{margin:0;color:#243024;font-size:11.5px;font-weight:700;overflow-wrap:anywhere}
.client-roster-info-list a{font-weight:700}
.client-roster-address-block,.client-roster-url-list{margin-top:10px;padding-top:9px;border-top:1px solid #edf1eb}
.client-roster-label{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.035em;margin-bottom:4px}
.client-roster-address-block strong{display:block;color:#2b352b;font-size:11.5px;line-height:1.5;font-weight:650}
.client-roster-address-block strong>span{display:block}
.client-roster-url-list>div{display:flex;flex-wrap:wrap;gap:6px}
.client-roster-url-pill{
  display:inline-flex;align-items:center;padding:4px 8px;border:1px solid var(--brand-border);border-radius:7px;
  background:var(--brand-softer);color:var(--brand-deep);font-size:10px;font-weight:750
}
.client-roster-services-panel{padding:13px 14px}
.client-roster-services-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:9px}
.client-roster-services-head span{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.client-roster-services-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.client-roster-services-list li{
  display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border:1px solid #e8eee4;border-radius:9px;
  background:linear-gradient(90deg,var(--brand-softer) 0%,#fff 70%)
}
.client-roster-service-check{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;
  margin-top:1px;border-radius:50%;background:var(--brand);color:#fff;font-size:12px;font-weight:900;line-height:1
}
.client-roster-services-list li>div{min-width:0}
.client-roster-services-list strong{display:block;color:#263326;font-size:11.5px;line-height:1.35;font-weight:750}
.client-roster-services-list small{display:block;color:var(--muted);font-size:9.5px;line-height:1.35;margin-top:3px}
.client-roster-empty-services{margin-top:10px;padding:16px;border:1px dashed var(--line);border-radius:9px;color:var(--muted);font-size:11px;text-align:center}
@media(max-width:1050px){
  .client-roster-layout{grid-template-columns:1fr}
  .client-roster-left{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .client-roster-heading,.client-roster-title-row{align-items:flex-start;flex-direction:column}
  .client-roster-entry,.client-roster-heading{padding-left:14px;padding-right:14px}
  .client-roster-left{grid-template-columns:1fr}
  .client-roster-info-list{grid-template-columns:1fr}
  .client-roster-service-count{align-self:flex-start}
}

