:root {
    --shell-bg: #f3f5f7;
    --shell-surface: #ffffff;
    --shell-border: #d8dee6;
    --shell-border-strong: #c5ced9;
    --shell-text: #17212b;
    --shell-muted: #5e6b78;
    --shell-primary: #1769aa;
    --shell-primary-hover: #10588f;
    --shell-sidebar: #202a35;
    --shell-sidebar-muted: #aeb9c4;
    --shell-radius: 8px;
    --shell-header-height: 72px;
}

body {
    background: var(--shell-bg);
    color: var(--shell-text);
    letter-spacing: 0;
}

.main-panel .container {
    display: grid;
    grid-template-columns: 224px minmax(0, 1fr);
    grid-template-rows: var(--shell-header-height) minmax(calc(100vh - var(--shell-header-height)), auto);
    max-width: none;
    min-height: 100vh;
    margin: 0;
    padding: 0;
}

.app-header {
    grid-column: 1 / -1;
    grid-row: 1;
    position: sticky;
    top: 0;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
    height: var(--shell-header-height);
    margin: 0;
    padding: 0 24px;
    border: 0;
    border-bottom: 1px solid var(--shell-border);
    border-radius: 0;
    background: var(--shell-surface);
    box-shadow: none;
    backdrop-filter: none;
}

.brand-lockup,
.brand-lockup > div {
    display: flex;
    align-items: center;
    min-width: 0;
}

.brand-lockup {
    gap: 12px;
}

.brand-lockup > div {
    align-items: flex-start;
    flex-direction: column;
}

.brand-mark {
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border-radius: 7px;
    background: var(--shell-primary);
    color: #fff;
}

.app-header h1 {
    margin: 0;
    color: var(--shell-text);
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: 0;
}

.app-header p {
    margin: 0;
    color: var(--shell-muted);
    font-size: 0.72rem;
    line-height: 1.35;
}

.app-header .header-user-info {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.app-header #user-display {
    margin-right: 8px;
    color: var(--shell-muted);
    font-size: 0.82rem;
}

.app-header .btn {
    width: auto;
    min-height: 36px;
    padding: 7px 11px;
    border-radius: 7px;
    font-size: 0.78rem;
}

.main-panel .tab-nav {
    grid-column: 1;
    grid-row: 2;
    position: sticky;
    top: var(--shell-header-height);
    align-self: start;
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 224px;
    height: calc(100vh - var(--shell-header-height));
    margin: 0;
    padding: 16px 12px;
    overflow-y: auto;
    border: 0;
    border-radius: 0;
    background: var(--shell-sidebar);
    box-shadow: none;
    backdrop-filter: none;
}

.main-panel .tab-btn {
    flex: 0 0 auto;
    justify-content: flex-start;
    width: 100%;
    min-height: 40px;
    padding: 9px 11px;
    border-radius: 6px;
    color: var(--shell-sidebar-muted);
    font-size: 0.82rem;
    font-weight: 650;
    text-align: left;
}

.main-panel .tab-btn:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.main-panel .tab-btn.active {
    background: #fff;
    color: #17212b;
    box-shadow: none;
}

.main-panel .tab-btn i {
    width: 18px;
    color: currentColor;
    text-align: center;
}

.main-panel .tab-content {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    padding: 28px clamp(20px, 3vw, 44px) 48px;
}

.main-panel .tab-content > .section,
.main-panel .tab-content .section {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.page-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
}

.page-heading h2 {
    margin: 0;
    color: var(--shell-text);
    font-size: 1.65rem;
    line-height: 1.2;
    letter-spacing: 0;
}

.page-heading > div > p:last-child,
.section-heading-row p {
    margin: 5px 0 0;
    color: var(--shell-muted);
    font-size: 0.84rem;
}

.page-eyebrow {
    margin: 0 0 4px;
    color: var(--shell-primary);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.domain-rollout-announcement {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 14px;
    padding: 11px 13px;
    border: 1px solid #c7dce9;
    border-left: 3px solid var(--shell-primary);
    border-radius: var(--shell-radius);
    background: #f5f9fc;
}

.domain-rollout-intro {
    min-width: 0;
}

.domain-rollout-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border-radius: 5px;
    background: #e4f0f8;
    color: var(--shell-primary);
    font-size: 0.72rem;
}

.domain-rollout-intro h3 {
    margin: 0;
    color: var(--shell-text);
    font-size: 0.92rem;
    letter-spacing: 0;
}

.domain-rollout-intro p {
    margin: 3px 0 0;
    color: var(--shell-muted);
    font-size: 0.72rem;
    line-height: 1.45;
}

.domain-rollout-intro code {
    font-size: inherit;
}

.tool-search {
    position: relative;
    display: flex;
    align-items: center;
    width: min(360px, 42vw);
}

.tool-search > i {
    position: absolute;
    left: 12px;
    z-index: 1;
    color: var(--shell-muted);
    font-size: 0.78rem;
}

.tool-search input {
    width: 100%;
    min-height: 40px;
    padding: 8px 12px 8px 34px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 7px;
    background: var(--shell-surface);
    color: var(--shell-text);
    font: inherit;
    font-size: 0.84rem;
}

.resource-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(120px, 1fr));
    margin-bottom: 30px;
    overflow: hidden;
    border: 1px solid var(--shell-border);
    border-radius: var(--shell-radius);
    background: var(--shell-surface);
}

.resource-stat {
    display: flex;
    align-items: baseline;
    gap: 9px;
    min-height: 70px;
    padding: 15px 18px;
    border: 0;
    border-right: 1px solid var(--shell-border);
    background: transparent;
    color: var(--shell-text);
    cursor: pointer;
    text-align: left;
}

.resource-stat:last-child {
    border-right: 0;
}

.resource-stat:hover {
    background: #f8fafb;
}

.resource-stat > span {
    font-size: 1.45rem;
    font-weight: 800;
}

.resource-stat small {
    color: var(--shell-muted);
    font-size: 0.76rem;
}

.tool-directory {
    margin-bottom: 30px;
}

.section-heading-row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 12px;
}

.section-heading-row h3 {
    margin: 0;
    color: var(--shell-text);
    font-size: 1rem;
}

.tool-search-empty {
    color: #a33a32;
}

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

.tool-link {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    min-height: 76px;
    padding: 13px;
    border: 1px solid var(--shell-border);
    border-radius: var(--shell-radius);
    background: var(--shell-surface);
    color: var(--shell-text);
    cursor: pointer;
    text-align: left;
}

.tool-link:hover {
    border-color: #9db7cc;
    background: #f8fbfd;
}

.tool-link > i {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 7px;
    background: #e9f2f8;
    color: var(--shell-primary);
}

.tool-link span,
.tool-link strong,
.tool-link small {
    display: block;
    min-width: 0;
}

.tool-link strong {
    margin-bottom: 3px;
    font-size: 0.84rem;
}

.tool-link small {
    color: var(--shell-muted);
    font-size: 0.72rem;
    line-height: 1.35;
}

.tool-filtered-out {
    display: none;
}

.workflow-hub {
    margin: 0;
}

.workflow-hub-card {
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--shell-border);
    border-radius: var(--shell-radius);
    background: var(--shell-surface);
    box-shadow: none;
}

.workflow-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 50px;
    padding: 12px 15px;
    cursor: pointer;
    list-style: none;
}

.workflow-summary::-webkit-details-marker {
    display: none;
}

.workflow-summary span {
    font-size: 0.84rem;
    font-weight: 750;
}

.workflow-summary span i {
    margin-right: 7px;
    color: var(--shell-primary);
}

.workflow-summary small {
    color: var(--shell-muted);
    font-size: 0.72rem;
}

.workflow-content {
    padding: 0 15px 15px;
    border-top: 1px solid var(--shell-border);
}

.workflow-intro {
    margin: 12px 0;
    color: var(--shell-muted);
    font-size: 0.78rem;
}

.workflow-status-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-bottom: 12px;
}

.workflow-status-item {
    min-width: 0;
    padding: 7px 8px;
    border-radius: 6px;
    font-size: 0.72rem;
}

.workflow-recommendation {
    margin-bottom: 12px;
    padding: 9px 10px;
    border-left-width: 3px;
    border-radius: 6px;
    font-size: 0.76rem;
}

.workflow-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.workflow-action-btn {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    width: auto;
    min-height: 34px;
    padding: 6px 9px;
    border-radius: 6px;
    font-size: 0.72rem;
}

.workflow-dismiss-btn {
    min-height: 30px;
    margin-top: 11px;
    padding: 5px 8px;
    border: 0;
    background: transparent;
    color: var(--shell-muted);
    font-size: 0.7rem;
    text-decoration: underline;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

[hidden] {
    display: none !important;
}

details:not([open]) > :not(summary) {
    display: none !important;
}

.btn-compact,
button.btn-compact,
a.btn-compact {
    width: auto;
    min-height: 36px;
    padding: 7px 10px;
    border-radius: 6px;
    font-size: 0.76rem;
    white-space: nowrap;
}

.resource-panel {
    margin-bottom: 16px;
    overflow: hidden;
    border: 1px solid var(--shell-border);
    border-radius: var(--shell-radius);
    background: var(--shell-surface);
}

.resource-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 72px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--shell-border);
    background: #f8fafb;
}

.resource-panel-heading h3,
.resource-panel-heading p {
    margin: 0;
}

.resource-panel-heading h3 {
    color: var(--shell-text);
    font-size: 0.96rem;
}

.resource-panel-heading p {
    margin-top: 3px;
    color: var(--shell-muted);
    font-size: 0.75rem;
}

.domain-allowance {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.domain-allowance:empty {
    display: none;
}

.domain-ssl-summary {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-top: 6px !important;
    padding: 3px 7px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 0.66rem !important;
    font-weight: 750;
}

.domain-ssl-summary.is-checking {
    border-color: #c6d9e5;
    background: #edf5f9;
    color: #315f7c;
}

.domain-ssl-summary.has-issues {
    border-color: #e6c1c4;
    background: #fff0f1;
    color: #963b43;
}

.domain-ssl-summary.is-secure {
    border-color: #bddbc9;
    background: #edf7f1;
    color: #286443;
}

.domain-health-summary {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-top: 6px !important;
    margin-left: 6px !important;
    padding: 3px 7px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 0.66rem !important;
    font-weight: 750;
}

.domain-health-summary.is-checking {
    border-color: #c6d9e5;
    background: #edf5f9;
    color: #315f7c;
}

.domain-health-summary.has-issues {
    border-color: #e6c1c4;
    background: #fff0f1;
    color: #963b43;
}

.domain-health-summary.is-healthy {
    border-color: #bddbc9;
    background: #edf7f1;
    color: #286443;
}

.domain-list-toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
}

.domain-search {
    position: relative;
    display: flex;
    align-items: center;
}

.domain-search > i {
    position: absolute;
    left: 10px;
    color: var(--shell-muted);
    font-size: 0.72rem;
    pointer-events: none;
}

.domain-search input,
.domain-list-toolbar select {
    min-height: 36px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: var(--shell-surface);
    color: var(--shell-text);
    font: inherit;
    font-size: 0.76rem;
}

.domain-search input {
    width: 190px;
    padding: 7px 10px 7px 30px;
}

.domain-list-toolbar select {
    padding: 7px 28px 7px 9px;
}

#domain-results-count {
    color: var(--shell-muted);
    white-space: nowrap;
}

#domain-results-count:empty {
    display: none;
}

.billing-packs {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.billing-pack {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid var(--shell-border);
    border-radius: 8px;
    cursor: pointer;
}

.billing-pack strong {
    margin-left: auto;
}

.site-workspace-shell {
    min-height: 360px;
}

.site-workspace-bar {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 7px;
    overflow-x: auto;
    border-bottom: 1px solid var(--shell-border);
    background: #f8fafb;
}

.site-workspace-tab {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 34px;
    padding: 6px 10px;
    border: 1px solid transparent;
    border-radius: 5px;
    background: transparent;
    color: var(--shell-muted);
    font: inherit;
    font-size: 0.72rem;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
}

.site-workspace-tab.active {
    border-color: var(--shell-border);
    background: #fff;
    color: var(--page-accent);
    box-shadow: 0 1px 2px rgba(24, 48, 64, 0.06);
}

.site-workspace-content {
    padding: 16px;
}

.site-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: 16px;
}

.site-status-panel {
    min-width: 0;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #fff;
}

.site-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 48px;
    padding: 10px 12px;
    border-bottom: 1px solid var(--shell-border);
    background: #fbfcfd;
}

.site-section-heading h3,
.site-tool-surface h3,
.site-unavailable-state h3 {
    margin: 0;
    color: var(--shell-text);
    font-size: 0.86rem;
}

.site-status-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.site-status-facts > div {
    min-width: 0;
    padding: 11px 12px;
    border-right: 1px solid var(--shell-border);
    border-bottom: 1px solid var(--shell-border);
}

.site-status-facts > div:nth-child(2n) {
    border-right: 0;
}

.site-status-facts > div:nth-last-child(-n + 2) {
    border-bottom: 0;
}

.site-status-facts span,
.site-status-facts strong {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}

.site-status-facts span {
    color: var(--shell-muted);
    font-size: 0.65rem;
}

.site-status-facts strong {
    margin-top: 3px;
    color: var(--shell-text);
    font-size: 0.75rem;
}

.site-health-list {
    display: grid;
}

.site-health-line {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 10px;
    padding: 8px 12px;
    border-bottom: 1px solid var(--shell-border);
}

.site-health-line:last-child {
    border-bottom: 0;
}

.site-health-line span,
.site-health-line strong {
    font-size: 0.68rem;
}

.site-health-line span i {
    width: 17px;
    color: var(--page-accent);
}

.site-health-line strong {
    color: var(--shell-muted);
    font-weight: 650;
    overflow-wrap: anywhere;
}

.site-health-line strong.is-warning {
    color: #8b5d09;
}

.site-tool-surface {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    min-height: 112px;
    padding: 20px;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #fff;
}

.site-tool-icon {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 6px;
    background: var(--page-tint);
    color: var(--page-accent);
    font-size: 1rem;
}

.site-tool-surface p,
.site-unavailable-state p {
    margin: 4px 0 0;
    color: var(--shell-muted);
    font-size: 0.72rem;
}

.site-tool-form {
    grid-template-columns: 44px minmax(0, 1fr) minmax(140px, 200px) auto;
}

.site-tool-form select {
    min-height: 36px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: #fff;
    color: var(--shell-text);
    font: inherit;
    font-size: 0.74rem;
}

.site-unavailable-state {
    display: grid;
    min-height: 220px;
    place-content: center;
    justify-items: center;
    padding: 24px;
    color: var(--shell-muted);
    text-align: center;
}

.site-unavailable-state > i {
    margin-bottom: 12px;
    color: var(--shell-border-strong);
    font-size: 1.6rem;
}

.site-advanced-list {
    display: grid;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #fff;
}

.site-advanced-row {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    min-height: 78px;
    padding: 12px 14px;
    border-bottom: 1px solid var(--shell-border);
}

.site-advanced-row:last-child {
    border-bottom: 0;
}

.site-advanced-row h3 {
    margin: 0;
    color: var(--shell-text);
    font-size: 0.8rem;
}

.site-advanced-row p {
    margin: 3px 0 0;
    color: var(--shell-muted);
    font-size: 0.68rem;
}

@media (max-width: 900px) {
    .site-overview-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 600px) {
    .site-workspace-content {
        padding: 10px;
    }

    .site-tool-surface,
    .site-tool-form {
        grid-template-columns: 38px minmax(0, 1fr);
        min-height: 0;
        padding: 14px;
    }

    .site-tool-icon {
        width: 38px;
        height: 38px;
    }

    .site-tool-surface > .btn,
    .site-tool-form > select,
    .site-tool-form > .btn {
        grid-column: 1 / -1;
        width: 100%;
    }

    .site-advanced-row {
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .site-advanced-row > .btn,
    .site-advanced-row > .status-badge {
        grid-column: 1 / -1;
        width: 100%;
    }

    .site-health-line {
        grid-template-columns: minmax(0, 1fr);
        gap: 3px;
    }
}

.billing-operations-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(320px, 0.9fr);
    min-width: 0;
}

.billing-operations-column {
    min-width: 0;
}

.billing-provider-activity {
    border-left: 1px solid var(--shell-border);
}

.billing-operations-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    min-height: 44px;
    padding: 10px 16px;
    border-bottom: 1px solid var(--shell-border);
    background: #fbfcfd;
}

.billing-operations-heading h4 {
    margin: 0;
    color: var(--shell-text);
    font-size: 0.82rem;
}

.billing-operations-heading span {
    color: var(--shell-muted);
    font-size: 0.68rem;
    text-align: right;
}

.billing-delivery-list {
    display: grid;
    min-width: 0;
}

.billing-delivery-row {
    min-width: 0;
    padding: 12px 14px;
    border-bottom: 1px solid var(--shell-border);
}

.billing-delivery-row:last-child {
    border-bottom: 0;
}

.billing-delivery-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.billing-delivery-heading strong {
    color: var(--shell-text);
    font-size: 0.78rem;
}

.billing-delivery-row > p {
    margin: 4px 0 7px;
    color: var(--shell-muted);
    font-size: 0.7rem;
}

.billing-delivery-row .resource-meta {
    gap: 5px 10px;
}

.billing-delivery-row .billing-delivery-error {
    margin-top: 8px;
    color: #963b43;
}

@media (max-width: 1120px) {
    .billing-operations-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .billing-provider-activity {
        border-top: 1px solid var(--shell-border);
        border-left: 0;
    }
}

.resource-panel-links,
.inline-actions,
.task-form-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.resource-panel .domains-grid,
.resource-panel .subdomains-grid,
.resource-panel .websites-grid,
.resource-panel .users-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    margin: 0;
}

.resource-empty {
    margin: 0;
    padding: 34px 18px;
    color: var(--shell-muted);
    font-size: 0.8rem;
    text-align: center;
}

.resource-panel .domain-card,
.resource-panel .subdomain-card,
.resource-panel .website-card,
.resource-panel .user-card {
    min-width: 0;
    margin: 0;
    padding: 12px 16px;
    border: 0;
    border-bottom: 1px solid var(--shell-border);
    border-radius: 0;
    background: var(--shell-surface);
    box-shadow: none;
    transition: background-color 120ms ease;
}

.resource-panel .domain-card:last-child,
.resource-panel .subdomain-card:last-child,
.resource-panel .website-card:last-child,
.resource-panel .user-card:last-child {
    border-bottom: 0;
}

.resource-panel .domain-card:hover,
.resource-panel .subdomain-card:hover,
.resource-panel .website-card:hover,
.resource-panel .user-card:hover {
    border-color: var(--shell-border);
    background: #fbfcfd;
    box-shadow: none;
    transform: none;
}

.resource-panel .domain-card h4,
.resource-panel .subdomain-card h4,
.resource-panel .website-card h4,
.resource-panel .user-card h4,
.resource-panel .user-card-info h4 {
    color: var(--shell-text);
    font-size: 0.9rem;
}

.resource-panel .domain-card p,
.resource-panel .subdomain-card p,
.resource-panel .website-card p,
.resource-panel .user-card p,
.resource-panel .user-card-info p,
.resource-panel .user-card-info small {
    color: var(--shell-muted);
    font-size: 0.76rem;
}

.resource-panel .card-actions {
    gap: 6px;
}

.resource-panel .card-actions .btn {
    width: auto;
    min-height: 34px;
    padding: 6px 9px;
    border-radius: 6px;
    font-size: 0.72rem;
}

.resource-panel .resource-row {
    position: relative;
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto auto;
    align-items: center;
    gap: 14px;
}

.resource-row-main {
    min-width: 0;
}

.resource-identity {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.resource-identity h4 {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
}

.resource-identity h4 i {
    width: 17px;
    color: var(--shell-primary);
    text-align: center;
}

.resource-identity .status-badge {
    margin: 0;
    padding: 3px 7px;
    border-radius: 999px;
    font-size: 0.62rem;
    line-height: 1.2;
}

.domain-ssl-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 7px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 750;
    line-height: 1.2;
    white-space: nowrap;
}

.domain-ssl-badge.is-active {
    border-color: #b9d9c6;
    background: #eaf6ef;
    color: #256342;
}

.domain-ssl-badge.is-missing {
    border-color: #e4bfc2;
    background: #fff0f1;
    color: #963b43;
}

.domain-ssl-badge.is-warning {
    border-color: #ead19a;
    background: #fff8e7;
    color: #845d0d;
}

.domain-ssl-badge.is-checking,
.domain-ssl-badge.is-muted {
    border-color: #ccd7de;
    background: #f2f5f7;
    color: #5f7079;
}

.domain-health-details {
    margin-top: 10px;
    border-top: 1px solid var(--shell-border);
}

.domain-health-details > summary {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-height: 38px;
    color: var(--shell-text);
    cursor: pointer;
    list-style: none;
}

.domain-health-details > summary::-webkit-details-marker {
    display: none;
}

.domain-health-details > summary > span:first-child {
    font-size: 0.74rem;
    font-weight: 750;
}

.domain-health-details > summary > span:first-child i {
    width: 17px;
    color: var(--page-accent);
}

.domain-health-details > summary > small {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-muted);
    font-size: 0.66rem;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.domain-health-state {
    padding: 3px 7px;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 750;
    white-space: nowrap;
}

.domain-health-state.is-active {
    background: #eaf6ef;
    color: #256342;
}

.domain-health-state.is-warning {
    background: #fff3df;
    color: #8b5d09;
}

.domain-health-state.is-checking,
.domain-health-state.is-muted {
    background: #f2f5f7;
    color: #5f7079;
}

.domain-health-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 7px;
    padding: 2px 0 10px;
}

.domain-health-check {
    min-width: 0;
    padding: 8px;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #fbfcfd;
}

.domain-health-check > span {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--shell-text);
    font-size: 0.68rem;
    font-weight: 750;
}

.domain-health-check > small {
    display: block;
    margin-top: 4px;
    color: var(--shell-muted);
    font-size: 0.64rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.domain-health-check.is-healthy > span i {
    color: #2e7950;
}

.domain-health-check.is-attention > span i {
    color: #a2670c;
}

.domain-health-check.is-checking > span i,
.domain-health-check.is-managed > span i {
    color: #356d8b;
}

.domain-health-check.is-not_applicable > span i,
.domain-health-check.is-unavailable > span i {
    color: var(--shell-muted);
}

.domain-health-loading {
    grid-column: 1 / -1;
    margin: 0;
    padding: 10px;
    color: var(--shell-muted);
    font-size: 0.7rem;
}

.domain-health-actions {
    display: flex;
    justify-content: flex-end;
    padding-bottom: 10px;
}

@media (max-width: 760px) {
    .domain-health-summary {
        margin-left: 0 !important;
    }

    .domain-health-details > summary {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .domain-health-details > summary > small {
        grid-column: 1 / -1;
        text-align: left;
    }

    .domain-health-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.resource-row-main > p {
    margin: 4px 0 0 !important;
}

.resource-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px 14px;
    margin-top: 6px;
    color: var(--shell-muted);
    font-size: 0.7rem;
}

.resource-meta > span {
    position: relative;
}

.resource-meta > span + span::before {
    position: absolute;
    left: -8px;
    color: var(--shell-border-strong);
    content: "·";
}

.domain-connection {
    display: grid;
    gap: 9px;
    margin-top: 12px;
    padding: 11px;
    border: 1px solid var(--shell-border);
    border-left: 3px solid #b27a19;
    border-radius: 6px;
    background: #fffaf0;
}

.domain-connection.is-ready {
    border-left-color: #287d4f;
    background: #f2fbf6;
}

.domain-connection.is-error {
    border-left-color: #a33a32;
    background: #fff6f5;
}

.domain-connection-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.domain-connection-heading > span {
    color: var(--shell-text);
    font-size: 0.75rem;
    font-weight: 800;
}

.domain-connection-heading > span i {
    margin-right: 5px;
}

.domain-connection-heading small,
.domain-connection-automatic small,
.domain-connection-record small {
    color: var(--shell-muted);
    font-size: 0.65rem;
}

.domain-connection-automatic {
    display: flex;
    align-items: center;
    gap: 10px;
}

.domain-connection-automatic .btn {
    min-height: 34px;
}

.domain-connection-record {
    display: grid;
    grid-template-columns: auto minmax(150px, 1fr) minmax(180px, 1fr);
    align-items: center;
    gap: 8px;
}

.domain-connection-records {
    display: grid;
    gap: 7px;
}

.domain-connection-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.domain-connection-record > span:not(.domain-record-type) {
    display: grid;
    min-width: 0;
    gap: 2px;
}

.domain-connection-record strong {
    min-width: 0;
    overflow-wrap: anywhere;
    color: var(--shell-text);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.68rem;
    letter-spacing: 0;
}

.domain-record-type {
    padding: 4px 6px;
    border: 1px solid #d5b778;
    border-radius: 4px;
    background: #fff;
    color: #725111;
    font-size: 0.62rem;
    font-weight: 800;
}

.domain-connection-actions .btn {
    min-height: 32px;
    padding: 5px 8px;
}

.domain-connection-error {
    margin: 0 !important;
    color: #8b3029 !important;
    font-size: 0.68rem !important;
}

.resource-row-actions {
    justify-content: flex-end;
    flex-wrap: nowrap;
}

.resource-row-settings {
    position: relative;
}

.resource-row-settings > summary,
.row-action-menu > summary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 34px;
    padding: 6px 9px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: #fff;
    color: var(--shell-text);
    cursor: pointer;
    font-size: 0.72rem;
    font-weight: 700;
    list-style: none;
}

.resource-row-settings > summary::-webkit-details-marker,
.row-action-menu > summary::-webkit-details-marker {
    display: none;
}

.resource-settings-body {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, minmax(230px, 1fr)) auto;
    align-items: end;
    gap: 12px;
    margin-top: 13px;
    padding-top: 13px;
    border-top: 1px solid var(--shell-border);
}

.resource-row-settings[open] {
    grid-column: 1 / -1;
}

.resource-row:has(.resource-row-settings[open]) .resource-row-settings {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
}

.resource-setting-control {
    display: grid;
    grid-template-columns: minmax(150px, 1fr) auto;
    gap: 6px;
}

.resource-setting-control label {
    grid-column: 1 / -1;
    color: var(--shell-muted);
    font-size: 0.68rem;
    font-weight: 700;
}

.resource-setting-control select {
    min-width: 0;
    min-height: 36px;
    padding: 6px 26px 6px 8px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: #fff;
    color: var(--shell-text);
    font-size: 0.74rem;
}

.resource-setting-control .btn,
.resource-delete-action {
    min-height: 36px;
    padding: 7px 9px;
    border-radius: 6px;
    font-size: 0.72rem;
}

.row-action-menu {
    position: relative;
}

.resource-panel:has(.row-action-menu[open]) {
    position: relative;
    z-index: 20;
    overflow: visible;
}

.resource-row:has(.row-action-menu[open]) {
    z-index: 21;
}

.row-action-menu > summary {
    width: 34px;
    padding: 0;
}

.row-action-menu-content {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    z-index: 18;
    display: grid;
    width: 205px;
    padding: 5px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(23, 33, 43, 0.13);
}

.row-action-menu-content button {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 35px;
    padding: 7px 9px;
    border: 0;
    border-radius: 5px;
    background: transparent;
    color: var(--shell-text);
    cursor: pointer;
    font: inherit;
    font-size: 0.73rem;
    text-align: left;
}

.row-action-menu-content button:hover {
    background: #eef3f6;
}

.row-action-menu-content button.danger {
    color: #a3312b;
}

.row-action-menu-content button i {
    width: 16px;
    color: currentColor;
    text-align: center;
}

.current-user-label {
    color: var(--shell-muted);
    font-size: 0.7rem;
    white-space: nowrap;
}

.admin-user-domain-panel {
    grid-column: 1 / -1;
    min-width: 0;
    margin-top: 2px;
    padding-top: 12px;
    border-top: 1px solid var(--shell-border);
}

.admin-user-domain-panel[hidden] {
    display: none;
}

.admin-domain-heading,
.admin-domain-identity,
.admin-domain-meta,
.admin-domain-actions {
    display: flex;
    align-items: center;
}

.admin-domain-heading {
    justify-content: space-between;
    gap: 8px;
    padding: 0 0 6px;
}

.admin-domain-title {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 5px 10px;
}

.admin-users-toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.admin-global-domain-search {
    display: flex;
    align-items: center;
    width: min(330px, 38vw);
    min-height: 34px;
    padding: 0 9px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 5px;
    background: #fff;
    color: var(--shell-muted);
}

.admin-global-domain-search:focus-within {
    border-color: var(--shell-primary);
    box-shadow: 0 0 0 2px rgba(19, 103, 143, 0.1);
}

.admin-global-domain-search i {
    font-size: 0.68rem;
}

.admin-global-domain-search input {
    width: 100%;
    min-width: 0;
    min-height: 32px;
    padding: 3px 5px;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--shell-text);
    font: inherit;
    font-size: 0.7rem;
}

.admin-global-domain-results {
    padding: 0 16px 14px;
}

.admin-global-domain-results[hidden] {
    display: none;
}

.admin-global-domain-results-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 0 6px;
}

.admin-global-domain-results-heading strong {
    color: var(--shell-text);
    font-size: 0.72rem;
}

.admin-global-domain-results-heading span {
    color: var(--shell-muted);
    font-size: 0.61rem;
}

.admin-domain-owner {
    color: var(--shell-text);
    font-weight: 700;
}

.admin-domain-heading h5 {
    margin: 0;
    color: var(--shell-text);
    font-size: 0.7rem;
}

.admin-domain-heading h5 i {
    margin-right: 5px;
    color: var(--shell-primary);
}

.admin-domain-heading span,
.admin-domain-loading,
.admin-domain-empty {
    color: var(--shell-muted);
    font-size: 0.62rem;
}

.admin-domain-list {
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #fff;
}

.admin-domain-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 7px 9px;
    border-bottom: 1px solid var(--shell-border);
}

.admin-domain-row:last-child {
    border-bottom: 0;
}

.admin-domain-main {
    min-width: 0;
}

.admin-domain-identity {
    flex-wrap: wrap;
    gap: 5px;
}

.admin-domain-identity strong {
    min-width: 0;
    overflow-wrap: anywhere;
    color: var(--shell-text);
    font-size: 0.71rem;
}

.admin-domain-state {
    padding: 2px 5px;
    border-radius: 999px;
    font-size: 0.55rem;
    font-weight: 800;
    text-transform: capitalize;
}

.admin-domain-state.is-active {
    background: #d9efe1;
    color: #215f3b;
}

.admin-domain-state.is-pending {
    background: #fff3cd;
    color: #725111;
}

.admin-domain-state.is-suspended {
    background: #f8d7da;
    color: #721c24;
}

.admin-domain-state.is-quarantine {
    background: #262f37;
    color: #fff;
}

.admin-domain-meta {
    flex-wrap: wrap;
    gap: 3px 10px;
    margin-top: 3px;
    color: var(--shell-muted);
    font-size: 0.59rem;
}

.admin-domain-main > p {
    margin: 3px 0 0 !important;
    color: #7a3030 !important;
    font-size: 0.61rem !important;
}

.admin-domain-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 4px;
}

.admin-domain-actions .btn {
    min-height: 28px;
    padding: 4px 6px;
    font-size: 0.61rem;
}

.admin-domain-delete {
    color: #a3312b;
}

.admin-domain-account-inactive {
    color: var(--shell-muted);
    font-size: 0.65rem;
    font-weight: 700;
}

.admin-domain-loading,
.admin-domain-empty,
.admin-domain-error {
    margin: 0;
    padding: 12px 10px;
    text-align: center;
}

.admin-domain-error {
    border: 1px solid #edc7c7;
    border-radius: 6px;
    background: #fff5f5;
    color: #8b3029;
    font-size: 0.7rem;
}

.task-panel {
    margin-top: 12px;
    overflow: hidden;
    border: 1px solid var(--shell-border);
    border-radius: var(--shell-radius);
    background: var(--shell-surface);
    scroll-margin-top: calc(var(--shell-header-height) + 16px);
}

.task-panel > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 52px;
    padding: 12px 15px;
    color: var(--shell-text);
    cursor: pointer;
    list-style: none;
}

.task-panel > summary::-webkit-details-marker,
.advanced-options > summary::-webkit-details-marker,
.toolbar-more > summary::-webkit-details-marker {
    display: none;
}

.task-panel > summary::after {
    color: var(--shell-muted);
    content: "+";
    font-size: 1.1rem;
    font-weight: 500;
}

.task-panel[open] > summary::after {
    content: "-";
}

.task-panel > summary span {
    font-size: 0.84rem;
    font-weight: 750;
}

.task-panel > summary span i {
    width: 19px;
    margin-right: 6px;
    color: var(--shell-primary);
    text-align: center;
}

.task-panel > summary small {
    flex: 1;
    color: var(--shell-muted);
    font-size: 0.72rem;
    text-align: right;
}

.task-panel-body {
    padding: 18px;
    border-top: 1px solid var(--shell-border);
}

.task-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    max-width: 880px;
}

body.domain-setup-modal-open {
    overflow: hidden;
}

.domain-setup-modal {
    z-index: 1600;
    align-items: center;
    justify-content: center;
    padding: 16px;
    overflow-y: auto;
    background: rgba(20, 28, 36, 0.62);
    backdrop-filter: blur(3px);
}

.domain-setup-modal-content {
    display: flex;
    flex-direction: column;
    width: min(760px, 100%);
    max-width: 760px;
    max-height: calc(100vh - 32px);
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--shell-border-strong);
    border-radius: 8px;
    background: var(--shell-surface);
    box-shadow: 0 18px 52px rgba(13, 24, 33, 0.26);
}

.domain-setup-modal.is-static-feedback .domain-setup-modal-content {
    animation: domain-modal-static-feedback 180ms ease-out;
}

@keyframes domain-modal-static-feedback {
    0%, 100% { transform: translateX(0); }
    35% { transform: translateX(-4px); }
    70% { transform: translateX(4px); }
}

.domain-setup-modal-header {
    flex: 0 0 auto;
    padding: 12px 16px;
    background: #263640;
    color: #fff;
}

.domain-setup-modal-header > div {
    min-width: 0;
}

.domain-setup-modal-header h3,
.domain-setup-modal-header p {
    margin: 0;
    letter-spacing: 0;
}

.domain-setup-modal-header h3 {
    font-size: 0.92rem;
}

.domain-setup-modal-header h3 i {
    margin-right: 6px;
}

.domain-setup-modal-header p {
    margin-top: 2px;
    color: #cad5dc;
    font-size: 0.65rem;
}

.domain-setup-step-label {
    flex: 0 0 auto;
    padding: 4px 7px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 4px;
    font-size: 0.62rem;
    font-weight: 800;
}

.domain-setup-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    padding: 16px;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.domain-setup-form {
    display: block;
    max-width: none;
}

.domain-setup-modal .domain-setup-progress {
    max-width: none;
    margin-bottom: 16px;
}

.domain-setup-modal .domain-setup-stage {
    min-height: 250px;
    align-content: start;
}

.domain-setup-actions {
    align-self: end;
    justify-content: flex-end;
    margin-top: auto;
}

.domain-setup-success {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px;
    border: 1px solid #b9d8c5;
    border-radius: 7px;
    background: #edf8f1;
}

.domain-setup-success > i {
    flex: 0 0 auto;
    color: #287d4f;
    font-size: 1.65rem;
}

.domain-setup-success div {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.domain-setup-success small {
    color: #47715a;
    font-size: 0.64rem;
    font-weight: 700;
}

.domain-setup-success strong {
    min-width: 0;
    overflow-wrap: anywhere;
    color: #174e31;
    font-size: 0.84rem;
}

.domain-setup-progress {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    max-width: 880px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.domain-setup-progress li {
    position: relative;
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    color: var(--shell-muted);
}

.domain-setup-progress li:not(:last-child)::after {
    position: absolute;
    top: 15px;
    right: 12px;
    left: 44px;
    height: 1px;
    background: var(--shell-border-strong);
    content: "";
}

.domain-setup-progress li > span {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 50%;
    background: var(--shell-surface);
    font-size: 0.72rem;
    font-weight: 800;
}

.domain-setup-progress li > div {
    position: relative;
    z-index: 1;
    min-width: 0;
    padding-right: 10px;
    background: var(--shell-surface);
}

.domain-setup-progress strong,
.domain-setup-progress small {
    display: block;
}

.domain-setup-progress strong {
    color: var(--shell-text);
    font-size: 0.74rem;
}

.domain-setup-progress small {
    margin-top: 1px;
    font-size: 0.64rem;
}

.domain-setup-progress .is-current > span {
    border-color: var(--shell-primary);
    background: var(--shell-primary);
    color: #fff;
}

.domain-setup-progress .is-complete > span {
    border-color: #287d4f;
    background: #e4f3e9;
    color: #216a43;
}

.domain-setup-stage {
    grid-column: 1 / -1;
    display: grid;
    gap: 16px;
}

.domain-setup-stage[hidden] {
    display: none;
}

.domain-setup-stage-heading {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.domain-setup-stage-heading > span {
    flex: 0 0 auto;
    padding: 4px 7px;
    border-radius: 4px;
    background: #e7f1f8;
    color: var(--shell-primary);
    font-size: 0.64rem;
    font-weight: 800;
    text-transform: uppercase;
}

.domain-setup-stage-heading h4,
.domain-setup-stage-heading p {
    margin: 0;
}

.domain-setup-stage-heading h4 {
    color: var(--shell-text);
    font-size: 0.9rem;
}

.domain-setup-stage-heading p {
    margin-top: 3px;
    color: var(--shell-muted);
    font-size: 0.74rem;
}

.domain-setup-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.domain-setup-record {
    display: grid;
    grid-template-columns: 0.6fr 1fr 1.5fr 1fr;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #f8fafb;
}

.domain-setup-records {
    display: grid;
    gap: 8px;
}

.domain-setup-record > span {
    display: grid;
    min-width: 0;
    gap: 3px;
    padding: 10px 12px;
    border-right: 1px solid var(--shell-border);
}

.domain-setup-record > span:last-child {
    border-right: 0;
}

.domain-setup-record small {
    color: var(--shell-muted);
    font-size: 0.64rem;
    font-weight: 700;
    text-transform: uppercase;
}

.domain-setup-record strong {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--shell-text);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.72rem;
    letter-spacing: 0;
}

.domain-setup-note {
    margin: 0;
    color: var(--shell-muted);
    font-size: 0.72rem;
}

.domain-setup-note i {
    margin-right: 5px;
    color: var(--shell-primary);
}

.task-form > .advanced-options,
.task-form > .task-form-actions,
.task-form > .context-help {
    grid-column: 1 / -1;
}

.task-form .form-group,
.task-panel-body > .form-group,
.inline-control-row .form-group {
    margin: 0;
}

.task-form .form-group label,
.task-panel-body .form-group label {
    margin-bottom: 6px;
    color: var(--shell-text);
    font-size: 0.76rem;
}

.task-form .form-group input,
.task-form .form-group select,
.task-panel-body .form-group input,
.task-panel-body .form-group select {
    min-height: 40px;
    border-radius: 6px;
    font-size: 0.82rem;
}

.optional-label {
    color: var(--shell-muted);
    font-size: 0.68rem;
    font-weight: 500;
}

.advanced-options {
    padding: 0;
    border: 1px solid var(--shell-border);
    border-radius: 7px;
    background: #f8fafb;
}

.advanced-options > summary {
    padding: 10px 12px;
    color: var(--shell-muted);
    cursor: pointer;
    font-size: 0.76rem;
    font-weight: 700;
    list-style: none;
}

.advanced-options > summary::before {
    display: inline-block;
    width: 16px;
    content: "+";
}

.advanced-options[open] > summary::before {
    content: "-";
}

.advanced-options-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    padding: 12px;
    border-top: 1px solid var(--shell-border);
}

.task-form-actions {
    justify-content: flex-end;
}

.context-help {
    padding: 10px 12px;
    border-left: 3px solid #8fb1c9;
    background: #f3f7fa;
    color: var(--shell-muted);
    font-size: 0.75rem;
}

.context-help strong,
.context-help p,
.context-help small {
    display: block;
    margin: 0;
}

.context-help p {
    margin-top: 2px;
}

.context-help small {
    margin-top: 3px;
}

.inline-control-row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
}

.inline-control-row .form-group {
    flex: 1 1 280px;
}

.certificate-upload-options {
    margin-top: 16px;
}

.file-workspace .file-manager {
    padding: 0;
    border-radius: 0;
    background: var(--shell-surface);
}

.file-manager .file-toolbar.file-toolbar-compact {
    display: block;
    margin: 0;
    padding: 10px 12px;
    border-bottom: 1px solid var(--shell-border);
}

.file-primary-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
}

.file-primary-actions .compact-select {
    flex: 0 1 360px;
    width: min(360px, 100%);
    min-width: 180px;
}

.file-manager .file-toolbar.file-toolbar-compact #file-domain-filter {
    width: 100%;
    max-width: none;
    min-height: 36px;
    padding: 6px 30px 6px 9px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: #fff;
    color: var(--shell-text);
    font-size: 0.78rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.file-manager .file-toolbar.file-toolbar-compact .btn {
    width: auto;
    min-height: 36px;
    padding: 7px 9px;
    border-radius: 6px;
    font-size: 0.74rem;
    white-space: nowrap;
}

.toolbar-menu-item i {
    width: 16px;
    color: var(--shell-primary);
    text-align: center;
}

.file-context-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 50px;
    padding: 7px 12px;
    border-bottom: 1px solid var(--shell-border);
    background: #edf5fa;
    color: var(--shell-text);
    font-size: 0.76rem;
}

.file-clipboard-bar {
    background: #f7f3e8;
}

.file-context-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
}

.file-context-actions select {
    width: auto;
    min-height: 36px;
    padding: 6px 28px 6px 9px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: #fff;
    color: var(--shell-text);
    font-size: 0.74rem;
}

.file-location-bar {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 42px;
    padding: 7px 13px;
    border-bottom: 1px solid var(--shell-border);
    background: #fbfcfd;
    color: var(--shell-muted);
}

.file-location-bar > i {
    color: #d39a24;
}

.file-location-bar .file-path {
    flex: 1;
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow-wrap: anywhere;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--shell-text);
    font-size: 0.78rem;
}

.file-workspace .file-browser {
    min-height: 280px;
    max-height: none;
    overflow-x: auto;
    border: 0;
    border-radius: 0;
}

.file-workspace .file-item {
    min-width: 560px;
    padding: 7px 10px;
    border-bottom-color: var(--shell-border);
    font-size: 0.74rem;
}

.file-workspace .file-icon {
    width: 20px;
    margin-right: 8px;
}

.file-workspace .file-size {
    margin-right: 8px;
    font-size: 0.7rem;
}

.file-workspace .file-actions {
    gap: 4px;
}

.file-workspace .file-actions button {
    width: 28px;
    height: 28px;
    border-radius: 5px;
}

.file-workspace .file-actions button i {
    font-size: 0.82rem;
}

.file-workspace .file-folder-name {
    cursor: default;
    user-select: none;
}

.upload-methods {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
    gap: 16px;
    margin-top: 16px;
}

.upload-method {
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--shell-border);
    border-radius: 7px;
    background: #fbfcfd;
}

.upload-method h3 {
    margin: 0 0 10px;
    color: var(--shell-text);
    font-size: 0.82rem;
}

.upload-method .upload-area {
    min-height: 150px;
    border-radius: 7px;
}

.upload-method .upload-area p {
    font-size: 0.78rem;
}

.upload-method.url-upload-section {
    margin: 0;
}

.task-panel .upload-progress {
    margin-top: 14px;
}

.security-insights-panel {
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.account-settings-modal {
    width: min(1100px, calc(100% - 32px));
    max-width: 1100px;
    max-height: calc(100vh - 40px);
    margin: 20px auto;
    border-radius: var(--shell-radius);
}

.account-settings-modal .modal-header {
    padding: 14px 18px;
    background: var(--shell-sidebar);
    color: #fff;
}

.account-settings-modal .modal-header h3,
.account-settings-modal .modal-header .close {
    color: #fff;
}

.account-settings-body {
    max-height: calc(100vh - 104px);
    padding: 0;
    overflow-y: auto;
}

.account-settings-layout {
    display: grid;
    grid-template-columns: minmax(270px, 0.72fr) minmax(0, 1.28fr);
    min-height: 560px;
}

.account-password-section,
.account-security-workspace {
    min-width: 0;
    padding: 20px;
}

.account-password-section {
    border-right: 1px solid var(--shell-border);
    background: #f8fafb;
}

.account-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.account-section-heading h4 {
    margin: 0;
    color: var(--shell-text);
    font-size: 0.95rem;
}

.account-section-heading p {
    margin: 3px 0 0;
    color: var(--shell-muted);
    font-size: 0.76rem;
}

.account-identity-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 14px;
}

.account-settings-modal .form-group {
    margin-bottom: 12px;
}

.account-settings-modal label {
    color: #31465b;
    font-size: 0.78rem;
    font-weight: 700;
}

.account-settings-modal input,
.account-settings-modal select,
.account-settings-modal textarea,
.structured-action-form textarea {
    width: 100%;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    font: inherit;
}

.account-settings-modal input,
.account-settings-modal select {
    min-height: 38px;
}

.account-settings-modal input[readonly] {
    background: #eef2f5;
    color: var(--shell-muted);
}

.password-requirements {
    margin: -2px 0 12px;
    color: var(--shell-muted);
    font-size: 0.72rem;
    line-height: 1.45;
}

.account-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 8px 0 12px;
}

.account-security-section {
    display: block;
    padding: 14px 0;
    border-top: 1px solid var(--shell-border);
}

.account-security-section:first-child {
    padding-top: 4px;
    border-top: 0;
}

details.account-security-section > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--shell-text);
    font-size: 0.86rem;
    font-weight: 750;
    cursor: pointer;
    list-style: none;
}

details.account-security-section > summary::-webkit-details-marker {
    display: none;
}

details.account-security-section > summary::before {
    width: 14px;
    color: var(--shell-muted);
    font-family: "Font Awesome 6 Free";
    font-size: 0.7rem;
    font-weight: 900;
    content: "\f054";
}

details.account-security-section[open] > summary::before {
    content: "\f078";
}

details.account-security-section > summary span {
    margin-right: auto;
}

details.account-security-section > summary small {
    color: var(--shell-muted);
    font-size: 0.7rem;
    font-weight: 600;
}

.security-list {
    display: grid;
}

.security-list-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-height: 56px;
    padding: 9px 2px;
    border-top: 1px solid #e8edf2;
}

.security-list-row > div {
    display: grid;
    min-width: 0;
    gap: 2px;
}

.security-list-row strong,
.security-list-row small {
    overflow-wrap: anywhere;
}

.security-list-row strong {
    color: #22384d;
    font-size: 0.8rem;
}

.security-list-row small {
    color: var(--shell-muted);
    font-size: 0.7rem;
}

.icon-action {
    display: inline-grid;
    width: 34px;
    height: 34px;
    padding: 0;
    place-items: center;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #fff;
    color: #31516d;
    cursor: pointer;
}

.icon-action.danger {
    color: #a72f38;
}

.icon-action:hover {
    border-color: var(--shell-primary);
    color: var(--shell-primary);
}

.icon-action[aria-expanded="true"] {
    border-color: var(--shell-primary);
    background: #e8f2f8;
    color: var(--shell-primary);
}

.status-suspended {
    background: #f8d7da;
    color: #721c24;
}

.status-pending {
    background: #fff3cd;
    color: #7a5b00;
}

.status-completed {
    background: #d9efe1;
    color: #215f3b;
}

.status-failed {
    background: #f8d7da;
    color: #8a2730;
}

.status-running {
    background: #dbeaf5;
    color: #285f83;
}

.security-secret-block {
    display: grid;
    gap: 5px;
    padding: 10px;
    border-left: 3px solid var(--shell-primary);
    background: #eef5fa;
}

.security-secret-block span {
    color: var(--shell-muted);
    font-size: 0.7rem;
}

.security-secret-block code {
    overflow-wrap: anywhere;
    color: #173c5a;
    font-size: 0.84rem;
}

#action-modal .modal-body {
    max-height: calc(80vh - 58px);
    overflow-y: auto;
}

.totp-setup-form {
    gap: 12px;
}

.totp-qr-setup {
    display: grid;
    justify-items: center;
    gap: 10px;
}

.totp-step-heading {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    align-items: start;
    gap: 9px;
    width: 100%;
    color: var(--shell-text);
}

.totp-step-heading > span:first-child {
    display: grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border-radius: 50%;
    background: var(--shell-primary);
    color: #fff;
    font-size: 0.68rem;
    font-weight: 800;
}

.totp-step-heading strong,
.totp-step-heading small {
    display: block;
}

.totp-step-heading strong {
    font-size: 0.78rem;
}

.totp-step-heading small {
    margin-top: 2px;
    color: var(--shell-muted);
    font-size: 0.66rem;
    font-weight: 500;
    line-height: 1.4;
}

.totp-qr-frame {
    display: grid;
    width: 232px;
    max-width: 100%;
    aspect-ratio: 1;
    place-items: center;
    padding: 4px;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #fff;
}

.totp-qr-frame img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    image-rendering: pixelated;
}

.totp-manual-setup {
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #f8fafb;
}

.totp-manual-setup > summary {
    padding: 9px 10px;
    color: #31516d;
    font-size: 0.7rem;
    font-weight: 700;
    cursor: pointer;
}

.totp-manual-setup[open] > summary {
    border-bottom: 1px solid var(--shell-border);
}

.totp-manual-setup .security-secret-block,
.totp-manual-setup .form-group {
    margin: 10px;
}

.totp-setup-form #totp-confirm-code {
    min-height: 42px;
    margin-top: 8px;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 1rem;
    letter-spacing: 0.18em;
    text-align: center;
}

.security-one-time-values {
    width: 100%;
    padding: 10px;
    resize: vertical;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: #f8fafb;
    color: #173c5a;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 0.82rem;
}

.account-security-error {
    margin: 0;
    color: #a72f38;
    font-size: 0.78rem;
}

#profile-message {
    position: sticky;
    bottom: 0;
    z-index: 2;
    margin: 0;
    background: #fff;
}

.operations-heading {
    margin-bottom: 14px;
}

#priority2-runtime-status {
    display: inline-block;
    max-width: 680px;
    padding: 7px 10px;
    border-left: 3px solid #3e789f;
    background: #edf5f9;
    color: #36556c;
    font-size: 0.76rem;
    line-height: 1.45;
}

#priority2-runtime-status.runtime-connected {
    border-left-color: #39855b;
    background: #edf7f1;
    color: #286443;
}

#priority2-runtime-status.runtime-preview {
    border-left-color: #3e789f;
    background: #edf5f9;
    color: #36556c;
}

#priority2-runtime-status.runtime-unavailable {
    border-left-color: #b36b23;
    background: #fff6e9;
    color: #9b3a32;
}

.operations-switcher {
    display: flex;
    gap: 4px;
    margin-bottom: 18px;
    padding: 4px;
    overflow-x: auto;
    border: 1px solid var(--shell-border);
    border-radius: 8px;
    background: #e9edf1;
}

.operations-switch {
    flex: 1 0 max-content;
    min-height: 38px;
    padding: 7px 12px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--shell-muted);
    cursor: pointer;
    font: inherit;
    font-size: 0.76rem;
    font-weight: 750;
}

.operations-switch:hover {
    color: var(--shell-text);
}

.operations-switch.active {
    background: #fff;
    color: var(--shell-primary);
    box-shadow: 0 1px 2px rgba(23, 33, 43, 0.08);
}

.operations-switch i {
    width: 17px;
    margin-right: 5px;
}

.operations-view {
    min-width: 0;
}

.operations-columns {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
    align-items: start;
    gap: 16px;
}

.operations-controls-columns {
    grid-template-columns: minmax(420px, 1.25fr) minmax(300px, 0.75fr);
}

.operations-form-panel,
.operations-list-panel {
    min-width: 0;
}

.operations-form-panel > .task-form,
.operations-list-panel > .operations-list {
    max-width: none;
    padding: 16px;
}

.operations-form-panel > .task-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 15px;
}

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

.operations-span-full {
    grid-column: 1 / -1;
}

.operations-form-panel textarea,
.operations-form-panel input,
.operations-form-panel select,
.operations-host-bar select,
.mapping-row input,
.mapping-row select {
    width: 100%;
    min-width: 0;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: #fff;
    color: var(--shell-text);
    font: inherit;
    font-size: 0.78rem;
}

.operations-form-panel textarea {
    min-height: 82px;
    padding: 9px 10px;
    resize: vertical;
}

.operations-form-panel input,
.operations-form-panel select,
.operations-host-bar select,
.mapping-row input,
.mapping-row select {
    min-height: 38px;
    padding: 7px 9px;
}

.operations-form-panel input:disabled,
.operations-form-panel select:disabled,
.operations-form-panel textarea:disabled,
.operations-form-panel button:disabled {
    cursor: not-allowed;
    opacity: 0.55;
}

.operations-fieldset {
    min-width: 0;
    margin: 0;
    padding: 12px;
    border: 1px solid var(--shell-border);
    border-radius: 7px;
}

.operations-fieldset legend {
    padding: 0 5px;
    color: var(--shell-muted);
    font-size: 0.7rem;
    font-weight: 750;
}

.option-check-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
}

.option-check,
.control-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: var(--shell-text);
    font-size: 0.75rem;
    font-weight: 650;
}

.option-check {
    min-height: 34px;
    padding: 6px 8px;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #fbfcfd;
}

.option-check input,
.control-toggle input {
    width: 16px;
    min-height: 16px;
    margin: 0;
    accent-color: var(--shell-primary);
}

.operations-toggle-row,
.operations-toggle-stack {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 18px;
}

.operations-toggle-stack {
    align-items: flex-start;
    flex-direction: column;
}

.operations-host-bar {
    display: grid;
    grid-template-columns: auto minmax(220px, 420px) auto;
    align-items: center;
    gap: 10px;
    min-height: 58px;
    margin-bottom: 14px;
    padding: 10px 13px;
    border: 1px solid var(--shell-border);
    border-radius: 8px;
    background: #fff;
}

.operations-host-bar label {
    color: var(--shell-muted);
    font-size: 0.72rem;
    font-weight: 750;
}

.operations-host-bar .status-badge {
    justify-self: end;
    margin: 0;
}

.operations-list {
    display: grid;
    gap: 0;
}

.operation-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 13px 0;
    border-bottom: 1px solid var(--shell-border);
}

.operation-row:first-child {
    padding-top: 0;
}

.operation-row:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.operation-row-main {
    min-width: 0;
}

.operation-row h4,
.operation-row p {
    margin: 0;
}

.operation-row h4 {
    overflow-wrap: anywhere;
    color: var(--shell-text);
    font-size: 0.82rem;
}

.operation-row p,
.operation-row small,
.operation-row code {
    overflow-wrap: anywhere;
    color: var(--shell-muted);
    font-size: 0.69rem;
}

.operation-row p {
    margin-top: 4px;
}

.operation-row-actions {
    display: flex;
    align-items: center;
    gap: 6px;
}

.compact-toggle {
    position: relative;
    display: inline-flex;
    width: 34px;
    height: 20px;
}

.compact-toggle input {
    position: absolute;
    opacity: 0;
}

.compact-toggle span {
    width: 34px;
    height: 20px;
    border-radius: 10px;
    background: #b8c2cb;
    cursor: pointer;
}

.compact-toggle span::after {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #fff;
    content: "";
    transition: transform 120ms ease;
}

.compact-toggle input:checked + span {
    background: var(--shell-primary);
}

.compact-toggle input:checked + span::after {
    transform: translateX(14px);
}

.operation-inline-output,
.operations-output {
    max-width: 100%;
    max-height: 260px;
    margin: 0;
    padding: 12px;
    overflow: auto;
    border: 1px solid #253441;
    border-radius: 6px;
    background: #18232d;
    color: #d9e6ee;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 0.72rem;
    line-height: 1.55;
    white-space: pre-wrap;
}

.operation-inline-output {
    grid-column: 1 / -1;
}

.cron-run-history {
    display: grid;
    grid-column: 1 / -1;
    gap: 8px;
    min-width: 0;
}

.cron-run-history[hidden] {
    display: none;
}

.cron-run-record {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--shell-border);
    border-radius: 6px;
    background: #f8fafb;
}

.cron-run-summary {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px 10px;
    min-height: 38px;
    padding: 7px 10px;
    color: var(--shell-muted);
    cursor: pointer;
    font-size: 0.68rem;
    list-style: none;
}

.cron-run-summary::-webkit-details-marker {
    display: none;
}

.cron-run-summary .status-badge {
    margin: 0;
}

.cron-run-summary-spacer {
    margin-left: auto;
}

.cron-run-summary .fa-chevron-down {
    transition: transform 120ms ease;
}

.cron-run-record[open] .cron-run-summary .fa-chevron-down {
    transform: rotate(180deg);
}

.cron-run-record .operation-inline-output {
    max-height: 180px;
    border: 0;
    border-top: 1px solid #253441;
    border-radius: 0;
}

.mapping-rows {
    display: grid;
    gap: 7px;
    margin-bottom: 8px;
}

.mapping-row {
    display: grid;
    grid-template-columns: minmax(100px, 0.6fr) minmax(180px, 1.4fr) 34px;
    gap: 7px;
}

.support-workspace {
    overflow: hidden;
    border: 1px solid var(--shell-border);
    border-radius: var(--shell-radius);
    background: var(--shell-surface);
}

.support-admin-workspace {
    display: grid;
    grid-template-columns: minmax(260px, 0.34fr) minmax(0, 1fr);
    min-height: min(70vh, 760px);
    overflow: hidden;
    border: 1px solid var(--shell-border);
    border-radius: var(--shell-radius);
    background: var(--shell-surface);
}

.support-admin-workspace[hidden] {
    display: none;
}

.support-ticket-sidebar {
    min-width: 0;
    border-right: 1px solid var(--shell-border);
    background: #f8fafb;
}

.support-ticket-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    padding: 12px;
    border-bottom: 1px solid var(--shell-border);
}

.support-ticket-search {
    position: relative;
    display: flex;
    align-items: center;
}

.support-ticket-search i {
    position: absolute;
    left: 10px;
    color: var(--shell-muted);
    font-size: 0.72rem;
    pointer-events: none;
}

.support-ticket-search input,
.support-ticket-toolbar select {
    width: 100%;
    min-height: 36px;
    border: 1px solid var(--shell-border-strong);
    border-radius: 6px;
    background: #fff;
    color: var(--shell-text);
    font: inherit;
    font-size: 0.75rem;
}

.support-ticket-search input {
    padding: 7px 9px 7px 29px;
}

.support-ticket-toolbar select {
    width: 104px;
    padding: 7px 25px 7px 8px;
}

.support-ticket-count {
    padding: 8px 12px;
    border-bottom: 1px solid var(--shell-border);
    color: var(--shell-muted);
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
}

.support-ticket-list {
    max-height: min(62vh, 680px);
    overflow-y: auto;
}

.support-ticket-item {
    display: grid;
    width: 100%;
    gap: 5px;
    padding: 12px;
    border: 0;
    border-bottom: 1px solid var(--shell-border);
    background: transparent;
    color: var(--shell-text);
    cursor: pointer;
    font: inherit;
    text-align: left;
}

.support-ticket-item:hover,
.support-ticket-item.is-active {
    background: #eaf2f7;
}

.support-ticket-item.is-active {
    box-shadow: inset 3px 0 0 var(--shell-primary);
}

.support-ticket-item-heading,
.support-ticket-item-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.support-ticket-item-heading strong {
    min-width: 0;
    overflow: hidden;
    color: var(--shell-text);
    font-size: 0.78rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.support-ticket-identity {
    display: grid;
    min-width: 0;
    gap: 2px;
}

.support-ticket-identity small {
    overflow: hidden;
    color: var(--shell-muted);
    font-size: 0.64rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.support-ticket-item-heading span,
.support-ticket-item-meta,
.support-ticket-item p {
    color: var(--shell-muted);
    font-size: 0.66rem;
}

.support-ticket-item p {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.support-admin-thread {
    min-width: 0;
    background: #fff;
}

.support-admin-empty {
    display: grid;
    place-items: center;
    align-content: center;
    min-height: 100%;
    padding: 32px;
    color: var(--shell-muted);
    text-align: center;
}

.support-admin-empty i {
    margin-bottom: 12px;
    color: #8ca6b8;
    font-size: 1.7rem;
}

.support-admin-empty h3,
.support-admin-empty p {
    margin: 0;
}

.support-admin-empty h3 {
    color: var(--shell-text);
    font-size: 0.94rem;
}

.support-admin-empty p {
    margin-top: 4px;
    font-size: 0.75rem;
}

.support-admin-thread-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 72px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--shell-border);
    background: #f8fafb;
}

.support-admin-title-line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.support-admin-title-line h3,
.support-admin-thread-heading p {
    margin: 0;
}

.support-admin-title-line h3 {
    color: var(--shell-text);
    font-size: 0.94rem;
}

.support-admin-thread-heading p {
    margin-top: 4px;
    color: var(--shell-muted);
    font-size: 0.72rem;
}

.support-admin-message-list {
    min-height: 370px;
}

.support-admin-workspace .support-message-user {
    align-self: flex-start;
    border-color: var(--shell-border);
    border-left: 3px solid #4f6f86;
    background: #fff;
}

.support-admin-workspace .support-message-agent {
    align-self: flex-end;
    border: 1px solid #8bbdca;
    background: #eaf6f8;
}

.support-thread-heading {
    display: flex;
    align-items: center;
    min-height: 62px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--shell-border);
    background: #f8fafb;
}

.support-thread-heading > div {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.support-thread-heading h3 {
    margin: 0;
    color: var(--shell-text);
    font-size: 0.94rem;
}

.support-thread-heading .status-badge {
    margin: 0;
}

.support-message-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: 320px;
    max-height: min(54vh, 620px);
    padding: 18px;
    overflow-y: auto;
    background: #f4f7f9;
}

.support-empty {
    margin: auto;
    color: var(--shell-muted);
    font-size: 0.8rem;
}

.support-message {
    width: min(78%, 720px);
    padding: 11px 13px;
    border: 1px solid var(--shell-border);
    border-radius: 8px;
    background: #fff;
}

.support-message-user {
    align-self: flex-end;
    border-color: #8bbdca;
    background: #eaf6f8;
}

.support-message-agent {
    align-self: flex-start;
    border-left: 3px solid #4f6f86;
}

.support-message-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--shell-muted);
    font-size: 0.68rem;
}

.support-message-meta strong {
    color: var(--shell-text);
    font-size: 0.72rem;
}

.support-message p {
    margin: 7px 0 0;
    color: var(--shell-text);
    font-size: 0.82rem;
    line-height: 1.55;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.support-delivery-error,
.support-composer-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.support-delivery-error {
    margin-top: 9px;
    color: #a33a35;
    font-size: 0.7rem;
}

.support-composer {
    padding: 14px 16px;
    border-top: 1px solid var(--shell-border);
    background: #fff;
}

.support-composer textarea {
    width: 100%;
    min-height: 92px;
    resize: vertical;
    border: 1px solid var(--shell-border-strong);
    border-radius: 7px;
    padding: 10px 11px;
    color: var(--shell-text);
    font: inherit;
    font-size: 0.82rem;
    line-height: 1.45;
}

.support-composer textarea:focus {
    border-color: var(--shell-primary);
    box-shadow: 0 0 0 3px rgba(30, 115, 141, 0.13);
    outline: 0;
}

.support-composer-footer {
    margin-top: 9px;
}

.support-composer-footer > span {
    color: var(--shell-muted);
    font-size: 0.7rem;
}

@media (max-width: 1180px) {
    .operations-columns,
    .operations-controls-columns {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 820px) {
    .account-settings-modal {
        width: calc(100% - 16px);
        max-height: calc(100vh - 16px);
        margin: 8px auto;
    }

    .account-settings-body {
        max-height: calc(100vh - 80px);
    }

    .account-settings-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .account-password-section {
        border-right: 0;
        border-bottom: 1px solid var(--shell-border);
    }

    .account-identity-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 760px) {
    .support-admin-workspace {
        grid-template-columns: minmax(0, 1fr);
    }

    .support-ticket-sidebar {
        border-right: 0;
        border-bottom: 1px solid var(--shell-border);
    }

    .support-ticket-list {
        max-height: 230px;
    }

    .support-admin-thread-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .support-admin-thread-heading .btn {
        width: 100%;
    }
}

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

    .workflow-status-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .inline-control-row {
        align-items: stretch;
        flex-direction: column;
    }

    .resource-panel .resource-row {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .resource-row-actions {
        grid-column: 1;
        grid-row: 2;
        justify-content: flex-start;
    }

    .resource-row-settings,
    .row-action-menu,
    .current-user-label {
        grid-column: 2;
        grid-row: 1;
    }

    .resource-settings-body {
        grid-template-columns: minmax(220px, 1fr);
    }

    .domain-list-toolbar {
        justify-content: flex-start;
    }
}

@media (max-width: 760px) {
    :root {
        --shell-header-height: 60px;
    }

    .main-panel .container {
        display: block;
        min-height: 100vh;
    }

    #action-modal .modal-content {
        max-height: calc(100vh - 32px);
        margin: 16px auto;
    }

    #action-modal .modal-body {
        max-height: calc(100vh - 90px);
    }

    .app-header {
        height: var(--shell-header-height);
        padding: 0 12px;
    }

    .brand-mark {
        width: 32px;
        height: 32px;
    }

    .brand-lockup > div,
    .app-header #user-display,
    .app-header .btn > i {
        display: none;
    }

    .app-header .btn {
        min-height: 34px;
        padding: 6px 9px;
    }

    .main-panel .tab-nav {
        position: sticky;
        top: var(--shell-header-height);
        z-index: 25;
        display: flex;
        flex-direction: row;
        gap: 4px;
        width: 100%;
        height: auto;
        padding: 7px 10px;
        overflow-x: auto;
        overflow-y: hidden;
        border-bottom: 1px solid var(--shell-border);
        background: var(--shell-surface);
        scrollbar-width: none;
    }

    .main-panel .tab-nav::-webkit-scrollbar {
        display: none;
    }

    .main-panel .tab-btn {
        width: auto;
        min-width: max-content;
        min-height: 36px;
        padding: 7px 10px;
        color: var(--shell-muted);
    }

    .main-panel .tab-btn:hover {
        background: #eef3f6;
        color: var(--shell-text);
    }

    .main-panel .tab-btn.active {
        background: #e6f0f7;
        color: #104f7e;
    }

    .main-panel .tab-content {
        padding: 20px 14px 36px;
    }

    .page-heading {
        align-items: stretch;
        flex-direction: column;
        gap: 14px;
    }

    .page-heading > .btn {
        width: 100%;
    }

    .operations-heading {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 38px;
        align-items: start;
        gap: 10px;
    }

    .operations-heading > .btn {
        width: 38px;
        height: 38px;
        min-height: 38px;
        padding: 0;
    }

    .page-heading h2 {
        font-size: 1.35rem;
    }

    .domain-rollout-announcement {
        padding: 11px 12px;
    }

    .tool-search {
        width: 100%;
    }

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

    .resource-stat {
        min-height: 60px;
        border-bottom: 1px solid var(--shell-border);
    }

    .resource-stat:nth-child(2n) {
        border-right: 0;
    }

    .tool-grid {
        grid-template-columns: 1fr;
    }

    .tool-link {
        width: 100%;
        min-height: 68px;
    }

    .workflow-status-grid {
        grid-template-columns: 1fr;
    }

    .workflow-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .workflow-action-btn {
        width: 100%;
    }

    .resource-panel-heading {
        align-items: stretch;
        flex-direction: column;
        gap: 10px;
    }

    .domain-list-toolbar,
    .domain-search,
    .domain-search input,
    .domain-list-toolbar select {
        width: 100%;
    }

    .domain-list-toolbar .resource-panel-links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .resource-panel .resource-row {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 11px;
    }

    .domain-setup-modal {
        align-items: flex-start;
        padding: 8px;
    }

    .domain-setup-modal-content {
        width: 100%;
        max-height: calc(100vh - 16px);
    }

    .domain-setup-modal-header,
    .domain-setup-modal-body {
        padding: 11px;
    }

    .domain-setup-modal .domain-setup-stage {
        min-height: 0;
    }

    .domain-setup-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .domain-setup-actions .btn {
        width: 100%;
    }

    .domain-setup-actions #domain-setup-check:not([hidden]) {
        grid-column: 1 / -1;
    }

    .admin-domain-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-users-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-global-domain-search,
    .admin-users-toolbar .btn {
        width: 100%;
    }

    .admin-global-domain-results {
        padding: 0 10px 10px;
    }

    .admin-global-domain-results-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 2px;
    }

    .admin-domain-actions {
        justify-content: flex-start;
    }

    .admin-domain-actions .btn {
        flex: 0 0 auto;
    }

    .resource-panel .domain-card.resource-row {
        grid-template-columns: minmax(0, 2fr) minmax(100px, 1fr);
    }

    .resource-panel .domain-card .resource-row-main {
        grid-column: 1 / -1;
    }

    .resource-panel .domain-card .resource-row-actions {
        grid-column: 1;
        grid-row: 2;
        flex-wrap: nowrap;
    }

    .resource-panel .domain-card .resource-row-settings {
        grid-column: 2;
        grid-row: 2;
    }

    .resource-panel .domain-card .resource-row-settings > summary {
        width: 100%;
    }

    .resource-panel .domain-card .resource-row-settings[open] {
        grid-column: 1 / -1;
        grid-row: 3;
    }

    .resource-row-actions {
        grid-column: 1 / -1;
        flex-wrap: wrap;
    }

    .resource-row-actions .btn {
        flex: 1 1 auto;
    }

    .resource-meta {
        align-items: flex-start;
        flex-direction: column;
        gap: 3px;
    }

    .domain-card .resource-meta {
        align-items: center;
        flex-direction: row;
        gap: 4px 12px;
    }

    .resource-meta > span + span::before {
        content: none;
    }

    .domain-connection-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 3px;
    }

    .domain-connection-record {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .domain-connection-automatic {
        align-items: stretch;
        flex-direction: column;
    }

    .domain-connection-automatic .btn {
        width: 100%;
    }

    .domain-connection-record > span:nth-child(3) {
        grid-column: 1 / -1;
    }

    .domain-connection-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .domain-connection-actions .btn {
        width: 100%;
    }

    .resource-row-settings[open] {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    .resource-settings-body,
    .resource-setting-control {
        grid-template-columns: minmax(0, 1fr);
    }

    .resource-setting-control label,
    .resource-setting-control .btn {
        grid-column: 1;
    }

    .resource-panel-links,
    .resource-panel-links .btn {
        width: 100%;
    }

    .support-message-list {
        min-height: 280px;
        padding: 12px;
    }

    .support-message {
        width: 92%;
    }

    .support-composer {
        padding: 12px;
    }

    .task-panel > summary small {
        display: none;
    }

    .task-form,
    .domain-setup-fields,
    .advanced-options-grid,
    .upload-methods,
    .operations-form-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .domain-setup-progress {
        gap: 8px;
    }

    .domain-setup-progress li {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

    .domain-setup-progress li:not(:last-child)::after {
        top: 15px;
        right: -8px;
        left: 30px;
    }

    .domain-setup-progress li > div {
        padding-right: 0;
    }

    .domain-setup-progress small {
        display: none;
    }

    .domain-setup-record {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .domain-setup-record > span:nth-child(2n) {
        border-right: 0;
    }

    .domain-setup-record > span:nth-child(-n + 2) {
        border-bottom: 1px solid var(--shell-border);
    }

    .operations-span-full {
        grid-column: 1;
    }

    .operations-switcher {
        margin-right: -14px;
        margin-left: -14px;
        padding-right: 14px;
        padding-left: 14px;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }

    .operations-switch {
        flex: 0 0 auto;
    }

    .operations-host-bar {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .operations-host-bar label {
        grid-column: 1 / -1;
    }

    .option-check-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mapping-row {
        grid-template-columns: minmax(90px, 0.7fr) minmax(130px, 1.3fr) 34px;
    }

    .task-form > * {
        grid-column: 1;
    }

    .task-form-actions,
    .task-form-actions .btn,
    .inline-actions,
    .inline-actions .btn {
        width: 100%;
    }

    .file-primary-actions .compact-select {
        flex-basis: 100%;
        width: 100%;
    }

    .file-manager .file-toolbar.file-toolbar-compact .btn {
        flex: 1 1 auto;
    }

    .file-context-bar {
        align-items: stretch;
        flex-direction: column;
    }

    .file-context-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .file-context-actions .btn,
    .file-context-actions select {
        width: 100%;
    }

    .file-context-actions select {
        grid-column: 1 / -1;
    }

    .file-manager .file-context-actions #bulk-download-btn,
    .file-manager .file-context-actions #bulk-delete-btn,
    .file-manager .file-context-actions #paste-files-btn,
    .file-manager .file-context-actions #clear-clipboard-btn {
        grid-column: auto;
    }

    .file-workspace .file-browser {
        overflow-x: hidden;
    }

    .file-workspace .file-item {
        display: grid;
        grid-template-columns: 26px 28px minmax(0, 1fr);
        gap: 5px 7px;
        min-width: 0;
        padding: 8px 9px;
    }

    .file-workspace .file-select-checkbox {
        grid-column: 1;
        grid-row: 1;
        align-self: center;
        margin: 0;
    }

    .file-workspace .file-icon {
        grid-column: 2;
        grid-row: 1;
        align-self: center;
        width: 28px;
        margin: 0;
    }

    .file-workspace .file-name {
        grid-column: 3;
        grid-row: 1;
        min-width: 0;
        overflow-wrap: anywhere;
    }

    .file-workspace .file-size {
        grid-column: 3;
        grid-row: 2;
        margin: 0;
        font-size: 0.7rem;
    }

    .file-workspace .file-actions {
        grid-column: 2 / -1;
        grid-row: 3;
        justify-content: flex-start;
        flex-wrap: wrap;
        margin: 2px 0 0;
    }

    .file-workspace .file-item:not(:has(.file-select-checkbox)) .file-icon {
        grid-column: 1;
    }

    .file-workspace .file-item:not(:has(.file-select-checkbox)) .file-name,
    .file-workspace .file-item:not(:has(.file-select-checkbox)) .file-size {
        grid-column: 2 / -1;
    }
}

@media (max-width: 420px) {
    .app-header #profile-btn {
        width: 36px;
        padding: 0;
        font-size: 0;
    }

    .app-header #profile-btn i {
        display: inline-block;
        font-size: 0.8rem;
    }

    .workflow-actions {
        grid-template-columns: 1fr;
    }
}

/* Hosting workspace shell */
:root {
    --shell-bg: #edf1f3;
    --shell-surface: #ffffff;
    --shell-border: #d5dde2;
    --shell-border-strong: #bcc8cf;
    --shell-text: #172126;
    --shell-muted: #637179;
    --shell-primary: #08788a;
    --shell-primary-hover: #056575;
    --shell-sidebar: #202428;
    --shell-sidebar-muted: #b7c0c5;
    --shell-accent: #e4a11b;
    --shell-success: #23865b;
    --shell-radius: 8px;
    --shell-header-height: 68px;
}

body {
    font-family: "Manrope", sans-serif;
    background:
        linear-gradient(90deg, rgba(8, 120, 138, 0.035) 1px, transparent 1px),
        linear-gradient(rgba(8, 120, 138, 0.025) 1px, transparent 1px),
        var(--shell-bg);
    background-size: 28px 28px;
    letter-spacing: 0;
}

.main-panel .container {
    grid-template-columns: 244px minmax(0, 1fr);
}

.app-header {
    display: grid;
    grid-template-columns: 220px minmax(280px, 620px) minmax(max-content, 1fr);
    gap: 24px;
    padding: 0 22px 0 18px;
    border-bottom-color: #343c42;
    background: #20262b;
    box-shadow: 0 2px 10px rgba(8, 13, 16, 0.2);
}

.brand-lockup {
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
    font: inherit;
    text-align: left;
    gap: 11px;
}

.brand-lockup:hover .brand-mark {
    background: #f0b22d;
}

.brand-mark {
    width: 38px;
    height: 38px;
    border-radius: 7px;
    background: var(--shell-accent);
    color: #1c2226;
    font-size: 0.78rem;
    font-weight: 800;
}

.app-header h1 {
    color: #fff;
    font-size: 0.92rem;
}

.app-header p {
    color: #9ba8ae;
    font-size: 0.66rem;
    font-weight: 600;
}

.header-tool-search {
    width: 100%;
}

.header-tool-search input {
    min-height: 38px;
    border-color: #4a555c;
    background: #2b3338;
    color: #f7f9fa;
}

.header-tool-search > i {
    color: #a9b4ba;
}

.header-tool-search input::placeholder {
    color: #9ba8ae;
}

.header-tool-search input:focus {
    border-color: var(--shell-accent);
    background: #151a1d;
    box-shadow: 0 0 0 3px rgba(228, 161, 27, 0.16);
    outline: 0;
}

.app-header .header-user-info {
    justify-content: flex-end;
    gap: 7px;
}

.header-notifications {
    position: relative;
}

.header-notification-button {
    position: relative;
    display: inline-grid;
    width: 38px;
    height: 38px;
    padding: 0;
    place-items: center;
    border: 1px solid #465159;
    border-radius: 6px;
    background: #293136;
    color: #d7dee2;
    cursor: pointer;
    font-size: 0.72rem;
}

.header-notification-button:hover,
.header-notification-button[aria-expanded="true"] {
    border-color: #68767e;
    background: #343e44;
}

.notification-badge {
    position: absolute;
    top: -5px;
    right: -5px;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border: 2px solid #20262b;
    border-radius: 9px;
    background: #d94b55;
    color: #fff;
    font-size: 0.52rem;
    font-weight: 800;
    line-height: 13px;
    text-align: center;
}

.notification-menu {
    position: absolute;
    z-index: 80;
    top: calc(100% + 9px);
    right: 0;
    width: min(380px, calc(100vw - 24px));
    overflow: hidden;
    border: 1px solid var(--shell-border-strong);
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 16px 38px rgba(14, 25, 32, 0.2);
}

.notification-menu-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 48px;
    padding: 10px 12px;
    border-bottom: 1px solid var(--shell-border);
    background: #f8fafb;
}

.notification-menu-heading h2 {
    margin: 0;
    color: var(--shell-text);
    font-size: 0.84rem;
}

.notification-menu-heading button {
    padding: 4px;
    border: 0;
    background: transparent;
    color: var(--shell-primary);
    cursor: pointer;
    font: inherit;
    font-size: 0.66rem;
    font-weight: 750;
}

.notification-list {
    max-height: min(480px, calc(100vh - 100px));
    overflow-y: auto;
}

.notification-item {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 9px;
    width: 100%;
    padding: 11px 12px;
    border: 0;
    border-bottom: 1px solid var(--shell-border);
    background: #fff;
    color: var(--shell-text);
    cursor: pointer;
    font: inherit;
    text-align: left;
}

.notification-item:last-child {
    border-bottom: 0;
}

.notification-item:hover {
    background: #f7fafb;
}

.notification-item.notification-unread {
    background: #f4f9fb;
}

.notification-icon {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 6px;
    background: #edf3f5;
    color: #3d687d;
    font-size: 0.72rem;
}

.notification-item.severity-warning .notification-icon,
.notification-item.severity-error .notification-icon {
    background: #fff1e4;
    color: #986014;
}

.notification-item.severity-success .notification-icon {
    background: #eaf6ef;
    color: #2d704b;
}

.notification-copy,
.notification-copy strong,
.notification-copy span,
.notification-copy time {
    display: block;
    min-width: 0;
}

.notification-copy strong {
    color: var(--shell-text);
    font-size: 0.72rem;
    overflow-wrap: anywhere;
}

.notification-copy span {
    margin-top: 3px;
    color: var(--shell-muted);
    font-size: 0.66rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.notification-copy time {
    margin-top: 5px;
    color: #829097;
    font-size: 0.58rem;
}

.notification-empty {
    margin: 0;
    padding: 30px 14px;
    color: var(--shell-muted);
    font-size: 0.72rem;
    text-align: center;
}

.header-account {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    min-width: 168px;
    min-height: 42px;
    padding: 5px 8px;
    border: 1px solid #465159;
    border-radius: 6px;
    background: #293136;
    color: #fff;
    cursor: pointer;
    font: inherit;
    text-align: left;
}

.header-account:hover,
.header-signout:hover {
    border-color: #68767e;
    background: #343e44;
}

.header-account-avatar {
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 50%;
    background: var(--shell-accent);
    color: #20262b;
    font-size: 0.7rem;
}

.header-account-copy,
.header-account-copy strong,
.header-account-copy small {
    display: block;
    min-width: 0;
}

.header-account-copy strong {
    overflow: hidden;
    color: #fff;
    font-size: 0.7rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header-account-copy small {
    margin-top: 1px;
    color: #a8b2b8;
    font-size: 0.58rem;
}

.header-account-chevron {
    color: #8f9ba2;
    font-size: 0.58rem;
}

.header-signout {
    display: inline-grid;
    width: 38px;
    height: 38px;
    padding: 0;
    place-items: center;
    border: 1px solid #465159;
    border-radius: 6px;
    background: #293136;
    color: #d7dee2;
    cursor: pointer;
    font-size: 0.72rem;
}

.main-panel .btn {
    min-height: 34px;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 0.74rem;
    line-height: 1.2;
}

.main-panel .tab-nav {
    width: 244px;
    gap: 2px;
    padding: 16px 13px 12px;
    background: #181d21;
}

.nav-section-label {
    display: block;
    margin: 13px 11px 5px;
    color: #78858c;
    font-size: 0.61rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.nav-section-label:first-child {
    margin-top: 2px;
}

.main-panel .tab-btn {
    position: relative;
    min-height: 39px;
    padding: 8px 11px;
    border-radius: 5px;
    font-size: 0.78rem;
}

.main-panel .tab-btn.active {
    background: #30383e;
    color: #fff;
}

.main-panel .tab-btn.active::before {
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: 0;
    width: 3px;
    border-radius: 0 3px 3px 0;
    background: var(--shell-accent);
    content: '';
}

.main-panel .tab-content {
    --page-accent: #08788a;
    --page-tint: #e8f4f5;
    width: 100%;
    max-width: 1600px;
    padding: 30px clamp(24px, 3.2vw, 52px) 56px;
}

.page-heading {
    align-items: center;
    margin-bottom: 16px;
    padding: 14px 16px;
    border: 1px solid #d0d9de;
    border-left: 4px solid var(--page-accent);
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(22, 35, 42, 0.045);
}

.page-title-group {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 12px;
}

.page-title-group > div {
    min-width: 0;
}

.page-title-icon {
    display: grid;
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    place-items: center;
    border-radius: 7px;
    background: var(--page-tint);
    color: var(--page-accent);
    font-size: 0.88rem;
}

.page-heading h2 {
    font-size: 1.45rem;
    font-weight: 800;
}

.page-eyebrow {
    color: var(--page-accent);
    letter-spacing: 0.08em;
}

.dashboard-heading {
    margin-bottom: 12px;
}

#dashboard { --page-accent: #08788a; --page-tint: #e6f2f3; }
#domains { --page-accent: #08788a; --page-tint: #e6f2f3; }
#files { --page-accent: #5068aa; --page-tint: #edf0fa; }
#subdomains { --page-accent: #7b5aa6; --page-tint: #f2edf8; }
#websites { --page-accent: #27815d; --page-tint: #eaf5ef; }
#operations { --page-accent: #bd7426; --page-tint: #fbf0e5; }
#support { --page-accent: #2f6f9d; --page-tint: #e9f2f8; }
#users { --page-accent: #a54b55; --page-tint: #f8ecee; }

.dashboard-quick-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-bottom: 1px solid var(--shell-border);
    background: rgba(255, 255, 255, 0.55);
}

.dashboard-quick-actions button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 40px;
    padding: 7px 10px;
    border: 0;
    border-right: 1px solid var(--shell-border);
    background: transparent;
    color: #34434a;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 700;
    cursor: pointer;
}

.dashboard-quick-actions button:last-child {
    border-right: 0;
}

.dashboard-quick-actions button:hover {
    background: #fff;
    color: var(--shell-primary);
}

.dashboard-quick-actions i {
    color: var(--shell-primary);
}

.resource-summary {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0;
    margin: 18px 0 24px;
    border-color: #cbd5da;
    border-radius: 7px;
}

.resource-stat {
    align-items: center;
    gap: 11px;
    min-height: 62px;
    padding: 10px 13px;
}

.resource-stat > i {
    margin-left: auto;
    color: #a2adb3;
    font-size: 0.62rem;
}

.resource-stat-icon {
    display: grid;
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 6px;
    background: #e6f2f3;
    color: var(--shell-primary);
    font-size: 0.78rem;
}

.resource-stat-copy,
.resource-stat-copy strong,
.resource-stat-copy small {
    display: block;
}

.resource-stat-copy strong {
    color: var(--shell-text);
    font-size: 1rem;
    line-height: 1.1;
}

.resource-stat-copy small {
    margin-top: 3px;
    color: var(--shell-muted);
    font-size: 0.68rem;
}

.dashboard-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 34px;
    align-items: start;
}

.tool-directory {
    min-width: 0;
    margin: 0;
}

.tool-directory > .section-heading-row {
    align-items: center;
    margin-bottom: 6px;
}

.tool-group {
    display: grid;
    grid-template-columns: 176px minmax(0, 1fr);
    gap: 20px;
    padding: 16px 0;
    border-top: 1px solid var(--shell-border);
}

.tool-group[hidden] {
    display: none;
}

.tool-group-heading {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    align-items: start;
    gap: 9px;
}

.tool-group-heading > i {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 5px;
    background: #283036;
    color: #fff;
    font-size: 0.68rem;
}

.tool-group-heading h4 {
    margin: 1px 0 3px;
    color: var(--shell-text);
    font-size: 0.76rem;
}

.tool-group-heading p {
    margin: 0;
    color: var(--shell-muted);
    font-size: 0.65rem;
    line-height: 1.4;
}

.tool-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.tool-link {
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 9px;
    min-height: 56px;
    padding: 9px 10px;
    border-radius: 6px;
    box-shadow: 0 1px 0 rgba(23, 33, 38, 0.02);
}

.tool-link:hover {
    border-color: #91adb5;
    background: #f8fbfb;
    box-shadow: 0 6px 16px rgba(25, 47, 54, 0.07);
    transform: translateY(-1px);
}

.tool-link > i {
    width: 30px;
    height: 30px;
    border-radius: 5px;
    background: #eef4f5;
}

.tool-link strong {
    font-size: 0.78rem;
}

.tool-link small {
    font-size: 0.66rem;
}

.dashboard-side-rail {
    min-width: 0;
    padding-left: 28px;
    border-left: 1px solid var(--shell-border);
}

.dashboard-account-block {
    padding-bottom: 24px;
    border-bottom: 1px solid var(--shell-border);
}

.dashboard-account-heading {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 17px;
}

.dashboard-account-avatar {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 50%;
    background: #283036;
    color: #fff;
    font-size: 0.78rem;
}

.dashboard-account-heading small,
.dashboard-account-heading strong {
    display: block;
}

.dashboard-account-heading small {
    color: var(--shell-muted);
    font-size: 0.63rem;
}

.dashboard-account-heading strong {
    max-width: 210px;
    margin-top: 2px;
    overflow: hidden;
    color: var(--shell-text);
    font-size: 0.84rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-account-facts {
    margin: 0 0 16px;
}

.dashboard-account-facts > div {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 10px;
    padding: 8px 0;
    border-top: 1px solid #dde4e7;
    font-size: 0.68rem;
}

.dashboard-account-facts dt {
    color: var(--shell-muted);
}

.dashboard-account-facts dd {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    color: var(--shell-text);
    font-weight: 700;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-side-rail .workflow-hub {
    margin-top: 24px;
}

.dashboard-side-rail .workflow-hub-card {
    border: 0;
    border-radius: 0;
    background: transparent;
}

.dashboard-side-rail .workflow-summary {
    padding: 0 0 12px;
}

.dashboard-side-rail .workflow-summary small {
    display: none;
}

.dashboard-side-rail .workflow-content {
    padding: 13px 0 0;
}

.dashboard-side-rail .workflow-status-grid,
.dashboard-side-rail .workflow-actions {
    display: grid;
    grid-template-columns: 1fr;
}

.dashboard-side-rail .workflow-action-btn {
    width: 100%;
    justify-content: flex-start;
}

.resource-panel,
.task-panel,
.file-workspace {
    border-color: #ccd5da;
    box-shadow: 0 1px 2px rgba(18, 32, 39, 0.04);
}

.tab-content:not(#dashboard) > .resource-panel,
.tab-content:not(#dashboard) > .task-panel,
.operations-view .resource-panel,
.support-workspace,
.support-admin-workspace {
    border-top: 3px solid var(--page-accent);
}

.tab-content:not(#dashboard) .resource-panel-heading {
    background: var(--page-tint);
    box-shadow: inset 3px 0 0 var(--page-accent);
}

.tab-content:not(#dashboard) .resource-panel-heading h3,
.tab-content:not(#dashboard) .task-panel > summary span,
.support-thread-heading h3,
.support-admin-title-line h3 {
    color: #1d2b32;
}

.tab-content:not(#dashboard) .task-panel > summary {
    border-left: 3px solid var(--page-accent);
    background: #fff;
}

.tab-content:not(#dashboard) .task-panel[open] > summary {
    background: var(--page-tint);
}

.tab-content:not(#dashboard) .task-panel > summary span i,
.tab-content:not(#dashboard) .resource-identity h4 i,
.tab-content:not(#dashboard) .domain-search > i,
.tab-content:not(#dashboard) .support-ticket-search i {
    color: var(--page-accent);
}

.tab-content:not(#dashboard) input:focus,
.tab-content:not(#dashboard) select:focus,
.tab-content:not(#dashboard) textarea:focus {
    border-color: var(--page-accent);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 14%, transparent);
    outline: 0;
}

#files .file-toolbar,
#files .file-context-bar {
    border-color: #d4daeb;
    background: var(--page-tint);
}

#files .file-browser {
    border-color: #d4daeb;
}

#files .file-item:hover {
    background: #f7f8fc;
}

#operations .operations-switcher {
    border-color: #decbb7;
    background: var(--page-tint);
}

#operations .operations-switch.active {
    color: var(--page-accent);
    box-shadow: 0 1px 3px rgba(74, 43, 12, 0.12);
}

#support .support-workspace,
#support .support-admin-workspace {
    border-right: 1px solid var(--shell-border);
    border-bottom: 1px solid var(--shell-border);
    border-left: 1px solid var(--shell-border);
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 1px 3px rgba(24, 48, 64, 0.06);
}

#support .support-thread-heading,
#support .support-admin-thread-heading,
#support .support-ticket-toolbar {
    background: var(--page-tint);
}

#users .admin-global-domain-results,
#users .security-insights-panel,
#users .billing-admin-panel {
    border-color: #dfc9cc;
}

.main-panel .tab-content.active {
    animation: workspace-enter 180ms ease-out;
}

@keyframes workspace-enter {
    from { opacity: 0; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
    .main-panel .tab-content.active {
        animation: none;
    }
}

@media (max-width: 1180px) {
    .app-header {
        grid-template-columns: 190px minmax(240px, 1fr) max-content;
        gap: 16px;
    }

    .dashboard-workspace {
        grid-template-columns: minmax(0, 1fr) 270px;
        gap: 26px;
    }

    .tool-group {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }
}

@media (max-width: 1120px) {
    .main-panel .container {
        display: block;
        min-height: 100vh;
    }

    .main-panel .tab-nav {
        position: sticky;
        top: var(--shell-header-height);
        z-index: 25;
        display: flex;
        flex-direction: row;
        gap: 4px;
        width: 100%;
        height: auto;
        padding: 7px 12px;
        overflow-x: auto;
        overflow-y: hidden;
        border-bottom: 1px solid #3c454b;
        background: #20262b;
        scrollbar-width: none;
    }

    .main-panel .tab-nav::-webkit-scrollbar {
        display: none;
    }

    .nav-section-label {
        display: none;
    }

    .main-panel .tab-btn {
        width: auto;
        min-width: max-content;
        min-height: 36px;
        padding: 7px 10px;
        color: #b6c0c5;
    }

    .main-panel .tab-btn:hover {
        background: #30383e;
        color: #fff;
    }

    .main-panel .tab-btn.active {
        background: rgba(228, 161, 27, 0.16);
        color: #ffd36f;
    }

    .main-panel .tab-btn.active::before {
        display: none;
    }

    .main-panel .tab-content {
        max-width: none;
        padding-right: clamp(22px, 4vw, 44px);
        padding-left: clamp(22px, 4vw, 44px);
    }
}

@media (max-width: 900px) {
    .app-header {
        grid-template-columns: 170px minmax(180px, 1fr) max-content;
    }

    .header-account-copy,
    .header-account-chevron {
        display: none;
    }

    .header-account {
        grid-template-columns: 30px;
        min-width: 42px;
        width: 42px;
        padding: 5px;
    }

    .dashboard-workspace {
        grid-template-columns: minmax(0, 1fr);
    }

    .dashboard-side-rail {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 24px;
        padding: 26px 0 0;
        border-top: 1px solid var(--shell-border);
        border-left: 0;
    }

    .dashboard-side-rail .workflow-hub {
        margin-top: 0;
    }
}

@media (max-width: 760px) {
    :root {
        --shell-header-height: 60px;
    }

    .app-header {
        display: grid;
        grid-template-columns: 34px minmax(120px, 1fr) auto;
        gap: 8px;
        padding: 0 10px;
    }

    .brand-mark {
        width: 34px;
        height: 34px;
    }

    .brand-lockup > div,
    .app-header #user-display,
    .header-account-copy,
    .header-account-chevron {
        display: none;
    }

    .app-header .header-user-info {
        gap: 4px;
    }

    .app-header #profile-btn,
    .app-header #logout-btn,
    .header-notification-button {
        display: inline-flex;
        width: 34px;
        min-height: 34px;
        padding: 0;
        align-items: center;
        justify-content: center;
        font-size: 0;
    }

    .app-header #profile-btn i,
    .app-header #logout-btn i,
    .header-notification-button i {
        display: inline-block;
        font-size: 0.76rem;
    }

    .header-tool-search input {
        min-height: 36px;
        padding-right: 8px;
        font-size: 0.75rem;
    }

    .notification-menu {
        position: fixed;
        top: calc(var(--shell-header-height) - 2px);
        right: 8px;
        left: 8px;
        width: auto;
    }

    .nav-section-label {
        display: none;
    }

    .main-panel .tab-nav {
        width: 100%;
        padding: 7px 9px;
    }

    .main-panel .tab-btn.active::before {
        display: none;
    }

    .main-panel .tab-content {
        padding: 18px 13px 38px;
    }

    #operations .operations-switcher {
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-left: 0;
        overscroll-behavior-inline: contain;
    }

    .dashboard-heading {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: end;
    }

    .dashboard-heading > .btn {
        width: auto;
    }

    .dashboard-quick-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-quick-actions button:nth-child(2) {
        border-right: 0;
    }

    .dashboard-quick-actions button:nth-child(-n + 2) {
        border-bottom: 1px solid var(--shell-border);
    }

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

    .resource-stat {
        padding: 12px;
    }

    .resource-stat:nth-child(2n) {
        border-right: 0;
    }

    .resource-summary:has(.admin-resource-stat[hidden]) .resource-stat:nth-child(3) {
        grid-column: 1 / -1;
        border-right: 0;
    }

    .tool-group {
        padding: 17px 0;
    }

    .tool-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .dashboard-side-rail {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 420px) {
    .dashboard-heading {
        grid-template-columns: minmax(0, 1fr);
    }

    .dashboard-heading > .btn {
        width: 100%;
    }

    .dashboard-quick-actions button {
        align-items: center;
        justify-content: flex-start;
        font-size: 0.68rem;
    }

    .resource-stat {
        min-height: 68px;
    }

    .resource-stat > i {
        display: none;
    }
}