:root {
    --alfred-yellow: #edbd20;
    --alfred-yellow-soft: #fff8df;
    --alfred-blue: #0f52a0;
    --alfred-blue-soft: #f1f6fc;
    --alfred-green: #287a54;
    --alfred-bg: #f3f4f6;
    --alfred-border: #e4e7ec;
    --alfred-text: #191b1f;
    --alfred-muted: #6b7280;
    --alfred-sidebar: 242px;
}

* {
    box-sizing: border-box;
}

body {
    min-width: 320px;
    margin: 0;
    color: var(--alfred-text);
    background: var(--alfred-bg);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.alfred-shell {
    min-height: 100vh;
}

.alfred-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 1030;
    display: flex;
    width: var(--alfred-sidebar);
    flex-direction: column;
    border-right: 1px solid var(--alfred-border);
    background: #fff;
}

.sidebar-head {
    position: relative;
    padding: 24px 24px 18px;
}

.brand-link {
    display: inline-block;
}

.brand-logo-frame {
    position: relative;
    display: block;
    width: 136px;
    height: 37px;
    overflow: hidden;
}

.brand-logo-frame img {
    position: absolute;
    top: -29px;
    left: -24px;
    width: 180px;
    max-width: none;
    height: auto;
}

.sidebar-context {
    margin: 10px 0 0;
    color: var(--alfred-muted);
    font-size: 11px;
    line-height: 1.4;
}

.sidebar-close {
    display: none;
}

.sidebar-nav {
    display: grid;
    gap: 6px;
    padding: 8px 14px;
}

.nav-item {
    display: flex;
    min-height: 46px;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    color: #30343b;
    font-size: 14px;
    font-weight: 650;
    text-decoration: none;
}

.nav-item.active {
    background: var(--alfred-yellow);
    color: var(--alfred-text);
}

.nav-item.disabled {
    color: #818792;
    cursor: default;
}

.nav-mark {
    display: grid;
    width: 25px;
    height: 25px;
    flex: 0 0 25px;
    place-items: center;
    border: 1px solid #d7dbe1;
    border-radius: 7px;
    background: #fff;
    color: #4b515b;
    font-size: 14px;
    font-weight: 800;
}

.nav-item.active .nav-mark {
    border-color: rgb(25 27 31 / 14%);
    background: #fff5cf;
    color: #30343b;
}

.sidebar-footer {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    padding: 18px 20px;
    border-top: 1px solid var(--alfred-border);
}

.sidebar-footer strong,
.sidebar-footer small {
    display: block;
}

.sidebar-footer strong {
    font-size: 13px;
}

.sidebar-footer small {
    color: var(--alfred-muted);
    font-size: 11px;
}

.operator-avatar {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 50%;
    background: var(--alfred-blue);
    color: #fff;
    font-size: 13px;
    font-weight: 800;
}

.alfred-main {
    min-height: 100vh;
    margin-left: var(--alfred-sidebar);
}

.mobile-bar,
.sidebar-backdrop {
    display: none;
}

.page-wrap {
    width: min(1220px, 100%);
    margin: 0 auto;
    padding: 42px 38px 56px;
}

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

.eyebrow {
    display: block;
    margin-bottom: 7px;
    color: var(--alfred-blue);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.page-heading h1 {
    margin: 0 0 7px;
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 760;
    letter-spacing: -.035em;
}

.page-heading p {
    max-width: 720px;
    margin: 0;
    color: var(--alfred-muted);
    font-size: 14px;
    line-height: 1.6;
}

.environment-badge {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    padding: 8px 12px;
    border: 1px solid #ead68f;
    border-radius: 999px;
    background: var(--alfred-yellow-soft);
    color: #725711;
    font-size: 12px;
    font-weight: 700;
}

.environment-badge span,
.mode-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--alfred-yellow);
}

.status-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 24px;
    overflow: hidden;
    border: 1px solid var(--alfred-border);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgb(19 31 51 / 4%);
}

.status-item {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
}

.status-item + .status-item {
    border-left: 1px solid var(--alfred-border);
}

.status-item strong,
.status-item small {
    display: block;
}

.status-item strong {
    font-size: 13px;
}

.status-item small {
    margin-top: 2px;
    overflow: hidden;
    color: var(--alfred-muted);
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.status-icon {
    display: grid;
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    place-items: center;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 850;
}

.status-icon-blue {
    background: var(--alfred-blue-soft);
    color: var(--alfred-blue);
}

.status-icon-yellow {
    background: var(--alfred-yellow-soft);
    color: #806000;
}

.status-icon-green {
    background: #eaf7f0;
    color: var(--alfred-green);
}

.alfred-card {
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--alfred-border);
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 10px 30px rgb(19 31 51 / 5%);
}

.card-accent-yellow {
    border-top: 4px solid var(--alfred-yellow);
}

.card-accent-blue {
    border-top: 4px solid var(--alfred-blue);
}

.section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 20px;
    border-bottom: 1px solid var(--alfred-border);
}

.section-heading > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.section-heading h2 {
    margin: 0;
    font-size: 16px;
    font-weight: 750;
}

.step-number {
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border-radius: 8px;
    background: var(--alfred-yellow-soft);
    color: #755700;
    font-size: 13px;
    font-weight: 800;
}

.step-number-blue {
    background: var(--alfred-blue-soft);
    color: var(--alfred-blue);
}

.neutral-count {
    padding: 5px 9px;
    border-radius: 999px;
    background: #f0f2f6;
    color: #626974;
    font-size: 11px;
    font-weight: 700;
}

.empty-state {
    display: flex;
    min-height: 335px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 42px 28px;
    text-align: center;
}

.empty-envelope {
    display: grid;
    width: 58px;
    height: 58px;
    margin-bottom: 18px;
    place-items: center;
    border-radius: 16px;
    background: var(--alfred-yellow-soft);
    color: #997200;
    font-size: 25px;
}

.empty-state h3 {
    margin: 0 0 8px;
    font-size: 18px;
    font-weight: 750;
}

.empty-state p {
    max-width: 520px;
    margin: 0 0 21px;
    color: var(--alfred-muted);
    font-size: 13px;
    line-height: 1.65;
}

.empty-state small {
    margin-top: 10px;
    color: #8b919a;
    font-size: 11px;
}

.action-button {
    border: 0;
    background: var(--alfred-yellow);
    color: var(--alfred-text);
    font-size: 13px;
    font-weight: 750;
}

.integrations-card {
    min-height: 390px;
}

.section-heading.compact {
    border-bottom: 0;
    padding-bottom: 10px;
}

.section-lead {
    margin: 0;
    padding: 0 20px 14px;
    color: var(--alfred-muted);
    font-size: 12px;
}

.integration-list {
    margin: 0;
    padding: 0 20px;
    list-style: none;
}

.integration-list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 0;
    border-top: 1px solid #edf0f3;
    font-size: 13px;
    font-weight: 650;
}

.integration-state {
    padding: 5px 9px;
    border-radius: 999px;
    background: #f0f2f6;
    color: #6b7280;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.integration-state.enabled {
    background: #eaf7f0;
    color: var(--alfred-green);
}

.safety-note {
    display: grid;
    gap: 4px;
    margin: 20px;
    padding: 14px 15px;
    border: 1px solid #d6e4f5;
    border-radius: 11px;
    background: var(--alfred-blue-soft);
}

.safety-note strong {
    color: #0b3d78;
    font-size: 12px;
}

.safety-note span {
    color: #4f6177;
    font-size: 11px;
    line-height: 1.55;
}

@media (max-width: 991.98px) {
    .alfred-sidebar {
        width: min(310px, 86vw);
        transform: translateX(-102%);
        transition: transform .2s ease;
        box-shadow: 18px 0 40px rgb(18 31 50 / 18%);
    }

    .sidebar-open .alfred-sidebar {
        transform: translateX(0);
    }

    .sidebar-close {
        position: absolute;
        top: 16px;
        right: 15px;
        display: grid;
        width: 32px;
        height: 32px;
        place-items: center;
        border: 0;
        border-radius: 9px;
        background: #f0f2f6;
        color: #555b65;
        font-size: 21px;
        line-height: 1;
    }

    .sidebar-backdrop {
        position: fixed;
        inset: 0;
        z-index: 1020;
        border: 0;
        background: rgb(17 20 24 / 35%);
    }

    .sidebar-open .sidebar-backdrop {
        display: block;
    }

    .alfred-main {
        margin-left: 0;
    }

    .mobile-bar {
        display: flex;
        height: 58px;
        align-items: center;
        gap: 13px;
        padding: 0 18px;
        border-bottom: 1px solid var(--alfred-border);
        background: #fff;
    }

    .mobile-bar strong {
        font-size: 16px;
    }

    .mode-dot {
        margin-left: auto;
    }

    .menu-button {
        width: 34px;
        height: 34px;
        border: 1px solid var(--alfred-border);
        border-radius: 9px;
        background: #fff;
        color: #30343b;
        font-size: 17px;
    }

    .page-wrap {
        padding: 28px 20px 44px;
    }
}

@media (max-width: 767.98px) {
    .page-heading {
        display: block;
    }

    .environment-badge {
        margin-top: 16px;
    }

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

    .status-item + .status-item {
        border-top: 1px solid var(--alfred-border);
        border-left: 0;
    }

    .empty-state {
        min-height: 310px;
        padding: 34px 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .alfred-sidebar {
        transition: none;
    }
}

.nav-count {
    min-width: 22px;
    margin-left: auto;
    padding: 2px 7px;
    border-radius: 999px;
    background: rgb(255 255 255 / 62%);
    color: inherit;
    font-size: 10px;
    text-align: center;
}

.operator-copy {
    min-width: 0;
}

.fixture-reset {
    display: grid;
    width: 31px;
    height: 31px;
    margin-left: auto;
    place-items: center;
    border: 1px solid var(--alfred-border);
    border-radius: 8px;
    background: #fff;
    color: #626974;
    font-size: 18px;
    line-height: 1;
}

.fixture-reset:hover,
.fixture-reset:focus-visible {
    border-color: #c9a21b;
    color: #725711;
}

.alfred-alert {
    width: min(1144px, calc(100% - 76px));
    margin: 22px auto -20px;
    font-size: 13px;
}

.alfred-alert ul {
    margin: 6px 0 0;
}

.safety-banner {
    display: flex;
    gap: 7px;
    margin-bottom: 18px;
    padding: 13px 16px;
    border: 1px solid #d7e4f3;
    border-radius: 11px;
    background: var(--alfred-blue-soft);
    color: #4f6177;
    font-size: 12px;
    line-height: 1.5;
}

.safety-banner strong {
    flex: 0 0 auto;
    color: #0b3d78;
}

.queue-filters {
    display: grid;
    grid-template-columns: minmax(230px, 1.6fr) repeat(3, minmax(130px, 1fr));
    gap: 12px;
    padding: 16px 20px;
    border-bottom: 1px solid var(--alfred-border);
    background: #fbfcfd;
}

.queue-filter-field {
    min-width: 0;
}

.queue-filter-field label {
    display: block;
    margin-bottom: 6px;
    color: #5b626c;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.queue-filter-field .form-control,
.queue-filter-field .form-select,
.queue-filter-field .input-group-text {
    min-height: 39px;
    border-color: #dfe3e8;
    font-size: 12px;
}

.queue-filter-field .input-group-text {
    background: #fff;
    color: #777f89;
}

.queue-filter-actions {
    display: flex;
    grid-column: 1 / -1;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 8px;
}

.queue-filter-actions .btn {
    min-height: 39px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.queue-filter-reset {
    color: #5b626c;
}

.mail-row {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 18px 20px;
    color: var(--alfred-text);
    text-decoration: none;
    transition: background-color .15s ease;
}

.mail-row + .mail-row {
    border-top: 1px solid var(--alfred-border);
}

.mail-row:hover,
.mail-row:focus-visible {
    background: #fffdf5;
    color: var(--alfred-text);
}

.mail-avatar {
    display: grid;
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    place-items: center;
    border-radius: 12px;
    background: var(--alfred-yellow-soft);
    color: #806000;
    font-size: 14px;
    font-weight: 850;
}

.mail-copy {
    display: block;
    min-width: 0;
    flex: 1;
}

.mail-row-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.mail-row-top strong {
    overflow: hidden;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mail-row-top time {
    flex: 0 0 auto;
    color: var(--alfred-muted);
    font-size: 11px;
}

.mail-subject,
.mail-preview {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mail-subject {
    margin-top: 4px;
    font-size: 15px;
    font-weight: 720;
}

.mail-preview {
    margin-top: 4px;
    color: var(--alfred-muted);
    font-size: 12px;
}

.mail-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 9px;
    color: var(--alfred-muted);
    font-size: 10px;
}

.language-badge,
.scenario-badge,
.fake-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
}

.no-reply-badge {
    background: #f0f2f6;
    color: #565e69;
}

.language-badge {
    padding: 4px 7px;
    background: #eef1f5;
    color: #4b515b;
}

.scenario-badge {
    padding: 4px 8px;
    background: color-mix(in srgb, var(--scenario-color) 10%, white);
    color: var(--scenario-color);
}

.draft-state-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border-radius: 999px;
    background: #f0f2f6;
    color: #626974;
    font-weight: 750;
}

.draft-state-badge.ready {
    background: #eaf7f0;
    color: var(--alfred-green);
}

.draft-state-badge.failed {
    background: #fff0f0;
    color: #b02a37;
}

.draft-state-badge.stale {
    background: #fff4cf;
    color: #805900;
}

.mail-arrow {
    flex: 0 0 auto;
    color: #9aa0a9;
    font-size: 16px;
}

.compact-empty {
    min-height: 300px;
}

.back-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 21px;
    color: #565e69;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

.back-link:hover {
    color: var(--alfred-blue);
}

.detail-heading h1 {
    max-width: 850px;
    font-size: clamp(25px, 2.7vw, 34px);
}

.detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(260px, .8fr);
    gap: 22px;
    align-items: start;
}

.detail-main {
    display: grid;
    min-width: 0;
    gap: 18px;
}

.message-content {
    padding: 20px;
}

.thread-list {
    display: grid;
    gap: 14px;
    background: #f7f8fa;
}

.thread-message {
    padding: 18px;
    border: 1px solid var(--alfred-border);
    border-radius: 11px;
    background: #fff;
}

.thread-message.latest {
    border-color: #e3c96a;
    box-shadow: 0 0 0 3px rgb(237 189 32 / 8%);
}

.thread-message-outgoing {
    border-left: 4px solid var(--alfred-blue);
}

.thread-message-outgoing .thread-message-heading {
    flex-wrap: wrap;
}

.thread-message-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 13px;
}

.thread-message-heading strong {
    font-size: 12px;
}

.thread-message-heading time {
    color: var(--alfred-muted);
    font-size: 9px;
}

.safe-mail-html p,
.safe-mail-html ul,
.safe-mail-html ol,
.safe-mail-html blockquote,
.safe-mail-html pre,
.safe-mail-html table {
    margin: 0 0 12px;
}

.safe-mail-html a {
    color: var(--alfred-blue);
}

.safe-mail-html table {
    max-width: 100%;
    border-collapse: collapse;
}

.safe-mail-html td,
.safe-mail-html th {
    padding: 6px;
    border: 1px solid var(--alfred-border);
}

.message-addresses,
.confirmation-summary {
    display: grid;
    gap: 8px;
    margin: 0 0 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--alfred-border);
}

.message-addresses div,
.confirmation-summary div {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 12px;
}

.message-addresses dt,
.confirmation-summary dt {
    color: var(--alfred-muted);
    font-size: 11px;
    font-weight: 650;
}

.message-addresses dd,
.confirmation-summary dd {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
    font-size: 12px;
    font-weight: 600;
}

.mail-body,
.confirmation-body {
    color: #333840;
    font-size: 13px;
    line-height: 1.75;
    white-space: pre-wrap;
}

.attachment-list {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 23px;
    padding-top: 17px;
    border-top: 1px solid var(--alfred-border);
}

.attachment-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 9px;
    padding: 10px 12px;
    border: 1px solid var(--alfred-border);
    border-radius: 9px;
    background: #fafbfc;
    color: inherit;
    text-decoration: none;
}

.attachment-item > span {
    display: grid;
    gap: 2px;
}

.attachment-icon {
    color: var(--alfred-blue);
    font-size: 15px;
}

a.attachment-item:hover {
    border-color: #c7d9ee;
    background: var(--alfred-blue-soft);
}

.attachment-item strong {
    font-size: 11px;
}

.attachment-item small {
    color: var(--alfred-muted);
    font-size: 9px;
}

.translation-card,
.draft-translation {
    overflow: hidden;
    border: 1px solid #d7e4f3;
    border-radius: 13px;
    background: var(--alfred-blue-soft);
}

.translation-card .mail-body,
.draft-translation .mail-body {
    padding: 17px 20px 20px;
}

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

.translation-action p {
    margin: 0;
    color: #4f6177;
    font-size: 10px;
    line-height: 1.55;
}

.translation-action .btn,
.translation-refresh-form .btn {
    font-size: 10px;
}

.translation-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 20px;
    border-bottom: 1px solid #d7e4f3;
}

.translation-heading strong {
    color: #0b3d78;
    font-size: 12px;
}

.translation-heading strong .bi {
    margin-right: 6px;
}

.translation-heading span {
    color: #637a95;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
}

.generate-state {
    display: flex;
    min-height: 315px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 35px 24px;
    text-align: center;
}

.generate-icon {
    display: grid;
    width: 54px;
    height: 54px;
    margin-bottom: 15px;
    place-items: center;
    border-radius: 15px;
    background: var(--alfred-yellow-soft);
    color: #997200;
    font-size: 24px;
}

.generate-state h3 {
    margin: 0 0 8px;
    font-size: 17px;
}

.generate-state p {
    max-width: 500px;
    margin: 0 0 18px;
    color: var(--alfred-muted);
    font-size: 12px;
    line-height: 1.6;
}

.generate-state small {
    margin-top: 11px;
    color: #8b919a;
    font-size: 10px;
}

.generate-state-failed .generate-icon {
    background: #fff0f0;
    color: #b02a37;
}

.failure-metadata {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin: 0 0 18px;
}

.failure-metadata div {
    padding: 8px 10px;
    border: 1px solid #f0c8cc;
    border-radius: 8px;
    background: #fff8f8;
}

.failure-metadata dt,
.failure-metadata dd {
    margin: 0;
    font-size: 9px;
}

.failure-metadata dt {
    color: #8b5960;
    font-weight: 700;
    text-transform: uppercase;
}

.failure-metadata dd {
    margin-top: 2px;
    color: #70242e;
    font-weight: 750;
}

.generate-state .failure-limit-note,
.failure-limit-note {
    color: #842029;
}

.draft-failure-banner {
    display: flex;
    gap: 11px;
    margin: 20px 20px 0;
    padding: 13px 15px;
    border: 1px solid #f0c8cc;
    border-radius: 10px;
    background: #fff5f5;
    color: #842029;
}

.draft-failure-banner > .bi {
    margin-top: 1px;
    font-size: 17px;
}

.draft-failure-banner strong,
.draft-failure-banner p,
.draft-failure-banner small {
    display: block;
}

.draft-failure-banner strong {
    font-size: 12px;
}

.draft-failure-banner p {
    margin: 3px 0;
    font-size: 10px;
    line-height: 1.5;
}

.draft-failure-banner small {
    color: #9c545c;
    font-size: 9px;
}

.draft-failure-reset {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: -8px 20px 20px;
}

.draft-failure-reset small {
    color: var(--alfred-muted);
    font-size: 9px;
}

.draft-form {
    padding: 20px;
}

.draft-form .form-label {
    color: #4b515b;
    font-size: 11px;
    font-weight: 750;
}

.draft-form .form-control {
    border-color: #d9dde3;
    font-size: 13px;
}

.draft-form .form-control:focus {
    border-color: #e3b61e;
    box-shadow: 0 0 0 .2rem rgb(237 189 32 / 15%);
}

.regenerate-form {
    display: grid;
    gap: 7px;
    margin: 0 20px 20px;
    padding: 15px;
    border: 1px solid var(--alfred-border);
    border-radius: 10px;
    background: #fafbfc;
}

.regenerate-form .form-label {
    margin: 0;
    color: #4b515b;
    font-size: 10px;
    font-weight: 750;
}

.regenerate-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.regenerate-row .form-control,
.regenerate-row .btn {
    min-height: 40px;
    font-size: 11px;
}

.regenerate-form small {
    color: var(--alfred-muted);
    font-size: 9px;
}

.draft-textarea {
    min-height: 265px;
    line-height: 1.65;
    resize: vertical;
}

.draft-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.confirm-button {
    margin-left: auto;
}

.confirm-button:disabled {
    border-color: #e1e3e7;
    background: #e8eaed;
    color: #8a9099;
}

.dirty-note {
    color: #9a6810;
    font-size: 10px;
    font-weight: 700;
}

.draft-translation {
    margin: 0 20px 20px;
}

.translation-warning,
.simulation-warning {
    margin: 0 20px 20px;
    padding: 13px 15px;
    border: 1px solid #ead68f;
    border-radius: 10px;
    background: var(--alfred-yellow-soft);
    color: #725711;
    font-size: 11px;
    line-height: 1.55;
}

.translation-refresh-form {
    display: inline-block;
    margin-left: 8px;
}

.draft-origin-note {
    margin: 0 20px 20px;
    color: var(--alfred-muted);
    font-size: 10px;
    line-height: 1.55;
}

.detail-aside {
    display: grid;
    gap: 18px;
}

.workflow-card {
    overflow: visible;
}

.classification-card {
    border-top: 3px solid var(--alfred-yellow);
}

.workflow-form {
    display: grid;
    gap: 7px;
    padding: 16px 20px;
    border-top: 1px solid #edf0f3;
}

.workflow-form .form-label {
    margin: 0;
    color: #4b515b;
    font-size: 10px;
    font-weight: 750;
}

.workflow-form .form-control,
.workflow-form .form-select,
.workflow-form .btn {
    min-height: 38px;
    font-size: 10px;
}

.workflow-control-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.workflow-form small {
    color: var(--alfred-muted);
    font-size: 9px;
    line-height: 1.5;
}

.source-card {
    position: sticky;
    top: 22px;
}

.close-without-card {
    border-top: 3px solid #a9afb8;
}

.close-without-content {
    padding: 5px 20px 19px;
}

.close-without-content p,
.close-without-help {
    color: var(--alfred-muted);
    font-size: 10px;
    line-height: 1.55;
}

.close-without-content p {
    margin: 0 0 12px;
}

.close-without-help {
    margin: 11px 0 0;
}

.close-without-confirm {
    border-color: #d1d5db;
    background: #565e69;
    color: #fff;
    font-size: 12px;
    font-weight: 750;
}

.close-without-confirm:hover,
.close-without-confirm:focus-visible {
    border-color: #454b54;
    background: #454b54;
    color: #fff;
}

.source-list {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0 20px;
    list-style: none;
}

.source-list li {
    display: flex;
    gap: 10px;
    padding: 14px 0;
    border-top: 1px solid #edf0f3;
}

.source-list strong,
.source-list small {
    display: block;
}

.source-list strong {
    font-size: 11px;
}

.source-list small {
    margin-top: 3px;
    color: var(--alfred-muted);
    font-size: 10px;
}

.source-check {
    display: grid;
    width: 21px;
    height: 21px;
    flex: 0 0 21px;
    place-items: center;
    border-radius: 50%;
    background: #eaf7f0;
    color: var(--alfred-green);
    font-size: 11px;
    font-weight: 800;
}

.confirmation-modal {
    border: 0;
    border-radius: 15px;
}

.confirmation-modal .modal-header,
.confirmation-modal .modal-footer {
    padding: 18px 20px;
}

.confirmation-modal .modal-body {
    padding: 20px;
}

.confirmation-modal .simulation-warning {
    margin: 0 0 20px;
}

.confirmation-body {
    max-height: 340px;
    overflow: auto;
    padding: 16px;
    border: 1px solid var(--alfred-border);
    border-radius: 10px;
    background: #fafbfc;
}

.completed-row {
    padding: 20px;
}

.completed-row + .completed-row {
    border-top: 1px solid var(--alfred-border);
}

.completed-head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.completed-head > div {
    min-width: 0;
    flex: 1;
}

.completed-head strong {
    display: block;
    overflow-wrap: anywhere;
    font-size: 11px;
}

.completed-head h2 {
    margin: 4px 0;
    font-size: 15px;
}

.completed-head > div > span {
    color: var(--alfred-muted);
    font-size: 10px;
}

.completed-avatar,
.blue-empty {
    background: var(--alfred-blue-soft);
    color: var(--alfred-blue);
}

.fake-badge {
    flex: 0 0 auto;
    padding: 5px 8px;
    background: #eaf7f0;
    color: var(--alfred-green);
}

.completed-row details {
    margin: 15px 0 0 57px;
}

.completed-row summary {
    color: var(--alfred-blue);
    cursor: pointer;
    font-size: 11px;
    font-weight: 700;
}

.completed-body {
    margin-top: 12px;
    padding: 15px;
    border: 1px solid var(--alfred-border);
    border-radius: 10px;
    background: #fafbfc;
}

.completed-reason {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 15px 0 0 57px;
    padding: 12px 14px;
    border: 1px solid var(--alfred-border);
    border-radius: 9px;
    background: #fafbfc;
    color: #565e69;
    font-size: 11px;
}

.completed-reason .bi {
    color: var(--alfred-blue);
}

.completed-reason strong {
    display: block;
    margin-bottom: 2px;
    color: var(--alfred-text);
    font-size: 10px;
    text-transform: uppercase;
}

@media (max-width: 991.98px) {
    .alfred-alert {
        width: calc(100% - 40px);
    }

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

    .source-card {
        position: static;
    }

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

    .queue-filter-search,
    .queue-filter-actions {
        grid-column: 1 / -1;
    }
}

@media (max-width: 575.98px) {
    .safety-banner {
        display: block;
    }

    .safety-banner strong {
        display: block;
        margin-bottom: 3px;
    }

    .mail-row {
        align-items: flex-start;
        padding: 16px;
    }

    .mail-avatar {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
    }

    .mail-preview,
    .mail-arrow {
        display: none;
    }

    .mail-row-top {
        align-items: flex-start;
    }

    .mail-subject {
        white-space: normal;
    }

    .queue-filters {
        grid-template-columns: 1fr;
        padding: 15px;
    }

    .queue-filter-search,
    .queue-filter-actions {
        grid-column: auto;
    }

    .queue-filter-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .queue-filter-actions .btn {
        justify-content: center;
    }

    .detail-heading {
        margin-bottom: 20px;
    }

    .detail-heading .environment-badge {
        display: none;
    }

    .message-addresses div,
    .confirmation-summary div {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .draft-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .confirm-button {
        margin-left: 0;
    }

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

    .translation-action {
        display: grid;
    }

    .regenerate-row {
        grid-template-columns: 1fr;
    }

    .completed-head {
        flex-wrap: wrap;
    }

    .fake-badge {
        margin-left: 50px;
    }

    .completed-row details {
        margin-left: 0;
    }

    .completed-reason {
        margin-left: 0;
    }
}

.login-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 20px 0;
    color: var(--alfred-muted);
    font-size: 10px;
    text-transform: uppercase;
}

.login-divider::before,
.login-divider::after {
    height: 1px;
    flex: 1;
    background: var(--alfred-border);
    content: "";
}

.passkey-login-button {
    display: inline-flex;
    width: 100%;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid #cfd8e5;
    background: #fff;
    color: #163d6f;
    font-size: 12px;
    font-weight: 750;
}

.passkey-login-button[hidden] {
    display: none;
}

.passkey-login-button:hover,
.passkey-login-button:focus {
    border-color: #9eb6d3;
    background: var(--alfred-blue-soft);
    color: #0b3d78;
}

.passkey-status {
    min-height: 17px;
    margin: 10px 0 0;
    color: var(--alfred-muted);
    font-size: 10px;
    line-height: 1.5;
}

.passkey-status:empty {
    min-height: 0;
    margin-top: 0;
}

.passkey-status.is-error {
    color: #9b2c2c;
}

.passkey-status.is-success {
    color: var(--alfred-green);
}

.account-security-wrap {
    max-width: 1050px;
}

.passkey-card {
    overflow: hidden;
    margin-bottom: 20px;
}

.passkey-register-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 20px;
    padding: 20px;
}

.passkey-register-panel .form-control {
    min-height: 44px;
    border-color: #d9dde3;
    font-size: 13px;
}

.passkey-register-panel small {
    display: block;
    margin-top: 5px;
    color: var(--alfred-muted);
    font-size: 9px;
}

.passkey-register-panel + .passkey-status {
    margin: -9px 20px 17px;
}

.passkey-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 17px 20px;
    border-top: 1px solid var(--alfred-border);
}

.passkey-icon,
.passkey-modal-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
    background: var(--alfred-blue-soft);
    color: var(--alfred-blue);
    font-size: 19px;
}

.passkey-copy strong,
.passkey-copy span,
.passkey-copy small {
    display: block;
}

.passkey-copy strong {
    font-size: 12px;
}

.passkey-copy span {
    color: #4d5560;
    font-size: 10px;
}

.passkey-copy small {
    margin-top: 3px;
    color: var(--alfred-muted);
    font-size: 9px;
}

.passkey-empty {
    border-top: 1px solid var(--alfred-border);
}

.passkey-offer-modal .modal-content {
    overflow: hidden;
    border: 1px solid var(--alfred-border);
    border-top: 4px solid var(--alfred-yellow);
    border-radius: 17px;
    box-shadow: 0 24px 70px rgb(19 31 51 / 20%);
}

.passkey-offer-modal .modal-header {
    padding: 22px 24px 0;
    border: 0;
}

.passkey-offer-modal .modal-body {
    padding: 12px 24px 20px;
}

.passkey-offer-modal h2 {
    margin: 0 0 8px;
    font-size: 25px;
    font-weight: 780;
    letter-spacing: -.025em;
}

.passkey-offer-modal .modal-body > p:not(.passkey-status) {
    margin: 0 0 19px;
    color: var(--alfred-muted);
    font-size: 11px;
    line-height: 1.65;
}

.passkey-offer-modal .form-control {
    min-height: 44px;
    font-size: 13px;
}

.passkey-offer-modal .modal-footer {
    gap: 9px;
    padding: 17px 24px;
    border-color: var(--alfred-border);
    background: #fafbfc;
}

.operator-actions a.fixture-reset {
    text-decoration: none;
}

@media (max-width: 767.98px) {
    .passkey-register-panel {
        grid-template-columns: 1fr;
    }

    .passkey-register-panel .action-button {
        width: 100%;
    }

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

    .passkey-row form {
        grid-column: 1 / -1;
    }

    .passkey-row form .btn {
        width: 100%;
    }

    .passkey-offer-modal .modal-footer {
        display: grid;
        grid-template-columns: 1fr;
    }

    .passkey-offer-modal .modal-footer .btn {
        width: 100%;
    }
}

.operator-copy {
    min-width: 0;
    flex: 1;
}

.operator-copy strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.operator-actions {
    display: flex;
    flex: 0 0 auto;
    gap: 5px;
}

.nav-lock {
    margin-left: auto;
    font-size: 10px;
    filter: grayscale(1);
    opacity: .6;
}

.auth-body {
    display: grid;
    min-height: 100vh;
    place-items: center;
    padding: 28px 18px;
    background:
        radial-gradient(circle at 12% 12%, rgb(237 189 32 / 13%), transparent 28%),
        radial-gradient(circle at 88% 88%, rgb(15 82 160 / 8%), transparent 30%),
        var(--alfred-bg);
}

.auth-shell {
    width: min(440px, 100%);
}

.login-card {
    overflow: hidden;
    padding: 32px;
    border: 1px solid var(--alfred-border);
    border-top: 4px solid var(--alfred-yellow);
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 18px 55px rgb(19 31 51 / 10%);
}

.login-brand {
    margin-bottom: 28px;
}

.login-logo-frame {
    position: relative;
    display: block;
    width: 164px;
    height: 45px;
    overflow: hidden;
}

.login-logo-frame img {
    position: absolute;
    top: -35px;
    left: -29px;
    width: 220px;
    max-width: none;
}

.login-brand p {
    margin: 6px 0 0;
    color: var(--alfred-muted);
    font-size: 11px;
}

.login-copy h1 {
    margin: 0 0 7px;
    font-size: 27px;
    font-weight: 780;
    letter-spacing: -.025em;
}

.login-copy p {
    margin: 0 0 22px;
    color: var(--alfred-muted);
    font-size: 12px;
    line-height: 1.6;
}

.login-card .form-label,
.scenario-form .form-label {
    color: #4b515b;
    font-size: 11px;
    font-weight: 750;
}

.login-card .form-control,
.scenario-form .form-control,
.scenario-form .form-select {
    min-height: 44px;
    border-color: #d9dde3;
    font-size: 13px;
}

.login-card .form-control:focus,
.scenario-form .form-control:focus,
.scenario-form .form-select:focus {
    border-color: #e3b61e;
    box-shadow: 0 0 0 .2rem rgb(237 189 32 / 15%);
}

.login-button {
    width: 100%;
    min-height: 44px;
}

.login-alert {
    padding: 10px 12px;
    font-size: 11px;
}

.login-fixture-note {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 23px;
    padding-top: 18px;
    border-top: 1px solid var(--alfred-border);
    color: var(--alfred-muted);
    font-size: 10px;
    line-height: 1.5;
}

.login-fixture-note .mode-dot {
    flex: 0 0 8px;
    margin-top: 3px;
}

.settings-tabs {
    display: flex;
    gap: 4px;
    margin-bottom: 20px;
    padding: 5px;
    border: 1px solid var(--alfred-border);
    border-radius: 12px;
    background: #fff;
}

.settings-tabs a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    flex: 1;
    padding: 11px 14px;
    border-radius: 8px;
    color: var(--alfred-muted);
    font-size: 12px;
    font-weight: 750;
    text-align: center;
    text-decoration: none;
}

.settings-tabs a.active {
    background: var(--alfred-yellow-soft);
    color: #725711;
}

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

.integration-settings-card {
    padding: 20px;
}

.integration-card-head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 17px;
    border-bottom: 1px solid var(--alfred-border);
}

.integration-letter {
    display: grid;
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    place-items: center;
    border-radius: 10px;
    background: var(--alfred-blue-soft);
    color: var(--alfred-blue);
    font-size: 17px;
    font-weight: 850;
}

.integration-card-head h2 {
    margin: 0 0 2px;
    font-size: 14px;
}

.integration-card-head p,
.settings-explanation {
    margin: 0;
    color: var(--alfred-muted);
    font-size: 10px;
    line-height: 1.55;
}

.configuration-status {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 18px 0 8px;
    font-size: 11px;
}

.status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.status-off {
    background: #a9afb8;
}

.settings-wide-note {
    margin: 18px 0 0;
}

.mailbox-check-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 18px 0;
}

.mailbox-check-card {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 18px;
}

.mailbox-check-card > div {
    display: grid;
    gap: 6px;
}

.mailbox-check-card strong {
    font-size: 13px;
}

.mailbox-check-card small,
.mailbox-check-card p,
.mailbox-check-help {
    color: var(--alfred-muted);
    font-size: 11px;
}

.mailbox-check-card p {
    margin: 0;
}

.mailbox-check-card form {
    flex: none;
}

.mailbox-check-status {
    color: #6f7783;
    font-size: 12px;
    font-weight: 700;
}

.mailbox-check-status.ok {
    color: var(--alfred-green);
}

.mailbox-check-status.failed {
    color: #a52d32;
}

.mailbox-check-help {
    margin: -6px 0 18px;
}

.mailbox-folder-card {
    margin: 0 0 18px;
    padding: 22px;
}

.mailbox-folder-current {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 18px;
}

.mailbox-folder-current > div {
    padding: 12px 14px;
    border: 1px solid var(--alfred-border);
    border-radius: 9px;
    background: #fafbfc;
}

.mailbox-folder-current dt,
.mailbox-folder-actions small,
.mailbox-folder-empty {
    color: var(--alfred-muted);
    font-size: 11px;
}

.mailbox-folder-current dd {
    margin: 3px 0 0;
    font-size: 13px;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.mailbox-folder-form {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--alfred-border);
}

.mailbox-folder-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
}

@media (max-width: 767px) {
    .mailbox-folder-current { grid-template-columns: 1fr; }
}

.settings-panel {
    min-height: 360px;
}
.dashboard-daily-bars { display:grid; grid-template-columns:repeat(14,minmax(0,1fr)); gap:6px; align-items:end; min-height:105px; }
.dashboard-daily-bars>div {display:flex;flex-direction:column;align-items:center;justify-content:end;font-size:11px;min-height:105px;}
.dashboard-daily-bars span {display:block;width:70%;background:var(--alfred-blue);border-radius:3px 3px 0 0;}
.dashboard-daily-bars small {font-size:9px;white-space:nowrap;}
@media (max-width: 575.98px) {
    .dashboard-daily-bars { gap: 4px; }
    .dashboard-daily-bars > div:nth-child(odd) small { visibility: hidden; }
    .dashboard-daily-bars small { font-size: 10px; }
}

.ai-job-status { margin: 18px 22px; padding: 16px; border: 1px solid var(--alfred-border); border-radius: 10px; background: #fafbfc; }
.ai-job-status p { margin: 8px 0; font-size: 13px; }
.ai-job-status a { font-size: 13px; }
.ai-job-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.ai-job-status [hidden] { display: none !important; }
.draft-state-badge.queued, .draft-state-badge.running { background: var(--alfred-yellow-soft); color: #806000; }

.instance-panel {
    height: auto;
    padding: 24px;
}

.instance-panel h2 {
    margin: 0 0 20px;
    font-size: 20px;
}

.instance-panel .scenario-copy small {
    display: block;
    margin-top: 8px;
    font-size: 12px;
}

.instance-panel .scenario-row:first-child { padding-top: 0; }
.instance-panel .scenario-row:last-child { padding-bottom: 0; }

@media (max-width: 767px) {
    .instance-panel { padding: 18px; }
    .scenario-actions { flex-wrap: wrap; }
    .scenario-title-line { flex-wrap: wrap; }
}

.folder-fixture-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    padding: 22px;
}

.folder-fixture-grid article {
    padding: 18px;
    border: 1px solid var(--alfred-border);
    border-radius: 11px;
    background: #fafbfc;
}

.field-caption {
    display: block;
    margin-bottom: 7px;
    color: var(--alfred-muted);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.folder-fixture-grid strong {
    font-size: 15px;
}

.folder-fixture-grid p {
    margin: 6px 0 0;
    color: var(--alfred-muted);
    font-size: 10px;
    line-height: 1.55;
}

.folders-warning {
    margin-top: 0;
}

.settings-inline-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 0 22px 20px;
    padding: 16px 18px;
    border: 1px solid #d7e4f3;
    border-radius: 11px;
    background: var(--alfred-blue-soft);
}

.settings-inline-action strong {
    font-size: 12px;
}

.settings-inline-action p {
    margin: 4px 0 0;
    color: var(--alfred-muted);
    font-size: 10px;
}

.settings-inline-action .import-status {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    margin-top: 9px;
    color: #5b626c;
}

.settings-inline-action .import-status-success {
    color: #146c43;
}

.settings-inline-action .import-status-failed {
    color: #842029;
}

.settings-inline-action .import-status strong {
    font-size: inherit;
}

.users-card {
    overflow: hidden;
}

.user-list {
    display: grid;
}

.user-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 14px;
    padding: 17px 20px;
}

.user-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 7px;
}

.user-row + .user-row {
    border-top: 1px solid var(--alfred-border);
}

.user-row.inactive {
    background: #fafbfc;
}

.user-row.inactive .user-avatar,
.user-row.inactive .user-copy {
    opacity: .58;
}

.user-avatar {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
    background: var(--alfred-blue-soft);
    color: var(--alfred-blue);
    font-size: 17px;
}

.user-copy {
    min-width: 0;
}

.user-title-line {
    display: flex;
    align-items: center;
    gap: 7px;
}

.user-copy strong,
.user-copy > span,
.user-copy small {
    display: block;
}

.user-copy strong {
    font-size: 12px;
}

.user-copy > span {
    overflow: hidden;
    color: #4d5560;
    font-size: 10px;
    text-overflow: ellipsis;
}

.user-copy small {
    margin-top: 3px;
    color: var(--alfred-muted);
    font-size: 9px;
}

.current-user-badge,
.role-badge {
    display: inline-flex;
    align-items: center;
    width: max-content;
    padding: 3px 7px;
    border-radius: 999px;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
}

.current-user-badge {
    background: var(--alfred-yellow-soft);
    color: #725711;
}

.user-badges {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
}

.role-badge {
    background: #eef1f5;
    color: #555e69;
}

.role-badge.role-superadmin {
    background: #e9f2ff;
    color: #0b4b93;
}

.role-badge.role-admin {
    background: var(--alfred-yellow-soft);
    color: #725711;
}

.user-active-control {
    display: flex;
    align-items: flex-end;
    padding-bottom: 10px;
}

.form-help,
.password-requirements {
    display: block;
    color: var(--alfred-muted);
    font-size: 9px;
    line-height: 1.5;
}

.form-help {
    margin-top: 6px;
}

.password-requirements {
    margin: 13px 0 0;
    padding: 10px 12px;
    border: 1px solid #d7e4f3;
    border-radius: 9px;
    background: var(--alfred-blue-soft);
    color: #4f6177;
}

.password-requirements .bi {
    margin-right: 5px;
    color: var(--alfred-blue);
}

.scenario-list {
    padding: 0 20px;
}

.scenario-row {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 18px 0;
}

.scenario-row + .scenario-row {
    border-top: 1px solid var(--alfred-border);
}

.scenario-state {
    width: 9px;
    height: 9px;
    flex: 0 0 9px;
    border-radius: 50%;
    background: #adb3bc;
}

.scenario-state.active {
    background: var(--alfred-green);
    box-shadow: 0 0 0 4px #eaf7f0;
}

.scenario-copy {
    min-width: 0;
    flex: 1;
}

.scenario-title-line {
    display: flex;
    align-items: center;
    gap: 9px;
}

.scenario-title-line h3 {
    margin: 0;
    font-size: 14px;
}

.scenario-copy p {
    margin: 5px 0;
    color: #565e69;
    font-size: 11px;
}

.scenario-copy small {
    color: var(--alfred-muted);
    font-size: 9px;
}

.scenario-actions {
    display: flex;
    flex: 0 0 auto;
    gap: 7px;
}

.scenario-form {
    overflow: visible;
}

.scenario-form-section {
    padding: 22px;
}

.scenario-form-section + .scenario-form-section {
    border-top: 1px solid var(--alfred-border);
}

.form-section-heading {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 18px;
}

.form-section-heading h2 {
    margin: 1px 0 2px;
    font-size: 15px;
}

.form-section-heading p {
    margin: 0;
    color: var(--alfred-muted);
    font-size: 10px;
}

.scenario-form textarea.form-control {
    min-height: auto;
    line-height: 1.55;
}

.scenario-form textarea.knowledge-source-text {
    min-height: 310px;
}

.knowledge-source-options {
    display: grid;
    gap: 9px;
}

.knowledge-source-option {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 13px;
    border: 1px solid var(--alfred-border);
    border-radius: 9px;
    background: #fafbfc;
}

.knowledge-source-option.inactive {
    opacity: .58;
}

.knowledge-source-option strong,
.knowledge-source-option small {
    display: block;
}

.knowledge-source-option strong {
    font-size: 11px;
}

.knowledge-source-option small,
.source-empty-note {
    margin-top: 3px;
    color: var(--alfred-muted);
    font-size: 9px;
}

.scenario-active-control {
    display: flex;
    align-items: flex-end;
    padding-bottom: 10px;
}

.scenario-active-control .form-check-label {
    font-size: 11px;
    font-weight: 700;
}

.scenario-form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
    border-top: 1px solid var(--alfred-border);
    border-radius: 0 0 15px 15px;
    background: #fafbfc;
}

.scenario-form-footer span {
    color: var(--alfred-muted);
    font-size: 10px;
}

.btn .bi {
    margin-right: .45em;
}

.fixture-reset .bi,
.menu-button .bi,
.sidebar-close .bi,
.nav-mark .bi,
.step-number .bi,
.empty-envelope .bi,
.integration-letter .bi,
.mail-arrow .bi,
.source-check .bi,
.generate-icon .bi,
.history-chevron .bi {
    margin-right: 0;
}

.section-heading h2 > .bi {
    margin-right: 7px;
    color: var(--alfred-blue);
}

@media (max-width: 991.98px) {
    .settings-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .mailbox-check-grid {
        grid-template-columns: 1fr;
    }

    .mailbox-check-card {
        flex-wrap: wrap;
    }

    .login-card {
        padding: 25px 22px;
    }

    .settings-tabs {
        overflow-x: auto;
    }

    .settings-tabs a {
        min-width: 105px;
    }

    .folder-fixture-grid {
        grid-template-columns: 1fr;
    }

    .scenario-row {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .scenario-copy {
        width: calc(100% - 24px);
        flex-basis: calc(100% - 24px);
    }

    .scenario-actions {
        margin-left: 22px;
    }

    .scenario-form-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .settings-inline-action {
        align-items: stretch;
        flex-direction: column;
    }

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

    .user-badges {
        grid-column: 2 / -1;
        grid-row: 2;
        justify-content: flex-start;
    }

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

.draft-history-list {
    display: grid;
}

.draft-history-item + .draft-history-item {
    border-top: 1px solid var(--alfred-border);
}

.draft-history-item summary {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 15px 20px;
    cursor: pointer;
    list-style: none;
}

.draft-history-item summary::-webkit-details-marker {
    display: none;
}

.draft-history-item[open] summary {
    background: #fffdf5;
}

.history-version {
    display: grid;
    width: 37px;
    height: 31px;
    flex: 0 0 37px;
    place-items: center;
    border-radius: 8px;
    background: var(--alfred-yellow-soft);
    color: #755700;
    font-size: 10px;
    font-weight: 850;
}

.history-summary-copy {
    min-width: 0;
    flex: 1;
}

.history-summary-copy strong,
.history-summary-copy small {
    display: block;
}

.history-summary-copy strong {
    font-size: 12px;
}

.history-summary-copy small {
    margin-top: 3px;
    color: var(--alfred-muted);
    font-size: 9px;
}

.history-chevron {
    color: #8b919a;
    font-size: 18px;
    transition: transform .15s ease;
}

.draft-history-item[open] .history-chevron {
    transform: rotate(180deg);
}

.draft-history-content {
    padding: 0 20px 20px 69px;
}

.history-metadata {
    display: grid;
    gap: 6px;
    margin: 0 0 15px;
    padding: 13px 15px;
    border: 1px solid var(--alfred-border);
    border-radius: 9px;
    background: #fafbfc;
}

.history-metadata div {
    display: grid;
    grid-template-columns: 105px minmax(0, 1fr);
    gap: 10px;
}

.history-metadata dt,
.history-metadata dd {
    margin: 0;
    font-size: 9px;
    line-height: 1.5;
}

.history-metadata dt {
    color: var(--alfred-muted);
    font-weight: 700;
}

.history-metadata dd {
    overflow-wrap: anywhere;
    color: #434952;
    font-weight: 600;
}

.history-subject {
    display: block;
    margin-bottom: 7px;
    font-size: 12px;
}

.history-body {
    max-height: 320px;
    overflow: auto;
    padding: 14px 15px;
    border: 1px solid var(--alfred-border);
    border-radius: 9px;
    background: #fff;
    font-size: 11px;
}

.history-readonly-note {
    margin: 0;
    padding: 12px 20px;
    border-top: 1px solid var(--alfred-border);
    background: #fafbfc;
    color: var(--alfred-muted);
    font-size: 9px;
}

.activity-row {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 17px 20px;
}

.activity-row + .activity-row {
    border-top: 1px solid var(--alfred-border);
}

.activity-mark {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: #a5abb4;
    box-shadow: 0 0 0 4px #f0f2f5;
}

.activity-mark-blue {
    background: var(--alfred-blue);
    box-shadow: 0 0 0 4px var(--alfred-blue-soft);
}

.activity-mark-green {
    background: var(--alfred-green);
    box-shadow: 0 0 0 4px #eaf7f0;
}

.activity-mark-yellow {
    background: var(--alfred-yellow);
    box-shadow: 0 0 0 4px var(--alfred-yellow-soft);
}

.activity-mark-red {
    background: #dc3545;
    box-shadow: 0 0 0 4px #fff0f0;
}

.activity-copy {
    min-width: 0;
    flex: 1;
}

.activity-title-line {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 15px;
}

.activity-title-line strong {
    font-size: 13px;
}

.activity-title-line time {
    flex: 0 0 auto;
    color: var(--alfred-muted);
    font-size: 9px;
}

.activity-copy p {
    margin: 3px 0;
    color: #454b54;
    font-size: 11px;
    font-weight: 650;
}

.activity-copy small {
    display: block;
    color: var(--alfred-muted);
    font-size: 9px;
    line-height: 1.5;
}

.activity-link {
    flex: 0 0 auto;
    font-size: 10px;
}

@media (max-width: 575.98px) {
    .draft-history-content {
        padding: 0 15px 17px;
    }

    .history-metadata div {
        grid-template-columns: 1fr;
        gap: 1px;
    }

    .activity-row {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .activity-copy {
        width: calc(100% - 26px);
        flex-basis: calc(100% - 26px);
    }

    .activity-title-line {
        align-items: flex-start;
        flex-direction: column;
        gap: 3px;
    }

    .activity-link {
        margin-left: 24px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .history-chevron {
        transition: none;
    }
}

.dashboard-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.dashboard-metric {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 13px;
    padding: 19px;
    border: 1px solid var(--alfred-border);
    border-top: 3px solid #aeb4bd;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgb(19 31 51 / 4%);
}

.dashboard-metric-yellow {
    border-top-color: var(--alfred-yellow);
}

.dashboard-metric-blue {
    border-top-color: var(--alfred-blue);
}

.dashboard-metric-green {
    border-top-color: var(--alfred-green);
}

.dashboard-metric-icon {
    display: grid;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    place-items: center;
    border-radius: 10px;
    background: var(--alfred-yellow-soft);
    color: #806000;
    font-size: 17px;
}

.dashboard-metric-blue .dashboard-metric-icon {
    background: var(--alfred-blue-soft);
    color: var(--alfred-blue);
}

.dashboard-metric-green .dashboard-metric-icon {
    background: #eaf7f0;
    color: var(--alfred-green);
}

.dashboard-metric-neutral .dashboard-metric-icon {
    background: #f0f2f6;
    color: #626974;
}

.dashboard-metric-label,
.dashboard-metric small {
    display: block;
}

.dashboard-metric-label {
    margin-bottom: 3px;
    color: #454b54;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.dashboard-metric strong {
    display: block;
    margin-bottom: 3px;
    font-size: 27px;
    line-height: 1.15;
    letter-spacing: -.025em;
}

.dashboard-metric small {
    color: var(--alfred-muted);
    font-size: 9px;
    line-height: 1.45;
}

.dashboard-grid {
    display: grid;
    grid-template-columns: minmax(290px, .8fr) minmax(0, 1.35fr);
    gap: 20px;
    margin-bottom: 20px;
}

.dashboard-status-content {
    padding: 22px 20px;
}

.dashboard-progress {
    height: 11px;
    overflow: hidden;
    border-radius: 999px;
    background: #eef0f3;
}

.dashboard-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--alfred-yellow);
}

.dashboard-status-list {
    display: grid;
    gap: 0;
    margin: 17px 0 0;
}

.dashboard-status-list div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 0;
    border-top: 1px solid #edf0f3;
}

.dashboard-status-list dt {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #4b515b;
    font-size: 11px;
    font-weight: 650;
}

.dashboard-status-list dd {
    margin: 0;
    font-size: 14px;
    font-weight: 800;
}

.dashboard-dot-yellow {
    background: var(--alfred-yellow);
}

.dashboard-dot-blue {
    background: var(--alfred-blue);
}

.dashboard-dot-muted {
    background: #a9afb8;
}

.dashboard-dot-neutral {
    background: #626974;
}

.dashboard-dot-green {
    background: var(--alfred-green);
}

.dashboard-table-wrap {
    overflow-x: auto;
    padding: 4px 20px 18px;
}

.dashboard-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
}

.dashboard-table th,
.dashboard-table td {
    padding: 13px 10px;
    border-bottom: 1px solid #edf0f3;
    text-align: right;
    white-space: nowrap;
}

.dashboard-table thead th {
    color: var(--alfred-muted);
    font-size: 9px;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.dashboard-table th:first-child,
.dashboard-table td:first-child {
    width: 100%;
    padding-left: 0;
    text-align: left;
    white-space: normal;
}

.dashboard-table th:last-child,
.dashboard-table td:last-child {
    padding-right: 0;
}

.dashboard-table tbody th {
    font-size: 11px;
    font-weight: 700;
}

.dashboard-method-card {
    overflow: visible;
}

.dashboard-method-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    padding: 0 20px 20px;
}

.dashboard-method-grid > div {
    padding: 15px 16px;
    border: 1px solid var(--alfred-border);
    background: #fafbfc;
}

.dashboard-method-grid > div:first-child {
    border-radius: 10px 0 0 10px;
}

.dashboard-method-grid > div + div {
    border-left: 0;
}

.dashboard-method-grid > div:last-child {
    border-radius: 0 10px 10px 0;
}

.dashboard-method-grid strong {
    font-size: 11px;
}

.dashboard-method-grid p {
    margin: 5px 0 0;
    color: var(--alfred-muted);
    font-size: 9px;
    line-height: 1.55;
}

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

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

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

    .dashboard-method-grid > div,
    .dashboard-method-grid > div + div {
        border: 1px solid var(--alfred-border);
        border-radius: 10px;
    }
}

@media (max-width: 575.98px) {
    .dashboard-metrics,
    .dashboard-method-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-metric {
        padding: 16px;
    }

    .dashboard-method-grid > div,
    .dashboard-method-grid > div + div {
        border-radius: 9px;
    }
}
/* Superadmin mailbox view keeps the standard layout and disables only editing controls. */
.mailbox-view-switch { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; padding: 1rem 1.25rem; margin-bottom: 1rem; }
.mailbox-view-switch .form-select { width: min(100%, 24rem); }
.mailbox-view-switch small { flex-basis: 100%; }
.mailbox-view-banner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.mailbox-view-banner form { margin: 0; }
.readonly-mail-fieldset { display: block; width: 100%; min-width: 0; border: 0; padding: 0; margin: 0; }

/* Operator mail workspace: latest message and reply, with history out of the main path. */
.reply-confirmation-wrap { max-width: 1000px; }
.reply-confirmation-card { height: auto; padding: 24px; }
.reply-confirmation-card .confirmation-summary { margin-bottom: 20px; }
.reply-confirmation-content { max-height: 55vh; min-height: 220px; overflow: auto; padding: 20px; border: 1px solid var(--alfred-border); border-radius: 10px; background: #fff; font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.reply-confirmation-content blockquote { color: #596471; }
.reply-send-confirmation { margin-top: 22px; }
.reply-send-confirmation .form-check { font-size: 13px; }
.reply-send-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.reply-send-unavailable { margin-top: 20px; padding: 12px 15px; border-radius: 9px; background: #f4f5f7; font-size: 13px; color: #586372; }
.mail-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 22px; align-items: start; }
.workspace-message-column, .workspace-reply-column, .reply-workspace-fieldset { display: grid; gap: 16px; min-width: 0; }
.mail-workspace-wrap .alfred-card { height: auto; }
.workspace-state { display: inline-flex; align-items: center; gap: 7px; padding: 8px 13px; border-radius: 20px; background: #fff6d9; color: #7c6017; font-size: 12px; font-weight: 700; white-space: nowrap; }
.workspace-alert { padding: 12px 16px; margin-bottom: 18px; font-size: 13px; }
.current-message-card { border-top: 3px solid var(--alfred-yellow); }
.current-message-card .section-heading time { font-size: 12px; color: var(--alfred-muted); }
.workspace-addresses { display: grid; gap: 5px; padding-bottom: 16px; margin-bottom: 18px; border-bottom: 1px solid var(--alfred-border); font-size: 12px; overflow-wrap: anywhere; }
.workspace-addresses strong { display: inline-block; min-width: 48px; color: var(--alfred-muted); }
.mail-workspace .safe-mail-html { white-space: normal; overflow-wrap: anywhere; }
.mail-workspace .safe-mail-html pre { white-space: pre-wrap; }
.mail-workspace .mail-body { font-size: 14px; line-height: 1.7; }
.mail-workspace .safe-mail-html blockquote { padding-left: 14px; border-left: 2px solid #d9dde3; color: #65707c; }
.mail-disclosure > summary, .reply-settings > summary { padding: 16px 18px; color: #414b59; font-size: 13px; font-weight: 700; cursor: pointer; }
.mail-disclosure > summary i, .reply-settings > summary i { margin-right: 7px; }
.mail-disclosure > summary span { float: right; margin-left: 8px; color: var(--alfred-muted); font-size: 12px; font-weight: 500; }
.mail-disclosure[open] > summary, .reply-settings[open] > summary { border-bottom: 1px solid var(--alfred-border); }
.mail-disclosure > summary:focus-visible, .reply-settings > summary:focus-visible { outline: 3px solid #d6a91b; outline-offset: -3px; }
.incoming-quotation { margin-top: 18px; border-top: 1px solid var(--alfred-border); }
.incoming-quotation > summary { padding: 13px 0; }
.incoming-quotation .mail-body { padding-top: 14px; font-size: 13px; }
.reply-settings { overflow: hidden; border: 1px solid var(--alfred-border); border-radius: 15px; background: #fff; }
.reply-settings .classification-card { border: 0; border-radius: 0; box-shadow: none; }
.reply-settings .classification-card > .section-heading { display: none; }
.reply-settings .workflow-form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px 12px; padding: 18px; }
.reply-settings label[for="message-language"] { grid-column: 1; grid-row: 1; }
.reply-settings #message-language { grid-column: 1; grid-row: 2; }
.reply-settings label[for="message-scenario"] { grid-column: 2; grid-row: 1; }
.reply-settings #message-scenario { grid-column: 2; grid-row: 2; }
.reply-settings .workflow-form button, .reply-settings .workflow-form small { grid-column: 1 / -1; }
.reply-settings .workflow-form .form-label { margin: 0 !important; font-size: 12px; }
.reply-settings .workflow-form .form-select, .reply-settings .workflow-form .btn { min-height: 42px; font-size: 13px; }
.reply-settings .workflow-form small { margin-top: 3px; font-size: 11px; line-height: 1.5; }
.workspace-reply-column .draft-card { border-top: 3px solid var(--alfred-blue); }
.workspace-reply-column .draft-form { padding: 20px; }
.workspace-reply-column .draft-form .form-label { font-size: 12px; }
.workspace-reply-column .draft-actions { flex-wrap: wrap; }
.reply-next-step { padding: 20px; }
.reply-next-step > strong { display: block; font-size: 15px; line-height: 1.5; }
.reply-next-step > p { margin: 8px 0 0; color: var(--alfred-muted); font-size: 13px; line-height: 1.6; }
.reply-next-step .reply-prerequisite { color: #805900; font-weight: 600; }
.reply-regenerate-form { margin: 16px 0 0; padding: 14px; }
.reply-regenerate-form .regenerate-row { grid-template-columns: 1fr; margin-top: 8px; }
.reply-regenerate-form .form-label { font-size: 12px; }
.reply-regenerate-form .form-control, .reply-regenerate-form .btn { font-size: 13px; }
.reply-regenerate-form small { display: block; margin-top: 8px; font-size: 11px; }
.previous-draft { border-top: 1px solid var(--alfred-border); }
.reply-regenerate-disclosure { margin: 0 20px 18px; border: 1px solid var(--alfred-border); border-radius: 9px; }
.reply-regenerate-disclosure .reply-regenerate-form { margin: 0; border: 0; }
.reply-review-action { padding: 17px 20px; border: 1px solid #ebd581; border-radius: 12px; background: #fff9e8; }
.reply-review-action .btn { width: 100%; }
.reply-review-action p { margin: 9px 0 0; font-size: 12px; line-height: 1.6; color: #685b34; }
.workspace-pending { padding: 18px; }
.workspace-pending p { margin: 8px 0 12px; font-size: 13px; }
.workspace-pending form { display: inline-block; margin-top: 10px; }
.draft-versions-disclosure .section-heading { display: none; }
.reply-tools .source-card, .reply-tools .workflow-card { border: 0; border-radius: 0; box-shadow: none; position: static; }
.delivery-technical { margin-top: 22px; }
.technical-content { padding: 18px; font-size: 13px; }
.technical-content .alfred-card { box-shadow: none; }
.technical-content > a { display: inline-block; margin-bottom: 15px; }
.technical-section { margin-bottom: 14px; }
.technical-section p { margin: 5px 0; overflow-wrap: anywhere; }

@media (max-width: 1050px) {
    .mail-workspace { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
    .reply-confirmation-card { padding: 16px; }
    .reply-confirmation-content { padding: 14px; }
    .reply-send-actions .btn { flex: 1; }
    .mail-workspace-wrap .detail-heading { gap: 10px; }
    .mail-workspace-wrap .detail-heading h1 { font-size: 25px; overflow-wrap: anywhere; }
    .workspace-state { font-size: 11px; padding: 6px 10px; }
    .mail-workspace { gap: 16px; }
    .reply-settings .workflow-form { gap: 8px; padding: 14px; }
    .mail-workspace .message-content, .workspace-reply-column .draft-form, .reply-next-step { padding: 16px; }
    .mail-disclosure > summary { padding: 14px; }
    .mail-disclosure > summary span { float: none; display: inline-block; }
    .regenerate-row .btn { white-space: normal; }
}
@media (max-width: 767px) { .mailbox-view-banner { flex-wrap: wrap; } }

.platform-wrap { max-width: 1500px; }
.billing-terms { margin: 18px 0; font-size: 13px; }
.billing-terms > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; border-bottom: 1px solid var(--alfred-border); padding: 10px 0; }
.billing-terms dd { margin: 0; }
.platform-filter { display: flex; align-items: end; flex-wrap: wrap; gap: 14px; padding: 18px; margin-bottom: 22px; height: auto; }
.platform-filter > div { flex: 1 1 180px; min-width: 0; }
.platform-filter .btn { white-space: nowrap; }
.platform-panel, .platform-settings, .platform-definitions { height: auto; }
.platform-table-wrap { width: 100%; overflow-x: auto; padding: 0 18px; }
.platform-table { width: 100%; min-width: 700px; border-collapse: collapse; font-size: 13px; }
.platform-table th, .platform-table td { padding: 16px 10px; vertical-align: middle; border-bottom: 1px solid var(--alfred-border); }
.platform-table thead th { color: var(--alfred-muted); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.platform-table tbody th { font-weight: 650; }
.platform-table th a { color: var(--alfred-ink); text-decoration: none; }
.platform-table th a:hover { text-decoration: underline; }
.platform-table small { display: block; margin-top: 4px; font-size: 11px; color: var(--alfred-muted); font-weight: 400; }
.platform-money { display: block; white-space: nowrap; }
.platform-cost-total { font-size: 21px !important; overflow-wrap: anywhere; }
.platform-status { display: inline-block; font-size: 11px; font-weight: 700; padding: 5px 9px; border-radius: 20px; }
.platform-status.is-active { color: #28613d; background: #ebf6ed; }
.platform-status.is-paused { color: #765b29; background: #fff5da; }
.platform-status.is-critical { color: #9b2534; background: #fff0f2; }
.watch-check-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 22px; height: auto; margin-bottom: 22px; }
.watch-check-bar p { margin: 5px 0 0; font-size: 12px; color: var(--alfred-muted); }
.watch-count { color: var(--alfred-muted); font-weight: 500; }
.watch-check-bar .btn { white-space: normal; }
.platform-pagination { padding: 14px 20px; }
.platform-pagination svg { max-width: 20px; max-height: 20px; }
.platform-form { padding: 24px; height: auto; }
.platform-settings { margin-top: 20px; }
.platform-settings > summary, .platform-definitions > summary { padding: 18px 22px; font-size: 14px; font-weight: 650; cursor: pointer; }
.platform-notice { padding: 14px 22px; margin: 0; font-size: 12px; line-height: 1.6; }
.platform-definitions { margin-top: 20px; padding-bottom: 8px; }
.platform-definitions p { padding: 0 22px; font-size: 12px; line-height: 1.7; color: var(--alfred-muted); }
.platform-service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin-bottom: 22px; }
.platform-service { padding: 22px; height: auto; }
.platform-service h2 { font-size: 16px; margin-bottom: 14px; }
.platform-service p { margin: 12px 0 0; color: var(--alfred-muted); font-size: 12px; }
.platform-operations-grid { padding: 20px; display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.platform-operations-grid h3 { font-size: 14px; }
.platform-operations-grid dl > div { display: flex; justify-content: space-between; padding: 8px 0; border-bottom: 1px solid var(--alfred-border); font-size: 13px; }
.platform-operations-grid dd { margin: 0; font-weight: 700; }
@media(max-width:767px) { .platform-service-grid, .platform-operations-grid { grid-template-columns: 1fr; } .platform-form { padding: 18px; } .platform-filter .btn { flex: 1 1 120px; } .platform-wrap .page-heading > .btn { width: 100%; } }
